@agiflowai/agent-cli 0.0.9 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/README.md +8 -347
- package/dist/claudeNotification.js +13653 -24
- package/dist/claudePermissionRequest.js +13675 -0
- package/dist/claudePostToolUse.js +13661 -17
- package/dist/claudePreToolUse.js +13773 -20
- package/dist/claudeSessionStart.js +13667 -17
- package/dist/claudeStop.js +13525 -0
- package/dist/cli.js +2298 -1
- package/dist/cli.js.map +1 -1
- package/dist/codex.md +386 -0
- package/dist/daemon.js +847 -0
- package/dist/daemon.js.map +1 -0
- package/dist/index-7uB_UKC1.mjs +31 -0
- package/dist/index-7uB_UKC1.mjs.map +1 -0
- package/dist/index-BQL-MgGG.mjs +122 -0
- package/dist/index-BQL-MgGG.mjs.map +1 -0
- package/dist/index-CVYu2Dkh.mjs +40977 -0
- package/dist/index-CVYu2Dkh.mjs.map +1 -0
- package/dist/index-DDi9orhQ.mjs +57 -0
- package/dist/index-DDi9orhQ.mjs.map +1 -0
- package/dist/index.js +319 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +20 -3
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -5
- package/dist/AgentHttpService-Cz0DO3Zx.js +0 -28
- package/dist/AgentHttpService-Cz0DO3Zx.js.map +0 -1
- package/dist/cli-9RY_AMH5.js +0 -104
- package/dist/cli-9RY_AMH5.js.map +0 -1
- package/dist/networkLog.js +0 -435
- package/dist/networkLog.js.map +0 -1
package/dist/networkLog.js
DELETED
|
@@ -1,435 +0,0 @@
|
|
|
1
|
-
"use strict";const Tc=require("node:os"),Ec=require("node:path"),ze=require("ulidx"),Nc=require("node:fs"),Oe=require("node:perf_hooks"),Ue=require("path"),Ae=require("fs-extra"),mr=require("os"),jc=require("node:crypto");require("@inquirer/prompts");function zr(r){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const n in r)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>r[n]})}}return t.default=r,Object.freeze(t)}const Wt=zr(Tc),ye=zr(Ec),be=zr(Nc),Ho=Object.freeze({status:"aborted"});function _(r,t,n){function o(a,u){var c;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(c=a._zod).traits??(c.traits=new Set),a._zod.traits.add(r),t(a,u);for(const l in s.prototype)l in a||Object.defineProperty(a,l,{value:s.prototype[l].bind(a)});a._zod.constr=s,a._zod.def=u}const e=n?.Parent??Object;class i extends e{}Object.defineProperty(i,"name",{value:r});function s(a){var u;const c=n?.Parent?new i:this;o(c,a),(u=c._zod).deferred??(u.deferred=[]);for(const l of c._zod.deferred)l();return c}return Object.defineProperty(s,"init",{value:o}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>n?.Parent&&a instanceof n.Parent?!0:a?._zod?.traits?.has(r)}),Object.defineProperty(s,"name",{value:r}),s}const Wo=Symbol("zod_brand");class Me extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Kt extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Lt={};function ce(r){return r&&Object.assign(Lt,r),Lt}function Ac(r){return r}function Uc(r){return r}function Pc(r){}function Dc(r){throw new Error}function Rc(r){}function Or(r){const t=Object.values(r).filter(o=>typeof o=="number");return Object.entries(r).filter(([o,e])=>t.indexOf(+o)===-1).map(([o,e])=>e)}function y(r,t="|"){return r.map(n=>O(n)).join(t)}function Ft(r,t){return typeof t=="bigint"?t.toString():t}function ft(r){return{get value(){{const t=r();return Object.defineProperty(this,"value",{value:t}),t}}}}function Ge(r){return r==null}function Yt(r){const t=r.startsWith("^")?1:0,n=r.endsWith("$")?r.length-1:r.length;return r.slice(t,n)}function Ko(r,t){const n=(r.toString().split(".")[1]||"").length,o=t.toString();let e=(o.split(".")[1]||"").length;if(e===0&&/\d?e-\d?/.test(o)){const u=o.match(/\d?e-(\d?)/);u?.[1]&&(e=Number.parseInt(u[1]))}const i=n>e?n:e,s=Number.parseInt(r.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return s%a/10**i}const ko=Symbol("evaluating");function P(r,t,n){let o;Object.defineProperty(r,t,{get(){if(o!==ko)return o===void 0&&(o=ko,o=n()),o},set(e){Object.defineProperty(r,t,{value:e})},configurable:!0})}function Cc(r){return Object.create(Object.getPrototypeOf(r),Object.getOwnPropertyDescriptors(r))}function Ce(r,t,n){Object.defineProperty(r,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Ne(...r){const t={};for(const n of r){const o=Object.getOwnPropertyDescriptors(n);Object.assign(t,o)}return Object.defineProperties({},t)}function Lc(r){return Ne(r._zod.def)}function Fc(r,t){return t?t.reduce((n,o)=>n?.[o],r):r}function Zc(r){const t=Object.keys(r),n=t.map(o=>r[o]);return Promise.all(n).then(o=>{const e={};for(let i=0;i<t.length;i++)e[t[i]]=o[i];return e})}function Mc(r=10){const t="abcdefghijklmnopqrstuvwxyz";let n="";for(let o=0;o<r;o++)n+=t[Math.floor(Math.random()*t.length)];return n}function fr(r){return JSON.stringify(r)}const Tr="captureStackTrace"in Error?Error.captureStackTrace:(...r)=>{};function We(r){return typeof r=="object"&&r!==null&&!Array.isArray(r)}const Yo=ft(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const r=Function;return new r(""),!0}catch{return!1}});function qe(r){if(We(r)===!1)return!1;const t=r.constructor;if(t===void 0)return!0;const n=t.prototype;return!(We(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Xt(r){return qe(r)?{...r}:Array.isArray(r)?[...r]:r}function qc(r){let t=0;for(const n in r)Object.prototype.hasOwnProperty.call(r,n)&&t++;return t}const Bc=r=>{const t=typeof r;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(r)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(r)?"array":r===null?"null":r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?"promise":typeof Map<"u"&&r instanceof Map?"map":typeof Set<"u"&&r instanceof Set?"set":typeof Date<"u"&&r instanceof Date?"date":typeof File<"u"&&r instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},Zt=new Set(["string","number","symbol"]),Xo=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Re(r){return r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function me(r,t,n){const o=new r._zod.constr(t??r._zod.def);return(!t||n?.parent)&&(o._zod.parent=r),o}function k(r){const t=r;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Jc(r){let t;return new Proxy({},{get(n,o,e){return t??(t=r()),Reflect.get(t,o,e)},set(n,o,e,i){return t??(t=r()),Reflect.set(t,o,e,i)},has(n,o){return t??(t=r()),Reflect.has(t,o)},deleteProperty(n,o){return t??(t=r()),Reflect.deleteProperty(t,o)},ownKeys(n){return t??(t=r()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,o){return t??(t=r()),Reflect.getOwnPropertyDescriptor(t,o)},defineProperty(n,o,e){return t??(t=r()),Reflect.defineProperty(t,o,e)}})}function O(r){return typeof r=="bigint"?r.toString()+"n":typeof r=="string"?`"${r}"`:`${r}`}function Qo(r){return Object.keys(r).filter(t=>r[t]._zod.optin==="optional"&&r[t]._zod.optout==="optional")}const ei={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},ti={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ri(r,t){const n=r._zod.def,o=Ne(r._zod.def,{get shape(){const e={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(e[i]=n.shape[i])}return Ce(this,"shape",e),e},checks:[]});return me(r,o)}function ni(r,t){const n=r._zod.def,o=Ne(r._zod.def,{get shape(){const e={...r._zod.def.shape};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&delete e[i]}return Ce(this,"shape",e),e},checks:[]});return me(r,o)}function oi(r,t){if(!qe(t))throw new Error("Invalid input to extend: expected a plain object");const n=r._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const e=Ne(r._zod.def,{get shape(){const i={...r._zod.def.shape,...t};return Ce(this,"shape",i),i},checks:[]});return me(r,e)}function ii(r,t){if(!qe(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...r._zod.def,get shape(){const o={...r._zod.def.shape,...t};return Ce(this,"shape",o),o},checks:r._zod.def.checks};return me(r,n)}function si(r,t){const n=Ne(r._zod.def,{get shape(){const o={...r._zod.def.shape,...t._zod.def.shape};return Ce(this,"shape",o),o},get catchall(){return t._zod.def.catchall},checks:[]});return me(r,n)}function ai(r,t,n){const o=Ne(t._zod.def,{get shape(){const e=t._zod.def.shape,i={...e};if(n)for(const s in n){if(!(s in e))throw new Error(`Unrecognized key: "${s}"`);n[s]&&(i[s]=r?new r({type:"optional",innerType:e[s]}):e[s])}else for(const s in e)i[s]=r?new r({type:"optional",innerType:e[s]}):e[s];return Ce(this,"shape",i),i},checks:[]});return me(t,o)}function ui(r,t,n){const o=Ne(t._zod.def,{get shape(){const e=t._zod.def.shape,i={...e};if(n)for(const s in n){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);n[s]&&(i[s]=new r({type:"nonoptional",innerType:e[s]}))}else for(const s in e)i[s]=new r({type:"nonoptional",innerType:e[s]});return Ce(this,"shape",i),i},checks:[]});return me(t,o)}function Fe(r,t=0){if(r.aborted===!0)return!0;for(let n=t;n<r.issues.length;n++)if(r.issues[n]?.continue!==!0)return!0;return!1}function he(r,t){return t.map(n=>{var o;return(o=n).path??(o.path=[]),n.path.unshift(r),n})}function ct(r){return typeof r=="string"?r:r?.message}function ve(r,t,n){const o={...r,path:r.path??[]};if(!r.message){const e=ct(r.inst?._zod.def?.error?.(r))??ct(t?.error?.(r))??ct(n.customError?.(r))??ct(n.localeError?.(r))??"Invalid input";o.message=e}return delete o.inst,delete o.continue,t?.reportInput||delete o.input,o}function Qt(r){return r instanceof Set?"set":r instanceof Map?"map":r instanceof File?"file":"unknown"}function er(r){return Array.isArray(r)?"array":typeof r=="string"?"string":"unknown"}function Ke(...r){const[t,n,o]=r;return typeof t=="string"?{message:t,code:"custom",input:n,inst:o}:{...t}}function Gc(r){return Object.entries(r).filter(([t,n])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}function ci(r){const t=atob(r),n=new Uint8Array(t.length);for(let o=0;o<t.length;o++)n[o]=t.charCodeAt(o);return n}function pi(r){let t="";for(let n=0;n<r.length;n++)t+=String.fromCharCode(r[n]);return btoa(t)}function Vc(r){const t=r.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return ci(t+n)}function Hc(r){return pi(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Wc(r){const t=r.replace(/^0x/,"");if(t.length%2!==0)throw new Error("Invalid hex string length");const n=new Uint8Array(t.length/2);for(let o=0;o<t.length;o+=2)n[o/2]=Number.parseInt(t.slice(o,o+2),16);return n}function Kc(r){return Array.from(r).map(t=>t.toString(16).padStart(2,"0")).join("")}class Yc{constructor(...t){}}const li=Object.freeze(Object.defineProperty({__proto__:null,BIGINT_FORMAT_RANGES:ti,Class:Yc,NUMBER_FORMAT_RANGES:ei,aborted:Fe,allowsEval:Yo,assert:Rc,assertEqual:Ac,assertIs:Pc,assertNever:Dc,assertNotEqual:Uc,assignProp:Ce,base64ToUint8Array:ci,base64urlToUint8Array:Vc,cached:ft,captureStackTrace:Tr,cleanEnum:Gc,cleanRegex:Yt,clone:me,cloneDef:Lc,createTransparentProxy:Jc,defineLazy:P,esc:fr,escapeRegex:Re,extend:oi,finalizeIssue:ve,floatSafeRemainder:Ko,getElementAtPath:Fc,getEnumValues:Or,getLengthableOrigin:er,getParsedType:Bc,getSizableOrigin:Qt,hexToUint8Array:Wc,isObject:We,isPlainObject:qe,issue:Ke,joinValues:y,jsonStringifyReplacer:Ft,merge:si,mergeDefs:Ne,normalizeParams:k,nullish:Ge,numKeys:qc,objectClone:Cc,omit:ni,optionalKeys:Qo,partial:ai,pick:ri,prefixIssues:he,primitiveTypes:Xo,promiseAllObject:Zc,propertyKeyTypes:Zt,randomString:Mc,required:ui,safeExtend:ii,shallowClone:Xt,stringifyPrimitive:O,uint8ArrayToBase64:pi,uint8ArrayToBase64url:Hc,uint8ArrayToHex:Kc,unwrapMessage:ct},Symbol.toStringTag,{value:"Module"})),_i=(r,t)=>{r.name="$ZodError",Object.defineProperty(r,"_zod",{value:r._zod,enumerable:!1}),Object.defineProperty(r,"issues",{value:t,enumerable:!1}),r.message=JSON.stringify(t,Ft,2),Object.defineProperty(r,"toString",{value:()=>r.message,enumerable:!1})},Er=_("$ZodError",_i),_e=_("$ZodError",_i,{Parent:Error});function Nr(r,t=n=>n.message){const n={},o=[];for(const e of r.issues)e.path.length>0?(n[e.path[0]]=n[e.path[0]]||[],n[e.path[0]].push(t(e))):o.push(t(e));return{formErrors:o,fieldErrors:n}}function jr(r,t=n=>n.message){const n={_errors:[]},o=e=>{for(const i of e.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(s=>o({issues:s}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let s=n,a=0;for(;a<i.path.length;){const u=i.path[a];a===i.path.length-1?(s[u]=s[u]||{_errors:[]},s[u]._errors.push(t(i))):s[u]=s[u]||{_errors:[]},s=s[u],a++}}};return o(r),n}function di(r,t=n=>n.message){const n={errors:[]},o=(e,i=[])=>{var s,a;for(const u of e.issues)if(u.code==="invalid_union"&&u.errors.length)u.errors.map(c=>o({issues:c},u.path));else if(u.code==="invalid_key")o({issues:u.issues},u.path);else if(u.code==="invalid_element")o({issues:u.issues},u.path);else{const c=[...i,...u.path];if(c.length===0){n.errors.push(t(u));continue}let l=n,d=0;for(;d<c.length;){const h=c[d],m=d===c.length-1;typeof h=="string"?(l.properties??(l.properties={}),(s=l.properties)[h]??(s[h]={errors:[]}),l=l.properties[h]):(l.items??(l.items=[]),(a=l.items)[h]??(a[h]={errors:[]}),l=l.items[h]),m&&l.errors.push(t(u)),d++}}};return o(r),n}function mi(r){const t=[],n=r.map(o=>typeof o=="object"?o.key:o);for(const o of n)typeof o=="number"?t.push(`[${o}]`):typeof o=="symbol"?t.push(`[${JSON.stringify(String(o))}]`):/[^\w$]/.test(o)?t.push(`[${JSON.stringify(o)}]`):(t.length&&t.push("."),t.push(o));return t.join("")}function gi(r){const t=[],n=[...r.issues].sort((o,e)=>(o.path??[]).length-(e.path??[]).length);for(const o of n)t.push(`✖ ${o.message}`),o.path?.length&&t.push(` → at ${mi(o.path)}`);return t.join(`
|
|
2
|
-
`)}const vt=r=>(t,n,o,e)=>{const i=o?Object.assign(o,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw new Me;if(s.issues.length){const a=new(e?.Err??r)(s.issues.map(u=>ve(u,i,ce())));throw Tr(a,e?.callee),a}return s.value},vr=vt(_e),kt=r=>async(t,n,o,e)=>{const i=o?Object.assign(o,{async:!0}):{async:!0};let s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){const a=new(e?.Err??r)(s.issues.map(u=>ve(u,i,ce())));throw Tr(a,e?.callee),a}return s.value},kr=kt(_e),yt=r=>(t,n,o)=>{const e=o?{...o,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},e);if(i instanceof Promise)throw new Me;return i.issues.length?{success:!1,error:new(r??Er)(i.issues.map(s=>ve(s,e,ce())))}:{success:!0,data:i.value}},hi=yt(_e),bt=r=>async(t,n,o)=>{const e=o?Object.assign(o,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},e);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new r(i.issues.map(s=>ve(s,e,ce())))}:{success:!0,data:i.value}},fi=bt(_e),Ar=r=>(t,n,o)=>{const e=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return vt(r)(t,n,e)},Xc=Ar(_e),Ur=r=>(t,n,o)=>vt(r)(t,n,o),Qc=Ur(_e),Pr=r=>async(t,n,o)=>{const e=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return kt(r)(t,n,e)},ep=Pr(_e),Dr=r=>async(t,n,o)=>kt(r)(t,n,o),tp=Dr(_e),Rr=r=>(t,n,o)=>{const e=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return yt(r)(t,n,e)},rp=Rr(_e),Cr=r=>(t,n,o)=>yt(r)(t,n,o),np=Cr(_e),Lr=r=>async(t,n,o)=>{const e=o?Object.assign(o,{direction:"backward"}):{direction:"backward"};return bt(r)(t,n,e)},op=Lr(_e),Fr=r=>async(t,n,o)=>bt(r)(t,n,o),ip=Fr(_e),vi=/^[cC][^\s-]{8,}$/,ki=/^[0-9a-z]+$/,yi=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,bi=/^[0-9a-vA-V]{20}$/,xi=/^[A-Za-z0-9]{27}$/,$i=/^[a-zA-Z0-9_-]{21}$/,wi=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,sp=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ii=/^([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})$/,Ye=r=>r?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${r}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/,ap=Ye(4),up=Ye(6),cp=Ye(7),Si=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,pp=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,lp=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,zi=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,_p=zi,dp=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,mp="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Oi(){return new RegExp(mp,"u")}const Ti=/^(?:(?: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])$/,Ei=/^(([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}|:))$/,Ni=/^((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])$/,ji=/^(([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])$/,Ai=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Zr=/^[A-Za-z0-9_-]*$/,Mr=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,Ui=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Pi=/^\+(?:[0-9]){6,14}[0-9]$/,Di="(?:(?:\\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])))",Ri=new RegExp(`^${Di}$`);function Ci(r){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof r.precision=="number"?r.precision===-1?`${t}`:r.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${r.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Li(r){return new RegExp(`^${Ci(r)}$`)}function Fi(r){const t=Ci({precision:r.precision}),n=["Z"];r.local&&n.push(""),r.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const o=`${t}(?:${n.join("|")})`;return new RegExp(`^${Di}T(?:${o})$`)}const Zi=r=>{const t=r?`[\\s\\S]{${r?.minimum??0},${r?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Mi=/^-?\d+n?$/,qi=/^-?\d+$/,Bi=/^-?\d+(?:\.\d+)?/,Ji=/^(?:true|false)$/i,Gi=/^null$/i,Vi=/^undefined$/i,Hi=/^[^A-Z]*$/,Wi=/^[^a-z]*$/,Ki=/^[0-9a-fA-F]*$/;function xt(r,t){return new RegExp(`^[A-Za-z0-9+/]{${r}}${t}$`)}function $t(r){return new RegExp(`^[A-Za-z0-9_-]{${r}}$`)}const gp=/^[0-9a-fA-F]{32}$/,hp=xt(22,"=="),fp=$t(22),vp=/^[0-9a-fA-F]{40}$/,kp=xt(27,"="),yp=$t(27),bp=/^[0-9a-fA-F]{64}$/,xp=xt(43,"="),$p=$t(43),wp=/^[0-9a-fA-F]{96}$/,Ip=xt(64,""),Sp=$t(64),zp=/^[0-9a-fA-F]{128}$/,Op=xt(86,"=="),Tp=$t(86),qr=Object.freeze(Object.defineProperty({__proto__:null,base64:Ai,base64url:Zr,bigint:Mi,boolean:Ji,browserEmail:dp,cidrv4:Ni,cidrv6:ji,cuid:vi,cuid2:ki,date:Ri,datetime:Fi,domain:Ui,duration:wi,e164:Pi,email:Si,emoji:Oi,extendedDuration:sp,guid:Ii,hex:Ki,hostname:Mr,html5Email:pp,idnEmail:_p,integer:qi,ipv4:Ti,ipv6:Ei,ksuid:xi,lowercase:Hi,md5_base64:hp,md5_base64url:fp,md5_hex:gp,nanoid:$i,null:Gi,number:Bi,rfc5322Email:lp,sha1_base64:kp,sha1_base64url:yp,sha1_hex:vp,sha256_base64:xp,sha256_base64url:$p,sha256_hex:bp,sha384_base64:Ip,sha384_base64url:Sp,sha384_hex:wp,sha512_base64:Op,sha512_base64url:Tp,sha512_hex:zp,string:Zi,time:Li,ulid:yi,undefined:Vi,unicodeEmail:zi,uppercase:Wi,uuid:Ye,uuid4:ap,uuid6:up,uuid7:cp,xid:bi},Symbol.toStringTag,{value:"Module"})),G=_("$ZodCheck",(r,t)=>{var n;r._zod??(r._zod={}),r._zod.def=t,(n=r._zod).onattach??(n.onattach=[])}),Yi={number:"number",bigint:"bigint",object:"date"},Br=_("$ZodCheckLessThan",(r,t)=>{G.init(r,t);const n=Yi[typeof t.value];r._zod.onattach.push(o=>{const e=o._zod.bag,i=(t.inclusive?e.maximum:e.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?e.maximum=t.value:e.exclusiveMaximum=t.value)}),r._zod.check=o=>{(t.inclusive?o.value<=t.value:o.value<t.value)||o.issues.push({origin:n,code:"too_big",maximum:t.value,input:o.value,inclusive:t.inclusive,inst:r,continue:!t.abort})}}),Jr=_("$ZodCheckGreaterThan",(r,t)=>{G.init(r,t);const n=Yi[typeof t.value];r._zod.onattach.push(o=>{const e=o._zod.bag,i=(t.inclusive?e.minimum:e.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?e.minimum=t.value:e.exclusiveMinimum=t.value)}),r._zod.check=o=>{(t.inclusive?o.value>=t.value:o.value>t.value)||o.issues.push({origin:n,code:"too_small",minimum:t.value,input:o.value,inclusive:t.inclusive,inst:r,continue:!t.abort})}}),Xi=_("$ZodCheckMultipleOf",(r,t)=>{G.init(r,t),r._zod.onattach.push(n=>{var o;(o=n._zod.bag).multipleOf??(o.multipleOf=t.value)}),r._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):Ko(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:r,continue:!t.abort})}}),Qi=_("$ZodCheckNumberFormat",(r,t)=>{G.init(r,t),t.format=t.format||"float64";const n=t.format?.includes("int"),o=n?"int":"number",[e,i]=ei[t.format];r._zod.onattach.push(s=>{const a=s._zod.bag;a.format=t.format,a.minimum=e,a.maximum=i,n&&(a.pattern=qi)}),r._zod.check=s=>{const a=s.value;if(n){if(!Number.isInteger(a)){s.issues.push({expected:o,format:t.format,code:"invalid_type",continue:!1,input:a,inst:r});return}if(!Number.isSafeInteger(a)){a>0?s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:r,origin:o,continue:!t.abort}):s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:r,origin:o,continue:!t.abort});return}}a<e&&s.issues.push({origin:"number",input:a,code:"too_small",minimum:e,inclusive:!0,inst:r,continue:!t.abort}),a>i&&s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inst:r})}}),es=_("$ZodCheckBigIntFormat",(r,t)=>{G.init(r,t);const[n,o]=ti[t.format];r._zod.onattach.push(e=>{const i=e._zod.bag;i.format=t.format,i.minimum=n,i.maximum=o}),r._zod.check=e=>{const i=e.value;i<n&&e.issues.push({origin:"bigint",input:i,code:"too_small",minimum:n,inclusive:!0,inst:r,continue:!t.abort}),i>o&&e.issues.push({origin:"bigint",input:i,code:"too_big",maximum:o,inst:r})}}),ts=_("$ZodCheckMaxSize",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.size!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<e&&(o._zod.bag.maximum=t.maximum)}),r._zod.check=o=>{const e=o.value;e.size<=t.maximum||o.issues.push({origin:Qt(e),code:"too_big",maximum:t.maximum,inclusive:!0,input:e,inst:r,continue:!t.abort})}}),rs=_("$ZodCheckMinSize",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.size!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>e&&(o._zod.bag.minimum=t.minimum)}),r._zod.check=o=>{const e=o.value;e.size>=t.minimum||o.issues.push({origin:Qt(e),code:"too_small",minimum:t.minimum,inclusive:!0,input:e,inst:r,continue:!t.abort})}}),ns=_("$ZodCheckSizeEquals",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.size!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag;e.minimum=t.size,e.maximum=t.size,e.size=t.size}),r._zod.check=o=>{const e=o.value,i=e.size;if(i===t.size)return;const s=i>t.size;o.issues.push({origin:Qt(e),...s?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:o.value,inst:r,continue:!t.abort})}}),os=_("$ZodCheckMaxLength",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.length!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<e&&(o._zod.bag.maximum=t.maximum)}),r._zod.check=o=>{const e=o.value;if(e.length<=t.maximum)return;const s=er(e);o.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:e,inst:r,continue:!t.abort})}}),is=_("$ZodCheckMinLength",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.length!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>e&&(o._zod.bag.minimum=t.minimum)}),r._zod.check=o=>{const e=o.value;if(e.length>=t.minimum)return;const s=er(e);o.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:e,inst:r,continue:!t.abort})}}),ss=_("$ZodCheckLengthEquals",(r,t)=>{var n;G.init(r,t),(n=r._zod.def).when??(n.when=o=>{const e=o.value;return!Ge(e)&&e.length!==void 0}),r._zod.onattach.push(o=>{const e=o._zod.bag;e.minimum=t.length,e.maximum=t.length,e.length=t.length}),r._zod.check=o=>{const e=o.value,i=e.length;if(i===t.length)return;const s=er(e),a=i>t.length;o.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:o.value,inst:r,continue:!t.abort})}}),wt=_("$ZodCheckStringFormat",(r,t)=>{var n,o;G.init(r,t),r._zod.onattach.push(e=>{const i=e._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(n=r._zod).check??(n.check=e=>{t.pattern.lastIndex=0,!t.pattern.test(e.value)&&e.issues.push({origin:"string",code:"invalid_format",format:t.format,input:e.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:r,continue:!t.abort})}):(o=r._zod).check??(o.check=()=>{})}),as=_("$ZodCheckRegex",(r,t)=>{wt.init(r,t),r._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:r,continue:!t.abort})}}),us=_("$ZodCheckLowerCase",(r,t)=>{t.pattern??(t.pattern=Hi),wt.init(r,t)}),cs=_("$ZodCheckUpperCase",(r,t)=>{t.pattern??(t.pattern=Wi),wt.init(r,t)}),ps=_("$ZodCheckIncludes",(r,t)=>{G.init(r,t);const n=Re(t.includes),o=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=o,r._zod.onattach.push(e=>{const i=e._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(o)}),r._zod.check=e=>{e.value.includes(t.includes,t.position)||e.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:e.value,inst:r,continue:!t.abort})}}),ls=_("$ZodCheckStartsWith",(r,t)=>{G.init(r,t);const n=new RegExp(`^${Re(t.prefix)}.*`);t.pattern??(t.pattern=n),r._zod.onattach.push(o=>{const e=o._zod.bag;e.patterns??(e.patterns=new Set),e.patterns.add(n)}),r._zod.check=o=>{o.value.startsWith(t.prefix)||o.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:o.value,inst:r,continue:!t.abort})}}),_s=_("$ZodCheckEndsWith",(r,t)=>{G.init(r,t);const n=new RegExp(`.*${Re(t.suffix)}$`);t.pattern??(t.pattern=n),r._zod.onattach.push(o=>{const e=o._zod.bag;e.patterns??(e.patterns=new Set),e.patterns.add(n)}),r._zod.check=o=>{o.value.endsWith(t.suffix)||o.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:o.value,inst:r,continue:!t.abort})}});function yo(r,t,n){r.issues.length&&t.issues.push(...he(n,r.issues))}const ds=_("$ZodCheckProperty",(r,t)=>{G.init(r,t),r._zod.check=n=>{const o=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(o instanceof Promise)return o.then(e=>yo(e,n,t.property));yo(o,n,t.property)}}),ms=_("$ZodCheckMimeType",(r,t)=>{G.init(r,t);const n=new Set(t.mime);r._zod.onattach.push(o=>{o._zod.bag.mime=t.mime}),r._zod.check=o=>{n.has(o.value.type)||o.issues.push({code:"invalid_value",values:t.mime,input:o.value.type,inst:r,continue:!t.abort})}}),gs=_("$ZodCheckOverwrite",(r,t)=>{G.init(r,t),r._zod.check=n=>{n.value=t.tx(n.value)}});class hs{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const o=t.split(`
|
|
3
|
-
`).filter(s=>s),e=Math.min(...o.map(s=>s.length-s.trimStart().length)),i=o.map(s=>s.slice(e)).map(s=>" ".repeat(this.indent*2)+s);for(const s of i)this.content.push(s)}compile(){const t=Function,n=this?.args,e=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...n,e.join(`
|
|
4
|
-
`))}}const fs={major:4,minor:1,patch:12},T=_("$ZodType",(r,t)=>{var n;r??(r={}),r._zod.def=t,r._zod.bag=r._zod.bag||{},r._zod.version=fs;const o=[...r._zod.def.checks??[]];r._zod.traits.has("$ZodCheck")&&o.unshift(r);for(const e of o)for(const i of e._zod.onattach)i(r);if(o.length===0)(n=r._zod).deferred??(n.deferred=[]),r._zod.deferred?.push(()=>{r._zod.run=r._zod.parse});else{const e=(s,a,u)=>{let c=Fe(s),l;for(const d of a){if(d._zod.def.when){if(!d._zod.def.when(s))continue}else if(c)continue;const h=s.issues.length,m=d._zod.check(s);if(m instanceof Promise&&u?.async===!1)throw new Me;if(l||m instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await m,s.issues.length!==h&&(c||(c=Fe(s,h)))});else{if(s.issues.length===h)continue;c||(c=Fe(s,h))}}return l?l.then(()=>s):s},i=(s,a,u)=>{if(Fe(s))return s.aborted=!0,s;const c=e(a,o,u);if(c instanceof Promise){if(u.async===!1)throw new Me;return c.then(l=>r._zod.parse(l,u))}return r._zod.parse(c,u)};r._zod.run=(s,a)=>{if(a.skipChecks)return r._zod.parse(s,a);if(a.direction==="backward"){const c=r._zod.parse({value:s.value,issues:[]},{...a,skipChecks:!0});return c instanceof Promise?c.then(l=>i(l,s,a)):i(c,s,a)}const u=r._zod.parse(s,a);if(u instanceof Promise){if(a.async===!1)throw new Me;return u.then(c=>e(c,o,a))}return e(u,o,a)}}r["~standard"]={validate:e=>{try{const i=hi(r,e);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return fi(r,e).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}}),It=_("$ZodString",(r,t)=>{T.init(r,t),r._zod.pattern=[...r?._zod.bag?.patterns??[]].pop()??Zi(r._zod.bag),r._zod.parse=(n,o)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:r}),n}}),L=_("$ZodStringFormat",(r,t)=>{wt.init(r,t),It.init(r,t)}),vs=_("$ZodGUID",(r,t)=>{t.pattern??(t.pattern=Ii),L.init(r,t)}),ks=_("$ZodUUID",(r,t)=>{if(t.version){const o={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(o===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Ye(o))}else t.pattern??(t.pattern=Ye());L.init(r,t)}),ys=_("$ZodEmail",(r,t)=>{t.pattern??(t.pattern=Si),L.init(r,t)}),bs=_("$ZodURL",(r,t)=>{L.init(r,t),r._zod.check=n=>{try{const o=n.value.trim(),e=new URL(o);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(e.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Mr.source,input:n.value,inst:r,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:r,continue:!t.abort})),t.normalize?n.value=e.href:n.value=o;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:r,continue:!t.abort})}}}),xs=_("$ZodEmoji",(r,t)=>{t.pattern??(t.pattern=Oi()),L.init(r,t)}),$s=_("$ZodNanoID",(r,t)=>{t.pattern??(t.pattern=$i),L.init(r,t)}),ws=_("$ZodCUID",(r,t)=>{t.pattern??(t.pattern=vi),L.init(r,t)}),Is=_("$ZodCUID2",(r,t)=>{t.pattern??(t.pattern=ki),L.init(r,t)}),Ss=_("$ZodULID",(r,t)=>{t.pattern??(t.pattern=yi),L.init(r,t)}),zs=_("$ZodXID",(r,t)=>{t.pattern??(t.pattern=bi),L.init(r,t)}),Os=_("$ZodKSUID",(r,t)=>{t.pattern??(t.pattern=xi),L.init(r,t)}),Ts=_("$ZodISODateTime",(r,t)=>{t.pattern??(t.pattern=Fi(t)),L.init(r,t)}),Es=_("$ZodISODate",(r,t)=>{t.pattern??(t.pattern=Ri),L.init(r,t)}),Ns=_("$ZodISOTime",(r,t)=>{t.pattern??(t.pattern=Li(t)),L.init(r,t)}),js=_("$ZodISODuration",(r,t)=>{t.pattern??(t.pattern=wi),L.init(r,t)}),As=_("$ZodIPv4",(r,t)=>{t.pattern??(t.pattern=Ti),L.init(r,t),r._zod.onattach.push(n=>{const o=n._zod.bag;o.format="ipv4"})}),Us=_("$ZodIPv6",(r,t)=>{t.pattern??(t.pattern=Ei),L.init(r,t),r._zod.onattach.push(n=>{const o=n._zod.bag;o.format="ipv6"}),r._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:r,continue:!t.abort})}}}),Ps=_("$ZodCIDRv4",(r,t)=>{t.pattern??(t.pattern=Ni),L.init(r,t)}),Ds=_("$ZodCIDRv6",(r,t)=>{t.pattern??(t.pattern=ji),L.init(r,t),r._zod.check=n=>{const o=n.value.split("/");try{if(o.length!==2)throw new Error;const[e,i]=o;if(!i)throw new Error;const s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${e}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:r,continue:!t.abort})}}});function Gr(r){if(r==="")return!0;if(r.length%4!==0)return!1;try{return atob(r),!0}catch{return!1}}const Rs=_("$ZodBase64",(r,t)=>{t.pattern??(t.pattern=Ai),L.init(r,t),r._zod.onattach.push(n=>{n._zod.bag.contentEncoding="base64"}),r._zod.check=n=>{Gr(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:r,continue:!t.abort})}});function Cs(r){if(!Zr.test(r))return!1;const t=r.replace(/[-_]/g,o=>o==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Gr(n)}const Ls=_("$ZodBase64URL",(r,t)=>{t.pattern??(t.pattern=Zr),L.init(r,t),r._zod.onattach.push(n=>{n._zod.bag.contentEncoding="base64url"}),r._zod.check=n=>{Cs(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:r,continue:!t.abort})}}),Fs=_("$ZodE164",(r,t)=>{t.pattern??(t.pattern=Pi),L.init(r,t)});function Zs(r,t=null){try{const n=r.split(".");if(n.length!==3)return!1;const[o]=n;if(!o)return!1;const e=JSON.parse(atob(o));return!("typ"in e&&e?.typ!=="JWT"||!e.alg||t&&(!("alg"in e)||e.alg!==t))}catch{return!1}}const Ms=_("$ZodJWT",(r,t)=>{L.init(r,t),r._zod.check=n=>{Zs(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:r,continue:!t.abort})}}),qs=_("$ZodCustomStringFormat",(r,t)=>{L.init(r,t),r._zod.check=n=>{t.fn(n.value)||n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:r,continue:!t.abort})}}),Vr=_("$ZodNumber",(r,t)=>{T.init(r,t),r._zod.pattern=r._zod.bag.pattern??Bi,r._zod.parse=(n,o)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const e=n.value;if(typeof e=="number"&&!Number.isNaN(e)&&Number.isFinite(e))return n;const i=typeof e=="number"?Number.isNaN(e)?"NaN":Number.isFinite(e)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:e,inst:r,...i?{received:i}:{}}),n}}),Bs=_("$ZodNumber",(r,t)=>{Qi.init(r,t),Vr.init(r,t)}),Hr=_("$ZodBoolean",(r,t)=>{T.init(r,t),r._zod.pattern=Ji,r._zod.parse=(n,o)=>{if(t.coerce)try{n.value=!!n.value}catch{}const e=n.value;return typeof e=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:e,inst:r}),n}}),Wr=_("$ZodBigInt",(r,t)=>{T.init(r,t),r._zod.pattern=Mi,r._zod.parse=(n,o)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value=="bigint"||n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:r}),n}}),Js=_("$ZodBigInt",(r,t)=>{es.init(r,t),Wr.init(r,t)}),Gs=_("$ZodSymbol",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;return typeof e=="symbol"||n.issues.push({expected:"symbol",code:"invalid_type",input:e,inst:r}),n}}),Vs=_("$ZodUndefined",(r,t)=>{T.init(r,t),r._zod.pattern=Vi,r._zod.values=new Set([void 0]),r._zod.optin="optional",r._zod.optout="optional",r._zod.parse=(n,o)=>{const e=n.value;return typeof e>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:e,inst:r}),n}}),Hs=_("$ZodNull",(r,t)=>{T.init(r,t),r._zod.pattern=Gi,r._zod.values=new Set([null]),r._zod.parse=(n,o)=>{const e=n.value;return e===null||n.issues.push({expected:"null",code:"invalid_type",input:e,inst:r}),n}}),Ws=_("$ZodAny",(r,t)=>{T.init(r,t),r._zod.parse=n=>n}),Ks=_("$ZodUnknown",(r,t)=>{T.init(r,t),r._zod.parse=n=>n}),Ys=_("$ZodNever",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:r}),n)}),Xs=_("$ZodVoid",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;return typeof e>"u"||n.issues.push({expected:"void",code:"invalid_type",input:e,inst:r}),n}}),Qs=_("$ZodDate",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}const e=n.value,i=e instanceof Date;return i&&!Number.isNaN(e.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:e,...i?{received:"Invalid Date"}:{},inst:r}),n}});function bo(r,t,n){r.issues.length&&t.issues.push(...he(n,r.issues)),t.value[n]=r.value}const ea=_("$ZodArray",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;if(!Array.isArray(e))return n.issues.push({expected:"array",code:"invalid_type",input:e,inst:r}),n;n.value=Array(e.length);const i=[];for(let s=0;s<e.length;s++){const a=e[s],u=t.element._zod.run({value:a,issues:[]},o);u instanceof Promise?i.push(u.then(c=>bo(c,n,s))):bo(u,n,s)}return i.length?Promise.all(i).then(()=>n):n}});function Mt(r,t,n,o){r.issues.length&&t.issues.push(...he(n,r.issues)),r.value===void 0?n in o&&(t.value[n]=void 0):t.value[n]=r.value}function ta(r){const t=Object.keys(r.shape);for(const o of t)if(!r.shape?.[o]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${o}": expected a Zod schema`);const n=Qo(r.shape);return{...r,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function ra(r,t,n,o,e,i){const s=[],a=e.keySet,u=e.catchall._zod,c=u.def.type;for(const l of Object.keys(t)){if(a.has(l))continue;if(c==="never"){s.push(l);continue}const d=u.run({value:t[l],issues:[]},o);d instanceof Promise?r.push(d.then(h=>Mt(h,n,l,t))):Mt(d,n,l,t)}return s.length&&n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:i}),r.length?Promise.all(r).then(()=>n):n}const na=_("$ZodObject",(r,t)=>{if(T.init(r,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const u={...a};return Object.defineProperty(t,"shape",{value:u}),u}})}const o=ft(()=>ta(t));P(r._zod,"propValues",()=>{const a=t.shape,u={};for(const c in a){const l=a[c]._zod;if(l.values){u[c]??(u[c]=new Set);for(const d of l.values)u[c].add(d)}}return u});const e=We,i=t.catchall;let s;r._zod.parse=(a,u)=>{s??(s=o.value);const c=a.value;if(!e(c))return a.issues.push({expected:"object",code:"invalid_type",input:c,inst:r}),a;a.value={};const l=[],d=s.shape;for(const h of s.keys){const p=d[h]._zod.run({value:c[h],issues:[]},u);p instanceof Promise?l.push(p.then(g=>Mt(g,a,h,c))):Mt(p,a,h,c)}return i?ra(l,c,a,u,o.value,r):l.length?Promise.all(l).then(()=>a):a}}),oa=_("$ZodObjectJIT",(r,t)=>{na.init(r,t);const n=r._zod.parse,o=ft(()=>ta(t)),e=h=>{const m=new hs(["shape","payload","ctx"]),p=o.value,g=z=>{const S=fr(z);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};m.write("const input = payload.value;");const v=Object.create(null);let $=0;for(const z of p.keys)v[z]=`key_${$++}`;m.write("const newResult = {};");for(const z of p.keys){const S=v[z],A=fr(z);m.write(`const ${S} = ${g(z)};`),m.write(`
|
|
5
|
-
if (${S}.issues.length) {
|
|
6
|
-
payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
|
|
7
|
-
...iss,
|
|
8
|
-
path: iss.path ? [${A}, ...iss.path] : [${A}]
|
|
9
|
-
})));
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
if (${S}.value === undefined) {
|
|
14
|
-
if (${A} in input) {
|
|
15
|
-
newResult[${A}] = undefined;
|
|
16
|
-
}
|
|
17
|
-
} else {
|
|
18
|
-
newResult[${A}] = ${S}.value;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
`)}m.write("payload.value = newResult;"),m.write("return payload;");const b=m.compile();return(z,S)=>b(h,z,S)};let i;const s=We,a=!Lt.jitless,c=a&&Yo.value,l=t.catchall;let d;r._zod.parse=(h,m)=>{d??(d=o.value);const p=h.value;return s(p)?a&&c&&m?.async===!1&&m.jitless!==!0?(i||(i=e(t.shape)),h=i(h,m),l?ra([],p,h,m,d,r):h):n(h,m):(h.issues.push({expected:"object",code:"invalid_type",input:p,inst:r}),h)}});function xo(r,t,n,o){for(const i of r)if(i.issues.length===0)return t.value=i.value,t;const e=r.filter(i=>!Fe(i));return e.length===1?(t.value=e[0].value,e[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:r.map(i=>i.issues.map(s=>ve(s,o,ce())))}),t)}const Kr=_("$ZodUnion",(r,t)=>{T.init(r,t),P(r._zod,"optin",()=>t.options.some(e=>e._zod.optin==="optional")?"optional":void 0),P(r._zod,"optout",()=>t.options.some(e=>e._zod.optout==="optional")?"optional":void 0),P(r._zod,"values",()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),P(r._zod,"pattern",()=>{if(t.options.every(e=>e._zod.pattern)){const e=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${e.map(i=>Yt(i.source)).join("|")})$`)}});const n=t.options.length===1,o=t.options[0]._zod.run;r._zod.parse=(e,i)=>{if(n)return o(e,i);let s=!1;const a=[];for(const u of t.options){const c=u._zod.run({value:e.value,issues:[]},i);if(c instanceof Promise)a.push(c),s=!0;else{if(c.issues.length===0)return c;a.push(c)}}return s?Promise.all(a).then(u=>xo(u,e,r,i)):xo(a,e,r,i)}}),ia=_("$ZodDiscriminatedUnion",(r,t)=>{Kr.init(r,t);const n=r._zod.parse;P(r._zod,"propValues",()=>{const e={};for(const i of t.options){const s=i._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const[a,u]of Object.entries(s)){e[a]||(e[a]=new Set);for(const c of u)e[a].add(c)}}return e});const o=ft(()=>{const e=t.options,i=new Map;for(const s of e){const a=s._zod.propValues?.[t.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(const u of a){if(i.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);i.set(u,s)}}return i});r._zod.parse=(e,i)=>{const s=e.value;if(!We(s))return e.issues.push({code:"invalid_type",expected:"object",input:s,inst:r}),e;const a=o.value.get(s?.[t.discriminator]);return a?a._zod.run(e,i):t.unionFallback?n(e,i):(e.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:r}),e)}}),sa=_("$ZodIntersection",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value,i=t.left._zod.run({value:e,issues:[]},o),s=t.right._zod.run({value:e,issues:[]},o);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([u,c])=>$o(n,u,c)):$o(n,i,s)}});function yr(r,t){if(r===t)return{valid:!0,data:r};if(r instanceof Date&&t instanceof Date&&+r==+t)return{valid:!0,data:r};if(qe(r)&&qe(t)){const n=Object.keys(t),o=Object.keys(r).filter(i=>n.indexOf(i)!==-1),e={...r,...t};for(const i of o){const s=yr(r[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};e[i]=s.data}return{valid:!0,data:e}}if(Array.isArray(r)&&Array.isArray(t)){if(r.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let o=0;o<r.length;o++){const e=r[o],i=t[o],s=yr(e,i);if(!s.valid)return{valid:!1,mergeErrorPath:[o,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function $o(r,t,n){if(t.issues.length&&r.issues.push(...t.issues),n.issues.length&&r.issues.push(...n.issues),Fe(r))return r;const o=yr(t.value,n.value);if(!o.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return r.value=o.data,r}const Yr=_("$ZodTuple",(r,t)=>{T.init(r,t);const n=t.items,o=n.length-[...n].reverse().findIndex(e=>e._zod.optin!=="optional");r._zod.parse=(e,i)=>{const s=e.value;if(!Array.isArray(s))return e.issues.push({input:s,inst:r,expected:"tuple",code:"invalid_type"}),e;e.value=[];const a=[];if(!t.rest){const c=s.length>n.length,l=s.length<o-1;if(c||l)return e.issues.push({...c?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},input:s,inst:r,origin:"array"}),e}let u=-1;for(const c of n){if(u++,u>=s.length&&u>=o)continue;const l=c._zod.run({value:s[u],issues:[]},i);l instanceof Promise?a.push(l.then(d=>jt(d,e,u))):jt(l,e,u)}if(t.rest){const c=s.slice(n.length);for(const l of c){u++;const d=t.rest._zod.run({value:l,issues:[]},i);d instanceof Promise?a.push(d.then(h=>jt(h,e,u))):jt(d,e,u)}}return a.length?Promise.all(a).then(()=>e):e}});function jt(r,t,n){r.issues.length&&t.issues.push(...he(n,r.issues)),t.value[n]=r.value}const aa=_("$ZodRecord",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;if(!qe(e))return n.issues.push({expected:"record",code:"invalid_type",input:e,inst:r}),n;const i=[];if(t.keyType._zod.values){const s=t.keyType._zod.values;n.value={};for(const u of s)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){const c=t.valueType._zod.run({value:e[u],issues:[]},o);c instanceof Promise?i.push(c.then(l=>{l.issues.length&&n.issues.push(...he(u,l.issues)),n.value[u]=l.value})):(c.issues.length&&n.issues.push(...he(u,c.issues)),n.value[u]=c.value)}let a;for(const u in e)s.has(u)||(a=a??[],a.push(u));a&&a.length>0&&n.issues.push({code:"unrecognized_keys",input:e,inst:r,keys:a})}else{n.value={};for(const s of Reflect.ownKeys(e)){if(s==="__proto__")continue;const a=t.keyType._zod.run({value:s,issues:[]},o);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:a.issues.map(c=>ve(c,o,ce())),input:s,path:[s],inst:r}),n.value[a.value]=a.value;continue}const u=t.valueType._zod.run({value:e[s],issues:[]},o);u instanceof Promise?i.push(u.then(c=>{c.issues.length&&n.issues.push(...he(s,c.issues)),n.value[a.value]=c.value})):(u.issues.length&&n.issues.push(...he(s,u.issues)),n.value[a.value]=u.value)}}return i.length?Promise.all(i).then(()=>n):n}}),ua=_("$ZodMap",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;if(!(e instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:e,inst:r}),n;const i=[];n.value=new Map;for(const[s,a]of e){const u=t.keyType._zod.run({value:s,issues:[]},o),c=t.valueType._zod.run({value:a,issues:[]},o);u instanceof Promise||c instanceof Promise?i.push(Promise.all([u,c]).then(([l,d])=>{wo(l,d,n,s,e,r,o)})):wo(u,c,n,s,e,r,o)}return i.length?Promise.all(i).then(()=>n):n}});function wo(r,t,n,o,e,i,s){r.issues.length&&(Zt.has(typeof o)?n.issues.push(...he(o,r.issues)):n.issues.push({code:"invalid_key",origin:"map",input:e,inst:i,issues:r.issues.map(a=>ve(a,s,ce()))})),t.issues.length&&(Zt.has(typeof o)?n.issues.push(...he(o,t.issues)):n.issues.push({origin:"map",code:"invalid_element",input:e,inst:i,key:o,issues:t.issues.map(a=>ve(a,s,ce()))})),n.value.set(r.value,t.value)}const ca=_("$ZodSet",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;if(!(e instanceof Set))return n.issues.push({input:e,inst:r,expected:"set",code:"invalid_type"}),n;const i=[];n.value=new Set;for(const s of e){const a=t.valueType._zod.run({value:s,issues:[]},o);a instanceof Promise?i.push(a.then(u=>Io(u,n))):Io(a,n)}return i.length?Promise.all(i).then(()=>n):n}});function Io(r,t){r.issues.length&&t.issues.push(...r.issues),t.value.add(r.value)}const pa=_("$ZodEnum",(r,t)=>{T.init(r,t);const n=Or(t.entries),o=new Set(n);r._zod.values=o,r._zod.pattern=new RegExp(`^(${n.filter(e=>Zt.has(typeof e)).map(e=>typeof e=="string"?Re(e):e.toString()).join("|")})$`),r._zod.parse=(e,i)=>{const s=e.value;return o.has(s)||e.issues.push({code:"invalid_value",values:n,input:s,inst:r}),e}}),la=_("$ZodLiteral",(r,t)=>{if(T.init(r,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");r._zod.values=new Set(t.values),r._zod.pattern=new RegExp(`^(${t.values.map(n=>typeof n=="string"?Re(n):n?Re(n.toString()):String(n)).join("|")})$`),r._zod.parse=(n,o)=>{const e=n.value;return r._zod.values.has(e)||n.issues.push({code:"invalid_value",values:t.values,input:e,inst:r}),n}}),_a=_("$ZodFile",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{const e=n.value;return e instanceof File||n.issues.push({expected:"file",code:"invalid_type",input:e,inst:r}),n}}),da=_("$ZodTransform",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{if(o.direction==="backward")throw new Kt(r.constructor.name);const e=t.transform(n.value,n);if(o.async)return(e instanceof Promise?e:Promise.resolve(e)).then(s=>(n.value=s,n));if(e instanceof Promise)throw new Me;return n.value=e,n}});function So(r,t){return r.issues.length&&t===void 0?{issues:[],value:void 0}:r}const ma=_("$ZodOptional",(r,t)=>{T.init(r,t),r._zod.optin="optional",r._zod.optout="optional",P(r._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),P(r._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Yt(n.source)})?$`):void 0}),r._zod.parse=(n,o)=>{if(t.innerType._zod.optin==="optional"){const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(i=>So(i,n.value)):So(e,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,o)}}),ga=_("$ZodNullable",(r,t)=>{T.init(r,t),P(r._zod,"optin",()=>t.innerType._zod.optin),P(r._zod,"optout",()=>t.innerType._zod.optout),P(r._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Yt(n.source)}|null)$`):void 0}),P(r._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),r._zod.parse=(n,o)=>n.value===null?n:t.innerType._zod.run(n,o)}),ha=_("$ZodDefault",(r,t)=>{T.init(r,t),r._zod.optin="optional",P(r._zod,"values",()=>t.innerType._zod.values),r._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);if(n.value===void 0)return n.value=t.defaultValue,n;const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(i=>zo(i,t)):zo(e,t)}});function zo(r,t){return r.value===void 0&&(r.value=t.defaultValue),r}const fa=_("$ZodPrefault",(r,t)=>{T.init(r,t),r._zod.optin="optional",P(r._zod,"values",()=>t.innerType._zod.values),r._zod.parse=(n,o)=>(o.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,o))}),va=_("$ZodNonOptional",(r,t)=>{T.init(r,t),P(r._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(o=>o!==void 0)):void 0}),r._zod.parse=(n,o)=>{const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(i=>Oo(i,r)):Oo(e,r)}});function Oo(r,t){return!r.issues.length&&r.value===void 0&&r.issues.push({code:"invalid_type",expected:"nonoptional",input:r.value,inst:t}),r}const ka=_("$ZodSuccess",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>{if(o.direction==="backward")throw new Kt("ZodSuccess");const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(i=>(n.value=i.issues.length===0,n)):(n.value=e.issues.length===0,n)}}),ya=_("$ZodCatch",(r,t)=>{T.init(r,t),P(r._zod,"optin",()=>t.innerType._zod.optin),P(r._zod,"optout",()=>t.innerType._zod.optout),P(r._zod,"values",()=>t.innerType._zod.values),r._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(i=>(n.value=i.value,i.issues.length&&(n.value=t.catchValue({...n,error:{issues:i.issues.map(s=>ve(s,o,ce()))},input:n.value}),n.issues=[]),n)):(n.value=e.value,e.issues.length&&(n.value=t.catchValue({...n,error:{issues:e.issues.map(i=>ve(i,o,ce()))},input:n.value}),n.issues=[]),n)}}),ba=_("$ZodNaN",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>((typeof n.value!="number"||!Number.isNaN(n.value))&&n.issues.push({input:n.value,inst:r,expected:"nan",code:"invalid_type"}),n)}),xa=_("$ZodPipe",(r,t)=>{T.init(r,t),P(r._zod,"values",()=>t.in._zod.values),P(r._zod,"optin",()=>t.in._zod.optin),P(r._zod,"optout",()=>t.out._zod.optout),P(r._zod,"propValues",()=>t.in._zod.propValues),r._zod.parse=(n,o)=>{if(o.direction==="backward"){const i=t.out._zod.run(n,o);return i instanceof Promise?i.then(s=>At(s,t.in,o)):At(i,t.in,o)}const e=t.in._zod.run(n,o);return e instanceof Promise?e.then(i=>At(i,t.out,o)):At(e,t.out,o)}});function At(r,t,n){return r.issues.length?(r.aborted=!0,r):t._zod.run({value:r.value,issues:r.issues},n)}const Xr=_("$ZodCodec",(r,t)=>{T.init(r,t),P(r._zod,"values",()=>t.in._zod.values),P(r._zod,"optin",()=>t.in._zod.optin),P(r._zod,"optout",()=>t.out._zod.optout),P(r._zod,"propValues",()=>t.in._zod.propValues),r._zod.parse=(n,o)=>{if((o.direction||"forward")==="forward"){const i=t.in._zod.run(n,o);return i instanceof Promise?i.then(s=>Ut(s,t,o)):Ut(i,t,o)}else{const i=t.out._zod.run(n,o);return i instanceof Promise?i.then(s=>Ut(s,t,o)):Ut(i,t,o)}}});function Ut(r,t,n){if(r.issues.length)return r.aborted=!0,r;if((n.direction||"forward")==="forward"){const e=t.transform(r.value,r);return e instanceof Promise?e.then(i=>Pt(r,i,t.out,n)):Pt(r,e,t.out,n)}else{const e=t.reverseTransform(r.value,r);return e instanceof Promise?e.then(i=>Pt(r,i,t.in,n)):Pt(r,e,t.in,n)}}function Pt(r,t,n,o){return r.issues.length?(r.aborted=!0,r):n._zod.run({value:t,issues:r.issues},o)}const $a=_("$ZodReadonly",(r,t)=>{T.init(r,t),P(r._zod,"propValues",()=>t.innerType._zod.propValues),P(r._zod,"values",()=>t.innerType._zod.values),P(r._zod,"optin",()=>t.innerType._zod.optin),P(r._zod,"optout",()=>t.innerType._zod.optout),r._zod.parse=(n,o)=>{if(o.direction==="backward")return t.innerType._zod.run(n,o);const e=t.innerType._zod.run(n,o);return e instanceof Promise?e.then(To):To(e)}});function To(r){return r.value=Object.freeze(r.value),r}const wa=_("$ZodTemplateLiteral",(r,t)=>{T.init(r,t);const n=[];for(const o of t.parts)if(typeof o=="object"&&o!==null){if(!o._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...o._zod.traits].shift()}`);const e=o._zod.pattern instanceof RegExp?o._zod.pattern.source:o._zod.pattern;if(!e)throw new Error(`Invalid template literal part: ${o._zod.traits}`);const i=e.startsWith("^")?1:0,s=e.endsWith("$")?e.length-1:e.length;n.push(e.slice(i,s))}else if(o===null||Xo.has(typeof o))n.push(Re(`${o}`));else throw new Error(`Invalid template literal part: ${o}`);r._zod.pattern=new RegExp(`^${n.join("")}$`),r._zod.parse=(o,e)=>typeof o.value!="string"?(o.issues.push({input:o.value,inst:r,expected:"template_literal",code:"invalid_type"}),o):(r._zod.pattern.lastIndex=0,r._zod.pattern.test(o.value)||o.issues.push({input:o.value,inst:r,code:"invalid_format",format:t.format??"template_literal",pattern:r._zod.pattern.source}),o)}),Ia=_("$ZodFunction",(r,t)=>(T.init(r,t),r._def=t,r._zod.def=t,r.implement=n=>{if(typeof n!="function")throw new Error("implement() must be called with a function");return function(...o){const e=r._def.input?vr(r._def.input,o):o,i=Reflect.apply(n,this,e);return r._def.output?vr(r._def.output,i):i}},r.implementAsync=n=>{if(typeof n!="function")throw new Error("implementAsync() must be called with a function");return async function(...o){const e=r._def.input?await kr(r._def.input,o):o,i=await Reflect.apply(n,this,e);return r._def.output?await kr(r._def.output,i):i}},r._zod.parse=(n,o)=>typeof n.value!="function"?(n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:r}),n):(r._def.output&&r._def.output._zod.def.type==="promise"?n.value=r.implementAsync(n.value):n.value=r.implement(n.value),n),r.input=(...n)=>{const o=r.constructor;return Array.isArray(n[0])?new o({type:"function",input:new Yr({type:"tuple",items:n[0],rest:n[1]}),output:r._def.output}):new o({type:"function",input:n[0],output:r._def.output})},r.output=n=>{const o=r.constructor;return new o({type:"function",input:r._def.input,output:n})},r)),Sa=_("$ZodPromise",(r,t)=>{T.init(r,t),r._zod.parse=(n,o)=>Promise.resolve(n.value).then(e=>t.innerType._zod.run({value:e,issues:[]},o))}),za=_("$ZodLazy",(r,t)=>{T.init(r,t),P(r._zod,"innerType",()=>t.getter()),P(r._zod,"pattern",()=>r._zod.innerType._zod.pattern),P(r._zod,"propValues",()=>r._zod.innerType._zod.propValues),P(r._zod,"optin",()=>r._zod.innerType._zod.optin??void 0),P(r._zod,"optout",()=>r._zod.innerType._zod.optout??void 0),r._zod.parse=(n,o)=>r._zod.innerType._zod.run(n,o)}),Oa=_("$ZodCustom",(r,t)=>{G.init(r,t),T.init(r,t),r._zod.parse=(n,o)=>n,r._zod.check=n=>{const o=n.value,e=t.fn(o);if(e instanceof Promise)return e.then(i=>Eo(i,n,o,r));Eo(e,n,o,r)}});function Eo(r,t,n,o){if(!r){const e={code:"custom",input:n,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};o._zod.def.params&&(e.params=o._zod.def.params),t.issues.push(Ke(e))}}const Ep=()=>{const r={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"};return e=>{switch(e.code){case"invalid_type":return`مدخلات غير مقبولة: يفترض إدخال ${e.expected}، ولكن تم إدخال ${n(e.input)}`;case"invalid_value":return e.values.length===1?`مدخلات غير مقبولة: يفترض إدخال ${O(e.values[0])}`:`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?` أكبر من اللازم: يفترض أن تكون ${e.origin??"القيمة"} ${i} ${e.maximum.toString()} ${s.unit??"عنصر"}`:`أكبر من اللازم: يفترض أن تكون ${e.origin??"القيمة"} ${i} ${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${i} ${e.minimum.toString()} ${s.unit}`:`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${i} ${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`نَص غير مقبول: يجب أن يبدأ بـ "${e.prefix}"`:i.format==="ends_with"?`نَص غير مقبول: يجب أن ينتهي بـ "${i.suffix}"`:i.format==="includes"?`نَص غير مقبول: يجب أن يتضمَّن "${i.includes}"`:i.format==="regex"?`نَص غير مقبول: يجب أن يطابق النمط ${i.pattern}`:`${o[i.format]??e.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${e.divisor}`;case"unrecognized_keys":return`معرف${e.keys.length>1?"ات":""} غريب${e.keys.length>1?"ة":""}: ${y(e.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${e.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${e.origin}`;default:return"مدخل غير مقبول"}}};function Np(){return{localeError:Ep()}}const jp=()=>{const r={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`Yanlış dəyər: gözlənilən ${e.expected}, daxil olan ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Yanlış dəyər: gözlənilən ${O(e.values[0])}`:`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Çox böyük: gözlənilən ${e.origin??"dəyər"} ${i}${e.maximum.toString()} ${s.unit??"element"}`:`Çox böyük: gözlənilən ${e.origin??"dəyər"} ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Çox kiçik: gözlənilən ${e.origin} ${i}${e.minimum.toString()} ${s.unit}`:`Çox kiçik: gözlənilən ${e.origin} ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Yanlış mətn: "${i.prefix}" ilə başlamalıdır`:i.format==="ends_with"?`Yanlış mətn: "${i.suffix}" ilə bitməlidir`:i.format==="includes"?`Yanlış mətn: "${i.includes}" daxil olmalıdır`:i.format==="regex"?`Yanlış mətn: ${i.pattern} şablonuna uyğun olmalıdır`:`Yanlış ${o[i.format]??e.format}`}case"not_multiple_of":return`Yanlış ədəd: ${e.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${e.keys.length>1?"lar":""}: ${y(e.keys,", ")}`;case"invalid_key":return`${e.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${e.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}};function Ap(){return{localeError:jp()}}function No(r,t,n,o){const e=Math.abs(r),i=e%10,s=e%100;return s>=11&&s<=19?o:i===1?t:i>=2&&i<=4?n:o}const Up=()=>{const r={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"лік";case"object":{if(Array.isArray(e))return"масіў";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"};return e=>{switch(e.code){case"invalid_type":return`Няправільны ўвод: чакаўся ${e.expected}, атрымана ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Няправільны ўвод: чакалася ${O(e.values[0])}`:`Няправільны варыянт: чакаўся адзін з ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);if(s){const a=Number(e.maximum),u=No(a,s.unit.one,s.unit.few,s.unit.many);return`Занадта вялікі: чакалася, што ${e.origin??"значэнне"} павінна ${s.verb} ${i}${e.maximum.toString()} ${u}`}return`Занадта вялікі: чакалася, што ${e.origin??"значэнне"} павінна быць ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);if(s){const a=Number(e.minimum),u=No(a,s.unit.one,s.unit.few,s.unit.many);return`Занадта малы: чакалася, што ${e.origin} павінна ${s.verb} ${i}${e.minimum.toString()} ${u}`}return`Занадта малы: чакалася, што ${e.origin} павінна быць ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Няправільны радок: павінен пачынацца з "${i.prefix}"`:i.format==="ends_with"?`Няправільны радок: павінен заканчвацца на "${i.suffix}"`:i.format==="includes"?`Няправільны радок: павінен змяшчаць "${i.includes}"`:i.format==="regex"?`Няправільны радок: павінен адпавядаць шаблону ${i.pattern}`:`Няправільны ${o[i.format]??e.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${e.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${e.keys.length>1?"ключы":"ключ"}: ${y(e.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${e.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${e.origin}`;default:return"Няправільны ўвод"}}};function Pp(){return{localeError:Up()}}const Dp=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"число";case"object":{if(Array.isArray(r))return"масив";if(r===null)return"null";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return t},Rp=()=>{const r={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(o){return r[o]??null}const n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"};return o=>{switch(o.code){case"invalid_type":return`Невалиден вход: очакван ${o.expected}, получен ${Dp(o.input)}`;case"invalid_value":return o.values.length===1?`Невалиден вход: очакван ${O(o.values[0])}`:`Невалидна опция: очаквано едно от ${y(o.values,"|")}`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`Твърде голямо: очаква се ${o.origin??"стойност"} да съдържа ${e}${o.maximum.toString()} ${i.unit??"елемента"}`:`Твърде голямо: очаква се ${o.origin??"стойност"} да бъде ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`Твърде малко: очаква се ${o.origin} да съдържа ${e}${o.minimum.toString()} ${i.unit}`:`Твърде малко: очаква се ${o.origin} да бъде ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;if(e.format==="starts_with")return`Невалиден низ: трябва да започва с "${e.prefix}"`;if(e.format==="ends_with")return`Невалиден низ: трябва да завършва с "${e.suffix}"`;if(e.format==="includes")return`Невалиден низ: трябва да включва "${e.includes}"`;if(e.format==="regex")return`Невалиден низ: трябва да съвпада с ${e.pattern}`;let i="Невалиден";return e.format==="emoji"&&(i="Невалидно"),e.format==="datetime"&&(i="Невалидно"),e.format==="date"&&(i="Невалидна"),e.format==="time"&&(i="Невалидно"),e.format==="duration"&&(i="Невалидна"),`${i} ${n[e.format]??o.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${o.divisor}`;case"unrecognized_keys":return`Неразпознат${o.keys.length>1?"и":""} ключ${o.keys.length>1?"ове":""}: ${y(o.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${o.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${o.origin}`;default:return"Невалиден вход"}}};function Cp(){return{localeError:Rp()}}const Lp=()=>{const r={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"};return e=>{switch(e.code){case"invalid_type":return`Tipus invàlid: s'esperava ${e.expected}, s'ha rebut ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Valor invàlid: s'esperava ${O(e.values[0])}`:`Opció invàlida: s'esperava una de ${y(e.values," o ")}`;case"too_big":{const i=e.inclusive?"com a màxim":"menys de",s=t(e.origin);return s?`Massa gran: s'esperava que ${e.origin??"el valor"} contingués ${i} ${e.maximum.toString()} ${s.unit??"elements"}`:`Massa gran: s'esperava que ${e.origin??"el valor"} fos ${i} ${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?"com a mínim":"més de",s=t(e.origin);return s?`Massa petit: s'esperava que ${e.origin} contingués ${i} ${e.minimum.toString()} ${s.unit}`:`Massa petit: s'esperava que ${e.origin} fos ${i} ${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Format invàlid: ha de començar amb "${i.prefix}"`:i.format==="ends_with"?`Format invàlid: ha d'acabar amb "${i.suffix}"`:i.format==="includes"?`Format invàlid: ha d'incloure "${i.includes}"`:i.format==="regex"?`Format invàlid: ha de coincidir amb el patró ${i.pattern}`:`Format invàlid per a ${o[i.format]??e.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${e.divisor}`;case"unrecognized_keys":return`Clau${e.keys.length>1?"s":""} no reconeguda${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${e.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${e.origin}`;default:return"Entrada invàlida"}}};function Fp(){return{localeError:Lp()}}const Zp=()=>{const r={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"číslo";case"string":return"řetězec";case"boolean":return"boolean";case"bigint":return"bigint";case"function":return"funkce";case"symbol":return"symbol";case"undefined":return"undefined";case"object":{if(Array.isArray(e))return"pole";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"};return e=>{switch(e.code){case"invalid_type":return`Neplatný vstup: očekáváno ${e.expected}, obdrženo ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Neplatný vstup: očekáváno ${O(e.values[0])}`:`Neplatná možnost: očekávána jedna z hodnot ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Hodnota je příliš velká: ${e.origin??"hodnota"} musí mít ${i}${e.maximum.toString()} ${s.unit??"prvků"}`:`Hodnota je příliš velká: ${e.origin??"hodnota"} musí být ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Hodnota je příliš malá: ${e.origin??"hodnota"} musí mít ${i}${e.minimum.toString()} ${s.unit??"prvků"}`:`Hodnota je příliš malá: ${e.origin??"hodnota"} musí být ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Neplatný řetězec: musí začínat na "${i.prefix}"`:i.format==="ends_with"?`Neplatný řetězec: musí končit na "${i.suffix}"`:i.format==="includes"?`Neplatný řetězec: musí obsahovat "${i.includes}"`:i.format==="regex"?`Neplatný řetězec: musí odpovídat vzoru ${i.pattern}`:`Neplatný formát ${o[i.format]??e.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${e.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${y(e.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${e.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${e.origin}`;default:return"Neplatný vstup"}}};function Mp(){return{localeError:Zp()}}const qp=()=>{const r={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}},t={string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};function n(s){return r[s]??null}function o(s){return t[s]??s}const e=s=>{const a=typeof s;switch(a){case"number":return Number.isNaN(s)?"NaN":"tal";case"object":return Array.isArray(s)?"liste":s===null?"null":Object.getPrototypeOf(s)!==Object.prototype&&s.constructor?s.constructor.name:"objekt"}return a},i={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"};return s=>{switch(s.code){case"invalid_type":return`Ugyldigt input: forventede ${o(s.expected)}, fik ${o(e(s.input))}`;case"invalid_value":return s.values.length===1?`Ugyldig værdi: forventede ${O(s.values[0])}`:`Ugyldigt valg: forventede en af følgende ${y(s.values,"|")}`;case"too_big":{const a=s.inclusive?"<=":"<",u=n(s.origin),c=o(s.origin);return u?`For stor: forventede ${c??"value"} ${u.verb} ${a} ${s.maximum.toString()} ${u.unit??"elementer"}`:`For stor: forventede ${c??"value"} havde ${a} ${s.maximum.toString()}`}case"too_small":{const a=s.inclusive?">=":">",u=n(s.origin),c=o(s.origin);return u?`For lille: forventede ${c} ${u.verb} ${a} ${s.minimum.toString()} ${u.unit}`:`For lille: forventede ${c} havde ${a} ${s.minimum.toString()}`}case"invalid_format":{const a=s;return a.format==="starts_with"?`Ugyldig streng: skal starte med "${a.prefix}"`:a.format==="ends_with"?`Ugyldig streng: skal ende med "${a.suffix}"`:a.format==="includes"?`Ugyldig streng: skal indeholde "${a.includes}"`:a.format==="regex"?`Ugyldig streng: skal matche mønsteret ${a.pattern}`:`Ugyldig ${i[a.format]??s.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${s.divisor}`;case"unrecognized_keys":return`${s.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${y(s.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${s.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${s.origin}`;default:return"Ugyldigt input"}}};function Bp(){return{localeError:qp()}}const Jp=()=>{const r={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"Zahl";case"object":{if(Array.isArray(e))return"Array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"};return e=>{switch(e.code){case"invalid_type":return`Ungültige Eingabe: erwartet ${e.expected}, erhalten ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Ungültige Eingabe: erwartet ${O(e.values[0])}`:`Ungültige Option: erwartet eine von ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Zu groß: erwartet, dass ${e.origin??"Wert"} ${i}${e.maximum.toString()} ${s.unit??"Elemente"} hat`:`Zu groß: erwartet, dass ${e.origin??"Wert"} ${i}${e.maximum.toString()} ist`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Zu klein: erwartet, dass ${e.origin} ${i}${e.minimum.toString()} ${s.unit} hat`:`Zu klein: erwartet, dass ${e.origin} ${i}${e.minimum.toString()} ist`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Ungültiger String: muss mit "${i.prefix}" beginnen`:i.format==="ends_with"?`Ungültiger String: muss mit "${i.suffix}" enden`:i.format==="includes"?`Ungültiger String: muss "${i.includes}" enthalten`:i.format==="regex"?`Ungültiger String: muss dem Muster ${i.pattern} entsprechen`:`Ungültig: ${o[i.format]??e.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${e.divisor} sein`;case"unrecognized_keys":return`${e.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${y(e.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${e.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${e.origin}`;default:return"Ungültige Eingabe"}}};function Gp(){return{localeError:Jp()}}const Vp=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"number";case"object":{if(Array.isArray(r))return"array";if(r===null)return"null";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return t},Hp=()=>{const r={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function t(o){return r[o]??null}const n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return o=>{switch(o.code){case"invalid_type":return`Invalid input: expected ${o.expected}, received ${Vp(o.input)}`;case"invalid_value":return o.values.length===1?`Invalid input: expected ${O(o.values[0])}`:`Invalid option: expected one of ${y(o.values,"|")}`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`Too big: expected ${o.origin??"value"} to have ${e}${o.maximum.toString()} ${i.unit??"elements"}`:`Too big: expected ${o.origin??"value"} to be ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`Too small: expected ${o.origin} to have ${e}${o.minimum.toString()} ${i.unit}`:`Too small: expected ${o.origin} to be ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`Invalid string: must start with "${e.prefix}"`:e.format==="ends_with"?`Invalid string: must end with "${e.suffix}"`:e.format==="includes"?`Invalid string: must include "${e.includes}"`:e.format==="regex"?`Invalid string: must match pattern ${e.pattern}`:`Invalid ${n[e.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${y(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function Ta(){return{localeError:Hp()}}const Wp=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"nombro";case"object":{if(Array.isArray(r))return"tabelo";if(r===null)return"senvalora";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return t},Kp=()=>{const r={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(o){return r[o]??null}const n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"};return o=>{switch(o.code){case"invalid_type":return`Nevalida enigo: atendiĝis ${o.expected}, riceviĝis ${Wp(o.input)}`;case"invalid_value":return o.values.length===1?`Nevalida enigo: atendiĝis ${O(o.values[0])}`:`Nevalida opcio: atendiĝis unu el ${y(o.values,"|")}`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`Tro granda: atendiĝis ke ${o.origin??"valoro"} havu ${e}${o.maximum.toString()} ${i.unit??"elementojn"}`:`Tro granda: atendiĝis ke ${o.origin??"valoro"} havu ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`Tro malgranda: atendiĝis ke ${o.origin} havu ${e}${o.minimum.toString()} ${i.unit}`:`Tro malgranda: atendiĝis ke ${o.origin} estu ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`Nevalida karaktraro: devas komenciĝi per "${e.prefix}"`:e.format==="ends_with"?`Nevalida karaktraro: devas finiĝi per "${e.suffix}"`:e.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${e.includes}"`:e.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${e.pattern}`:`Nevalida ${n[e.format]??o.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${o.divisor}`;case"unrecognized_keys":return`Nekonata${o.keys.length>1?"j":""} ŝlosilo${o.keys.length>1?"j":""}: ${y(o.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${o.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${o.origin}`;default:return"Nevalida enigo"}}};function Yp(){return{localeError:Kp()}}const Xp=()=>{const r={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}},t={string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};function n(s){return r[s]??null}function o(s){return t[s]??s}const e=s=>{const a=typeof s;switch(a){case"number":return Number.isNaN(s)?"NaN":"number";case"object":return Array.isArray(s)?"array":s===null?"null":Object.getPrototypeOf(s)!==Object.prototype?s.constructor.name:"object"}return a},i={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"};return s=>{switch(s.code){case"invalid_type":return`Entrada inválida: se esperaba ${o(s.expected)}, recibido ${o(e(s.input))}`;case"invalid_value":return s.values.length===1?`Entrada inválida: se esperaba ${O(s.values[0])}`:`Opción inválida: se esperaba una de ${y(s.values,"|")}`;case"too_big":{const a=s.inclusive?"<=":"<",u=n(s.origin),c=o(s.origin);return u?`Demasiado grande: se esperaba que ${c??"valor"} tuviera ${a}${s.maximum.toString()} ${u.unit??"elementos"}`:`Demasiado grande: se esperaba que ${c??"valor"} fuera ${a}${s.maximum.toString()}`}case"too_small":{const a=s.inclusive?">=":">",u=n(s.origin),c=o(s.origin);return u?`Demasiado pequeño: se esperaba que ${c} tuviera ${a}${s.minimum.toString()} ${u.unit}`:`Demasiado pequeño: se esperaba que ${c} fuera ${a}${s.minimum.toString()}`}case"invalid_format":{const a=s;return a.format==="starts_with"?`Cadena inválida: debe comenzar con "${a.prefix}"`:a.format==="ends_with"?`Cadena inválida: debe terminar en "${a.suffix}"`:a.format==="includes"?`Cadena inválida: debe incluir "${a.includes}"`:a.format==="regex"?`Cadena inválida: debe coincidir con el patrón ${a.pattern}`:`Inválido ${i[a.format]??s.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${s.divisor}`;case"unrecognized_keys":return`Llave${s.keys.length>1?"s":""} desconocida${s.keys.length>1?"s":""}: ${y(s.keys,", ")}`;case"invalid_key":return`Llave inválida en ${o(s.origin)}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${o(s.origin)}`;default:return"Entrada inválida"}}};function Qp(){return{localeError:Xp()}}const el=()=>{const r={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"عدد";case"object":{if(Array.isArray(e))return"آرایه";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"};return e=>{switch(e.code){case"invalid_type":return`ورودی نامعتبر: میبایست ${e.expected} میبود، ${n(e.input)} دریافت شد`;case"invalid_value":return e.values.length===1?`ورودی نامعتبر: میبایست ${O(e.values[0])} میبود`:`گزینه نامعتبر: میبایست یکی از ${y(e.values,"|")} میبود`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`خیلی بزرگ: ${e.origin??"مقدار"} باید ${i}${e.maximum.toString()} ${s.unit??"عنصر"} باشد`:`خیلی بزرگ: ${e.origin??"مقدار"} باید ${i}${e.maximum.toString()} باشد`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`خیلی کوچک: ${e.origin} باید ${i}${e.minimum.toString()} ${s.unit} باشد`:`خیلی کوچک: ${e.origin} باید ${i}${e.minimum.toString()} باشد`}case"invalid_format":{const i=e;return i.format==="starts_with"?`رشته نامعتبر: باید با "${i.prefix}" شروع شود`:i.format==="ends_with"?`رشته نامعتبر: باید با "${i.suffix}" تمام شود`:i.format==="includes"?`رشته نامعتبر: باید شامل "${i.includes}" باشد`:i.format==="regex"?`رشته نامعتبر: باید با الگوی ${i.pattern} مطابقت داشته باشد`:`${o[i.format]??e.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${e.divisor} باشد`;case"unrecognized_keys":return`کلید${e.keys.length>1?"های":""} ناشناس: ${y(e.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${e.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${e.origin}`;default:return"ورودی نامعتبر"}}};function tl(){return{localeError:el()}}const rl=()=>{const r={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"};return e=>{switch(e.code){case"invalid_type":return`Virheellinen tyyppi: odotettiin ${e.expected}, oli ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Virheellinen syöte: täytyy olla ${O(e.values[0])}`:`Virheellinen valinta: täytyy olla yksi seuraavista: ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Liian suuri: ${s.subject} täytyy olla ${i}${e.maximum.toString()} ${s.unit}`.trim():`Liian suuri: arvon täytyy olla ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Liian pieni: ${s.subject} täytyy olla ${i}${e.minimum.toString()} ${s.unit}`.trim():`Liian pieni: arvon täytyy olla ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Virheellinen syöte: täytyy alkaa "${i.prefix}"`:i.format==="ends_with"?`Virheellinen syöte: täytyy loppua "${i.suffix}"`:i.format==="includes"?`Virheellinen syöte: täytyy sisältää "${i.includes}"`:i.format==="regex"?`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${i.pattern}`:`Virheellinen ${o[i.format]??e.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${e.divisor} monikerta`;case"unrecognized_keys":return`${e.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${y(e.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}};function nl(){return{localeError:rl()}}const ol=()=>{const r={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"nombre";case"object":{if(Array.isArray(e))return"tableau";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"};return e=>{switch(e.code){case"invalid_type":return`Entrée invalide : ${e.expected} attendu, ${n(e.input)} reçu`;case"invalid_value":return e.values.length===1?`Entrée invalide : ${O(e.values[0])} attendu`:`Option invalide : une valeur parmi ${y(e.values,"|")} attendue`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Trop grand : ${e.origin??"valeur"} doit ${s.verb} ${i}${e.maximum.toString()} ${s.unit??"élément(s)"}`:`Trop grand : ${e.origin??"valeur"} doit être ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Trop petit : ${e.origin} doit ${s.verb} ${i}${e.minimum.toString()} ${s.unit}`:`Trop petit : ${e.origin} doit être ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Chaîne invalide : doit commencer par "${i.prefix}"`:i.format==="ends_with"?`Chaîne invalide : doit se terminer par "${i.suffix}"`:i.format==="includes"?`Chaîne invalide : doit inclure "${i.includes}"`:i.format==="regex"?`Chaîne invalide : doit correspondre au modèle ${i.pattern}`:`${o[i.format]??e.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${e.divisor}`;case"unrecognized_keys":return`Clé${e.keys.length>1?"s":""} non reconnue${e.keys.length>1?"s":""} : ${y(e.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${e.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${e.origin}`;default:return"Entrée invalide"}}};function il(){return{localeError:ol()}}const sl=()=>{const r={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"};return e=>{switch(e.code){case"invalid_type":return`Entrée invalide : attendu ${e.expected}, reçu ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Entrée invalide : attendu ${O(e.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"≤":"<",s=t(e.origin);return s?`Trop grand : attendu que ${e.origin??"la valeur"} ait ${i}${e.maximum.toString()} ${s.unit}`:`Trop grand : attendu que ${e.origin??"la valeur"} soit ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?"≥":">",s=t(e.origin);return s?`Trop petit : attendu que ${e.origin} ait ${i}${e.minimum.toString()} ${s.unit}`:`Trop petit : attendu que ${e.origin} soit ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Chaîne invalide : doit commencer par "${i.prefix}"`:i.format==="ends_with"?`Chaîne invalide : doit se terminer par "${i.suffix}"`:i.format==="includes"?`Chaîne invalide : doit inclure "${i.includes}"`:i.format==="regex"?`Chaîne invalide : doit correspondre au motif ${i.pattern}`:`${o[i.format]??e.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${e.divisor}`;case"unrecognized_keys":return`Clé${e.keys.length>1?"s":""} non reconnue${e.keys.length>1?"s":""} : ${y(e.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${e.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${e.origin}`;default:return"Entrée invalide"}}};function al(){return{localeError:sl()}}const ul=()=>{const r={string:{unit:"אותיות",verb:"לכלול"},file:{unit:"בייטים",verb:"לכלול"},array:{unit:"פריטים",verb:"לכלול"},set:{unit:"פריטים",verb:"לכלול"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"קלט",email:"כתובת אימייל",url:"כתובת רשת",emoji:"אימוג'י",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"תאריך וזמן ISO",date:"תאריך ISO",time:"זמן ISO",duration:"משך זמן ISO",ipv4:"כתובת IPv4",ipv6:"כתובת IPv6",cidrv4:"טווח IPv4",cidrv6:"טווח IPv6",base64:"מחרוזת בבסיס 64",base64url:"מחרוזת בבסיס 64 לכתובות רשת",json_string:"מחרוזת JSON",e164:"מספר E.164",jwt:"JWT",template_literal:"קלט"};return e=>{switch(e.code){case"invalid_type":return`קלט לא תקין: צריך ${e.expected}, התקבל ${n(e.input)}`;case"invalid_value":return e.values.length===1?`קלט לא תקין: צריך ${O(e.values[0])}`:`קלט לא תקין: צריך אחת מהאפשרויות ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`גדול מדי: ${e.origin??"value"} צריך להיות ${i}${e.maximum.toString()} ${s.unit??"elements"}`:`גדול מדי: ${e.origin??"value"} צריך להיות ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`קטן מדי: ${e.origin} צריך להיות ${i}${e.minimum.toString()} ${s.unit}`:`קטן מדי: ${e.origin} צריך להיות ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`מחרוזת לא תקינה: חייבת להתחיל ב"${i.prefix}"`:i.format==="ends_with"?`מחרוזת לא תקינה: חייבת להסתיים ב "${i.suffix}"`:i.format==="includes"?`מחרוזת לא תקינה: חייבת לכלול "${i.includes}"`:i.format==="regex"?`מחרוזת לא תקינה: חייבת להתאים לתבנית ${i.pattern}`:`${o[i.format]??e.format} לא תקין`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${e.divisor}`;case"unrecognized_keys":return`מפתח${e.keys.length>1?"ות":""} לא מזוה${e.keys.length>1?"ים":"ה"}: ${y(e.keys,", ")}`;case"invalid_key":return`מפתח לא תקין ב${e.origin}`;case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${e.origin}`;default:return"קלט לא תקין"}}};function cl(){return{localeError:ul()}}const pl=()=>{const r={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"szám";case"object":{if(Array.isArray(e))return"tömb";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"};return e=>{switch(e.code){case"invalid_type":return`Érvénytelen bemenet: a várt érték ${e.expected}, a kapott érték ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Érvénytelen bemenet: a várt érték ${O(e.values[0])}`:`Érvénytelen opció: valamelyik érték várt ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Túl nagy: ${e.origin??"érték"} mérete túl nagy ${i}${e.maximum.toString()} ${s.unit??"elem"}`:`Túl nagy: a bemeneti érték ${e.origin??"érték"} túl nagy: ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Túl kicsi: a bemeneti érték ${e.origin} mérete túl kicsi ${i}${e.minimum.toString()} ${s.unit}`:`Túl kicsi: a bemeneti érték ${e.origin} túl kicsi ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Érvénytelen string: "${i.prefix}" értékkel kell kezdődnie`:i.format==="ends_with"?`Érvénytelen string: "${i.suffix}" értékkel kell végződnie`:i.format==="includes"?`Érvénytelen string: "${i.includes}" értéket kell tartalmaznia`:i.format==="regex"?`Érvénytelen string: ${i.pattern} mintának kell megfelelnie`:`Érvénytelen ${o[i.format]??e.format}`}case"not_multiple_of":return`Érvénytelen szám: ${e.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${e.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${e.origin}`;default:return"Érvénytelen bemenet"}}};function ll(){return{localeError:pl()}}const _l=()=>{const r={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`Input tidak valid: diharapkan ${e.expected}, diterima ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Input tidak valid: diharapkan ${O(e.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Terlalu besar: diharapkan ${e.origin??"value"} memiliki ${i}${e.maximum.toString()} ${s.unit??"elemen"}`:`Terlalu besar: diharapkan ${e.origin??"value"} menjadi ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Terlalu kecil: diharapkan ${e.origin} memiliki ${i}${e.minimum.toString()} ${s.unit}`:`Terlalu kecil: diharapkan ${e.origin} menjadi ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`String tidak valid: harus dimulai dengan "${i.prefix}"`:i.format==="ends_with"?`String tidak valid: harus berakhir dengan "${i.suffix}"`:i.format==="includes"?`String tidak valid: harus menyertakan "${i.includes}"`:i.format==="regex"?`String tidak valid: harus sesuai pola ${i.pattern}`:`${o[i.format]??e.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${e.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${e.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${e.origin}`;default:return"Input tidak valid"}}};function dl(){return{localeError:_l()}}const ml=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"númer";case"object":{if(Array.isArray(r))return"fylki";if(r===null)return"null";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return t},gl=()=>{const r={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(o){return r[o]??null}const n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"};return o=>{switch(o.code){case"invalid_type":return`Rangt gildi: Þú slóst inn ${ml(o.input)} þar sem á að vera ${o.expected}`;case"invalid_value":return o.values.length===1?`Rangt gildi: gert ráð fyrir ${O(o.values[0])}`:`Ógilt val: má vera eitt af eftirfarandi ${y(o.values,"|")}`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`Of stórt: gert er ráð fyrir að ${o.origin??"gildi"} hafi ${e}${o.maximum.toString()} ${i.unit??"hluti"}`:`Of stórt: gert er ráð fyrir að ${o.origin??"gildi"} sé ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`Of lítið: gert er ráð fyrir að ${o.origin} hafi ${e}${o.minimum.toString()} ${i.unit}`:`Of lítið: gert er ráð fyrir að ${o.origin} sé ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`Ógildur strengur: verður að byrja á "${e.prefix}"`:e.format==="ends_with"?`Ógildur strengur: verður að enda á "${e.suffix}"`:e.format==="includes"?`Ógildur strengur: verður að innihalda "${e.includes}"`:e.format==="regex"?`Ógildur strengur: verður að fylgja mynstri ${e.pattern}`:`Rangt ${n[e.format]??o.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${o.divisor}`;case"unrecognized_keys":return`Óþekkt ${o.keys.length>1?"ir lyklar":"ur lykill"}: ${y(o.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${o.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${o.origin}`;default:return"Rangt gildi"}}};function hl(){return{localeError:gl()}}const fl=()=>{const r={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"numero";case"object":{if(Array.isArray(e))return"vettore";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`Input non valido: atteso ${e.expected}, ricevuto ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Input non valido: atteso ${O(e.values[0])}`:`Opzione non valida: atteso uno tra ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Troppo grande: ${e.origin??"valore"} deve avere ${i}${e.maximum.toString()} ${s.unit??"elementi"}`:`Troppo grande: ${e.origin??"valore"} deve essere ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Troppo piccolo: ${e.origin} deve avere ${i}${e.minimum.toString()} ${s.unit}`:`Troppo piccolo: ${e.origin} deve essere ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Stringa non valida: deve iniziare con "${i.prefix}"`:i.format==="ends_with"?`Stringa non valida: deve terminare con "${i.suffix}"`:i.format==="includes"?`Stringa non valida: deve includere "${i.includes}"`:i.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${i.pattern}`:`Invalid ${o[i.format]??e.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${e.divisor}`;case"unrecognized_keys":return`Chiav${e.keys.length>1?"i":"e"} non riconosciut${e.keys.length>1?"e":"a"}: ${y(e.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${e.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${e.origin}`;default:return"Input non valido"}}};function vl(){return{localeError:fl()}}const kl=()=>{const r={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"数値";case"object":{if(Array.isArray(e))return"配列";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"};return e=>{switch(e.code){case"invalid_type":return`無効な入力: ${e.expected}が期待されましたが、${n(e.input)}が入力されました`;case"invalid_value":return e.values.length===1?`無効な入力: ${O(e.values[0])}が期待されました`:`無効な選択: ${y(e.values,"、")}のいずれかである必要があります`;case"too_big":{const i=e.inclusive?"以下である":"より小さい",s=t(e.origin);return s?`大きすぎる値: ${e.origin??"値"}は${e.maximum.toString()}${s.unit??"要素"}${i}必要があります`:`大きすぎる値: ${e.origin??"値"}は${e.maximum.toString()}${i}必要があります`}case"too_small":{const i=e.inclusive?"以上である":"より大きい",s=t(e.origin);return s?`小さすぎる値: ${e.origin}は${e.minimum.toString()}${s.unit}${i}必要があります`:`小さすぎる値: ${e.origin}は${e.minimum.toString()}${i}必要があります`}case"invalid_format":{const i=e;return i.format==="starts_with"?`無効な文字列: "${i.prefix}"で始まる必要があります`:i.format==="ends_with"?`無効な文字列: "${i.suffix}"で終わる必要があります`:i.format==="includes"?`無効な文字列: "${i.includes}"を含む必要があります`:i.format==="regex"?`無効な文字列: パターン${i.pattern}に一致する必要があります`:`無効な${o[i.format]??e.format}`}case"not_multiple_of":return`無効な数値: ${e.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${e.keys.length>1?"群":""}: ${y(e.keys,"、")}`;case"invalid_key":return`${e.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${e.origin}内の無効な値`;default:return"無効な入力"}}};function yl(){return{localeError:kl()}}const bl=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"რიცხვი";case"object":{if(Array.isArray(r))return"მასივი";if(r===null)return"null";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return{string:"სტრინგი",boolean:"ბულეანი",undefined:"undefined",bigint:"bigint",symbol:"symbol",function:"ფუნქცია"}[t]??t},xl=()=>{const r={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(o){return r[o]??null}const n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული სტრინგი",base64url:"base64url-კოდირებული სტრინგი",json_string:"JSON სტრინგი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"};return o=>{switch(o.code){case"invalid_type":return`არასწორი შეყვანა: მოსალოდნელი ${o.expected}, მიღებული ${bl(o.input)}`;case"invalid_value":return o.values.length===1?`არასწორი შეყვანა: მოსალოდნელი ${O(o.values[0])}`:`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${y(o.values,"|")}-დან`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`ზედმეტად დიდი: მოსალოდნელი ${o.origin??"მნიშვნელობა"} ${i.verb} ${e}${o.maximum.toString()} ${i.unit}`:`ზედმეტად დიდი: მოსალოდნელი ${o.origin??"მნიშვნელობა"} იყოს ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`ზედმეტად პატარა: მოსალოდნელი ${o.origin} ${i.verb} ${e}${o.minimum.toString()} ${i.unit}`:`ზედმეტად პატარა: მოსალოდნელი ${o.origin} იყოს ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`არასწორი სტრინგი: უნდა იწყებოდეს "${e.prefix}"-ით`:e.format==="ends_with"?`არასწორი სტრინგი: უნდა მთავრდებოდეს "${e.suffix}"-ით`:e.format==="includes"?`არასწორი სტრინგი: უნდა შეიცავდეს "${e.includes}"-ს`:e.format==="regex"?`არასწორი სტრინგი: უნდა შეესაბამებოდეს შაბლონს ${e.pattern}`:`არასწორი ${n[e.format]??o.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${o.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${o.keys.length>1?"ები":"ი"}: ${y(o.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${o.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${o.origin}-ში`;default:return"არასწორი შეყვანა"}}};function $l(){return{localeError:xl()}}const wl=()=>{const r={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"មិនមែនជាលេខ (NaN)":"លេខ";case"object":{if(Array.isArray(e))return"អារេ (Array)";if(e===null)return"គ្មានតម្លៃ (null)";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"};return e=>{switch(e.code){case"invalid_type":return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${e.expected} ប៉ុន្តែទទួលបាន ${n(e.input)}`;case"invalid_value":return e.values.length===1?`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${O(e.values[0])}`:`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`ធំពេក៖ ត្រូវការ ${e.origin??"តម្លៃ"} ${i} ${e.maximum.toString()} ${s.unit??"ធាតុ"}`:`ធំពេក៖ ត្រូវការ ${e.origin??"តម្លៃ"} ${i} ${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`តូចពេក៖ ត្រូវការ ${e.origin} ${i} ${e.minimum.toString()} ${s.unit}`:`តូចពេក៖ ត្រូវការ ${e.origin} ${i} ${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${i.prefix}"`:i.format==="ends_with"?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${i.suffix}"`:i.format==="includes"?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${i.includes}"`:i.format==="regex"?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${i.pattern}`:`មិនត្រឹមត្រូវ៖ ${o[i.format]??e.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${e.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${y(e.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}};function Ea(){return{localeError:wl()}}function Il(){return Ea()}const Sl=()=>{const r={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"};return e=>{switch(e.code){case"invalid_type":return`잘못된 입력: 예상 타입은 ${e.expected}, 받은 타입은 ${n(e.input)}입니다`;case"invalid_value":return e.values.length===1?`잘못된 입력: 값은 ${O(e.values[0])} 이어야 합니다`:`잘못된 옵션: ${y(e.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{const i=e.inclusive?"이하":"미만",s=i==="미만"?"이어야 합니다":"여야 합니다",a=t(e.origin),u=a?.unit??"요소";return a?`${e.origin??"값"}이 너무 큽니다: ${e.maximum.toString()}${u} ${i}${s}`:`${e.origin??"값"}이 너무 큽니다: ${e.maximum.toString()} ${i}${s}`}case"too_small":{const i=e.inclusive?"이상":"초과",s=i==="이상"?"이어야 합니다":"여야 합니다",a=t(e.origin),u=a?.unit??"요소";return a?`${e.origin??"값"}이 너무 작습니다: ${e.minimum.toString()}${u} ${i}${s}`:`${e.origin??"값"}이 너무 작습니다: ${e.minimum.toString()} ${i}${s}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`잘못된 문자열: "${i.prefix}"(으)로 시작해야 합니다`:i.format==="ends_with"?`잘못된 문자열: "${i.suffix}"(으)로 끝나야 합니다`:i.format==="includes"?`잘못된 문자열: "${i.includes}"을(를) 포함해야 합니다`:i.format==="regex"?`잘못된 문자열: 정규식 ${i.pattern} 패턴과 일치해야 합니다`:`잘못된 ${o[i.format]??e.format}`}case"not_multiple_of":return`잘못된 숫자: ${e.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${y(e.keys,", ")}`;case"invalid_key":return`잘못된 키: ${e.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${e.origin}`;default:return"잘못된 입력"}}};function zl(){return{localeError:Sl()}}const Ol=r=>pt(typeof r,r),pt=(r,t=void 0)=>{switch(r){case"number":return Number.isNaN(t)?"NaN":"skaičius";case"bigint":return"sveikasis skaičius";case"string":return"eilutė";case"boolean":return"loginė reikšmė";case"undefined":case"void":return"neapibrėžta reikšmė";case"function":return"funkcija";case"symbol":return"simbolis";case"object":return t===void 0?"nežinomas objektas":t===null?"nulinė reikšmė":Array.isArray(t)?"masyvas":Object.getPrototypeOf(t)!==Object.prototype&&t.constructor?t.constructor.name:"objektas";case"null":return"nulinė reikšmė"}return r},at=r=>r.charAt(0).toUpperCase()+r.slice(1);function jo(r){const t=Math.abs(r),n=t%10,o=t%100;return o>=11&&o<=19||n===0?"many":n===1?"one":"few"}const Tl=()=>{const r={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(o,e,i,s){const a=r[o]??null;return a===null?a:{unit:a.unit[e],verb:a.verb[s][i?"inclusive":"notInclusive"]}}const n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"};return o=>{switch(o.code){case"invalid_type":return`Gautas tipas ${Ol(o.input)}, o tikėtasi - ${pt(o.expected)}`;case"invalid_value":return o.values.length===1?`Privalo būti ${O(o.values[0])}`:`Privalo būti vienas iš ${y(o.values,"|")} pasirinkimų`;case"too_big":{const e=pt(o.origin),i=t(o.origin,jo(Number(o.maximum)),o.inclusive??!1,"smaller");if(i?.verb)return`${at(e??o.origin??"reikšmė")} ${i.verb} ${o.maximum.toString()} ${i.unit??"elementų"}`;const s=o.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${at(e??o.origin??"reikšmė")} turi būti ${s} ${o.maximum.toString()} ${i?.unit}`}case"too_small":{const e=pt(o.origin),i=t(o.origin,jo(Number(o.minimum)),o.inclusive??!1,"bigger");if(i?.verb)return`${at(e??o.origin??"reikšmė")} ${i.verb} ${o.minimum.toString()} ${i.unit??"elementų"}`;const s=o.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${at(e??o.origin??"reikšmė")} turi būti ${s} ${o.minimum.toString()} ${i?.unit}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`Eilutė privalo prasidėti "${e.prefix}"`:e.format==="ends_with"?`Eilutė privalo pasibaigti "${e.suffix}"`:e.format==="includes"?`Eilutė privalo įtraukti "${e.includes}"`:e.format==="regex"?`Eilutė privalo atitikti ${e.pattern}`:`Neteisingas ${n[e.format]??o.format}`}case"not_multiple_of":return`Skaičius privalo būti ${o.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${o.keys.length>1?"i":"as"} rakt${o.keys.length>1?"ai":"as"}: ${y(o.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{const e=pt(o.origin);return`${at(e??o.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}};function El(){return{localeError:Tl()}}const Nl=()=>{const r={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"број";case"object":{if(Array.isArray(e))return"низа";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"};return e=>{switch(e.code){case"invalid_type":return`Грешен внес: се очекува ${e.expected}, примено ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Invalid input: expected ${O(e.values[0])}`:`Грешана опција: се очекува една ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Премногу голем: се очекува ${e.origin??"вредноста"} да има ${i}${e.maximum.toString()} ${s.unit??"елементи"}`:`Премногу голем: се очекува ${e.origin??"вредноста"} да биде ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Премногу мал: се очекува ${e.origin} да има ${i}${e.minimum.toString()} ${s.unit}`:`Премногу мал: се очекува ${e.origin} да биде ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Неважечка низа: мора да започнува со "${i.prefix}"`:i.format==="ends_with"?`Неважечка низа: мора да завршува со "${i.suffix}"`:i.format==="includes"?`Неважечка низа: мора да вклучува "${i.includes}"`:i.format==="regex"?`Неважечка низа: мора да одгоара на патернот ${i.pattern}`:`Invalid ${o[i.format]??e.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${e.divisor}`;case"unrecognized_keys":return`${e.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${y(e.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${e.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${e.origin}`;default:return"Грешен внес"}}};function jl(){return{localeError:Nl()}}const Al=()=>{const r={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"nombor";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`Input tidak sah: dijangka ${e.expected}, diterima ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Input tidak sah: dijangka ${O(e.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Terlalu besar: dijangka ${e.origin??"nilai"} ${s.verb} ${i}${e.maximum.toString()} ${s.unit??"elemen"}`:`Terlalu besar: dijangka ${e.origin??"nilai"} adalah ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Terlalu kecil: dijangka ${e.origin} ${s.verb} ${i}${e.minimum.toString()} ${s.unit}`:`Terlalu kecil: dijangka ${e.origin} adalah ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`String tidak sah: mesti bermula dengan "${i.prefix}"`:i.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${i.suffix}"`:i.format==="includes"?`String tidak sah: mesti mengandungi "${i.includes}"`:i.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${i.pattern}`:`${o[i.format]??e.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${e.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${y(e.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${e.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${e.origin}`;default:return"Input tidak sah"}}};function Ul(){return{localeError:Al()}}const Pl=()=>{const r={string:{unit:"tekens"},file:{unit:"bytes"},array:{unit:"elementen"},set:{unit:"elementen"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"getal";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"};return e=>{switch(e.code){case"invalid_type":return`Ongeldige invoer: verwacht ${e.expected}, ontving ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Ongeldige invoer: verwacht ${O(e.values[0])}`:`Ongeldige optie: verwacht één van ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Te lang: verwacht dat ${e.origin??"waarde"} ${i}${e.maximum.toString()} ${s.unit??"elementen"} bevat`:`Te lang: verwacht dat ${e.origin??"waarde"} ${i}${e.maximum.toString()} is`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Te kort: verwacht dat ${e.origin} ${i}${e.minimum.toString()} ${s.unit} bevat`:`Te kort: verwacht dat ${e.origin} ${i}${e.minimum.toString()} is`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Ongeldige tekst: moet met "${i.prefix}" beginnen`:i.format==="ends_with"?`Ongeldige tekst: moet op "${i.suffix}" eindigen`:i.format==="includes"?`Ongeldige tekst: moet "${i.includes}" bevatten`:i.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${i.pattern}`:`Ongeldig: ${o[i.format]??e.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${e.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${e.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${e.origin}`;default:return"Ongeldige invoer"}}};function Dl(){return{localeError:Pl()}}const Rl=()=>{const r={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"tall";case"object":{if(Array.isArray(e))return"liste";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`Ugyldig input: forventet ${e.expected}, fikk ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Ugyldig verdi: forventet ${O(e.values[0])}`:`Ugyldig valg: forventet en av ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`For stor(t): forventet ${e.origin??"value"} til å ha ${i}${e.maximum.toString()} ${s.unit??"elementer"}`:`For stor(t): forventet ${e.origin??"value"} til å ha ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`For lite(n): forventet ${e.origin} til å ha ${i}${e.minimum.toString()} ${s.unit}`:`For lite(n): forventet ${e.origin} til å ha ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Ugyldig streng: må starte med "${i.prefix}"`:i.format==="ends_with"?`Ugyldig streng: må ende med "${i.suffix}"`:i.format==="includes"?`Ugyldig streng: må inneholde "${i.includes}"`:i.format==="regex"?`Ugyldig streng: må matche mønsteret ${i.pattern}`:`Ugyldig ${o[i.format]??e.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${e.divisor}`;case"unrecognized_keys":return`${e.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${y(e.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${e.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${e.origin}`;default:return"Ugyldig input"}}};function Cl(){return{localeError:Rl()}}const Ll=()=>{const r={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"numara";case"object":{if(Array.isArray(e))return"saf";if(e===null)return"gayb";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"};return e=>{switch(e.code){case"invalid_type":return`Fâsit giren: umulan ${e.expected}, alınan ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Fâsit giren: umulan ${O(e.values[0])}`:`Fâsit tercih: mûteberler ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Fazla büyük: ${e.origin??"value"}, ${i}${e.maximum.toString()} ${s.unit??"elements"} sahip olmalıydı.`:`Fazla büyük: ${e.origin??"value"}, ${i}${e.maximum.toString()} olmalıydı.`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Fazla küçük: ${e.origin}, ${i}${e.minimum.toString()} ${s.unit} sahip olmalıydı.`:`Fazla küçük: ${e.origin}, ${i}${e.minimum.toString()} olmalıydı.`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Fâsit metin: "${i.prefix}" ile başlamalı.`:i.format==="ends_with"?`Fâsit metin: "${i.suffix}" ile bitmeli.`:i.format==="includes"?`Fâsit metin: "${i.includes}" ihtivâ etmeli.`:i.format==="regex"?`Fâsit metin: ${i.pattern} nakşına uymalı.`:`Fâsit ${o[i.format]??e.format}`}case"not_multiple_of":return`Fâsit sayı: ${e.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`${e.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${e.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}};function Fl(){return{localeError:Ll()}}const Zl=()=>{const r={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"عدد";case"object":{if(Array.isArray(e))return"ارې";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"};return e=>{switch(e.code){case"invalid_type":return`ناسم ورودي: باید ${e.expected} وای, مګر ${n(e.input)} ترلاسه شو`;case"invalid_value":return e.values.length===1?`ناسم ورودي: باید ${O(e.values[0])} وای`:`ناسم انتخاب: باید یو له ${y(e.values,"|")} څخه وای`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`ډیر لوی: ${e.origin??"ارزښت"} باید ${i}${e.maximum.toString()} ${s.unit??"عنصرونه"} ولري`:`ډیر لوی: ${e.origin??"ارزښت"} باید ${i}${e.maximum.toString()} وي`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`ډیر کوچنی: ${e.origin} باید ${i}${e.minimum.toString()} ${s.unit} ولري`:`ډیر کوچنی: ${e.origin} باید ${i}${e.minimum.toString()} وي`}case"invalid_format":{const i=e;return i.format==="starts_with"?`ناسم متن: باید د "${i.prefix}" سره پیل شي`:i.format==="ends_with"?`ناسم متن: باید د "${i.suffix}" سره پای ته ورسيږي`:i.format==="includes"?`ناسم متن: باید "${i.includes}" ولري`:i.format==="regex"?`ناسم متن: باید د ${i.pattern} سره مطابقت ولري`:`${o[i.format]??e.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${e.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${e.keys.length>1?"کلیډونه":"کلیډ"}: ${y(e.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${e.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${e.origin} کې`;default:return"ناسمه ورودي"}}};function Ml(){return{localeError:Zl()}}const ql=()=>{const r={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"liczba";case"object":{if(Array.isArray(e))return"tablica";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"};return e=>{switch(e.code){case"invalid_type":return`Nieprawidłowe dane wejściowe: oczekiwano ${e.expected}, otrzymano ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Nieprawidłowe dane wejściowe: oczekiwano ${O(e.values[0])}`:`Nieprawidłowa opcja: oczekiwano jednej z wartości ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Za duża wartość: oczekiwano, że ${e.origin??"wartość"} będzie mieć ${i}${e.maximum.toString()} ${s.unit??"elementów"}`:`Zbyt duż(y/a/e): oczekiwano, że ${e.origin??"wartość"} będzie wynosić ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Za mała wartość: oczekiwano, że ${e.origin??"wartość"} będzie mieć ${i}${e.minimum.toString()} ${s.unit??"elementów"}`:`Zbyt mał(y/a/e): oczekiwano, że ${e.origin??"wartość"} będzie wynosić ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Nieprawidłowy ciąg znaków: musi zaczynać się od "${i.prefix}"`:i.format==="ends_with"?`Nieprawidłowy ciąg znaków: musi kończyć się na "${i.suffix}"`:i.format==="includes"?`Nieprawidłowy ciąg znaków: musi zawierać "${i.includes}"`:i.format==="regex"?`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${i.pattern}`:`Nieprawidłow(y/a/e) ${o[i.format]??e.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${e.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${e.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${e.origin}`;default:return"Nieprawidłowe dane wejściowe"}}};function Bl(){return{localeError:ql()}}const Jl=()=>{const r={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"número";case"object":{if(Array.isArray(e))return"array";if(e===null)return"nulo";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"};return e=>{switch(e.code){case"invalid_type":return`Tipo inválido: esperado ${e.expected}, recebido ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Entrada inválida: esperado ${O(e.values[0])}`:`Opção inválida: esperada uma das ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Muito grande: esperado que ${e.origin??"valor"} tivesse ${i}${e.maximum.toString()} ${s.unit??"elementos"}`:`Muito grande: esperado que ${e.origin??"valor"} fosse ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Muito pequeno: esperado que ${e.origin} tivesse ${i}${e.minimum.toString()} ${s.unit}`:`Muito pequeno: esperado que ${e.origin} fosse ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Texto inválido: deve começar com "${i.prefix}"`:i.format==="ends_with"?`Texto inválido: deve terminar com "${i.suffix}"`:i.format==="includes"?`Texto inválido: deve incluir "${i.includes}"`:i.format==="regex"?`Texto inválido: deve corresponder ao padrão ${i.pattern}`:`${o[i.format]??e.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${e.divisor}`;case"unrecognized_keys":return`Chave${e.keys.length>1?"s":""} desconhecida${e.keys.length>1?"s":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Chave inválida em ${e.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${e.origin}`;default:return"Campo inválido"}}};function Gl(){return{localeError:Jl()}}function Ao(r,t,n,o){const e=Math.abs(r),i=e%10,s=e%100;return s>=11&&s<=19?o:i===1?t:i>=2&&i<=4?n:o}const Vl=()=>{const r={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"число";case"object":{if(Array.isArray(e))return"массив";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"};return e=>{switch(e.code){case"invalid_type":return`Неверный ввод: ожидалось ${e.expected}, получено ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Неверный ввод: ожидалось ${O(e.values[0])}`:`Неверный вариант: ожидалось одно из ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);if(s){const a=Number(e.maximum),u=Ao(a,s.unit.one,s.unit.few,s.unit.many);return`Слишком большое значение: ожидалось, что ${e.origin??"значение"} будет иметь ${i}${e.maximum.toString()} ${u}`}return`Слишком большое значение: ожидалось, что ${e.origin??"значение"} будет ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);if(s){const a=Number(e.minimum),u=Ao(a,s.unit.one,s.unit.few,s.unit.many);return`Слишком маленькое значение: ожидалось, что ${e.origin} будет иметь ${i}${e.minimum.toString()} ${u}`}return`Слишком маленькое значение: ожидалось, что ${e.origin} будет ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Неверная строка: должна начинаться с "${i.prefix}"`:i.format==="ends_with"?`Неверная строка: должна заканчиваться на "${i.suffix}"`:i.format==="includes"?`Неверная строка: должна содержать "${i.includes}"`:i.format==="regex"?`Неверная строка: должна соответствовать шаблону ${i.pattern}`:`Неверный ${o[i.format]??e.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${e.divisor}`;case"unrecognized_keys":return`Нераспознанн${e.keys.length>1?"ые":"ый"} ключ${e.keys.length>1?"и":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${e.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${e.origin}`;default:return"Неверные входные данные"}}};function Hl(){return{localeError:Vl()}}const Wl=()=>{const r={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"število";case"object":{if(Array.isArray(e))return"tabela";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"};return e=>{switch(e.code){case"invalid_type":return`Neveljaven vnos: pričakovano ${e.expected}, prejeto ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Neveljaven vnos: pričakovano ${O(e.values[0])}`:`Neveljavna možnost: pričakovano eno izmed ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Preveliko: pričakovano, da bo ${e.origin??"vrednost"} imelo ${i}${e.maximum.toString()} ${s.unit??"elementov"}`:`Preveliko: pričakovano, da bo ${e.origin??"vrednost"} ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Premajhno: pričakovano, da bo ${e.origin} imelo ${i}${e.minimum.toString()} ${s.unit}`:`Premajhno: pričakovano, da bo ${e.origin} ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Neveljaven niz: mora se začeti z "${i.prefix}"`:i.format==="ends_with"?`Neveljaven niz: mora se končati z "${i.suffix}"`:i.format==="includes"?`Neveljaven niz: mora vsebovati "${i.includes}"`:i.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${i.pattern}`:`Neveljaven ${o[i.format]??e.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${e.divisor}`;case"unrecognized_keys":return`Neprepoznan${e.keys.length>1?"i ključi":" ključ"}: ${y(e.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${e.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${e.origin}`;default:return"Neveljaven vnos"}}};function Kl(){return{localeError:Wl()}}const Yl=()=>{const r={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"antal";case"object":{if(Array.isArray(e))return"lista";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"};return e=>{switch(e.code){case"invalid_type":return`Ogiltig inmatning: förväntat ${e.expected}, fick ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Ogiltig inmatning: förväntat ${O(e.values[0])}`:`Ogiltigt val: förväntade en av ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`För stor(t): förväntade ${e.origin??"värdet"} att ha ${i}${e.maximum.toString()} ${s.unit??"element"}`:`För stor(t): förväntat ${e.origin??"värdet"} att ha ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`För lite(t): förväntade ${e.origin??"värdet"} att ha ${i}${e.minimum.toString()} ${s.unit}`:`För lite(t): förväntade ${e.origin??"värdet"} att ha ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Ogiltig sträng: måste börja med "${i.prefix}"`:i.format==="ends_with"?`Ogiltig sträng: måste sluta med "${i.suffix}"`:i.format==="includes"?`Ogiltig sträng: måste innehålla "${i.includes}"`:i.format==="regex"?`Ogiltig sträng: måste matcha mönstret "${i.pattern}"`:`Ogiltig(t) ${o[i.format]??e.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${e.divisor}`;case"unrecognized_keys":return`${e.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${y(e.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${e.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${e.origin??"värdet"}`;default:return"Ogiltig input"}}};function Xl(){return{localeError:Yl()}}const Ql=()=>{const r={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"எண் அல்லாதது":"எண்";case"object":{if(Array.isArray(e))return"அணி";if(e===null)return"வெறுமை";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"};return e=>{switch(e.code){case"invalid_type":return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${e.expected}, பெறப்பட்டது ${n(e.input)}`;case"invalid_value":return e.values.length===1?`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${O(e.values[0])}`:`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${y(e.values,"|")} இல் ஒன்று`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??"மதிப்பு"} ${i}${e.maximum.toString()} ${s.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`:`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??"மதிப்பு"} ${i}${e.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${i}${e.minimum.toString()} ${s.unit} ஆக இருக்க வேண்டும்`:`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${i}${e.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{const i=e;return i.format==="starts_with"?`தவறான சரம்: "${i.prefix}" இல் தொடங்க வேண்டும்`:i.format==="ends_with"?`தவறான சரம்: "${i.suffix}" இல் முடிவடைய வேண்டும்`:i.format==="includes"?`தவறான சரம்: "${i.includes}" ஐ உள்ளடக்க வேண்டும்`:i.format==="regex"?`தவறான சரம்: ${i.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`:`தவறான ${o[i.format]??e.format}`}case"not_multiple_of":return`தவறான எண்: ${e.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${e.keys.length>1?"கள்":""}: ${y(e.keys,", ")}`;case"invalid_key":return`${e.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${e.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}};function e_(){return{localeError:Ql()}}const t_=()=>{const r={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"ไม่ใช่ตัวเลข (NaN)":"ตัวเลข";case"object":{if(Array.isArray(e))return"อาร์เรย์ (Array)";if(e===null)return"ไม่มีค่า (null)";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"};return e=>{switch(e.code){case"invalid_type":return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${e.expected} แต่ได้รับ ${n(e.input)}`;case"invalid_value":return e.values.length===1?`ค่าไม่ถูกต้อง: ควรเป็น ${O(e.values[0])}`:`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"ไม่เกิน":"น้อยกว่า",s=t(e.origin);return s?`เกินกำหนด: ${e.origin??"ค่า"} ควรมี${i} ${e.maximum.toString()} ${s.unit??"รายการ"}`:`เกินกำหนด: ${e.origin??"ค่า"} ควรมี${i} ${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?"อย่างน้อย":"มากกว่า",s=t(e.origin);return s?`น้อยกว่ากำหนด: ${e.origin} ควรมี${i} ${e.minimum.toString()} ${s.unit}`:`น้อยกว่ากำหนด: ${e.origin} ควรมี${i} ${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${i.prefix}"`:i.format==="ends_with"?`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${i.suffix}"`:i.format==="includes"?`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${i.includes}" อยู่ในข้อความ`:i.format==="regex"?`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${i.pattern}`:`รูปแบบไม่ถูกต้อง: ${o[i.format]??e.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${e.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${y(e.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${e.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${e.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}};function r_(){return{localeError:t_()}}const n_=r=>{const t=typeof r;switch(t){case"number":return Number.isNaN(r)?"NaN":"number";case"object":{if(Array.isArray(r))return"array";if(r===null)return"null";if(Object.getPrototypeOf(r)!==Object.prototype&&r.constructor)return r.constructor.name}}return t},o_=()=>{const r={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(o){return r[o]??null}const n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"};return o=>{switch(o.code){case"invalid_type":return`Geçersiz değer: beklenen ${o.expected}, alınan ${n_(o.input)}`;case"invalid_value":return o.values.length===1?`Geçersiz değer: beklenen ${O(o.values[0])}`:`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${y(o.values,"|")}`;case"too_big":{const e=o.inclusive?"<=":"<",i=t(o.origin);return i?`Çok büyük: beklenen ${o.origin??"değer"} ${e}${o.maximum.toString()} ${i.unit??"öğe"}`:`Çok büyük: beklenen ${o.origin??"değer"} ${e}${o.maximum.toString()}`}case"too_small":{const e=o.inclusive?">=":">",i=t(o.origin);return i?`Çok küçük: beklenen ${o.origin} ${e}${o.minimum.toString()} ${i.unit}`:`Çok küçük: beklenen ${o.origin} ${e}${o.minimum.toString()}`}case"invalid_format":{const e=o;return e.format==="starts_with"?`Geçersiz metin: "${e.prefix}" ile başlamalı`:e.format==="ends_with"?`Geçersiz metin: "${e.suffix}" ile bitmeli`:e.format==="includes"?`Geçersiz metin: "${e.includes}" içermeli`:e.format==="regex"?`Geçersiz metin: ${e.pattern} desenine uymalı`:`Geçersiz ${n[e.format]??o.format}`}case"not_multiple_of":return`Geçersiz sayı: ${o.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${o.keys.length>1?"lar":""}: ${y(o.keys,", ")}`;case"invalid_key":return`${o.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${o.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}};function i_(){return{localeError:o_()}}const s_=()=>{const r={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"число";case"object":{if(Array.isArray(e))return"масив";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"};return e=>{switch(e.code){case"invalid_type":return`Неправильні вхідні дані: очікується ${e.expected}, отримано ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Неправильні вхідні дані: очікується ${O(e.values[0])}`:`Неправильна опція: очікується одне з ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Занадто велике: очікується, що ${e.origin??"значення"} ${s.verb} ${i}${e.maximum.toString()} ${s.unit??"елементів"}`:`Занадто велике: очікується, що ${e.origin??"значення"} буде ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Занадто мале: очікується, що ${e.origin} ${s.verb} ${i}${e.minimum.toString()} ${s.unit}`:`Занадто мале: очікується, що ${e.origin} буде ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Неправильний рядок: повинен починатися з "${i.prefix}"`:i.format==="ends_with"?`Неправильний рядок: повинен закінчуватися на "${i.suffix}"`:i.format==="includes"?`Неправильний рядок: повинен містити "${i.includes}"`:i.format==="regex"?`Неправильний рядок: повинен відповідати шаблону ${i.pattern}`:`Неправильний ${o[i.format]??e.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${e.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${e.keys.length>1?"і":""}: ${y(e.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${e.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${e.origin}`;default:return"Неправильні вхідні дані"}}};function Na(){return{localeError:s_()}}function a_(){return Na()}const u_=()=>{const r={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"نمبر";case"object":{if(Array.isArray(e))return"آرے";if(e===null)return"نل";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"};return e=>{switch(e.code){case"invalid_type":return`غلط ان پٹ: ${e.expected} متوقع تھا، ${n(e.input)} موصول ہوا`;case"invalid_value":return e.values.length===1?`غلط ان پٹ: ${O(e.values[0])} متوقع تھا`:`غلط آپشن: ${y(e.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`بہت بڑا: ${e.origin??"ویلیو"} کے ${i}${e.maximum.toString()} ${s.unit??"عناصر"} ہونے متوقع تھے`:`بہت بڑا: ${e.origin??"ویلیو"} کا ${i}${e.maximum.toString()} ہونا متوقع تھا`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`بہت چھوٹا: ${e.origin} کے ${i}${e.minimum.toString()} ${s.unit} ہونے متوقع تھے`:`بہت چھوٹا: ${e.origin} کا ${i}${e.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{const i=e;return i.format==="starts_with"?`غلط سٹرنگ: "${i.prefix}" سے شروع ہونا چاہیے`:i.format==="ends_with"?`غلط سٹرنگ: "${i.suffix}" پر ختم ہونا چاہیے`:i.format==="includes"?`غلط سٹرنگ: "${i.includes}" شامل ہونا چاہیے`:i.format==="regex"?`غلط سٹرنگ: پیٹرن ${i.pattern} سے میچ ہونا چاہیے`:`غلط ${o[i.format]??e.format}`}case"not_multiple_of":return`غلط نمبر: ${e.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${e.keys.length>1?"ز":""}: ${y(e.keys,"، ")}`;case"invalid_key":return`${e.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${e.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}};function c_(){return{localeError:u_()}}const p_=()=>{const r={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"số";case"object":{if(Array.isArray(e))return"mảng";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"};return e=>{switch(e.code){case"invalid_type":return`Đầu vào không hợp lệ: mong đợi ${e.expected}, nhận được ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Đầu vào không hợp lệ: mong đợi ${O(e.values[0])}`:`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Quá lớn: mong đợi ${e.origin??"giá trị"} ${s.verb} ${i}${e.maximum.toString()} ${s.unit??"phần tử"}`:`Quá lớn: mong đợi ${e.origin??"giá trị"} ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Quá nhỏ: mong đợi ${e.origin} ${s.verb} ${i}${e.minimum.toString()} ${s.unit}`:`Quá nhỏ: mong đợi ${e.origin} ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Chuỗi không hợp lệ: phải bắt đầu bằng "${i.prefix}"`:i.format==="ends_with"?`Chuỗi không hợp lệ: phải kết thúc bằng "${i.suffix}"`:i.format==="includes"?`Chuỗi không hợp lệ: phải bao gồm "${i.includes}"`:i.format==="regex"?`Chuỗi không hợp lệ: phải khớp với mẫu ${i.pattern}`:`${o[i.format]??e.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${e.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${y(e.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${e.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${e.origin}`;default:return"Đầu vào không hợp lệ"}}};function l_(){return{localeError:p_()}}const __=()=>{const r={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"非数字(NaN)":"数字";case"object":{if(Array.isArray(e))return"数组";if(e===null)return"空值(null)";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"};return e=>{switch(e.code){case"invalid_type":return`无效输入:期望 ${e.expected},实际接收 ${n(e.input)}`;case"invalid_value":return e.values.length===1?`无效输入:期望 ${O(e.values[0])}`:`无效选项:期望以下之一 ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`数值过大:期望 ${e.origin??"值"} ${i}${e.maximum.toString()} ${s.unit??"个元素"}`:`数值过大:期望 ${e.origin??"值"} ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`数值过小:期望 ${e.origin} ${i}${e.minimum.toString()} ${s.unit}`:`数值过小:期望 ${e.origin} ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`无效字符串:必须以 "${i.prefix}" 开头`:i.format==="ends_with"?`无效字符串:必须以 "${i.suffix}" 结尾`:i.format==="includes"?`无效字符串:必须包含 "${i.includes}"`:i.format==="regex"?`无效字符串:必须满足正则表达式 ${i.pattern}`:`无效${o[i.format]??e.format}`}case"not_multiple_of":return`无效数字:必须是 ${e.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${y(e.keys,", ")}`;case"invalid_key":return`${e.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${e.origin} 中包含无效值(value)`;default:return"无效输入"}}};function d_(){return{localeError:__()}}const m_=()=>{const r={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"number";case"object":{if(Array.isArray(e))return"array";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"};return e=>{switch(e.code){case"invalid_type":return`無效的輸入值:預期為 ${e.expected},但收到 ${n(e.input)}`;case"invalid_value":return e.values.length===1?`無效的輸入值:預期為 ${O(e.values[0])}`:`無效的選項:預期為以下其中之一 ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`數值過大:預期 ${e.origin??"值"} 應為 ${i}${e.maximum.toString()} ${s.unit??"個元素"}`:`數值過大:預期 ${e.origin??"值"} 應為 ${i}${e.maximum.toString()}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`數值過小:預期 ${e.origin} 應為 ${i}${e.minimum.toString()} ${s.unit}`:`數值過小:預期 ${e.origin} 應為 ${i}${e.minimum.toString()}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`無效的字串:必須以 "${i.prefix}" 開頭`:i.format==="ends_with"?`無效的字串:必須以 "${i.suffix}" 結尾`:i.format==="includes"?`無效的字串:必須包含 "${i.includes}"`:i.format==="regex"?`無效的字串:必須符合格式 ${i.pattern}`:`無效的 ${o[i.format]??e.format}`}case"not_multiple_of":return`無效的數字:必須為 ${e.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${e.keys.length>1?"們":""}:${y(e.keys,"、")}`;case"invalid_key":return`${e.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${e.origin} 中有無效的值`;default:return"無效的輸入值"}}};function g_(){return{localeError:m_()}}const h_=()=>{const r={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(e){return r[e]??null}const n=e=>{const i=typeof e;switch(i){case"number":return Number.isNaN(e)?"NaN":"nọ́mbà";case"object":{if(Array.isArray(e))return"akopọ";if(e===null)return"null";if(Object.getPrototypeOf(e)!==Object.prototype&&e.constructor)return e.constructor.name}}return i},o={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"};return e=>{switch(e.code){case"invalid_type":return`Ìbáwọlé aṣìṣe: a ní láti fi ${e.expected}, àmọ̀ a rí ${n(e.input)}`;case"invalid_value":return e.values.length===1?`Ìbáwọlé aṣìṣe: a ní láti fi ${O(e.values[0])}`:`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${y(e.values,"|")}`;case"too_big":{const i=e.inclusive?"<=":"<",s=t(e.origin);return s?`Tó pọ̀ jù: a ní láti jẹ́ pé ${e.origin??"iye"} ${s.verb} ${i}${e.maximum} ${s.unit}`:`Tó pọ̀ jù: a ní láti jẹ́ ${i}${e.maximum}`}case"too_small":{const i=e.inclusive?">=":">",s=t(e.origin);return s?`Kéré ju: a ní láti jẹ́ pé ${e.origin} ${s.verb} ${i}${e.minimum} ${s.unit}`:`Kéré ju: a ní láti jẹ́ ${i}${e.minimum}`}case"invalid_format":{const i=e;return i.format==="starts_with"?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${i.prefix}"`:i.format==="ends_with"?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${i.suffix}"`:i.format==="includes"?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${i.includes}"`:i.format==="regex"?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${i.pattern}`:`Aṣìṣe: ${o[i.format]??e.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${e.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${y(e.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${e.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${e.origin}`;default:return"Ìbáwọlé aṣìṣe"}}};function f_(){return{localeError:h_()}}const ja=Object.freeze(Object.defineProperty({__proto__:null,ar:Np,az:Ap,be:Pp,bg:Cp,ca:Fp,cs:Mp,da:Bp,de:Gp,en:Ta,eo:Yp,es:Qp,fa:tl,fi:nl,fr:il,frCA:al,he:cl,hu:ll,id:dl,is:hl,it:vl,ja:yl,ka:$l,kh:Il,km:Ea,ko:zl,lt:El,mk:jl,ms:Ul,nl:Dl,no:Cl,ota:Fl,pl:Bl,ps:Ml,pt:Gl,ru:Hl,sl:Kl,sv:Xl,ta:e_,th:r_,tr:i_,ua:a_,uk:Na,ur:c_,vi:l_,yo:f_,zhCN:d_,zhTW:g_},Symbol.toStringTag,{value:"Module"})),Aa=Symbol("ZodOutput"),Ua=Symbol("ZodInput");class Qr{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const o=n[0];if(this._map.set(t,o),o&&typeof o=="object"&&"id"in o){if(this._idmap.has(o.id))throw new Error(`ID ${o.id} already exists in the registry`);this._idmap.set(o.id,t)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const o={...this.get(n)??{}};delete o.id;const e={...o,...this._map.get(t)};return Object.keys(e).length?e:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function en(){return new Qr}const Ze=en();function Pa(r,t){return new r({type:"string",...k(t)})}function Da(r,t){return new r({type:"string",coerce:!0,...k(t)})}function tn(r,t){return new r({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function qt(r,t){return new r({type:"string",format:"guid",check:"string_format",abort:!1,...k(t)})}function rn(r,t){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,...k(t)})}function nn(r,t){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...k(t)})}function on(r,t){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...k(t)})}function sn(r,t){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...k(t)})}function tr(r,t){return new r({type:"string",format:"url",check:"string_format",abort:!1,...k(t)})}function an(r,t){return new r({type:"string",format:"emoji",check:"string_format",abort:!1,...k(t)})}function un(r,t){return new r({type:"string",format:"nanoid",check:"string_format",abort:!1,...k(t)})}function cn(r,t){return new r({type:"string",format:"cuid",check:"string_format",abort:!1,...k(t)})}function pn(r,t){return new r({type:"string",format:"cuid2",check:"string_format",abort:!1,...k(t)})}function ln(r,t){return new r({type:"string",format:"ulid",check:"string_format",abort:!1,...k(t)})}function _n(r,t){return new r({type:"string",format:"xid",check:"string_format",abort:!1,...k(t)})}function dn(r,t){return new r({type:"string",format:"ksuid",check:"string_format",abort:!1,...k(t)})}function mn(r,t){return new r({type:"string",format:"ipv4",check:"string_format",abort:!1,...k(t)})}function gn(r,t){return new r({type:"string",format:"ipv6",check:"string_format",abort:!1,...k(t)})}function hn(r,t){return new r({type:"string",format:"cidrv4",check:"string_format",abort:!1,...k(t)})}function fn(r,t){return new r({type:"string",format:"cidrv6",check:"string_format",abort:!1,...k(t)})}function vn(r,t){return new r({type:"string",format:"base64",check:"string_format",abort:!1,...k(t)})}function kn(r,t){return new r({type:"string",format:"base64url",check:"string_format",abort:!1,...k(t)})}function yn(r,t){return new r({type:"string",format:"e164",check:"string_format",abort:!1,...k(t)})}function bn(r,t){return new r({type:"string",format:"jwt",check:"string_format",abort:!1,...k(t)})}const Ra={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Ca(r,t){return new r({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...k(t)})}function La(r,t){return new r({type:"string",format:"date",check:"string_format",...k(t)})}function Fa(r,t){return new r({type:"string",format:"time",check:"string_format",precision:null,...k(t)})}function Za(r,t){return new r({type:"string",format:"duration",check:"string_format",...k(t)})}function Ma(r,t){return new r({type:"number",checks:[],...k(t)})}function qa(r,t){return new r({type:"number",coerce:!0,checks:[],...k(t)})}function Ba(r,t){return new r({type:"number",check:"number_format",abort:!1,format:"safeint",...k(t)})}function Ja(r,t){return new r({type:"number",check:"number_format",abort:!1,format:"float32",...k(t)})}function Ga(r,t){return new r({type:"number",check:"number_format",abort:!1,format:"float64",...k(t)})}function Va(r,t){return new r({type:"number",check:"number_format",abort:!1,format:"int32",...k(t)})}function Ha(r,t){return new r({type:"number",check:"number_format",abort:!1,format:"uint32",...k(t)})}function Wa(r,t){return new r({type:"boolean",...k(t)})}function Ka(r,t){return new r({type:"boolean",coerce:!0,...k(t)})}function Ya(r,t){return new r({type:"bigint",...k(t)})}function Xa(r,t){return new r({type:"bigint",coerce:!0,...k(t)})}function Qa(r,t){return new r({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...k(t)})}function eu(r,t){return new r({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...k(t)})}function tu(r,t){return new r({type:"symbol",...k(t)})}function ru(r,t){return new r({type:"undefined",...k(t)})}function nu(r,t){return new r({type:"null",...k(t)})}function ou(r){return new r({type:"any"})}function iu(r){return new r({type:"unknown"})}function su(r,t){return new r({type:"never",...k(t)})}function au(r,t){return new r({type:"void",...k(t)})}function uu(r,t){return new r({type:"date",...k(t)})}function cu(r,t){return new r({type:"date",coerce:!0,...k(t)})}function pu(r,t){return new r({type:"nan",...k(t)})}function Be(r,t){return new Br({check:"less_than",...k(t),value:r,inclusive:!1})}function fe(r,t){return new Br({check:"less_than",...k(t),value:r,inclusive:!0})}function Je(r,t){return new Jr({check:"greater_than",...k(t),value:r,inclusive:!1})}function le(r,t){return new Jr({check:"greater_than",...k(t),value:r,inclusive:!0})}function lu(r){return Je(0,r)}function _u(r){return Be(0,r)}function du(r){return fe(0,r)}function mu(r){return le(0,r)}function dt(r,t){return new Xi({check:"multiple_of",...k(t),value:r})}function rr(r,t){return new ts({check:"max_size",...k(t),maximum:r})}function mt(r,t){return new rs({check:"min_size",...k(t),minimum:r})}function xn(r,t){return new ns({check:"size_equals",...k(t),size:r})}function nr(r,t){return new os({check:"max_length",...k(t),maximum:r})}function Xe(r,t){return new is({check:"min_length",...k(t),minimum:r})}function or(r,t){return new ss({check:"length_equals",...k(t),length:r})}function $n(r,t){return new as({check:"string_format",format:"regex",...k(t),pattern:r})}function wn(r){return new us({check:"string_format",format:"lowercase",...k(r)})}function In(r){return new cs({check:"string_format",format:"uppercase",...k(r)})}function Sn(r,t){return new ps({check:"string_format",format:"includes",...k(t),includes:r})}function zn(r,t){return new ls({check:"string_format",format:"starts_with",...k(t),prefix:r})}function On(r,t){return new _s({check:"string_format",format:"ends_with",...k(t),suffix:r})}function gu(r,t,n){return new ds({check:"property",property:r,schema:t,...k(n)})}function Tn(r,t){return new ms({check:"mime_type",mime:r,...k(t)})}function Ve(r){return new gs({check:"overwrite",tx:r})}function En(r){return Ve(t=>t.normalize(r))}function Nn(){return Ve(r=>r.trim())}function jn(){return Ve(r=>r.toLowerCase())}function An(){return Ve(r=>r.toUpperCase())}function hu(r,t,n){return new r({type:"array",element:t,...k(n)})}function v_(r,t,n){return new r({type:"union",options:t,...k(n)})}function k_(r,t,n,o){return new r({type:"union",options:n,discriminator:t,...k(o)})}function y_(r,t,n){return new r({type:"intersection",left:t,right:n})}function b_(r,t,n,o){const e=n instanceof T,i=e?o:n,s=e?n:null;return new r({type:"tuple",items:t,rest:s,...k(i)})}function x_(r,t,n,o){return new r({type:"record",keyType:t,valueType:n,...k(o)})}function $_(r,t,n,o){return new r({type:"map",keyType:t,valueType:n,...k(o)})}function w_(r,t,n){return new r({type:"set",valueType:t,...k(n)})}function I_(r,t,n){const o=Array.isArray(t)?Object.fromEntries(t.map(e=>[e,e])):t;return new r({type:"enum",entries:o,...k(n)})}function S_(r,t,n){return new r({type:"enum",entries:t,...k(n)})}function z_(r,t,n){return new r({type:"literal",values:Array.isArray(t)?t:[t],...k(n)})}function fu(r,t){return new r({type:"file",...k(t)})}function O_(r,t){return new r({type:"transform",transform:t})}function T_(r,t){return new r({type:"optional",innerType:t})}function E_(r,t){return new r({type:"nullable",innerType:t})}function N_(r,t,n){return new r({type:"default",innerType:t,get defaultValue(){return typeof n=="function"?n():Xt(n)}})}function j_(r,t,n){return new r({type:"nonoptional",innerType:t,...k(n)})}function A_(r,t){return new r({type:"success",innerType:t})}function U_(r,t,n){return new r({type:"catch",innerType:t,catchValue:typeof n=="function"?n:()=>n})}function P_(r,t,n){return new r({type:"pipe",in:t,out:n})}function D_(r,t){return new r({type:"readonly",innerType:t})}function R_(r,t,n){return new r({type:"template_literal",parts:t,...k(n)})}function C_(r,t){return new r({type:"lazy",getter:t})}function L_(r,t){return new r({type:"promise",innerType:t})}function vu(r,t,n){const o=k(n);return o.abort??(o.abort=!0),new r({type:"custom",check:"custom",fn:t,...o})}function ku(r,t,n){return new r({type:"custom",check:"custom",fn:t,...k(n)})}function yu(r){const t=bu(n=>(n.addIssue=o=>{if(typeof o=="string")n.issues.push(Ke(o,n.value,t._zod.def));else{const e=o;e.fatal&&(e.continue=!1),e.code??(e.code="custom"),e.input??(e.input=n.value),e.inst??(e.inst=t),e.continue??(e.continue=!t._zod.def.abort),n.issues.push(Ke(e))}},r(n.value,n)));return t}function bu(r,t){const n=new G({check:"custom",...k(t)});return n._zod.check=r,n}function xu(r,t){const n=k(t);let o=n.truthy??["true","1","yes","on","y","enabled"],e=n.falsy??["false","0","no","off","n","disabled"];n.case!=="sensitive"&&(o=o.map(m=>typeof m=="string"?m.toLowerCase():m),e=e.map(m=>typeof m=="string"?m.toLowerCase():m));const i=new Set(o),s=new Set(e),a=r.Codec??Xr,u=r.Boolean??Hr,c=r.String??It,l=new c({type:"string",error:n.error}),d=new u({type:"boolean",error:n.error}),h=new a({type:"pipe",in:l,out:d,transform:(m,p)=>{let g=m;return n.case!=="sensitive"&&(g=g.toLowerCase()),i.has(g)?!0:s.has(g)?!1:(p.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...s],input:p.value,inst:h,continue:!1}),{})},reverseTransform:(m,p)=>m===!0?o[0]||"true":e[0]||"false",error:n.error});return h}function St(r,t,n,o={}){const e=k(o),i={...k(o),check:"string_format",type:"string",format:t,fn:typeof n=="function"?n:a=>n.test(a),...e};return n instanceof RegExp&&(i.pattern=n),new r(i)}class br{constructor(t){this.counter=0,this.metadataRegistry=t?.metadata??Ze,this.target=t?.target??"draft-2020-12",this.unrepresentable=t?.unrepresentable??"throw",this.override=t?.override??(()=>{}),this.io=t?.io??"output",this.seen=new Map}process(t,n={path:[],schemaPath:[]}){var o;const e=t._zod.def,i={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},s=this.seen.get(t);if(s)return s.count++,n.schemaPath.includes(t)&&(s.cycle=n.path),s.schema;const a={schema:{},count:1,cycle:void 0,path:n.path};this.seen.set(t,a);const u=t._zod.toJSONSchema?.();if(u)a.schema=u;else{const d={...n,schemaPath:[...n.schemaPath,t],path:n.path},h=t._zod.parent;if(h)a.ref=h,this.process(h,d),this.seen.get(h).isParent=!0;else{const m=a.schema;switch(e.type){case"string":{const p=m;p.type="string";const{minimum:g,maximum:v,format:$,patterns:b,contentEncoding:z}=t._zod.bag;if(typeof g=="number"&&(p.minLength=g),typeof v=="number"&&(p.maxLength=v),$&&(p.format=i[$]??$,p.format===""&&delete p.format),z&&(p.contentEncoding=z),b&&b.size>0){const S=[...b];S.length===1?p.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(A=>({...this.target==="draft-7"||this.target==="draft-4"||this.target==="openapi-3.0"?{type:"string"}:{},pattern:A.source}))])}break}case"number":{const p=m,{minimum:g,maximum:v,format:$,multipleOf:b,exclusiveMaximum:z,exclusiveMinimum:S}=t._zod.bag;typeof $=="string"&&$.includes("int")?p.type="integer":p.type="number",typeof S=="number"&&(this.target==="draft-4"||this.target==="openapi-3.0"?(p.minimum=S,p.exclusiveMinimum=!0):p.exclusiveMinimum=S),typeof g=="number"&&(p.minimum=g,typeof S=="number"&&this.target!=="draft-4"&&(S>=g?delete p.minimum:delete p.exclusiveMinimum)),typeof z=="number"&&(this.target==="draft-4"||this.target==="openapi-3.0"?(p.maximum=z,p.exclusiveMaximum=!0):p.exclusiveMaximum=z),typeof v=="number"&&(p.maximum=v,typeof z=="number"&&this.target!=="draft-4"&&(z<=v?delete p.maximum:delete p.exclusiveMaximum)),typeof b=="number"&&(p.multipleOf=b);break}case"boolean":{const p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{this.target==="openapi-3.0"?(m.type="string",m.nullable=!0,m.enum=[null]):m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{const p=m,{minimum:g,maximum:v}=t._zod.bag;typeof g=="number"&&(p.minItems=g),typeof v=="number"&&(p.maxItems=v),p.type="array",p.items=this.process(e.element,{...d,path:[...d.path,"items"]});break}case"object":{const p=m;p.type="object",p.properties={};const g=e.shape;for(const b in g)p.properties[b]=this.process(g[b],{...d,path:[...d.path,"properties",b]});const v=new Set(Object.keys(g)),$=new Set([...v].filter(b=>{const z=e.shape[b]._zod;return this.io==="input"?z.optin===void 0:z.optout===void 0}));$.size>0&&(p.required=Array.from($)),e.catchall?._zod.def.type==="never"?p.additionalProperties=!1:e.catchall?e.catchall&&(p.additionalProperties=this.process(e.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{const p=m,g=e.options.map((v,$)=>this.process(v,{...d,path:[...d.path,"anyOf",$]}));p.anyOf=g;break}case"intersection":{const p=m,g=this.process(e.left,{...d,path:[...d.path,"allOf",0]}),v=this.process(e.right,{...d,path:[...d.path,"allOf",1]}),$=z=>"allOf"in z&&Object.keys(z).length===1,b=[...$(g)?g.allOf:[g],...$(v)?v.allOf:[v]];p.allOf=b;break}case"tuple":{const p=m;p.type="array";const g=this.target==="draft-2020-12"?"prefixItems":"items",v=this.target==="draft-2020-12"||this.target==="openapi-3.0"?"items":"additionalItems",$=e.items.map((A,M)=>this.process(A,{...d,path:[...d.path,g,M]})),b=e.rest?this.process(e.rest,{...d,path:[...d.path,v,...this.target==="openapi-3.0"?[e.items.length]:[]]}):null;this.target==="draft-2020-12"?(p.prefixItems=$,b&&(p.items=b)):this.target==="openapi-3.0"?(p.items={anyOf:$},b&&p.items.anyOf.push(b),p.minItems=$.length,b||(p.maxItems=$.length)):(p.items=$,b&&(p.additionalItems=b));const{minimum:z,maximum:S}=t._zod.bag;typeof z=="number"&&(p.minItems=z),typeof S=="number"&&(p.maxItems=S);break}case"record":{const p=m;p.type="object",(this.target==="draft-7"||this.target==="draft-2020-12")&&(p.propertyNames=this.process(e.keyType,{...d,path:[...d.path,"propertyNames"]})),p.additionalProperties=this.process(e.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{const p=m,g=Or(e.entries);g.every(v=>typeof v=="number")&&(p.type="number"),g.every(v=>typeof v=="string")&&(p.type="string"),p.enum=g;break}case"literal":{const p=m,g=[];for(const v of e.values)if(v===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof v=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");g.push(Number(v))}else g.push(v);if(g.length!==0)if(g.length===1){const v=g[0];p.type=v===null?"null":typeof v,this.target==="draft-4"||this.target==="openapi-3.0"?p.enum=[v]:p.const=v}else g.every(v=>typeof v=="number")&&(p.type="number"),g.every(v=>typeof v=="string")&&(p.type="string"),g.every(v=>typeof v=="boolean")&&(p.type="string"),g.every(v=>v===null)&&(p.type="null"),p.enum=g;break}case"file":{const p=m,g={type:"string",format:"binary",contentEncoding:"binary"},{minimum:v,maximum:$,mime:b}=t._zod.bag;v!==void 0&&(g.minLength=v),$!==void 0&&(g.maxLength=$),b?b.length===1?(g.contentMediaType=b[0],Object.assign(p,g)):p.anyOf=b.map(z=>({...g,contentMediaType:z})):Object.assign(p,g);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{const p=this.process(e.innerType,d);this.target==="openapi-3.0"?(a.ref=e.innerType,m.nullable=!0):m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(e.innerType,d),a.ref=e.innerType;break}case"success":{const p=m;p.type="boolean";break}case"default":{this.process(e.innerType,d),a.ref=e.innerType,m.default=JSON.parse(JSON.stringify(e.defaultValue));break}case"prefault":{this.process(e.innerType,d),a.ref=e.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(e.defaultValue)));break}case"catch":{this.process(e.innerType,d),a.ref=e.innerType;let p;try{p=e.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{const p=m,g=t._zod.pattern;if(!g)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=g.source;break}case"pipe":{const p=this.io==="input"?e.in._zod.def.type==="transform"?e.out:e.in:e.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(e.innerType,d),a.ref=e.innerType,m.readOnly=!0;break}case"promise":{this.process(e.innerType,d),a.ref=e.innerType;break}case"optional":{this.process(e.innerType,d),a.ref=e.innerType;break}case"lazy":{const p=t._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}case"function":{if(this.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema");break}}}}const c=this.metadataRegistry.get(t);return c&&Object.assign(a.schema,c),this.io==="input"&&te(t)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((o=a.schema).default??(o.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(t).schema}emit(t,n){const o={cycles:n?.cycles??"ref",reused:n?.reused??"inline",external:n?.external??void 0},e=this.seen.get(t);if(!e)throw new Error("Unprocessed schema. This is a bug in Zod.");const i=l=>{const d=this.target==="draft-2020-12"?"$defs":"definitions";if(o.external){const g=o.external.registry.get(l[0])?.id,v=o.external.uri??(b=>b);if(g)return{ref:v(g)};const $=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=$,{defId:$,ref:`${v("__shared")}#/${d}/${$}`}}if(l[1]===e)return{ref:"#"};const m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},s=l=>{if(l[1].schema.$ref)return;const d=l[1],{ref:h,defId:m}=i(l);d.def={...d.schema},m&&(d.defId=m);const p=d.schema;for(const g in p)delete p[g];p.$ref=h};if(o.cycles==="throw")for(const l of this.seen.entries()){const d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
22
|
-
|
|
23
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const l of this.seen.entries()){const d=l[1];if(t===l[0]){s(l);continue}if(o.external){const m=o.external.registry.get(l[0])?.id;if(t!==l[0]&&m){s(l);continue}}if(this.metadataRegistry.get(l[0])?.id){s(l);continue}if(d.cycle){s(l);continue}if(d.count>1&&o.reused==="ref"){s(l);continue}}const a=(l,d)=>{const h=this.seen.get(l),m=h.def??h.schema,p={...m};if(h.ref===null)return;const g=h.ref;if(h.ref=null,g){a(g,d);const v=this.seen.get(g).schema;v.$ref&&(d.target==="draft-7"||d.target==="draft-4"||d.target==="openapi-3.0")?(m.allOf=m.allOf??[],m.allOf.push(v)):(Object.assign(m,v),Object.assign(m,p))}h.isParent||this.override({zodSchema:l,jsonSchema:m,path:h.path??[]})};for(const l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});const u={};if(this.target==="draft-2020-12"?u.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?u.$schema="http://json-schema.org/draft-07/schema#":this.target==="draft-4"?u.$schema="http://json-schema.org/draft-04/schema#":this.target==="openapi-3.0"||console.warn(`Invalid target: ${this.target}`),o.external?.uri){const l=o.external.registry.get(t)?.id;if(!l)throw new Error("Schema is missing an `id` property");u.$id=o.external.uri(l)}Object.assign(u,e.def);const c=o.external?.defs??{};for(const l of this.seen.entries()){const d=l[1];d.def&&d.defId&&(c[d.defId]=d.def)}o.external||Object.keys(c).length>0&&(this.target==="draft-2020-12"?u.$defs=c:u.definitions=c);try{return JSON.parse(JSON.stringify(u))}catch{throw new Error("Error converting schema to JSON.")}}}function $u(r,t){if(r instanceof Qr){const o=new br(t),e={};for(const a of r._idmap.entries()){const[u,c]=a;o.process(c)}const i={},s={registry:r,uri:t?.uri,defs:e};for(const a of r._idmap.entries()){const[u,c]=a;i[u]=o.emit(c,{...t,external:s})}if(Object.keys(e).length>0){const a=o.target==="draft-2020-12"?"$defs":"definitions";i.__shared={[a]:e}}return{schemas:i}}const n=new br(t);return n.process(r),n.emit(r,t)}function te(r,t){const n=t??{seen:new Set};if(n.seen.has(r))return!1;n.seen.add(r);const e=r._zod.def;switch(e.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return te(e.element,n);case"object":{for(const i in e.shape)if(te(e.shape[i],n))return!0;return!1}case"union":{for(const i of e.options)if(te(i,n))return!0;return!1}case"intersection":return te(e.left,n)||te(e.right,n);case"tuple":{for(const i of e.items)if(te(i,n))return!0;return!!(e.rest&&te(e.rest,n))}case"record":return te(e.keyType,n)||te(e.valueType,n);case"map":return te(e.keyType,n)||te(e.valueType,n);case"set":return te(e.valueType,n);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return te(e.innerType,n);case"lazy":return te(e.getter(),n);case"default":return te(e.innerType,n);case"prefault":return te(e.innerType,n);case"custom":return!1;case"transform":return!0;case"pipe":return te(e.in,n)||te(e.out,n);case"success":return!1;case"catch":return!1;case"function":return!1}throw new Error(`Unknown schema type: ${e.type}`)}const F_=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),Z_=Object.freeze(Object.defineProperty({__proto__:null,$ZodAny:Ws,$ZodArray:ea,$ZodAsyncError:Me,$ZodBase64:Rs,$ZodBase64URL:Ls,$ZodBigInt:Wr,$ZodBigIntFormat:Js,$ZodBoolean:Hr,$ZodCIDRv4:Ps,$ZodCIDRv6:Ds,$ZodCUID:ws,$ZodCUID2:Is,$ZodCatch:ya,$ZodCheck:G,$ZodCheckBigIntFormat:es,$ZodCheckEndsWith:_s,$ZodCheckGreaterThan:Jr,$ZodCheckIncludes:ps,$ZodCheckLengthEquals:ss,$ZodCheckLessThan:Br,$ZodCheckLowerCase:us,$ZodCheckMaxLength:os,$ZodCheckMaxSize:ts,$ZodCheckMimeType:ms,$ZodCheckMinLength:is,$ZodCheckMinSize:rs,$ZodCheckMultipleOf:Xi,$ZodCheckNumberFormat:Qi,$ZodCheckOverwrite:gs,$ZodCheckProperty:ds,$ZodCheckRegex:as,$ZodCheckSizeEquals:ns,$ZodCheckStartsWith:ls,$ZodCheckStringFormat:wt,$ZodCheckUpperCase:cs,$ZodCodec:Xr,$ZodCustom:Oa,$ZodCustomStringFormat:qs,$ZodDate:Qs,$ZodDefault:ha,$ZodDiscriminatedUnion:ia,$ZodE164:Fs,$ZodEmail:ys,$ZodEmoji:xs,$ZodEncodeError:Kt,$ZodEnum:pa,$ZodError:Er,$ZodFile:_a,$ZodFunction:Ia,$ZodGUID:vs,$ZodIPv4:As,$ZodIPv6:Us,$ZodISODate:Es,$ZodISODateTime:Ts,$ZodISODuration:js,$ZodISOTime:Ns,$ZodIntersection:sa,$ZodJWT:Ms,$ZodKSUID:Os,$ZodLazy:za,$ZodLiteral:la,$ZodMap:ua,$ZodNaN:ba,$ZodNanoID:$s,$ZodNever:Ys,$ZodNonOptional:va,$ZodNull:Hs,$ZodNullable:ga,$ZodNumber:Vr,$ZodNumberFormat:Bs,$ZodObject:na,$ZodObjectJIT:oa,$ZodOptional:ma,$ZodPipe:xa,$ZodPrefault:fa,$ZodPromise:Sa,$ZodReadonly:$a,$ZodRealError:_e,$ZodRecord:aa,$ZodRegistry:Qr,$ZodSet:ca,$ZodString:It,$ZodStringFormat:L,$ZodSuccess:ka,$ZodSymbol:Gs,$ZodTemplateLiteral:wa,$ZodTransform:da,$ZodTuple:Yr,$ZodType:T,$ZodULID:Ss,$ZodURL:bs,$ZodUUID:ks,$ZodUndefined:Vs,$ZodUnion:Kr,$ZodUnknown:Ks,$ZodVoid:Xs,$ZodXID:zs,$brand:Wo,$constructor:_,$input:Ua,$output:Aa,Doc:hs,JSONSchema:F_,JSONSchemaGenerator:br,NEVER:Ho,TimePrecision:Ra,_any:ou,_array:hu,_base64:vn,_base64url:kn,_bigint:Ya,_boolean:Wa,_catch:U_,_check:bu,_cidrv4:hn,_cidrv6:fn,_coercedBigint:Xa,_coercedBoolean:Ka,_coercedDate:cu,_coercedNumber:qa,_coercedString:Da,_cuid:cn,_cuid2:pn,_custom:vu,_date:uu,_decode:Ur,_decodeAsync:Dr,_default:N_,_discriminatedUnion:k_,_e164:yn,_email:tn,_emoji:an,_encode:Ar,_encodeAsync:Pr,_endsWith:On,_enum:I_,_file:fu,_float32:Ja,_float64:Ga,_gt:Je,_gte:le,_guid:qt,_includes:Sn,_int:Ba,_int32:Va,_int64:Qa,_intersection:y_,_ipv4:mn,_ipv6:gn,_isoDate:La,_isoDateTime:Ca,_isoDuration:Za,_isoTime:Fa,_jwt:bn,_ksuid:dn,_lazy:C_,_length:or,_literal:z_,_lowercase:wn,_lt:Be,_lte:fe,_map:$_,_max:fe,_maxLength:nr,_maxSize:rr,_mime:Tn,_min:le,_minLength:Xe,_minSize:mt,_multipleOf:dt,_nan:pu,_nanoid:un,_nativeEnum:S_,_negative:_u,_never:su,_nonnegative:mu,_nonoptional:j_,_nonpositive:du,_normalize:En,_null:nu,_nullable:E_,_number:Ma,_optional:T_,_overwrite:Ve,_parse:vt,_parseAsync:kt,_pipe:P_,_positive:lu,_promise:L_,_property:gu,_readonly:D_,_record:x_,_refine:ku,_regex:$n,_safeDecode:Cr,_safeDecodeAsync:Fr,_safeEncode:Rr,_safeEncodeAsync:Lr,_safeParse:yt,_safeParseAsync:bt,_set:w_,_size:xn,_startsWith:zn,_string:Pa,_stringFormat:St,_stringbool:xu,_success:A_,_superRefine:yu,_symbol:tu,_templateLiteral:R_,_toLowerCase:jn,_toUpperCase:An,_transform:O_,_trim:Nn,_tuple:b_,_uint32:Ha,_uint64:eu,_ulid:ln,_undefined:ru,_union:v_,_unknown:iu,_uppercase:In,_url:tr,_uuid:rn,_uuidv4:nn,_uuidv6:on,_uuidv7:sn,_void:au,_xid:_n,clone:me,config:ce,decode:Qc,decodeAsync:tp,encode:Xc,encodeAsync:ep,flattenError:Nr,formatError:jr,globalConfig:Lt,globalRegistry:Ze,isValidBase64:Gr,isValidBase64URL:Cs,isValidJWT:Zs,locales:ja,parse:vr,parseAsync:kr,prettifyError:gi,regexes:qr,registry:en,safeDecode:np,safeDecodeAsync:ip,safeEncode:rp,safeEncodeAsync:op,safeParse:hi,safeParseAsync:fi,toDotPath:mi,toJSONSchema:$u,treeifyError:di,util:li,version:fs},Symbol.toStringTag,{value:"Module"})),Un=_("ZodISODateTime",(r,t)=>{Ts.init(r,t),Z.init(r,t)});function wu(r){return Ca(Un,r)}const Pn=_("ZodISODate",(r,t)=>{Es.init(r,t),Z.init(r,t)});function Iu(r){return La(Pn,r)}const Dn=_("ZodISOTime",(r,t)=>{Ns.init(r,t),Z.init(r,t)});function Su(r){return Fa(Dn,r)}const Rn=_("ZodISODuration",(r,t)=>{js.init(r,t),Z.init(r,t)});function zu(r){return Za(Rn,r)}const M_=Object.freeze(Object.defineProperty({__proto__:null,ZodISODate:Pn,ZodISODateTime:Un,ZodISODuration:Rn,ZodISOTime:Dn,date:Iu,datetime:wu,duration:zu,time:Su},Symbol.toStringTag,{value:"Module"})),Ou=(r,t)=>{Er.init(r,t),r.name="ZodError",Object.defineProperties(r,{format:{value:n=>jr(r,n)},flatten:{value:n=>Nr(r,n)},addIssue:{value:n=>{r.issues.push(n),r.message=JSON.stringify(r.issues,Ft,2)}},addIssues:{value:n=>{r.issues.push(...n),r.message=JSON.stringify(r.issues,Ft,2)}},isEmpty:{get(){return r.issues.length===0}}})},q_=_("ZodError",Ou),de=_("ZodError",Ou,{Parent:Error}),Tu=vt(de),Eu=kt(de),Nu=yt(de),ju=bt(de),Au=Ar(de),Uu=Ur(de),Pu=Pr(de),Du=Dr(de),Ru=Rr(de),Cu=Cr(de),Lu=Lr(de),Fu=Fr(de),N=_("ZodType",(r,t)=>(T.init(r,t),r.def=t,r.type=t.type,Object.defineProperty(r,"_def",{value:t}),r.check=(...n)=>r.clone(Ne(t,{checks:[...t.checks??[],...n.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]})),r.clone=(n,o)=>me(r,n,o),r.brand=()=>r,r.register=(n,o)=>(n.add(r,o),r),r.parse=(n,o)=>Tu(r,n,o,{callee:r.parse}),r.safeParse=(n,o)=>Nu(r,n,o),r.parseAsync=async(n,o)=>Eu(r,n,o,{callee:r.parseAsync}),r.safeParseAsync=async(n,o)=>ju(r,n,o),r.spa=r.safeParseAsync,r.encode=(n,o)=>Au(r,n,o),r.decode=(n,o)=>Uu(r,n,o),r.encodeAsync=async(n,o)=>Pu(r,n,o),r.decodeAsync=async(n,o)=>Du(r,n,o),r.safeEncode=(n,o)=>Ru(r,n,o),r.safeDecode=(n,o)=>Cu(r,n,o),r.safeEncodeAsync=async(n,o)=>Lu(r,n,o),r.safeDecodeAsync=async(n,o)=>Fu(r,n,o),r.refine=(n,o)=>r.check(bc(n,o)),r.superRefine=n=>r.check(xc(n)),r.overwrite=n=>r.check(Ve(n)),r.optional=()=>Jt(r),r.nullable=()=>Gt(r),r.nullish=()=>Jt(Gt(r)),r.nonoptional=n=>pc(r,n),r.array=()=>we(r),r.or=n=>je([r,n]),r.and=n=>Yu(r,n),r.transform=n=>Vt(r,ao(n)),r.default=n=>ac(r,n),r.prefault=n=>cc(r,n),r.catch=n=>dc(r,n),r.pipe=n=>Vt(r,n),r.readonly=()=>hc(r),r.describe=n=>{const o=r.clone();return Ze.add(o,{description:n}),o},Object.defineProperty(r,"description",{get(){return Ze.get(r)?.description},configurable:!0}),r.meta=(...n)=>{if(n.length===0)return Ze.get(r);const o=r.clone();return Ze.add(o,n[0]),o},r.isOptional=()=>r.safeParse(void 0).success,r.isNullable=()=>r.safeParse(null).success,r)),Cn=_("_ZodString",(r,t)=>{It.init(r,t),N.init(r,t);const n=r._zod.bag;r.format=n.format??null,r.minLength=n.minimum??null,r.maxLength=n.maximum??null,r.regex=(...o)=>r.check($n(...o)),r.includes=(...o)=>r.check(Sn(...o)),r.startsWith=(...o)=>r.check(zn(...o)),r.endsWith=(...o)=>r.check(On(...o)),r.min=(...o)=>r.check(Xe(...o)),r.max=(...o)=>r.check(nr(...o)),r.length=(...o)=>r.check(or(...o)),r.nonempty=(...o)=>r.check(Xe(1,...o)),r.lowercase=o=>r.check(wn(o)),r.uppercase=o=>r.check(In(o)),r.trim=()=>r.check(Nn()),r.normalize=(...o)=>r.check(En(...o)),r.toLowerCase=()=>r.check(jn()),r.toUpperCase=()=>r.check(An())}),ir=_("ZodString",(r,t)=>{It.init(r,t),Cn.init(r,t),r.email=n=>r.check(tn(Ln,n)),r.url=n=>r.check(tr(sr,n)),r.jwt=n=>r.check(bn(eo,n)),r.emoji=n=>r.check(an(Fn,n)),r.guid=n=>r.check(qt(Bt,n)),r.uuid=n=>r.check(rn(Te,n)),r.uuidv4=n=>r.check(nn(Te,n)),r.uuidv6=n=>r.check(on(Te,n)),r.uuidv7=n=>r.check(sn(Te,n)),r.nanoid=n=>r.check(un(Zn,n)),r.guid=n=>r.check(qt(Bt,n)),r.cuid=n=>r.check(cn(Mn,n)),r.cuid2=n=>r.check(pn(qn,n)),r.ulid=n=>r.check(ln(Bn,n)),r.base64=n=>r.check(vn(Yn,n)),r.base64url=n=>r.check(kn(Xn,n)),r.xid=n=>r.check(_n(Jn,n)),r.ksuid=n=>r.check(dn(Gn,n)),r.ipv4=n=>r.check(mn(Vn,n)),r.ipv6=n=>r.check(gn(Hn,n)),r.cidrv4=n=>r.check(hn(Wn,n)),r.cidrv6=n=>r.check(fn(Kn,n)),r.e164=n=>r.check(yn(Qn,n)),r.datetime=n=>r.check(wu(n)),r.date=n=>r.check(Iu(n)),r.time=n=>r.check(Su(n)),r.duration=n=>r.check(zu(n))});function D(r){return Pa(ir,r)}const Z=_("ZodStringFormat",(r,t)=>{L.init(r,t),Cn.init(r,t)}),Ln=_("ZodEmail",(r,t)=>{ys.init(r,t),Z.init(r,t)});function B_(r){return tn(Ln,r)}const Bt=_("ZodGUID",(r,t)=>{vs.init(r,t),Z.init(r,t)});function J_(r){return qt(Bt,r)}const Te=_("ZodUUID",(r,t)=>{ks.init(r,t),Z.init(r,t)});function G_(r){return rn(Te,r)}function V_(r){return nn(Te,r)}function H_(r){return on(Te,r)}function W_(r){return sn(Te,r)}const sr=_("ZodURL",(r,t)=>{bs.init(r,t),Z.init(r,t)});function K_(r){return tr(sr,r)}function Y_(r){return tr(sr,{protocol:/^https?$/,hostname:Ui,...k(r)})}const Fn=_("ZodEmoji",(r,t)=>{xs.init(r,t),Z.init(r,t)});function X_(r){return an(Fn,r)}const Zn=_("ZodNanoID",(r,t)=>{$s.init(r,t),Z.init(r,t)});function Q_(r){return un(Zn,r)}const Mn=_("ZodCUID",(r,t)=>{ws.init(r,t),Z.init(r,t)});function ed(r){return cn(Mn,r)}const qn=_("ZodCUID2",(r,t)=>{Is.init(r,t),Z.init(r,t)});function td(r){return pn(qn,r)}const Bn=_("ZodULID",(r,t)=>{Ss.init(r,t),Z.init(r,t)});function rd(r){return ln(Bn,r)}const Jn=_("ZodXID",(r,t)=>{zs.init(r,t),Z.init(r,t)});function nd(r){return _n(Jn,r)}const Gn=_("ZodKSUID",(r,t)=>{Os.init(r,t),Z.init(r,t)});function od(r){return dn(Gn,r)}const Vn=_("ZodIPv4",(r,t)=>{As.init(r,t),Z.init(r,t)});function id(r){return mn(Vn,r)}const Hn=_("ZodIPv6",(r,t)=>{Us.init(r,t),Z.init(r,t)});function sd(r){return gn(Hn,r)}const Wn=_("ZodCIDRv4",(r,t)=>{Ps.init(r,t),Z.init(r,t)});function ad(r){return hn(Wn,r)}const Kn=_("ZodCIDRv6",(r,t)=>{Ds.init(r,t),Z.init(r,t)});function ud(r){return fn(Kn,r)}const Yn=_("ZodBase64",(r,t)=>{Rs.init(r,t),Z.init(r,t)});function cd(r){return vn(Yn,r)}const Xn=_("ZodBase64URL",(r,t)=>{Ls.init(r,t),Z.init(r,t)});function pd(r){return kn(Xn,r)}const Qn=_("ZodE164",(r,t)=>{Fs.init(r,t),Z.init(r,t)});function ld(r){return yn(Qn,r)}const eo=_("ZodJWT",(r,t)=>{Ms.init(r,t),Z.init(r,t)});function _d(r){return bn(eo,r)}const zt=_("ZodCustomStringFormat",(r,t)=>{qs.init(r,t),Z.init(r,t)});function dd(r,t,n={}){return St(zt,r,t,n)}function md(r){return St(zt,"hostname",Mr,r)}function gd(r){return St(zt,"hex",Ki,r)}function hd(r,t){const n=t?.enc??"hex",o=`${r}_${n}`,e=qr[o];if(!e)throw new Error(`Unrecognized hash format: ${o}`);return St(zt,o,e,t)}const ar=_("ZodNumber",(r,t)=>{Vr.init(r,t),N.init(r,t),r.gt=(o,e)=>r.check(Je(o,e)),r.gte=(o,e)=>r.check(le(o,e)),r.min=(o,e)=>r.check(le(o,e)),r.lt=(o,e)=>r.check(Be(o,e)),r.lte=(o,e)=>r.check(fe(o,e)),r.max=(o,e)=>r.check(fe(o,e)),r.int=o=>r.check(xr(o)),r.safe=o=>r.check(xr(o)),r.positive=o=>r.check(Je(0,o)),r.nonnegative=o=>r.check(le(0,o)),r.negative=o=>r.check(Be(0,o)),r.nonpositive=o=>r.check(fe(0,o)),r.multipleOf=(o,e)=>r.check(dt(o,e)),r.step=(o,e)=>r.check(dt(o,e)),r.finite=()=>r;const n=r._zod.bag;r.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,r.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,r.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),r.isFinite=!0,r.format=n.format??null});function xe(r){return Ma(ar,r)}const tt=_("ZodNumberFormat",(r,t)=>{Bs.init(r,t),ar.init(r,t)});function xr(r){return Ba(tt,r)}function fd(r){return Ja(tt,r)}function vd(r){return Ga(tt,r)}function kd(r){return Va(tt,r)}function yd(r){return Ha(tt,r)}const ur=_("ZodBoolean",(r,t)=>{Hr.init(r,t),N.init(r,t)});function rt(r){return Wa(ur,r)}const cr=_("ZodBigInt",(r,t)=>{Wr.init(r,t),N.init(r,t),r.gte=(o,e)=>r.check(le(o,e)),r.min=(o,e)=>r.check(le(o,e)),r.gt=(o,e)=>r.check(Je(o,e)),r.gte=(o,e)=>r.check(le(o,e)),r.min=(o,e)=>r.check(le(o,e)),r.lt=(o,e)=>r.check(Be(o,e)),r.lte=(o,e)=>r.check(fe(o,e)),r.max=(o,e)=>r.check(fe(o,e)),r.positive=o=>r.check(Je(BigInt(0),o)),r.negative=o=>r.check(Be(BigInt(0),o)),r.nonpositive=o=>r.check(fe(BigInt(0),o)),r.nonnegative=o=>r.check(le(BigInt(0),o)),r.multipleOf=(o,e)=>r.check(dt(o,e));const n=r._zod.bag;r.minValue=n.minimum??null,r.maxValue=n.maximum??null,r.format=n.format??null});function bd(r){return Ya(cr,r)}const to=_("ZodBigIntFormat",(r,t)=>{Js.init(r,t),cr.init(r,t)});function xd(r){return Qa(to,r)}function $d(r){return eu(to,r)}const Zu=_("ZodSymbol",(r,t)=>{Gs.init(r,t),N.init(r,t)});function wd(r){return tu(Zu,r)}const Mu=_("ZodUndefined",(r,t)=>{Vs.init(r,t),N.init(r,t)});function Id(r){return ru(Mu,r)}const qu=_("ZodNull",(r,t)=>{Hs.init(r,t),N.init(r,t)});function ro(r){return nu(qu,r)}const Bu=_("ZodAny",(r,t)=>{Ws.init(r,t),N.init(r,t)});function $e(){return ou(Bu)}const Ju=_("ZodUnknown",(r,t)=>{Ks.init(r,t),N.init(r,t)});function Ee(){return iu(Ju)}const Gu=_("ZodNever",(r,t)=>{Ys.init(r,t),N.init(r,t)});function no(r){return su(Gu,r)}const Vu=_("ZodVoid",(r,t)=>{Xs.init(r,t),N.init(r,t)});function Sd(r){return au(Vu,r)}const oo=_("ZodDate",(r,t)=>{Qs.init(r,t),N.init(r,t),r.min=(o,e)=>r.check(le(o,e)),r.max=(o,e)=>r.check(fe(o,e));const n=r._zod.bag;r.minDate=n.minimum?new Date(n.minimum):null,r.maxDate=n.maximum?new Date(n.maximum):null});function zd(r){return uu(oo,r)}const Hu=_("ZodArray",(r,t)=>{ea.init(r,t),N.init(r,t),r.element=t.element,r.min=(n,o)=>r.check(Xe(n,o)),r.nonempty=n=>r.check(Xe(1,n)),r.max=(n,o)=>r.check(nr(n,o)),r.length=(n,o)=>r.check(or(n,o)),r.unwrap=()=>r.element});function we(r,t){return hu(Hu,r,t)}function Od(r){const t=r._zod.def.shape;return ot(Object.keys(t))}const pr=_("ZodObject",(r,t)=>{oa.init(r,t),N.init(r,t),P(r,"shape",()=>t.shape),r.keyof=()=>ot(Object.keys(r._zod.def.shape)),r.catchall=n=>r.clone({...r._zod.def,catchall:n}),r.passthrough=()=>r.clone({...r._zod.def,catchall:Ee()}),r.loose=()=>r.clone({...r._zod.def,catchall:Ee()}),r.strict=()=>r.clone({...r._zod.def,catchall:no()}),r.strip=()=>r.clone({...r._zod.def,catchall:void 0}),r.extend=n=>oi(r,n),r.safeExtend=n=>ii(r,n),r.merge=n=>si(r,n),r.pick=n=>ri(r,n),r.omit=n=>ni(r,n),r.partial=(...n)=>ai(uo,r,n[0]),r.required=(...n)=>ui(co,r,n[0])});function R(r,t){const n={type:"object",shape:r??{},...k(t)};return new pr(n)}function Td(r,t){return new pr({type:"object",shape:r,catchall:no(),...k(t)})}function Ed(r,t){return new pr({type:"object",shape:r,catchall:Ee(),...k(t)})}const io=_("ZodUnion",(r,t)=>{Kr.init(r,t),N.init(r,t),r.options=t.options});function je(r,t){return new io({type:"union",options:r,...k(t)})}const Wu=_("ZodDiscriminatedUnion",(r,t)=>{io.init(r,t),ia.init(r,t)});function Nd(r,t,n){return new Wu({type:"union",options:t,discriminator:r,...k(n)})}const Ku=_("ZodIntersection",(r,t)=>{sa.init(r,t),N.init(r,t)});function Yu(r,t){return new Ku({type:"intersection",left:r,right:t})}const Xu=_("ZodTuple",(r,t)=>{Yr.init(r,t),N.init(r,t),r.rest=n=>r.clone({...r._zod.def,rest:n})});function Qu(r,t,n){const o=t instanceof T,e=o?n:t,i=o?t:null;return new Xu({type:"tuple",items:r,rest:i,...k(e)})}const so=_("ZodRecord",(r,t)=>{aa.init(r,t),N.init(r,t),r.keyType=t.keyType,r.valueType=t.valueType});function nt(r,t,n){return new so({type:"record",keyType:r,valueType:t,...k(n)})}function jd(r,t,n){const o=me(r);return o._zod.values=void 0,new so({type:"record",keyType:o,valueType:t,...k(n)})}const ec=_("ZodMap",(r,t)=>{ua.init(r,t),N.init(r,t),r.keyType=t.keyType,r.valueType=t.valueType});function Ad(r,t,n){return new ec({type:"map",keyType:r,valueType:t,...k(n)})}const tc=_("ZodSet",(r,t)=>{ca.init(r,t),N.init(r,t),r.min=(...n)=>r.check(mt(...n)),r.nonempty=n=>r.check(mt(1,n)),r.max=(...n)=>r.check(rr(...n)),r.size=(...n)=>r.check(xn(...n))});function Ud(r,t){return new tc({type:"set",valueType:r,...k(t)})}const gt=_("ZodEnum",(r,t)=>{pa.init(r,t),N.init(r,t),r.enum=t.entries,r.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));r.extract=(o,e)=>{const i={};for(const s of o)if(n.has(s))i[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new gt({...t,checks:[],...k(e),entries:i})},r.exclude=(o,e)=>{const i={...t.entries};for(const s of o)if(n.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new gt({...t,checks:[],...k(e),entries:i})}});function ot(r,t){const n=Array.isArray(r)?Object.fromEntries(r.map(o=>[o,o])):r;return new gt({type:"enum",entries:n,...k(t)})}function Pd(r,t){return new gt({type:"enum",entries:r,...k(t)})}const rc=_("ZodLiteral",(r,t)=>{la.init(r,t),N.init(r,t),r.values=new Set(t.values),Object.defineProperty(r,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function ue(r,t){return new rc({type:"literal",values:Array.isArray(r)?r:[r],...k(t)})}const nc=_("ZodFile",(r,t)=>{_a.init(r,t),N.init(r,t),r.min=(n,o)=>r.check(mt(n,o)),r.max=(n,o)=>r.check(rr(n,o)),r.mime=(n,o)=>r.check(Tn(Array.isArray(n)?n:[n],o))});function Dd(r){return fu(nc,r)}const oc=_("ZodTransform",(r,t)=>{da.init(r,t),N.init(r,t),r._zod.parse=(n,o)=>{if(o.direction==="backward")throw new Kt(r.constructor.name);n.addIssue=i=>{if(typeof i=="string")n.issues.push(Ke(i,n.value,t));else{const s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),n.issues.push(Ke(s))}};const e=t.transform(n.value,n);return e instanceof Promise?e.then(i=>(n.value=i,n)):(n.value=e,n)}});function ao(r){return new oc({type:"transform",transform:r})}const uo=_("ZodOptional",(r,t)=>{ma.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function Jt(r){return new uo({type:"optional",innerType:r})}const ic=_("ZodNullable",(r,t)=>{ga.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function Gt(r){return new ic({type:"nullable",innerType:r})}function Rd(r){return Jt(Gt(r))}const sc=_("ZodDefault",(r,t)=>{ha.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType,r.removeDefault=r.unwrap});function ac(r,t){return new sc({type:"default",innerType:r,get defaultValue(){return typeof t=="function"?t():Xt(t)}})}const uc=_("ZodPrefault",(r,t)=>{fa.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function cc(r,t){return new uc({type:"prefault",innerType:r,get defaultValue(){return typeof t=="function"?t():Xt(t)}})}const co=_("ZodNonOptional",(r,t)=>{va.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function pc(r,t){return new co({type:"nonoptional",innerType:r,...k(t)})}const lc=_("ZodSuccess",(r,t)=>{ka.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function Cd(r){return new lc({type:"success",innerType:r})}const _c=_("ZodCatch",(r,t)=>{ya.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType,r.removeCatch=r.unwrap});function dc(r,t){return new _c({type:"catch",innerType:r,catchValue:typeof t=="function"?t:()=>t})}const mc=_("ZodNaN",(r,t)=>{ba.init(r,t),N.init(r,t)});function Ld(r){return pu(mc,r)}const po=_("ZodPipe",(r,t)=>{xa.init(r,t),N.init(r,t),r.in=t.in,r.out=t.out});function Vt(r,t){return new po({type:"pipe",in:r,out:t})}const lo=_("ZodCodec",(r,t)=>{po.init(r,t),Xr.init(r,t)});function Fd(r,t,n){return new lo({type:"pipe",in:r,out:t,transform:n.decode,reverseTransform:n.encode})}const gc=_("ZodReadonly",(r,t)=>{$a.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function hc(r){return new gc({type:"readonly",innerType:r})}const fc=_("ZodTemplateLiteral",(r,t)=>{wa.init(r,t),N.init(r,t)});function Zd(r,t){return new fc({type:"template_literal",parts:r,...k(t)})}const vc=_("ZodLazy",(r,t)=>{za.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.getter()});function _o(r){return new vc({type:"lazy",getter:r})}const kc=_("ZodPromise",(r,t)=>{Sa.init(r,t),N.init(r,t),r.unwrap=()=>r._zod.def.innerType});function Md(r){return new kc({type:"promise",innerType:r})}const yc=_("ZodFunction",(r,t)=>{Ia.init(r,t),N.init(r,t)});function Uo(r){return new yc({type:"function",input:Array.isArray(r?.input)?Qu(r?.input):r?.input??we(Ee()),output:r?.output??Ee()})}const lr=_("ZodCustom",(r,t)=>{Oa.init(r,t),N.init(r,t)});function qd(r){const t=new G({check:"custom"});return t._zod.check=r,t}function Bd(r,t){return vu(lr,r??(()=>!0),t)}function bc(r,t={}){return ku(lr,r,t)}function xc(r){return yu(r)}function Jd(r,t={error:`Input not instance of ${r.name}`}){const n=new lr({type:"custom",check:"custom",fn:o=>o instanceof r,abort:!0,...k(t)});return n._zod.bag.Class=r,n}const Gd=(...r)=>xu({Codec:lo,Boolean:ur,String:ir},...r);function Vd(r){const t=_o(()=>je([D(r),xe(),rt(),ro(),we(t),nt(D(),t)]));return t}function Hd(r,t){return Vt(ao(r),t)}const Wd={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function Kd(r){ce({customError:r})}function Yd(){return ce().customError}var $r;$r||($r={});function Xd(r){return Da(ir,r)}function Qd(r){return qa(ar,r)}function em(r){return Ka(ur,r)}function tm(r){return Xa(cr,r)}function Ct(r){return cu(oo,r)}const rm=Object.freeze(Object.defineProperty({__proto__:null,bigint:tm,boolean:em,date:Ct,number:Qd,string:Xd},Symbol.toStringTag,{value:"Module"}));ce(Ta());const ie=Object.freeze(Object.defineProperty({__proto__:null,$brand:Wo,$input:Ua,$output:Aa,NEVER:Ho,TimePrecision:Ra,ZodAny:Bu,ZodArray:Hu,ZodBase64:Yn,ZodBase64URL:Xn,ZodBigInt:cr,ZodBigIntFormat:to,ZodBoolean:ur,ZodCIDRv4:Wn,ZodCIDRv6:Kn,ZodCUID:Mn,ZodCUID2:qn,ZodCatch:_c,ZodCodec:lo,ZodCustom:lr,ZodCustomStringFormat:zt,ZodDate:oo,ZodDefault:sc,ZodDiscriminatedUnion:Wu,ZodE164:Qn,ZodEmail:Ln,ZodEmoji:Fn,ZodEnum:gt,ZodError:q_,ZodFile:nc,get ZodFirstPartyTypeKind(){return $r},ZodFunction:yc,ZodGUID:Bt,ZodIPv4:Vn,ZodIPv6:Hn,ZodISODate:Pn,ZodISODateTime:Un,ZodISODuration:Rn,ZodISOTime:Dn,ZodIntersection:Ku,ZodIssueCode:Wd,ZodJWT:eo,ZodKSUID:Gn,ZodLazy:vc,ZodLiteral:rc,ZodMap:ec,ZodNaN:mc,ZodNanoID:Zn,ZodNever:Gu,ZodNonOptional:co,ZodNull:qu,ZodNullable:ic,ZodNumber:ar,ZodNumberFormat:tt,ZodObject:pr,ZodOptional:uo,ZodPipe:po,ZodPrefault:uc,ZodPromise:kc,ZodReadonly:gc,ZodRealError:de,ZodRecord:so,ZodSet:tc,ZodString:ir,ZodStringFormat:Z,ZodSuccess:lc,ZodSymbol:Zu,ZodTemplateLiteral:fc,ZodTransform:oc,ZodTuple:Xu,ZodType:N,ZodULID:Bn,ZodURL:sr,ZodUUID:Te,ZodUndefined:Mu,ZodUnion:io,ZodUnknown:Ju,ZodVoid:Vu,ZodXID:Jn,_ZodString:Cn,_default:ac,_function:Uo,any:$e,array:we,base64:cd,base64url:pd,bigint:bd,boolean:rt,catch:dc,check:qd,cidrv4:ad,cidrv6:ud,clone:me,codec:Fd,coerce:rm,config:ce,core:Z_,cuid:ed,cuid2:td,custom:Bd,date:zd,decode:Uu,decodeAsync:Du,discriminatedUnion:Nd,e164:ld,email:B_,emoji:X_,encode:Au,encodeAsync:Pu,endsWith:On,enum:ot,file:Dd,flattenError:Nr,float32:fd,float64:vd,formatError:jr,function:Uo,getErrorMap:Yd,globalRegistry:Ze,gt:Je,gte:le,guid:J_,hash:hd,hex:gd,hostname:md,httpUrl:Y_,includes:Sn,instanceof:Jd,int:xr,int32:kd,int64:xd,intersection:Yu,ipv4:id,ipv6:sd,iso:M_,json:Vd,jwt:_d,keyof:Od,ksuid:od,lazy:_o,length:or,literal:ue,locales:ja,looseObject:Ed,lowercase:wn,lt:Be,lte:fe,map:Ad,maxLength:nr,maxSize:rr,mime:Tn,minLength:Xe,minSize:mt,multipleOf:dt,nan:Ld,nanoid:Q_,nativeEnum:Pd,negative:_u,never:no,nonnegative:mu,nonoptional:pc,nonpositive:du,normalize:En,null:ro,nullable:Gt,nullish:Rd,number:xe,object:R,optional:Jt,overwrite:Ve,parse:Tu,parseAsync:Eu,partialRecord:jd,pipe:Vt,positive:lu,prefault:cc,preprocess:Hd,prettifyError:gi,promise:Md,property:gu,readonly:hc,record:nt,refine:bc,regex:$n,regexes:qr,registry:en,safeDecode:Cu,safeDecodeAsync:Fu,safeEncode:Ru,safeEncodeAsync:Lu,safeParse:Nu,safeParseAsync:ju,set:Ud,setErrorMap:Kd,size:xn,startsWith:zn,strictObject:Td,string:D,stringFormat:dd,stringbool:Gd,success:Cd,superRefine:xc,symbol:wd,templateLiteral:Zd,toJSONSchema:$u,toLowerCase:jn,toUpperCase:An,transform:ao,treeifyError:di,trim:Nn,tuple:Qu,uint32:yd,uint64:$d,ulid:rd,undefined:Id,union:je,unknown:Ee,uppercase:In,url:K_,util:li,uuid:G_,uuidv4:V_,uuidv6:H_,uuidv7:W_,void:Sd,xid:nd},Symbol.toStringTag,{value:"Module"})),Le=()=>ie.preprocess(r=>{if(typeof r=="boolean")return r;if(typeof r=="number")return r===1;if(typeof r=="string"){const t=r.trim().toLowerCase();if(["1","true","yes","y","on"].includes(t))return!0;if(["0","false","no","n","off"].includes(t))return!1}},ie.boolean().optional()),nm=()=>ie.preprocess(r=>{if(typeof r=="number"&&Number.isFinite(r))return r;if(typeof r=="string"){const t=Number(r);if(Number.isFinite(t))return t}},ie.number()),$c=ie.object({NODE_ENV:ie.enum(["development","production","test"]).default("production"),AGENT_CONTAINER_MODE:Le().default(!1),AGENT_API_KEY:ie.string().optional(),AGENT_ORGANIZATION_ID:ie.string().optional(),AGENT_SESSION_ID:ie.string().optional(),AGENT_SERVER_URL:ie.string().optional(),AGENT_TYPE:ie.string().optional(),AGENT_DEVICE_GUID:ie.string().optional(),CONTEXT_DATA:ie.string().optional(),AGI_NETLOG_ENABLE:Le().default(!0),AGI_NETLOG_DEBUG:Le().optional(),AGI_NETLOG_FILE:ie.string().optional(),AGI_NETLOG_MAX_BODY:nm().optional(),AGI_NETLOG_REMOTE_ENABLE:Le().default(!0),AGI_NETLOG_REMOTE_FILE:ie.string().optional(),DEBUG:Le().default(!1),VERBOSE:Le().default(!1),LOG_LEVEL:ie.string().optional(),HOSTNAME:ie.string().optional(),VITE_SAVE_RAW:Le().default(!1)});function Dt(r=!1){return r?"https://agiflow.io":"https://agiflow.io"}let q=$c.parse(process.env);class re{static refresh(){q=$c.parse(process.env)}static get isContainerMode(){return!!q.AGENT_CONTAINER_MODE}static get apiKey(){return q.AGENT_API_KEY||process.env.AGENT_API_KEY}static get organizationId(){return q.AGENT_ORGANIZATION_ID||process.env.AGENT_ORGANIZATION_ID}static get sessionId(){return q.AGENT_SESSION_ID||process.env.AGENT_SESSION_ID}static get serverUrl(){return q.AGENT_SERVER_URL||process.env.AGENT_SERVER_URL||Dt(this.isContainerMode)}static get isNetlogEnabled(){return!!q.AGI_NETLOG_ENABLE}static get isNetlogDebug(){return!!q.AGI_NETLOG_DEBUG}static get isNetlogRemoteEnabled(){return!!q.AGI_NETLOG_REMOTE_ENABLE}static get isDebugMode(){return q.DEBUG}static get isVerbose(){return q.VERBOSE}static get logLevel(){return q.LOG_LEVEL??(q.DEBUG?"debug":"info")}static get nodeEnv(){return q.NODE_ENV}static get homeDir(){return process.env.HOME||process.env.USERPROFILE}static get isMacOS(){return process.platform==="darwin"}static get hostname(){return q.HOSTNAME}static get netlogMaxBody(){return q.AGI_NETLOG_MAX_BODY}static get netlogFile(){return q.AGI_NETLOG_FILE}static get netlogRemoteFile(){return q.AGI_NETLOG_REMOTE_FILE}static get agentType(){return q.AGENT_TYPE||process.env.AGENT_TYPE}static get deviceGuid(){return q.AGENT_DEVICE_GUID}static get isSaveRawEnabled(){return!!q.VITE_SAVE_RAW}static get contextData(){return q.CONTEXT_DATA||process.env.CONTEXT_DATA}static serializeEnv(){const t={...process.env};for(const[n,o]of Object.entries(q))o!==void 0&&(typeof o=="string"?t[n]=o:typeof o=="number"?t[n]=String(o):typeof o=="boolean"?t[n]=o?"true":"false":t[n]=String(o));return t}static toChildProcess(){const t=this.serializeEnv();return t.AGENT_SERVER_URL||(t.AGENT_SERVER_URL=Dt(this.isContainerMode)),t.LOG_LEVEL||(t.LOG_LEVEL=this.logLevel),t}static toDocker(){const t=this.serializeEnv();return t.AGENT_CONTAINER_MODE="true",t.AGENT_SERVER_URL||(t.AGENT_SERVER_URL=Dt(!0)),t.LOG_LEVEL||(t.LOG_LEVEL=this.logLevel),t}static toPty(){const t=this.serializeEnv();return t.AGENT_SERVER_URL||(t.AGENT_SERVER_URL=Dt(this.isContainerMode)),t.LOG_LEVEL||(t.LOG_LEVEL=this.logLevel),t}static getEnvs(){return q}}class lt{logStream;logPath;constructor(t){this.logPath=t;const n=ye.dirname(this.logPath);be.existsSync(n)||be.mkdirSync(n,{recursive:!0}),this.logStream=be.createWriteStream(this.logPath,{flags:"a"}),this.logStream.on("error",o=>{console.error(`[FileLogger] Error writing to log file: ${o.message}`)})}info(t,n){this.log(30,t,n)}debug(t,n){this.log(20,t,n)}warn(t,n){this.log(40,t,n)}error(t,n){this.log(50,t,n)}log(t,n,o){const e={time:new Date().toISOString(),level:t,msg:n,...o};try{this.logStream.write(JSON.stringify(e)+`
|
|
24
|
-
`)}catch(i){console.error(`[FileLogger] Failed to write log entry: ${i}`)}}close(){this.logStream&&!this.logStream.destroyed&&this.logStream.end()}getLogPath(){return this.logPath}static shouldDebug(){return re.isDebugMode||re.isNetlogDebug}}const om={max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:15e-6,output_cost_per_token:6e-5,cache_read_input_token_cost:75e-7,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},im={max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-6,output_cost_per_token:8e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0,supported_endpoints:["/v1/responses","/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image"],supported_output_modalities:["text"]},sm={"gpt-4":{max_tokens:4096,max_input_tokens:8192,max_output_tokens:4096,input_cost_per_token:3e-5,output_cost_per_token:6e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4.1":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:2e-6,output_cost_per_token:8e-6,input_cost_per_token_batches:1e-6,output_cost_per_token_batches:4e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4.1-2025-04-14":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:2e-6,output_cost_per_token:8e-6,input_cost_per_token_batches:1e-6,output_cost_per_token_batches:4e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4.1-mini":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:4e-7,output_cost_per_token:16e-7,input_cost_per_token_batches:2e-7,output_cost_per_token_batches:8e-7,cache_read_input_token_cost:1e-7,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4.1-mini-2025-04-14":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:4e-7,output_cost_per_token:16e-7,input_cost_per_token_batches:2e-7,output_cost_per_token_batches:8e-7,cache_read_input_token_cost:1e-7,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4.1-nano":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:1e-7,output_cost_per_token:4e-7,input_cost_per_token_batches:5e-8,output_cost_per_token_batches:2e-7,cache_read_input_token_cost:25e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4.1-nano-2025-04-14":{max_tokens:32768,max_input_tokens:1047576,max_output_tokens:32768,input_cost_per_token:1e-7,output_cost_per_token:4e-7,input_cost_per_token_batches:5e-8,output_cost_per_token_batches:2e-7,cache_read_input_token_cost:25e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"gpt-4o":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,output_cost_per_token:1e-5,input_cost_per_token_batches:125e-8,output_cost_per_token_batches:5e-6,cache_read_input_token_cost:125e-8,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"watsonx/ibm/granite-3-8b-instruct":{max_tokens:8192,max_input_tokens:8192,max_output_tokens:1024,input_cost_per_token:2e-4,output_cost_per_token:2e-4,litellm_provider:"watsonx",mode:"chat",supports_function_calling:!0,supports_tool_choice:!0,supports_parallel_function_calling:!1,supports_vision:!1,supports_audio_input:!1,supports_audio_output:!1,supports_prompt_caching:!0,supports_response_schema:!0,supports_system_messages:!0},"watsonx/mistralai/mistral-large":{max_tokens:131072,max_input_tokens:131072,max_output_tokens:16384,input_cost_per_token:3e-6,output_cost_per_token:1e-5,litellm_provider:"watsonx",mode:"chat",supports_function_calling:!0,supports_tool_choice:!0,supports_parallel_function_calling:!1,supports_vision:!1,supports_audio_input:!1,supports_audio_output:!1,supports_prompt_caching:!0,supports_response_schema:!0,supports_system_messages:!0},"gpt-4o-search-preview-2025-03-11":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,output_cost_per_token:1e-5,input_cost_per_token_batches:125e-8,output_cost_per_token_batches:5e-6,cache_read_input_token_cost:125e-8,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-search-preview":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,output_cost_per_token:1e-5,input_cost_per_token_batches:125e-8,output_cost_per_token_batches:5e-6,cache_read_input_token_cost:125e-8,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_web_search:!0,search_context_cost_per_query:{search_context_size_low:.03,search_context_size_medium:.035,search_context_size_high:.05}},"gpt-4.5-preview":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:75e-6,output_cost_per_token:15e-5,input_cost_per_token_batches:375e-7,output_cost_per_token_batches:75e-6,cache_read_input_token_cost:375e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4.5-preview-2025-02-27":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:75e-6,output_cost_per_token:15e-5,input_cost_per_token_batches:375e-7,output_cost_per_token_batches:75e-6,cache_read_input_token_cost:375e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,deprecation_date:"2025-07-14"},"gpt-4o-audio-preview":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,input_cost_per_audio_token:1e-4,output_cost_per_token:1e-5,output_cost_per_audio_token:2e-4,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-audio-preview-2024-12-17":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,input_cost_per_audio_token:4e-5,output_cost_per_token:1e-5,output_cost_per_audio_token:8e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-audio-preview-2024-10-01":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,input_cost_per_audio_token:1e-4,output_cost_per_token:1e-5,output_cost_per_audio_token:2e-4,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-audio-preview-2025-06-03":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,input_cost_per_audio_token:4e-5,output_cost_per_token:1e-5,output_cost_per_audio_token:8e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-audio-preview":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,input_cost_per_audio_token:1e-5,output_cost_per_token:6e-7,output_cost_per_audio_token:2e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-audio-preview-2024-12-17":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,input_cost_per_audio_token:1e-5,output_cost_per_token:6e-7,output_cost_per_audio_token:2e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,output_cost_per_token:6e-7,input_cost_per_token_batches:75e-9,output_cost_per_token_batches:3e-7,cache_read_input_token_cost:75e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-search-preview-2025-03-11":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,output_cost_per_token:6e-7,input_cost_per_token_batches:75e-9,output_cost_per_token_batches:3e-7,cache_read_input_token_cost:75e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-search-preview":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,output_cost_per_token:6e-7,input_cost_per_token_batches:75e-9,output_cost_per_token_batches:3e-7,cache_read_input_token_cost:75e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_web_search:!0,search_context_cost_per_query:{search_context_size_low:.025,search_context_size_medium:.0275,search_context_size_high:.03}},"gpt-4o-mini-2024-07-18":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:15e-8,output_cost_per_token:6e-7,input_cost_per_token_batches:75e-9,output_cost_per_token_batches:3e-7,cache_read_input_token_cost:75e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,search_context_cost_per_query:{search_context_size_low:.025,search_context_size_medium:.0275,search_context_size_high:.03}},"gpt-5":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:125e-8,output_cost_per_token:1e-5,cache_read_input_token_cost:125e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-mini":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:25e-8,output_cost_per_token:2e-6,cache_read_input_token_cost:25e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-nano":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:5e-8,output_cost_per_token:4e-7,cache_read_input_token_cost:5e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-chat":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:125e-8,output_cost_per_token:1e-5,cache_read_input_token_cost:125e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!1,supports_parallel_function_calling:!1,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!1,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-chat-latest":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:125e-8,output_cost_per_token:1e-5,cache_read_input_token_cost:125e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!1,supports_parallel_function_calling:!1,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!1,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-2025-08-07":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:125e-8,output_cost_per_token:1e-5,cache_read_input_token_cost:125e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-mini-2025-08-07":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:25e-8,output_cost_per_token:2e-6,cache_read_input_token_cost:25e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"gpt-5-nano-2025-08-07":{max_tokens:128e3,max_input_tokens:4e5,max_output_tokens:128e3,input_cost_per_token:5e-8,output_cost_per_token:4e-7,cache_read_input_token_cost:5e-9,litellm_provider:"openai",mode:"chat",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0,supports_reasoning:!0},"codex-mini-latest":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:15e-7,output_cost_per_token:6e-6,cache_read_input_token_cost:375e-9,litellm_provider:"openai",mode:"responses",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supported_modalities:["text","image"],supported_output_modalities:["text"],supported_endpoints:["/v1/responses"]},"o1-pro":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:15e-5,output_cost_per_token:6e-4,input_cost_per_token_batches:75e-6,output_cost_per_token_batches:3e-4,litellm_provider:"openai",mode:"responses",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_native_streaming:!1,supports_reasoning:!0,supported_modalities:["text","image"],supported_output_modalities:["text"],supported_endpoints:["/v1/responses","/v1/batch"]},"o1-pro-2025-03-19":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:15e-5,output_cost_per_token:6e-4,input_cost_per_token_batches:75e-6,output_cost_per_token_batches:3e-4,litellm_provider:"openai",mode:"responses",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_native_streaming:!1,supports_reasoning:!0,supported_modalities:["text","image"],supported_output_modalities:["text"],supported_endpoints:["/v1/responses","/v1/batch"]},o1:om,"o1-mini":{max_tokens:65536,max_input_tokens:128e3,max_output_tokens:65536,input_cost_per_token:11e-7,output_cost_per_token:44e-7,cache_read_input_token_cost:55e-8,litellm_provider:"openai",mode:"chat",supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0},"o3-deep-research":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:1e-5,output_cost_per_token:4e-5,input_cost_per_token_batches:5e-6,output_cost_per_token_batches:2e-5,cache_read_input_token_cost:25e-7,litellm_provider:"openai",mode:"responses",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"o3-deep-research-2025-06-26":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:1e-5,output_cost_per_token:4e-5,input_cost_per_token_batches:5e-6,output_cost_per_token_batches:2e-5,cache_read_input_token_cost:25e-7,litellm_provider:"openai",mode:"responses",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"o3-pro":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-5,input_cost_per_token_batches:1e-5,output_cost_per_token_batches:4e-5,output_cost_per_token:8e-5,litellm_provider:"openai",mode:"responses",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0,supported_endpoints:["/v1/responses","/v1/batch"],supported_modalities:["text","image"],supported_output_modalities:["text"]},"o3-pro-2025-06-10":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-5,input_cost_per_token_batches:1e-5,output_cost_per_token_batches:4e-5,output_cost_per_token:8e-5,litellm_provider:"openai",mode:"responses",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0,supported_endpoints:["/v1/responses","/v1/batch"],supported_modalities:["text","image"],supported_output_modalities:["text"]},o3:im,"o3-2025-04-16":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-6,output_cost_per_token:8e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0,supported_endpoints:["/v1/responses","/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image"],supported_output_modalities:["text"]},"o3-mini":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:11e-7,output_cost_per_token:44e-7,cache_read_input_token_cost:55e-8,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!1,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},"o3-mini-2025-01-31":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:11e-7,output_cost_per_token:44e-7,cache_read_input_token_cost:55e-8,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!1,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},"o4-mini":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:11e-7,output_cost_per_token:44e-7,cache_read_input_token_cost:275e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},"o4-mini-deep-research":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-6,output_cost_per_token:8e-6,input_cost_per_token_batches:1e-6,output_cost_per_token_batches:4e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"responses",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"o4-mini-deep-research-2025-06-26":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:2e-6,output_cost_per_token:8e-6,input_cost_per_token_batches:1e-6,output_cost_per_token_batches:4e-6,cache_read_input_token_cost:5e-7,litellm_provider:"openai",mode:"responses",supported_endpoints:["/v1/chat/completions","/v1/batch","/v1/responses"],supported_modalities:["text","image"],supported_output_modalities:["text"],supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0,supports_native_streaming:!0},"o4-mini-2025-04-16":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:11e-7,output_cost_per_token:44e-7,cache_read_input_token_cost:275e-9,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!1,supports_vision:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},"o1-mini-2024-09-12":{max_tokens:65536,max_input_tokens:128e3,max_output_tokens:65536,input_cost_per_token:3e-6,output_cost_per_token:12e-6,cache_read_input_token_cost:15e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_vision:!0,supports_reasoning:!0,supports_prompt_caching:!0},"o1-preview":{max_tokens:32768,max_input_tokens:128e3,max_output_tokens:32768,input_cost_per_token:15e-6,output_cost_per_token:6e-5,cache_read_input_token_cost:75e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_vision:!0,supports_reasoning:!0,supports_prompt_caching:!0},"o1-preview-2024-09-12":{max_tokens:32768,max_input_tokens:128e3,max_output_tokens:32768,input_cost_per_token:15e-6,output_cost_per_token:6e-5,cache_read_input_token_cost:75e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_vision:!0,supports_reasoning:!0,supports_prompt_caching:!0},"o1-2024-12-17":{max_tokens:1e5,max_input_tokens:2e5,max_output_tokens:1e5,input_cost_per_token:15e-6,output_cost_per_token:6e-5,cache_read_input_token_cost:75e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_response_schema:!0,supports_reasoning:!0,supports_tool_choice:!0},"chatgpt-4o-latest":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,output_cost_per_token:15e-6,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-2024-05-13":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,output_cost_per_token:15e-6,input_cost_per_token_batches:25e-7,output_cost_per_token_batches:75e-7,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-2024-08-06":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,output_cost_per_token:1e-5,input_cost_per_token_batches:125e-8,output_cost_per_token_batches:5e-6,cache_read_input_token_cost:125e-8,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-2024-11-20":{max_tokens:16384,max_input_tokens:128e3,max_output_tokens:16384,input_cost_per_token:25e-7,output_cost_per_token:1e-5,input_cost_per_token_batches:125e-8,output_cost_per_token_batches:5e-6,cache_read_input_token_cost:125e-8,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_response_schema:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-realtime":{max_tokens:4096,max_input_tokens:32e3,max_output_tokens:4096,input_cost_per_token:4e-6,cache_read_input_token_cost:4e-7,output_cost_per_token:16e-6,input_cost_per_audio_token:32e-6,output_cost_per_audio_token:64e-6,cache_creation_input_audio_token_cost:4e-7,input_cost_per_image:5e-6,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0,supported_endpoints:["/v1/realtime"],supported_modalities:["text","image","audio"],supported_output_modalities:["text","audio"]},"gpt-realtime-2025-08-28":{max_tokens:4096,max_input_tokens:32e3,max_output_tokens:4096,input_cost_per_token:4e-6,cache_read_input_token_cost:4e-7,output_cost_per_token:16e-6,input_cost_per_audio_token:32e-6,output_cost_per_audio_token:64e-6,cache_creation_input_audio_token_cost:4e-7,input_cost_per_image:5e-6,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0,supported_endpoints:["/v1/realtime"],supported_modalities:["text","image","audio"],supported_output_modalities:["text","audio"]},"gpt-4o-realtime-preview-2024-10-01":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,input_cost_per_audio_token:1e-4,cache_read_input_token_cost:25e-7,cache_creation_input_audio_token_cost:2e-5,output_cost_per_token:2e-5,output_cost_per_audio_token:2e-4,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-realtime-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,input_cost_per_audio_token:4e-5,cache_read_input_token_cost:25e-7,output_cost_per_token:2e-5,output_cost_per_audio_token:8e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-realtime-preview-2024-12-17":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,input_cost_per_audio_token:4e-5,cache_read_input_token_cost:25e-7,output_cost_per_token:2e-5,output_cost_per_audio_token:8e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-realtime-preview-2025-06-03":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:5e-6,input_cost_per_audio_token:4e-5,cache_read_input_token_cost:25e-7,output_cost_per_token:2e-5,output_cost_per_audio_token:8e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-realtime-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:6e-7,input_cost_per_audio_token:1e-5,cache_read_input_token_cost:3e-7,cache_creation_input_audio_token_cost:3e-7,output_cost_per_token:24e-7,output_cost_per_audio_token:2e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-mini-realtime-preview-2024-12-17":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:6e-7,input_cost_per_audio_token:1e-5,cache_read_input_token_cost:3e-7,cache_creation_input_audio_token_cost:3e-7,output_cost_per_token:24e-7,output_cost_per_audio_token:2e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_audio_input:!0,supports_audio_output:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-turbo-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-0314":{max_tokens:4096,max_input_tokens:8192,max_output_tokens:4096,input_cost_per_token:3e-5,output_cost_per_token:6e-5,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-0613":{max_tokens:4096,max_input_tokens:8192,max_output_tokens:4096,input_cost_per_token:3e-5,output_cost_per_token:6e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,deprecation_date:"2025-06-06",supports_tool_choice:!0},"gpt-4-32k":{max_tokens:4096,max_input_tokens:32768,max_output_tokens:4096,input_cost_per_token:6e-5,output_cost_per_token:12e-5,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-32k-0314":{max_tokens:4096,max_input_tokens:32768,max_output_tokens:4096,input_cost_per_token:6e-5,output_cost_per_token:12e-5,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-32k-0613":{max_tokens:4096,max_input_tokens:32768,max_output_tokens:4096,input_cost_per_token:6e-5,output_cost_per_token:12e-5,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-turbo":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-turbo-2024-04-09":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_pdf_input:!0,supports_function_calling:!0,supports_parallel_function_calling:!0,supports_vision:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-1106-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-0125-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4-vision-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_system_messages:!0,deprecation_date:"2024-12-06",supports_tool_choice:!0},"gpt-4-1106-vision-preview":{max_tokens:4096,max_input_tokens:128e3,max_output_tokens:4096,input_cost_per_token:1e-5,output_cost_per_token:3e-5,litellm_provider:"openai",mode:"chat",supports_vision:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_system_messages:!0,deprecation_date:"2024-12-06",supports_tool_choice:!0},"gpt-3.5-turbo":{max_tokens:4097,max_input_tokens:16385,max_output_tokens:4096,input_cost_per_token:15e-7,output_cost_per_token:2e-6,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-0301":{max_tokens:4097,max_input_tokens:4097,max_output_tokens:4096,input_cost_per_token:15e-7,output_cost_per_token:2e-6,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-0613":{max_tokens:4097,max_input_tokens:4097,max_output_tokens:4096,input_cost_per_token:15e-7,output_cost_per_token:2e-6,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-1106":{max_tokens:16385,max_input_tokens:16385,max_output_tokens:4096,input_cost_per_token:1e-6,output_cost_per_token:2e-6,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-0125":{max_tokens:16385,max_input_tokens:16385,max_output_tokens:4096,input_cost_per_token:5e-7,output_cost_per_token:15e-7,litellm_provider:"openai",mode:"chat",supports_function_calling:!0,supports_parallel_function_calling:!0,supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-16k":{max_tokens:16385,max_input_tokens:16385,max_output_tokens:4096,input_cost_per_token:3e-6,output_cost_per_token:4e-6,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-3.5-turbo-16k-0613":{max_tokens:16385,max_input_tokens:16385,max_output_tokens:4096,input_cost_per_token:3e-6,output_cost_per_token:4e-6,litellm_provider:"openai",mode:"chat",supports_prompt_caching:!0,supports_system_messages:!0,supports_tool_choice:!0},"gpt-4o-transcribe":{mode:"audio_transcription",max_input_tokens:16e3,max_output_tokens:2e3,input_cost_per_token:25e-7,input_cost_per_audio_token:6e-6,output_cost_per_token:1e-5,litellm_provider:"openai",supported_endpoints:["/v1/audio/transcriptions"]},"gpt-4o-mini-transcribe":{mode:"audio_transcription",max_input_tokens:16e3,max_output_tokens:2e3,input_cost_per_token:125e-8,input_cost_per_audio_token:3e-6,output_cost_per_token:5e-6,litellm_provider:"openai",supported_endpoints:["/v1/audio/transcriptions"]},"gpt-4o-mini-tts":{mode:"audio_speech",input_cost_per_token:25e-7,output_cost_per_token:1e-5,output_cost_per_audio_token:12e-6,output_cost_per_second:25e-5,litellm_provider:"openai",supported_modalities:["text","audio"],supported_output_modalities:["audio"],supported_endpoints:["/v1/audio/speech"]},"claude-3-haiku-20240307":{max_tokens:4096,max_input_tokens:2e5,max_output_tokens:4096,input_cost_per_token:25e-8,output_cost_per_token:125e-8,cache_creation_input_token_cost:3e-7,cache_read_input_token_cost:3e-8,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:264,supports_assistant_prefill:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-03-01",supports_tool_choice:!0},"claude-3-5-haiku-20241022":{max_tokens:8192,max_input_tokens:2e5,max_output_tokens:8192,input_cost_per_token:8e-7,output_cost_per_token:4e-6,cache_creation_input_token_cost:1e-6,cache_read_input_token_cost:8e-8,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:264,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-10-01",supports_tool_choice:!0,supports_web_search:!0},"claude-3-5-haiku-latest":{max_tokens:8192,max_input_tokens:2e5,max_output_tokens:8192,input_cost_per_token:1e-6,output_cost_per_token:5e-6,cache_creation_input_token_cost:125e-8,cache_read_input_token_cost:1e-7,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:264,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-10-01",supports_tool_choice:!0,supports_web_search:!0},"claude-3-opus-latest":{max_tokens:4096,max_input_tokens:2e5,max_output_tokens:4096,input_cost_per_token:15e-6,output_cost_per_token:75e-6,cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:395,supports_assistant_prefill:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-03-01",supports_tool_choice:!0},"claude-3-opus-20240229":{max_tokens:4096,max_input_tokens:2e5,max_output_tokens:4096,input_cost_per_token:15e-6,output_cost_per_token:75e-6,cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:395,supports_assistant_prefill:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-03-01",supports_tool_choice:!0},"claude-3-5-sonnet-latest":{supports_computer_use:!0,max_tokens:8192,max_input_tokens:2e5,max_output_tokens:8192,input_cost_per_token:3e-6,output_cost_per_token:15e-6,cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-06-01",supports_tool_choice:!0,supports_web_search:!0},"claude-3-5-sonnet-20240620":{max_tokens:8192,max_input_tokens:2e5,max_output_tokens:8192,input_cost_per_token:3e-6,output_cost_per_token:15e-6,cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-06-01",supports_tool_choice:!0},"claude-opus-4-20250514":{max_tokens:32e3,max_input_tokens:2e5,max_output_tokens:32e3,input_cost_per_token:15e-6,output_cost_per_token:75e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-opus-4-1":{max_tokens:32e3,max_input_tokens:2e5,max_output_tokens:32e3,input_cost_per_token:15e-6,output_cost_per_token:75e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-opus-4-1-20250805":{max_tokens:32e3,max_input_tokens:2e5,max_output_tokens:32e3,input_cost_per_token:15e-6,output_cost_per_token:75e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-sonnet-4-5-20250929":{max_tokens:64e3,max_input_tokens:2e5,max_output_tokens:64e3,input_cost_per_token:3e-6,output_cost_per_token:15e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-sonnet-4-20250514":{max_tokens:64e3,max_input_tokens:2e5,max_output_tokens:64e3,input_cost_per_token:3e-6,output_cost_per_token:15e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-4-opus-20250514":{max_tokens:32e3,max_input_tokens:2e5,max_output_tokens:32e3,input_cost_per_token:15e-6,output_cost_per_token:75e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:1875e-8,cache_read_input_token_cost:15e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-4-sonnet-20250514":{max_tokens:1e6,max_input_tokens:1e6,max_output_tokens:1e6,input_cost_per_token:3e-6,output_cost_per_token:15e-6,input_cost_per_token_above_200k_tokens:6e-6,output_cost_per_token_above_200k_tokens:225e-7,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,cache_creation_input_token_cost_above_200k_tokens:75e-7,cache_read_input_token_cost_above_200k_tokens:6e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supports_computer_use:!0},"claude-3-7-sonnet-latest":{supports_computer_use:!0,max_tokens:128e3,max_input_tokens:2e5,max_output_tokens:128e3,input_cost_per_token:3e-6,output_cost_per_token:15e-6,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-06-01",supports_tool_choice:!0,supports_reasoning:!0},"claude-3-7-sonnet-20250219":{supports_computer_use:!0,max_tokens:128e3,max_input_tokens:2e5,max_output_tokens:128e3,input_cost_per_token:3e-6,output_cost_per_token:15e-6,cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2026-02-01",supports_tool_choice:!0,supports_reasoning:!0,supports_web_search:!0},"claude-3-5-sonnet-20241022":{supports_computer_use:!0,max_tokens:8192,max_input_tokens:2e5,max_output_tokens:8192,input_cost_per_token:3e-6,output_cost_per_token:15e-6,cache_creation_input_token_cost:375e-8,cache_read_input_token_cost:3e-7,search_context_cost_per_query:{search_context_size_low:.01,search_context_size_medium:.01,search_context_size_high:.01},litellm_provider:"anthropic",mode:"chat",supports_function_calling:!0,supports_vision:!0,tool_use_system_prompt_tokens:159,supports_assistant_prefill:!0,supports_pdf_input:!0,supports_prompt_caching:!0,supports_response_schema:!0,deprecation_date:"2025-10-01",supports_tool_choice:!0,supports_web_search:!0},"gemini-2.5-pro-exp-03-25":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini-2.0-pro-exp-02-05":{max_tokens:8192,max_input_tokens:2097152,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini-2.0-flash-exp":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:15e-8,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:6e-7,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_tool_choice:!0,supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:375e-10,supports_prompt_caching:!0},"gemini-2.0-flash-001":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:15e-8,output_cost_per_token:6e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",deprecation_date:"2026-02-05",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:375e-10,supports_prompt_caching:!0},"gemini-2.0-flash-thinking-exp":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini-2.0-flash-thinking-exp-01-21":{max_tokens:65536,max_input_tokens:1048576,max_output_tokens:65536,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!1,supports_vision:!0,supports_response_schema:!1,supports_audio_output:!1,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini-2.5-pro":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-pro-exp-03-25":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:0,input_cost_per_token_above_200k_tokens:0,output_cost_per_token:0,output_cost_per_token_above_200k_tokens:0,litellm_provider:"gemini",mode:"chat",rpm:5,tpm:25e4,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini/gemini-2.5-pro":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"gemini",mode:"chat",rpm:2e3,tpm:8e5,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,supports_reasoning:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-flash":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,litellm_provider:"gemini",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,tpm:8e6,rpm:1e5,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-image-preview":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,output_cost_per_image:.039,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,tpm:8e6,rpm:1e5,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini-2.5-flash":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-live-001":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_token:35e-8,input_cost_per_audio_token:21e-7,input_cost_per_image:21e-7,input_cost_per_video_per_second:21e-7,output_cost_per_token:15e-7,output_cost_per_audio_token:85e-7,litellm_provider:"gemini",mode:"chat",rpm:10,tpm:25e4,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_reasoning:!0,supports_response_schema:!0,supports_audio_output:!0,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","audio"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2-0-flash-live-001",supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-preview-tts":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:15e-8,output_cost_per_token:6e-7,output_cost_per_reasoning_token:35e-7,litellm_provider:"gemini",mode:"chat",rpm:10,tpm:25e4,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_reasoning:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text"],supported_output_modalities:["audio"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_web_search:!0,cache_read_input_token_cost:375e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-preview-05-20":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,litellm_provider:"gemini",mode:"chat",rpm:10,tpm:25e4,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_reasoning:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-preview-04-17":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:15e-8,output_cost_per_token:6e-7,output_cost_per_reasoning_token:35e-7,litellm_provider:"gemini",mode:"chat",rpm:10,tpm:25e4,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_reasoning:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:375e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-lite-preview-06-17":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:5e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,output_cost_per_reasoning_token:4e-7,litellm_provider:"gemini",mode:"chat",rpm:15,tpm:25e4,supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-lite",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini/gemini-2.5-flash-lite":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:5e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,output_cost_per_reasoning_token:4e-7,litellm_provider:"gemini",mode:"chat",rpm:15,tpm:25e4,supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-lite",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini-2.5-flash-image-preview":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,output_cost_per_image:.039,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,tpm:8e6,rpm:1e5,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini-2.5-flash-preview-05-20":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:3e-7,output_cost_per_token:25e-7,output_cost_per_reasoning_token:25e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:75e-9,supports_prompt_caching:!0},"gemini-2.5-flash-preview-04-17":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:1e-6,input_cost_per_token:15e-8,output_cost_per_token:6e-7,output_cost_per_reasoning_token:35e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:375e-10,supports_prompt_caching:!0},"gemini-2.5-flash-lite-preview-06-17":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:5e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,output_cost_per_reasoning_token:4e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini-2.5-flash-lite":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:5e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,output_cost_per_reasoning_token:4e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini-2.0-flash":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_audio_input:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],supports_tool_choice:!0,source:"https://ai.google.dev/pricing#2_0flash",supports_parallel_function_calling:!0,supports_web_search:!0,supports_url_context:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini-2.0-flash-lite":{max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:50,input_cost_per_audio_token:75e-9,input_cost_per_token:75e-9,output_cost_per_token:3e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:1875e-11,supports_prompt_caching:!0},"gemini-2.0-flash-lite-001":{max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:50,input_cost_per_audio_token:75e-9,input_cost_per_token:75e-9,output_cost_per_token:3e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,deprecation_date:"2026-02-25",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:1875e-11,supports_prompt_caching:!0},"gemini-2.5-pro-preview-06-05":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:125e-8,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini-2.5-pro-preview-05-06":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:125e-8,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],supported_regions:["global"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini-2.5-pro-preview-03-25":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:125e-8,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_reasoning:!0,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_endpoints:["/v1/chat/completions","/v1/completions","/v1/batch"],supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/models#gemini-2.5-flash-preview",supports_parallel_function_calling:!0,supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini-2.0-flash-preview-image-generation":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_audio_input:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],supports_tool_choice:!0,source:"https://ai.google.dev/pricing#2_0flash",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini-2.5-pro-preview-tts":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"vertex_ai-language-models",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text"],supported_output_modalities:["audio"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.5-pro-preview",supports_parallel_function_calling:!0,supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.0-pro-exp-02-05":{max_tokens:8192,max_input_tokens:2097152,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",rpm:2,tpm:1e6,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_audio_input:!0,supports_video_input:!0,supports_pdf_input:!0,supports_response_schema:!0,supports_tool_choice:!0,source:"https://cloud.google.com/vertex-ai/generative-ai/pricing",supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-preview-image-generation":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_audio_input:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],supports_tool_choice:!0,source:"https://ai.google.dev/pricing#2_0flash",supports_web_search:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini/gemini-2.0-flash":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_audio_input:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],supports_tool_choice:!0,source:"https://ai.google.dev/pricing#2_0flash",supports_web_search:!0,supports_url_context:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-lite":{max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:50,input_cost_per_audio_token:75e-9,input_cost_per_token:75e-9,output_cost_per_token:3e-7,litellm_provider:"gemini",mode:"chat",tpm:4e6,rpm:4e3,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.0-flash-lite",supports_web_search:!0,cache_read_input_token_cost:1875e-11,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-001":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:1e-7,output_cost_per_token:4e-7,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://ai.google.dev/pricing#2_0flash",supports_web_search:!0,cache_read_input_token_cost:25e-9,supports_prompt_caching:!0},"gemini/gemini-2.5-pro-preview-tts":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text"],supported_output_modalities:["audio"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.5-pro-preview",supports_web_search:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-pro-preview-06-05":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.5-pro-preview",supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-pro-preview-05-06":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.5-pro-preview",supports_web_search:!0,supports_url_context:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.5-pro-preview-03-25":{max_tokens:65535,max_input_tokens:1048576,max_output_tokens:65535,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:7e-7,input_cost_per_token:125e-8,input_cost_per_token_above_200k_tokens:25e-7,output_cost_per_token:1e-5,output_cost_per_token_above_200k_tokens:15e-6,litellm_provider:"gemini",mode:"chat",rpm:1e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://ai.google.dev/gemini-api/docs/pricing#gemini-2.5-pro-preview",supports_web_search:!0,supports_pdf_input:!0,cache_read_input_token_cost:3125e-10,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-exp":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,tpm:4e6,rpm:10,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-lite-preview-02-05":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:8192,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_audio_token:75e-9,input_cost_per_token:75e-9,output_cost_per_token:3e-7,litellm_provider:"gemini",mode:"chat",rpm:6e4,tpm:1e7,supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,supports_tool_choice:!0,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash-lite",supports_web_search:!0,cache_read_input_token_cost:1875e-11,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-thinking-exp":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:65536,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,tpm:4e6,rpm:10,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini/gemini-2.0-flash-thinking-exp-01-21":{max_tokens:8192,max_input_tokens:1048576,max_output_tokens:65536,max_images_per_prompt:3e3,max_videos_per_prompt:10,max_video_length:1,max_audio_length_hours:8.4,max_audio_per_prompt:1,max_pdf_size_mb:30,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!0,tpm:4e6,rpm:10,supported_modalities:["text","image","audio","video"],supported_output_modalities:["text","image"],source:"https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models#gemini-2.0-flash",supports_tool_choice:!0,supports_web_search:!0,cache_read_input_token_cost:0,supports_prompt_caching:!0},"gemini/gemma-3-27b-it":{max_tokens:8192,max_input_tokens:131072,max_output_tokens:8192,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,source:"https://aistudio.google.com",supports_tool_choice:!0},"gemini/learnlm-1.5-pro-experimental":{max_tokens:8192,max_input_tokens:32767,max_output_tokens:8192,input_cost_per_image:0,input_cost_per_video_per_second:0,input_cost_per_audio_per_second:0,input_cost_per_token:0,input_cost_per_character:0,input_cost_per_token_above_128k_tokens:0,input_cost_per_character_above_128k_tokens:0,input_cost_per_image_above_128k_tokens:0,input_cost_per_video_per_second_above_128k_tokens:0,input_cost_per_audio_per_second_above_128k_tokens:0,output_cost_per_token:0,output_cost_per_character:0,output_cost_per_token_above_128k_tokens:0,output_cost_per_character_above_128k_tokens:0,litellm_provider:"gemini",mode:"chat",supports_system_messages:!0,supports_function_calling:!0,supports_vision:!0,supports_response_schema:!0,supports_audio_output:!1,source:"https://aistudio.google.com",supports_tool_choice:!0},"gemini/veo-3.0-generate-preview":{max_tokens:1024,max_input_tokens:1024,output_cost_per_second:.75,litellm_provider:"gemini",mode:"video_generation",supported_modalities:["text"],supported_output_modalities:["video"],source:"https://ai.google.dev/gemini-api/docs/video"},"gemini/veo-3.0-fast-generate-preview":{max_tokens:1024,max_input_tokens:1024,output_cost_per_second:.4,litellm_provider:"gemini",mode:"video_generation",supported_modalities:["text"],supported_output_modalities:["video"],source:"https://ai.google.dev/gemini-api/docs/video"},"gemini/veo-2.0-generate-001":{max_tokens:1024,max_input_tokens:1024,output_cost_per_second:.35,litellm_provider:"gemini",mode:"video_generation",supported_modalities:["text"],supported_output_modalities:["video"],source:"https://ai.google.dev/gemini-api/docs/video"}};class am{static calculateCost(t,n){const o=sm[t];if(!o)return null;const e=n.inputTokens||0,i=n.outputTokens||0,s=n.cachedInputTokens||0,a=n.cacheCreationInputTokens||0,u="input_cost_per_token"in o?o.input_cost_per_token:0,c="output_cost_per_token"in o?o.output_cost_per_token:0,l="cache_read_input_token_cost"in o?o.cache_read_input_token_cost:0,d="cache_creation_input_token_cost"in o?o.cache_creation_input_token_cost:0,h=e*u,m=i*c,p=s*l,g=a*d;return{totalCost:h+m+p+g,inputCost:h,outputCost:m,cacheReadCost:s>0?p:void 0,cacheCreationCost:a>0?g:void 0}}}class _r{static parseStreamingResponse(t){try{const n=t.split(`
|
|
25
|
-
`),o=[];let e=null,i=null;const s=new Map;for(const p of n)if(p.startsWith("data: ")){const g=p.substring(6).trim();if(g)try{const v=JSON.parse(g);if(v.type==="message_start"&&v.message&&(e=v.message),v.type==="content_block_start"){const $={index:v.index,type:v.content_block.type,id:v.content_block.id,name:v.content_block.name,input:v.content_block.input||{},text:"",partialJson:""};s.set(v.index,$)}if(v.type==="content_block_delta"){const $=s.get(v.index);$&&(v.delta.type==="text_delta"?$.text+=v.delta.text:v.delta.type==="input_json_delta"&&($.partialJson+=v.delta.partial_json))}if(v.type==="content_block_stop"){const $=s.get(v.index);if($){if($.partialJson)try{$.input=JSON.parse($.partialJson)}catch{}o.push($)}}v.type==="message_delta"&&v.usage&&(i=v.usage)}catch{}}const a=(o||[]).map(p=>p.type==="text"?{type:"text",text:p.text}:p.type==="tool_use"?{type:"tool-invocation",toolInvocation:{toolCallId:p.id,toolName:p.name,args:p.input,state:"call"}}:{type:"text",text:`Unknown content block type: ${p.type}`}),u={id:e?.id||_r.generateId(),role:"assistant",createdAt:new Date().toISOString(),parts:a.length>0?a:[{type:"text",text:""}]},c={...e?.usage||{},...i||{}},l={inputTokens:c.input_tokens||c.inputTokens,outputTokens:c.output_tokens||c.outputTokens,cachedInputTokens:c.cache_read_input_tokens||c.cachedInputTokens,cacheCreationInputTokens:c.cache_creation_input_tokens||c.cacheCreationInputTokens,totalTokens:(c.input_tokens||0)+(c.output_tokens||0),cacheCreation:c.cache_creation,serviceTier:c.service_tier},d=e?.model,h=d?am.calculateCost(d,l):null;return{message:u,metadata:{model:d,usage:l,cost:h,originalMessageId:e?.id,stopReason:e?.stop_reason,contentLength:a.reduce((p,g)=>g.type==="text"?p+g.text.length:g.type==="tool-invocation"?p+JSON.stringify(g.toolInvocation.args||"").length:p+JSON.stringify(g).length,0),streamingEvents:n.filter(p=>p.startsWith("event:")).length}}}catch(n){return{error:`Failed to parse streaming response: ${n}`,rawText:t}}}static generateId(){return Date.now().toString(36)+Math.random().toString(36).slice(2,10)}}_r.parseStreamingResponse;new Proxy({},{get(r,t){throw new Error(`Module "node:zlib" has been externalized for browser compatibility. Cannot access "node:zlib.${t}" in client code. See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.`)}});class wc{static parseStreamingResponse(t){try{return t.includes(`
|
|
26
|
-
data:`)||t.startsWith("data:")?this.parseSse(t):this.parseRegular(t)}catch(n){return{error:`Failed to parse Gemini response: ${n}`,rawText:t}}}static parseRegular(t){const n=this.isProbablyGzip(t)||this.hasHighControlCharRatio(t);let o=t;if(n){const e=this.tryGunzip(t);e.ok&&(o=e.text)}try{const e=JSON.parse(o),i=e.response||e,{fullText:s,finishReason:a,texts:u,nextSpeakers:c,reasoningSegments:l}=this.extractCandidateText(i.candidates),d=this.normalizeUsage(i.usageMetadata||e.usageMetadata||e),h=u.length>0?u.map(m=>({type:"text",text:m})):s?[{type:"text",text:s}]:[];return{message:{id:i.responseId||this.generateId(),role:"assistant",createdAt:new Date().toISOString(),parts:h},metadata:{model:i.modelVersion||e.modelVersion,usage:d,responseId:i.responseId,finishReason:a,contentLength:s.length,streamingEvents:0,compressed:n||void 0,nextSpeakers:c.length?c:void 0,reasoningSegments:l.length?l:void 0}}}catch{return{message:{id:this.generateId(),role:"assistant",createdAt:new Date().toISOString(),parts:[{type:"text",text:o}]},metadata:{raw:!0}}}}static parseSse(t){const n=t.split(/\r?\n/);let o,e,i,s;const a=[],u=[],c=[];for(const h of n){if(!h.startsWith("data:"))continue;const m=h.slice(5).trim();if(m)try{const g=JSON.parse(m).response||{};g.modelVersion&&(o=g.modelVersion),g.responseId&&(e=g.responseId),g.usageMetadata&&(s=g.usageMetadata);const v=this.extractCandidateText(g.candidates);!i&&v.finishReason&&(i=v.finishReason),v.texts.length&&a.push(...v.texts),v.nextSpeakers.length&&u.push(...v.nextSpeakers),v.reasoningSegments.length&&c.push(...v.reasoningSegments)}catch{}}const l=a.join(""),d=this.normalizeUsage(s);return{message:{id:e||this.generateId(),role:"assistant",createdAt:new Date().toISOString(),parts:a.length?a.map(h=>({type:"text",text:h})):[]},metadata:{model:o,usage:d,responseId:e,finishReason:i,contentLength:l.length,streamingEvents:n.filter(h=>h.startsWith("data:")).length,nextSpeakers:u.length?u:void 0,reasoningSegments:c.length?c:void 0}}}static extractCandidateText(t){const n=[],o=[],e=[];let i;if(Array.isArray(t))for(const s of t){!i&&s?.finishReason&&(i=s.finishReason);const a=s?.content?.parts||[];if(Array.isArray(a)){for(const u of a)if(u&&typeof u=="object"){if(u.thought===!0)continue;const c=u.text;if(typeof c=="string"&&c.length){const l=c.trim();if(l.startsWith("{")&&l.endsWith("}"))try{const d=JSON.parse(l);if(d&&typeof d=="object"){typeof d.reasoning=="string"&&(e.push(d.reasoning),n.push(d.reasoning)),d.next_speaker&&typeof d.next_speaker=="string"&&o.push(d.next_speaker);continue}}catch{}n.push(c)}}}}return{fullText:n.join(""),finishReason:i,texts:n,finishReasonFound:i,nextSpeakers:o,reasoningSegments:e}}static tryGunzip(t){try{return{ok:!0,text:(void 0)(Buffer.from(t,"latin1")).toString("utf8")}}catch{return{ok:!1,text:t}}}static hasHighControlCharRatio(t){if(!t)return!1;let n=0;const o=Math.min(t.length,256);for(let e=0;e<o;e++){const i=t.charCodeAt(e);i<32&&i!==9&&i!==10&&i!==13&&n++}return n/o>.1}static isProbablyGzip(t){return t.length>=2&&t.charCodeAt(0)===31&&t.charCodeAt(1)===139}static normalizeUsage(t){if(!t||typeof t!="object")return{inputTokens:void 0,outputTokens:void 0,totalTokens:void 0};const n=t.promptTokenCount??t.prompt_tokens,o=t.candidatesTokenCount??t.candidates_tokens,e=t.totalTokenCount??(typeof n=="number"&&typeof o=="number"?n+o:void 0);return{inputTokens:n,outputTokens:o,totalTokens:e}}static generateId(){return Date.now().toString(36)+Math.random().toString(36).slice(2,10)}}wc.parseStreamingResponse;class ge{static parsers=[{name:"Claude (Anthropic)",patterns:[/\/publishers\/anthropic\/models/i,/anthropic\.com/i,/claude\.ai/i,/\/v1\/messages/i],parser:_r},{name:"Google Gemini",patterns:[/generativelanguage\.googleapis\.com/i,/cloudcode-pa\.googleapis\.com/i,/streamGenerateContent/i,/generateContent/i],parser:wc}];static parseStreamingResponse(t,n){const o=ge.getParserForUrl(t);if(!o)return{error:`No parser found for URL: ${t}`,rawText:n,supportedProviders:ge.parsers.map(e=>e.name)};try{const e=o.parseStreamingResponse(n);return e&&typeof e=="object"&&!e.error&&(e.metadata={...e.metadata,parser:ge.getParserNameForUrl(t)}),e}catch(e){return{error:`Parser failed: ${e}`,rawText:n,parser:ge.getParserNameForUrl(t)}}}static getParserForUrl(t){if(!t)return null;for(const n of ge.parsers)if(n.patterns.some(o=>o.test(t)))return n.parser;return null}static getParserNameForUrl(t){if(!t)return"unknown";for(const n of ge.parsers)if(n.patterns.some(o=>o.test(t)))return n.name;return"unknown"}static isSupported(t){return ge.getParserForUrl(t)!==null}static getSupportedProviders(){return ge.parsers.map(t=>t.name)}static registerParser(t,n,o){ge.parsers.push({name:t,patterns:n,parser:o})}}class Ic{LLM_PATTERNS=[/anthropic\.com/i,/claude\.ai/i,/openai\.com/i,/api\.openai\.com/i,/chatgpt\.com\/backend-api\/codex/i,/gemini\.google/i,/generativelanguage\.googleapis/i,/cloudcode-pa\.googleapis\.com/i,/bedrock.*\.amazonaws/i,/cognitive\.microsoft/i,/azure\.openai/i,/cohere\.ai/i,/huggingface\.co/i,/replicate\.com/i,/together\.xyz/i,/mistral\.ai/i,/groq\.com/i,/perplexity\.ai/i,/ollama/i,/localhost:\d+\/v1/i,/127\.0\.0\.1:\d+\/v1/i,/\/v1\/chat\/completions/i,/\/v1\/completions/i,/\/v1\/embeddings/i,/\/v1\/messages/i,/\/publishers\/anthropic\/models/i];PROVIDER_MAP=[{pattern:/\/publishers\/anthropic\/models/i,provider:"anthropic"},{pattern:/anthropic\.com|claude\.ai/i,provider:"anthropic"},{pattern:/chatgpt\.com\/backend-api\/codex/i,provider:"openai"},{pattern:/openai\.com/i,provider:"openai"},{pattern:/gemini\.google|generativelanguage\.googleapis|cloudcode-pa\.googleapis/i,provider:"google"},{pattern:/bedrock.*\.amazonaws/i,provider:"aws-bedrock"},{pattern:/cognitive\.microsoft|azure\.openai/i,provider:"azure"},{pattern:/cohere\.ai/i,provider:"cohere"},{pattern:/huggingface\.co/i,provider:"huggingface"},{pattern:/replicate\.com/i,provider:"replicate"},{pattern:/together\.xyz/i,provider:"together"},{pattern:/mistral\.ai/i,provider:"mistral"},{pattern:/groq\.com/i,provider:"groq"},{pattern:/perplexity\.ai/i,provider:"perplexity"},{pattern:/ollama|localhost:\d+\/v1|127\.0\.0\.1:\d+\/v1/i,provider:"local"}];isLLMCall(t){return t?this.LLM_PATTERNS.some(n=>n.test(t)):!1}detectProvider(t){if(!t)return"unknown";for(const{pattern:n,provider:o}of this.PROVIDER_MAP)if(n.test(t))return o;return"unknown"}getSupportedProviders(){return Array.from(new Set(this.PROVIDER_MAP.map(({provider:t})=>t)))}isProviderSupported(t){return this.getSupportedProviders().includes(t.toLowerCase())}getProviderPattern(t){const n=this.PROVIDER_MAP.find(({provider:o})=>o===t.toLowerCase());return n?n.pattern:null}}class um{static enhanceRequest(t){const n=re.contextData;if(!n)return t;try{const o=JSON.parse(t);o.system?typeof o.system=="string"?o.system=[{type:"text",text:o.system}]:Array.isArray(o.system)||(o.system=[o.system]):o.system=[];const e={type:"text",text:`# Task Context
|
|
27
|
-
|
|
28
|
-
${n}`};return o.system.length>0?o.system.splice(1,0,e):o.system.push(e),JSON.stringify(o)}catch(o){return console.error("Failed to enhance Claude request:",o),t}}}class cm{static enhanceRequest(t){const n=re.contextData;if(!n)return t;try{const o=JSON.parse(t),e=`# Task Context
|
|
29
|
-
|
|
30
|
-
${n}`;return o.systemInstruction?typeof o.systemInstruction=="string"?o.systemInstruction={parts:[{text:e},{text:o.systemInstruction}]}:o.systemInstruction.parts&&o.systemInstruction.parts.unshift({text:e}):o.systemInstruction={parts:[{text:e}]},JSON.stringify(o)}catch(o){return console.error("Failed to enhance Gemini request:",o),t}}}class Pe{static enhancers=[{name:"Claude (Anthropic)",patterns:[/\/publishers\/anthropic\/models/i,/anthropic\.com/i,/claude\.ai/i,/\/v1\/messages/i],enhancer:um},{name:"Google Gemini",patterns:[/generativelanguage\.googleapis\.com/i,/cloudcode-pa\.googleapis\.com/i,/streamGenerateContent/i,/generateContent/i],enhancer:cm}];static enhanceRequest(t,n){const o=Pe.getEnhancerForUrl(t);if(!o)return n;try{return o.enhanceRequest(n)}catch(e){return console.error(`Enhancer failed for ${t}:`,e),n}}static getEnhancerForUrl(t){if(!t)return null;for(const n of Pe.enhancers)if(n.patterns.some(o=>o.test(t)))return n.enhancer;return null}static getEnhancerNameForUrl(t){if(!t)return"unknown";for(const n of Pe.enhancers)if(n.patterns.some(o=>o.test(t)))return n.name;return"unknown"}static isSupported(t){return Pe.getEnhancerForUrl(t)!==null}static getSupportedProviders(){return Pe.enhancers.map(t=>t.name)}static registerEnhancer(t,n,o){Pe.enhancers.push({name:t,patterns:n,enhancer:o})}}class _t{constructor(t,n){this.ctx=t,this.extra=n}originalFetch=null;static MAX_LOG_BYTES=256*1024;patch(){if(typeof globalThis.fetch!="function"||this.originalFetch)return;this.originalFetch=globalThis.fetch.bind(globalThis);const t=this.ctx,n=this.extra;globalThis.fetch=async(o,e)=>{const i=Oe.performance.now();let s=o,a=e,u=this.safeGetUrl(s);const c=u,l=(a?.method||typeof s=="object"&&s?.method||"GET").toString().toUpperCase();let d=this.extractHeaders(a?.headers??s?.headers);const h=this.stringifyRequestBody(a?.body??s?.body);let m=h;if(t.llmProvider.isLLMCall(u)&&h&&h!=="<request body error>")try{m=Pe.enhanceRequest(u,h),m!==h&&(a?a.body=m:typeof s=="object"&&s?a={body:m}:a={body:m})}catch{}const p=await this.applyRouting({resource:s,init:a,url:u,enhancedBody:m,requestHeaders:d});s=p.resource,a=p.init,u=p.url,m=p.enhancedBody,d=p.requestHeaders;const g=p.wasRouted,v=t.idGenerator(),$=new Date().toISOString();if(n.agentHttpService&&n.sessionId&&n.isValidMessageRequest(u,l,h)){const S={id:v,time:$,transport:"fetch",method:l,url:u,requestBody:h,requestHeaders:d,durationMs:0};n.sendHttpStart(S).catch(A=>{t.logger&&t.logger.error("Failed to send HTTP start",A)})}let b;try{b=await this.originalFetch(s,a)}catch(S){const A=Oe.performance.now()-i,M={id:v,time:$,transport:"fetch",method:l,url:u,requestBody:h,requestHeaders:d,durationMs:Math.round(A),error:S.message};throw t.handleLogEntry(M),n.agentHttpService&&n.sessionId&&n.isValidMessageRequest(u,l,h)&&n.sendHttpUpdate(M).catch(()=>{}),S}let z={};try{const S=Oe.performance.now()-i;z=this.extractHeaders(b.headers);const A=await this.captureResponse({res:b,method:l,url:u,originalUrl:c,requestBody:h,requestHeaders:d,responseHeaders:z,wasRouted:g,entryId:v,entryTime:$,start:i});b=A.response;let M=A.responseBody,E=A.processedBody;const V=A.bodyBytes,ne=A.isEventStream;if(A.capturePromise&&(b.__capturePromise=A.capturePromise),!ne&&g&&t.router&&M&&M!=="<response body error>")try{M=t.router.transformResponse(M)}catch{}if(!ne){const ee=g?c:u;if(t.llmProvider.isLLMCall(ee)&&M&&M!=="<response body error>")try{E=t.responseProcessor(ee,M)}catch(H){E={error:`parser_failed: ${H instanceof Error?H.message:String(H)}`}}}const F={id:v,time:$,transport:"fetch",method:l,url:u,requestBody:h,requestHeaders:d,status:b.status,ok:b.ok,durationMs:Math.round(S),responseBody:M,responseHeaders:z,processedBody:E,bodyBytes:V};return t.handleLogEntry(F),!ne&&n.agentHttpService&&n.sessionId&&n.isValidMessageRequest(u,l,h)&&n.sendHttpUpdate(F).catch(()=>{}),b}catch(S){const A=Oe.performance.now()-i,M={id:v,time:$,transport:"fetch",method:l,url:u,requestBody:h,requestHeaders:d,durationMs:Math.round(A),error:S.message};return t.handleLogEntry(M),n.agentHttpService&&n.sessionId&&n.isValidMessageRequest(u,l,h)&&n.sendHttpUpdate(M).catch(()=>{}),b}}}restore(){this.originalFetch&&(globalThis.fetch=this.originalFetch,this.originalFetch=null)}safeGetUrl(t){try{if(typeof t=="string")return t;if(t?.url)return t.url}catch{}return""}extractHeaders(t){const n={};if(!t)return n;try{if(t instanceof Headers)t.forEach((o,e)=>{n[e]=o});else if(Array.isArray(t))for(const[o,e]of t)n[o]=e;else if(typeof t=="object")for(const[o,e]of Object.entries(t))n[o]=Array.isArray(e)?e.join(", "):String(e)}catch{return{}}return n}stringifyRequestBody(t){try{if(!t)return"";if(typeof t=="string")return t;if(t instanceof URLSearchParams)return t.toString();if(typeof FormData<"u"&&t instanceof FormData){const n={};for(const[o,e]of t.entries())n[o]=typeof e=="string"?e:"[File|Blob]";return JSON.stringify(n)}return t instanceof Uint8Array||Buffer.isBuffer(t)?Buffer.from(t).toString("utf8"):typeof t=="object"?JSON.stringify(t):""}catch{return"<request body error>"}}async applyRouting(t){const n=this.ctx;let{resource:o,init:e,url:i,enhancedBody:s,requestHeaders:a}=t,u=!1;if(!n.router)return{resource:o,init:e,url:i,enhancedBody:s,requestHeaders:a,wasRouted:u};let c=!1;try{c=n.router.shouldRoute(i,s)}catch(l){n.logger&&n.logger.error("[FetchInstrument] shouldRoute() failed",l)}if(!c){if(n.llmProvider.isLLMCall(i)&&s){const l=n.router.cleanRequestForPassthrough(s);l!==s&&(s=l,typeof o=="object"&&o&&(o=new Request(i,{...o,body:s})),e&&(e.body=s))}return{resource:o,init:e,url:i,enhancedBody:s,requestHeaders:a,wasRouted:u}}try{const l=await n.router.transformRequest(i,s);i=l.url,s=l.body,u=!0,typeof o=="string"?o=l.url:typeof o=="object"&&o&&(o=new Request(l.url,o)),e||(e={}),e.body=l.body,l.headers&&(this.mergeHeadersIntoInit(e,l.headers),a={...a,...l.headers})}catch(l){u=!1,n.logger&&n.logger.error("[FetchInstrument] Failed to route LLM request",l)}return{resource:o,init:e,url:i,enhancedBody:s,requestHeaders:a,wasRouted:u}}mergeHeadersIntoInit(t,n){if(!(!n||Object.keys(n).length===0)){if(!t.headers){t.headers={...n};return}if(t.headers instanceof Headers){const o=t.headers;Object.entries(n).forEach(([e,i])=>o.set(e,i));return}if(Array.isArray(t.headers)){const o=t.headers;Object.entries(n).forEach(([e,i])=>{o.push([e,i])});return}t.headers={...t.headers,...n}}}async captureResponse(t){const{res:n,requestHeaders:o}=t,e=this.ctx,i=this.extra,s=n.headers.get("content-type")||"",a=o.accept||"",u=/text\/event-stream/i.test(s)||/text\/event-stream/i.test(a),c=/^(text\/|application\/(json|xml|javascript))/i.test(s)||/(json|xml|html)/i.test(s);if(!u){let p="",g=0;try{const $=await n.clone().arrayBuffer();if(g=$.byteLength,c)if($.byteLength<=_t.MAX_LOG_BYTES)p=Buffer.from($).toString("utf8");else{const b=Buffer.from($.slice(0,_t.MAX_LOG_BYTES)),z=$.byteLength-_t.MAX_LOG_BYTES;p=`${b.toString("utf8")}
|
|
31
|
-
...[truncated ${z.toLocaleString()} bytes]`}else p=`<${g} bytes binary>`}catch{p="<response body error>"}return{response:n,responseBody:p,processedBody:null,bodyBytes:g,isEventStream:!1}}if(!n.body)return{response:n,responseBody:"<streaming response not buffered>",processedBody:null,bodyBytes:0,isEventStream:!0};if(t.wasRouted&&e.router){const p=n.body.getReader(),g=[];let v=0;for(;;){const{done:E,value:V}=await p.read();if(E)break;g.push(V),v+=V.byteLength}let b=Buffer.concat(g.map(E=>Buffer.from(E))).toString("utf8"),z=null;try{b=e.router.transformResponse(b)}catch{}if(e.llmProvider.isLLMCall(t.originalUrl)&&b)try{z=e.responseProcessor(t.originalUrl,b)}catch(E){z={error:`parser_failed: ${E instanceof Error?E.message:String(E)}`}}const S={id:t.entryId,time:t.entryTime,transport:"fetch",method:t.method,url:t.url,requestBody:t.requestBody,requestHeaders:t.requestHeaders,status:n.status,ok:n.ok,durationMs:Math.round(Oe.performance.now()-t.start),responseBody:b,responseHeaders:t.responseHeaders,processedBody:z,bodyBytes:v};e.handleLogEntry(S),i.agentHttpService&&i.sessionId&&i.isValidMessageRequest(t.url,t.method,t.requestBody)&&i.sendHttpUpdate(S).catch(()=>{});const A=new ReadableStream({start(E){const V=new TextEncoder;E.enqueue(V.encode(b)),E.close()}});return{response:new Response(A,{status:n.status,statusText:n.statusText,headers:n.headers}),responseBody:b,processedBody:z,bodyBytes:v,isEventStream:!0}}const[l,d]=n.body.tee(),h=(async()=>{try{const p=l.getReader(),g=[];let v=0;for(;;){const{done:A,value:M}=await p.read();if(A)break;g.push(M),v+=M.byteLength}const b=Buffer.concat(g.map(A=>Buffer.from(A))).toString("utf8");let z=null;if(e.llmProvider.isLLMCall(t.url)&&b)try{z=e.responseProcessor(t.url,b)}catch(A){z={error:`parser_failed: ${A instanceof Error?A.message:String(A)}`}}const S={id:t.entryId,time:t.entryTime,transport:"fetch",method:t.method,url:t.url,requestBody:t.requestBody,requestHeaders:t.requestHeaders,status:n.status,ok:n.ok,durationMs:Math.round(Oe.performance.now()-t.start),responseBody:b,responseHeaders:t.responseHeaders,processedBody:z,bodyBytes:v};return e.handleLogEntry(S),i.agentHttpService&&i.sessionId&&i.isValidMessageRequest(t.url,t.method,t.requestBody)&&i.sendHttpUpdate(S).catch(()=>{}),{responseBody:b,processedBody:z,bodyBytes:v}}catch{return{responseBody:"<stream capture error>",processedBody:null,bodyBytes:0}}})();return{response:new Response(d,{status:n.status,statusText:n.statusText,headers:n.headers}),responseBody:"<streaming in progress>",processedBody:null,bodyBytes:0,isEventStream:!0,capturePromise:h}}}class pm{constructor(t,n,o={isValidMessageRequest:()=>!1,sendHttpStart:async()=>{},sendHttpUpdate:async()=>{}}){this.ctx=t,this.enableHttps=n,this._extra=o}originals=null;patch(){try{let t=function(a,u){try{if(typeof a=="string")return a;if(a instanceof URL)return a.toString();const c=a.protocol||u,l=a.hostname||a.host||"localhost",d=a.port?`:${a.port}`:"",h=a.path||a.pathname||"/";return`${c}//${l}${d}${h}`}catch{return""}},n=function(a,u){return function(l,d){const h=t(l,u),m=(typeof l=="object"&&l.method?l.method:"GET").toUpperCase(),p=Oe.performance.now(),g=i.ctx.idGenerator(),v=new Date().toISOString(),$=[];let b=0,z=!1;const S=a(l,E=>{const V=[];let ne=0,F=0;const ee=()=>String(E.headers["content-type"]||"");E.on("data",H=>{ne+=H.length;const ae=ee();if(/text\/event-stream/i.test(ae))V.push(H),F+=H.length;else{if(F>=s)return;const f=s-F;H.length<=f?(V.push(H),F+=H.length):(V.push(H.subarray(0,f)),F+=f)}}),E.on("end",()=>{const H=Oe.performance.now()-p;let ae="";try{const w=ee(),U=/text\/event-stream/i.test(w),j=Buffer.concat(V),Y=ne>j.length||j.length===s;let W=j;if(!U){const K=String(E.headers["content-encoding"]||"").toLowerCase();if(!Y&&W.length&&/(gzip|br|deflate)/.test(K))try{const J=require("node:zlib");K.includes("gzip")?W=J.gunzipSync(j):K.includes("br")?W=J.brotliDecompressSync(j):K.includes("deflate")&&(W=J.inflateSync(j))}catch{}}/text\//i.test(w)||/application\/(json|xml|javascript)/i.test(w)||U?(ae=W.toString("utf8"),Y&&!U&&(ae+=`
|
|
32
|
-
...[truncated]`)):W.length&&(ae=`<${W.length} bytes${Y?" (truncated)":""} binary>`)}catch{ae="<response body error>"}let se="";try{const w=Buffer.concat($),U=b>w.length||w.length===s;se=w.toString("utf8"),U&&(se+=`
|
|
33
|
-
...[truncated]`)}catch{se="<request body error>"}let f=null;if(i.ctx.llmProvider.isLLMCall(h))try{f=i.ctx.responseProcessor(h,ae)}catch(w){f={parts:[{type:"text",text:ae||"<empty response>"}],metadata:{error:String(w)}}}const x={id:g,time:v,transport:u==="https:"?"https":"http",method:m,url:h,requestBody:se,status:E.statusCode,ok:E.statusCode>=200&&E.statusCode<300,durationMs:Math.round(H),responseBody:ae,processedBody:f,bodyBytes:ne};try{const w=new URL(h);x.host=w.hostname,x.path=w.pathname}catch{}i.ctx.handleLogEntry(x),i._extra.agentHttpService&&i._extra.sessionId&&i._extra.isValidMessageRequest(h,m,se)&&i._extra.sendHttpUpdate(x).catch(()=>{})}),E.on("error",H=>{const ae=Oe.performance.now()-p;let se="";try{const x=Buffer.concat($),w=b>x.length||x.length===s;se=x.toString("utf8"),w&&(se+=`
|
|
34
|
-
...[truncated]`)}catch{se="<request body error>"}const f={id:g,time:v,transport:u==="https:"?"https":"http",method:m,url:h,requestBody:se,durationMs:Math.round(ae),error:H.message};try{const x=new URL(h);f.host=x.hostname,f.path=x.pathname}catch{}i.ctx.handleLogEntry(f),i._extra.agentHttpService&&i._extra.sessionId&&i._extra.isValidMessageRequest(h,m,se)&&i._extra.sendHttpUpdate(f).catch(()=>{})}),d&&d(E)}),A=S.write,M=S.end;return S.write=function(E,V,ne){try{if(E&&b<s){const F=Buffer.isBuffer(E)?E:Buffer.from(E,V||"utf8"),ee=s-b;F.length<=ee?($.push(F),b+=F.length):($.push(F.subarray(0,ee)),b+=ee)}}catch{}return A.call(this,E,V,ne)},S.end=function(E,V,ne){try{if(E&&b<s){const F=Buffer.isBuffer(E)?E:Buffer.from(E,V||"utf8"),ee=s-b;F.length<=ee?($.push(F),b+=F.length):($.push(F.subarray(0,ee)),b+=ee)}if(!z){z=!0;try{const F=Buffer.concat($),ee=b>F.length||F.length===s;let H=F.toString("utf8");ee&&(H+=`
|
|
35
|
-
...[truncated]`);const ae=i._extra.isValidMessageRequest(h,m,H);if(i._extra.agentHttpService&&i._extra.sessionId&&ae){const se={id:g,time:v,transport:u==="https:"?"https":"http",method:m,url:h,requestBody:H,durationMs:0};i._extra.sendHttpStart(se).catch(()=>{})}}catch{}}}catch{}return M.call(this,E,V,ne)},S}};const o=require("http"),e=require("https");if(this.originals)return;this.originals={httpRequest:o.request,httpsRequest:e.request,httpGet:o.get,httpsGet:e.get};const i=this,s=this.ctx.maxBodyBytes;o.request=n(this.originals.httpRequest,"http:"),o.get=function(u,c){const l=o.request(u,c);return l.end(),l},this.enableHttps!==!1&&(e.request=n(this.originals.httpsRequest,"https:"),e.get=function(u,c){const l=e.request(u,c);return l.end(),l})}catch{}}restore(){if(this.originals){try{const t=require("http"),n=require("https");t.request=this.originals.httpRequest,t.get=this.originals.httpGet,n.request=this.originals.httpsRequest,n.get=this.originals.httpsGet}catch{}this.originals=null}}}class He{static instance=null;isPatched=!1;config;llmProvider;idGenerator;agentHttpService;sessionId;router;activeRequests=new Map;rawLogger;errorLogger;processedLogger;debugLogger;fetchInstrument;httpInstrument;constructor(t={}){this.llmProvider=t.llmProvider||new Ic,this.idGenerator=t.idGenerator||ze.ulid,this.agentHttpService=t.agentHttpService,this.sessionId=t.sessionId,this.router=t.router,this.debugLogger=t.logger,this.config={maxBodyBytes:t.maxBodyBytes??8192,enableHttpsPatching:t.enableHttpsPatching??!0,enableDebug:t.enableDebug??!1,logFilter:t.logFilter??(s=>!!(s.url&&!s.url.includes("statsig")&&!s.url.includes("registry.npmjs.org")&&!s.url.startsWith("data:"))),responseProcessor:t.responseProcessor??((s,a)=>{try{return ge.parseStreamingResponse(s,a)}catch{return null}})};const n=ye.join(Wt.tmpdir(),"agiflow-agents","llm",`session-${process.pid}`),o=t.logFilePath||ye.join(n,"network.log"),e=ye.join(n,"error.log"),i=t.processedLogFilePath||ye.join(n,"processed.jsonl");try{this.rawLogger=new lt(o)}catch{}try{this.errorLogger=new lt(e)}catch{}try{this.processedLogger=new lt(i)}catch{}}static getInstance(t){return He.instance||(He.instance=new He(t)),He.instance}start(){if(this.isPatched)return;const t={idGenerator:this.idGenerator,maxBodyBytes:this.config.maxBodyBytes,enableDebug:this.config.enableDebug,logFilter:this.config.logFilter,responseProcessor:this.config.responseProcessor,llmProvider:this.llmProvider,handleLogEntry:n=>this.handleLogEntry(n),router:this.router,logger:this.debugLogger};this.fetchInstrument=new _t(t,{agentHttpService:this.agentHttpService,sessionId:this.sessionId,isValidMessageRequest:(n,o,e)=>this.isValidMessageRequest(n,o,e),sendHttpStart:n=>this.sendHttpStart(n),sendHttpUpdate:n=>this.sendHttpUpdate(n)}),this.fetchInstrument.patch(),this.httpInstrument=new pm(t,this.config.enableHttpsPatching,{agentHttpService:this.agentHttpService,sessionId:this.sessionId,isValidMessageRequest:(n,o,e)=>this.isValidMessageRequest(n,o,e),sendHttpStart:n=>this.sendHttpStart(n),sendHttpUpdate:n=>this.sendHttpUpdate(n)}),this.httpInstrument.patch(),this.isPatched=!0}stop(){this.isPatched&&(this.fetchInstrument?.restore(),this.httpInstrument?.restore(),this.isPatched=!1)}isActive(){return this.isPatched}updateConfig(t){this.config={...this.config,...t}}handleLogEntry(t){this.rawLogger&&this.rawLogger.info("network_entry",{networkLog:t}),this.debugLogger&&this.debugLogger.info("network_entry",{networkLog:t}),this.processedLogger&&this.config.logFilter(t)&&t.processedBody&&this.processedLogger.info("processed_entry",{id:t.id,url:t.url,method:t.method,status:t.status,durationMs:t.durationMs,timestamp:t.time,processedBody:t.processedBody})}isValidMessageRequest(t,n,o){if(this.rawLogger&&this.rawLogger.info("isValidMessageRequest checking",{url:t,method:n,hasBody:!!o,bodyLength:o?.length}),!this.llmProvider.isLLMCall(t))return this.rawLogger&&this.rawLogger.info("Not an LLM URL, skipping",{url:t}),this.rawLogger&&this.config.enableDebug&&this.rawLogger.debug("Request validation failed: Not an LLM URL",{url:t,method:n}),!1;if(t.includes("cloudcode-pa.googleapis.com")||t.includes("generativelanguage.googleapis.com"))return!!t.includes("streamGenerateContent");if(n!=="POST"||!o)return!1;try{const e=JSON.parse(o),i=e.messages&&Array.isArray(e.messages)&&e.messages.length>0,s=e.prompt&&typeof e.prompt=="string",a=e.input&&typeof e.input=="string",u=e.contents&&Array.isArray(e.contents)&&e.contents.length>0,c=e.request?.contents&&Array.isArray(e.request.contents)&&e.request.contents.length>0;return i||s||a||u||c}catch(e){return this.errorLogger&&this.errorLogger.error("Failed to parse request body in isValidMessageRequest",{url:t,method:n,error:e instanceof Error?e.message:String(e)}),!1}}async sendHttpStart(t){if(!this.agentHttpService||!this.sessionId)return;this.rawLogger&&this.rawLogger.info("http_start",{entry:t});let n=[];if(t.requestBody)try{const e=JSON.parse(t.requestBody);if(e.messages&&Array.isArray(e.messages)){const i=e.messages.filter(s=>s.role==="user").pop();i?.content&&(typeof i.content=="string"?n.push({type:"text",text:i.content}):Array.isArray(i.content)&&(n=i.content.map(s=>({type:s.type||"text",text:s.text||JSON.stringify(s)}))))}else if(e.prompt)n.push({type:"text",text:e.prompt});else if(e.input)n.push({type:"text",text:e.input});else if(e.contents&&Array.isArray(e.contents)){const i=e.contents.filter(s=>s.role==="user").pop();i?.parts&&Array.isArray(i.parts)&&(n=i.parts.map(s=>({type:"text",text:s.text||JSON.stringify(s)})))}else if(e.request?.contents&&Array.isArray(e.request.contents)){const i=e.request.contents.filter(s=>s.role==="user").pop();i?.parts&&Array.isArray(i.parts)&&(n=i.parts.map(s=>({type:"text",text:s.text||JSON.stringify(s)})))}}catch(e){this.errorLogger&&this.errorLogger.error("Failed to parse request data in sendHttpStart",{url:t.url,error:e instanceof Error?e.message:String(e)}),n.push({type:"text",text:"LLM request initiated..."})}const o={llm_provider:this.llmProvider.detectProvider(t.url),request_started:!0};try{this.rawLogger&&this.rawLogger.info("Calling agentHttpService.startMessage",{sessionId:this.sessionId,entryId:t.id});const e=await this.agentHttpService.startMessage(this.sessionId,{messageType:"output",metadata:o});this.activeRequests.set(t.id,e.messageId),this.rawLogger&&this.rawLogger.info("startMessage successful",{entryId:t.id,messageId:e.messageId})}catch(e){this.errorLogger&&this.errorLogger.error("Failed to send HTTP start message",{url:t.url,sessionId:this.sessionId,error:e instanceof Error?e.message:String(e)})}}async sendHttpUpdate(t){if(!this.agentHttpService||!this.sessionId)return;this.rawLogger&&this.rawLogger.info("http_update",{entry:t});const n=this.activeRequests.get(t.id);if(!n)return;if(!(t.processedBody?.message?.parts?.length>0||t.processedBody?.parts?.length>0)){this.rawLogger&&this.rawLogger.info("Skipping update - no valid parts yet",{entryId:t.id,messageId:n});return}const e={llm_provider:this.llmProvider.detectProvider(t.url),status:t.status,duration:t.durationMs};if(t.processedBody?.metadata){const s=t.processedBody.metadata;s.model&&(e.model=s.model),s.usage&&(e.usage=s.usage),s.total_tokens&&(e.total_tokens=s.total_tokens),s.prompt_tokens&&(e.prompt_tokens=s.prompt_tokens),s.completion_tokens&&(e.completion_tokens=s.completion_tokens),s.cost&&(e.cost=s.cost)}let i=[];if(t.processedBody){const s=t.processedBody;s?.message?.parts&&Array.isArray(s.message.parts)?i=s.message.parts:s?.parts&&Array.isArray(s.parts)?i=s.parts:s?.error?i.push({type:"text",text:`Parser error: ${s.error}`}):i=[]}else t.responseBody&&i.push({type:"text",text:"LLM response completed"});try{const s={parts:i,metadata:e,mId:t.processedBody?.message?.id};re.isSaveRawEnabled&&(s.raw=JSON.stringify(t)),await this.agentHttpService.updateMessage(this.sessionId,n,s),this.activeRequests.delete(t.id)}catch(s){this.errorLogger&&this.errorLogger.error("Failed to send HTTP update message",{url:t.url,messageId:n,sessionId:this.sessionId,error:s instanceof Error?s.message:String(s)}),this.activeRequests.delete(t.id)}}}class Q{static AGIFLOW_DIR=Ue.join(mr.homedir(),".agiflow");static async ensureDir(t){await Ae.ensureDir(t)}static async exists(t){try{return await Ae.access(t),!0}catch{return!1}}static async readJson(t){const n=await Ae.readFile(t,"utf-8");return JSON.parse(n)}static async writeJson(t,n,o){await Ae.ensureDir(Ue.dirname(t));const e=JSON.stringify(n,null,o?.spaces??2);await Ae.writeFile(t,e,"utf-8")}static async copy(t,n){await Ae.copy(t,n)}static async remove(t){await Ae.remove(t)}static getCurrentDirectory(){return process.cwd()}static resolvePath(...t){return Ue.resolve(process.cwd(),...t)}static async getFiles(t,n){const o=await Ae.readdir(t);return n?o.filter(e=>n.test(e)):o}static getAbsolutePath(t){return t?t.startsWith("~/")?Ue.join(mr.homedir(),t.slice(2)):t==="~"?mr.homedir():Ue.isAbsolute(t)?t:Ue.resolve(process.cwd(),t):process.cwd()}}class lm{static SESSIONS_FILE=Ue.join(Q.AGIFLOW_DIR,"sessions.json");static async getSessionSettings(t){try{return await Q.exists(this.SESSIONS_FILE)&&(await Q.readJson(this.SESSIONS_FILE))[t]||null}catch(n){return console.error("[SessionSettings] Failed to read session settings:",n),null}}static async setSessionSettings(t,n){try{let o={};await Q.exists(this.SESSIONS_FILE)&&(o=await Q.readJson(this.SESSIONS_FILE)),o[t]=n,await Q.writeJson(this.SESSIONS_FILE,o,{spaces:2})}catch(o){throw console.error("[SessionSettings] Failed to write session settings:",o),o}}static async removeSessionSettings(t){try{if(!await Q.exists(this.SESSIONS_FILE))return;const o=await Q.readJson(this.SESSIONS_FILE);delete o[t],await Q.writeJson(this.SESSIONS_FILE,o,{spaces:2})}catch(n){throw console.error("[SessionSettings] Failed to remove session settings:",n),n}}static async getAllSessions(){try{return await Q.exists(this.SESSIONS_FILE)?await Q.readJson(this.SESSIONS_FILE):{}}catch(t){return console.error("[SessionSettings] Failed to read all session settings:",t),{}}}static async clearAllSessions(){try{await Q.writeJson(this.SESSIONS_FILE,{},{spaces:2})}catch(t){throw console.error("[SessionSettings] Failed to clear session settings:",t),t}}}class De{static AUTH_FILE_PATH=ye.join(Wt.homedir(),".codex","auth.json");static TOKEN_REFRESH_URL="https://auth.openai.com/oauth/token";static CLIENT_ID="app_EMoamEEZ73f0CkXaXp7hrann";logger;constructor(t){this.logger=t}async getAccountId(){try{const t=this.readAuthFile();return!t||!t.tokens?null:t.tokens.account_id||null}catch(t){return this.logger?.error("[CodexAuth] Error getting account ID",t),null}}async getAccessToken(){try{const t=this.readAuthFile();if(!t||!t.tokens)return this.logger?.warn("[CodexAuth] No tokens found in auth file"),null;let{access_token:n,refresh_token:o}=t.tokens;if(typeof n=="string"&&n.startsWith("Bearer ")&&(n=n.substring(7)),!this.isTokenExpired(n))return n;const i=await this.refreshAccessToken(o);return i?(this.saveTokens(i),i.access_token):(this.logger?.error("[CodexAuth] Failed to refresh access token"),null)}catch(t){return this.logger?.error("[CodexAuth] Error getting access token",t),null}}readAuthFile(){try{if(!be.existsSync(De.AUTH_FILE_PATH))return this.logger?.warn("[CodexAuth] Auth file does not exist",{path:De.AUTH_FILE_PATH}),null;const t=be.readFileSync(De.AUTH_FILE_PATH,"utf-8");return JSON.parse(t)}catch(t){return this.logger?.error("[CodexAuth] Failed to read auth file",t),null}}isTokenExpired(t){try{const n=this.decodeJWT(t);if(!n||!n.exp)return!0;const o=n.exp*1e3,e=Date.now(),i=300*1e3;return o-e<i}catch(n){return this.logger?.error("[CodexAuth] Failed to decode token",n),!0}}decodeJWT(t){try{const n=t.split(".");if(n.length!==3)return null;const o=n[1],e=Buffer.from(o,"base64url").toString("utf-8");return JSON.parse(e)}catch(n){return this.logger?.error("[CodexAuth] Failed to decode JWT",n),null}}async refreshAccessToken(t){try{const n=await fetch(De.TOKEN_REFRESH_URL,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:t,client_id:De.CLIENT_ID})});if(!n.ok){const i=await n.text();return this.logger?.error("[CodexAuth] Token refresh failed",{status:n.status,error:i}),null}const o=await n.json();let e=o.access_token;return typeof e=="string"&&e.startsWith("Bearer ")&&(e=e.substring(7)),{id_token:o.id_token,access_token:e,refresh_token:o.refresh_token||t,account_id:o.account_id||""}}catch(n){return this.logger?.error("[CodexAuth] Failed to refresh token",n),null}}saveTokens(t){try{const n=this.readAuthFile();if(!n){this.logger?.error("[CodexAuth] Cannot save tokens - auth file not found");return}n.tokens=t,n.last_refresh=new Date().toISOString(),be.writeFileSync(De.AUTH_FILE_PATH,JSON.stringify(n,null,2),"utf-8")}catch(n){this.logger?.error("[CodexAuth] Failed to save tokens",n)}}}const _m=`You are a coding agent running in the Codex CLI, a terminal-based coding assistant. Codex CLI is an open source project led by OpenAI. You are expected to be precise, safe, and helpful.
|
|
36
|
-
|
|
37
|
-
Your capabilities:
|
|
38
|
-
|
|
39
|
-
- Receive user prompts and other context provided by the harness, such as files in the workspace.
|
|
40
|
-
- Communicate with the user by streaming thinking & responses, and by making & updating plans.
|
|
41
|
-
- Emit function calls to run terminal commands and apply patches. Depending on how this specific run is configured, you can request that these function calls be escalated to the user for approval before running. More on this in the "Sandbox and approvals" section.
|
|
42
|
-
|
|
43
|
-
Within this context, Codex refers to the open-source agentic coding interface (not the old Codex language model built by OpenAI).
|
|
44
|
-
|
|
45
|
-
# How you work
|
|
46
|
-
|
|
47
|
-
## Personality
|
|
48
|
-
|
|
49
|
-
Your default personality and tone is concise, direct, and friendly. You communicate efficiently, always keeping the user clearly informed about ongoing actions without unnecessary detail. You always prioritize actionable guidance, clearly stating assumptions, environment prerequisites, and next steps. Unless explicitly asked, you avoid excessively verbose explanations about your work.
|
|
50
|
-
|
|
51
|
-
# AGENTS.md spec
|
|
52
|
-
- Repos often contain AGENTS.md files. These files can appear anywhere within the repository.
|
|
53
|
-
- These files are a way for humans to give you (the agent) instructions or tips for working within the container.
|
|
54
|
-
- Some examples might be: coding conventions, info about how code is organized, or instructions for how to run or test code.
|
|
55
|
-
- Instructions in AGENTS.md files:
|
|
56
|
-
- The scope of an AGENTS.md file is the entire directory tree rooted at the folder that contains it.
|
|
57
|
-
- For every file you touch in the final patch, you must obey instructions in any AGENTS.md file whose scope includes that file.
|
|
58
|
-
- Instructions about code style, structure, naming, etc. apply only to code within the AGENTS.md file's scope, unless the file states otherwise.
|
|
59
|
-
- More-deeply-nested AGENTS.md files take precedence in the case of conflicting instructions.
|
|
60
|
-
- Direct system/developer/user instructions (as part of a prompt) take precedence over AGENTS.md instructions.
|
|
61
|
-
- The contents of the AGENTS.md file at the root of the repo and any directories from the CWD up to the root are included with the developer message and don't need to be re-read. When working in a subdirectory of CWD, or a directory outside the CWD, check for any AGENTS.md files that may be applicable.
|
|
62
|
-
|
|
63
|
-
## Responsiveness
|
|
64
|
-
|
|
65
|
-
### Preamble messages
|
|
66
|
-
|
|
67
|
-
Before making tool calls, send a brief preamble to the user explaining what you're about to do. When sending preamble messages, follow these principles and examples:
|
|
68
|
-
|
|
69
|
-
- **Logically group related actions**: if you're about to run several related commands, describe them together in one preamble rather than sending a separate note for each.
|
|
70
|
-
- **Keep it concise**: be no more than 1-2 sentences, focused on immediate, tangible next steps. (8–12 words for quick updates).
|
|
71
|
-
- **Build on prior context**: if this is not your first tool call, use the preamble message to connect the dots with what's been done so far and create a sense of momentum and clarity for the user to understand your next actions.
|
|
72
|
-
- **Keep your tone light, friendly and curious**: add small touches of personality in preambles feel collaborative and engaging.
|
|
73
|
-
- **Exception**: Avoid adding a preamble for every trivial read (e.g., \`cat\` a single file) unless it's part of a larger grouped action.
|
|
74
|
-
|
|
75
|
-
**Examples:**
|
|
76
|
-
|
|
77
|
-
- "I've explored the repo; now checking the API route definitions."
|
|
78
|
-
- "Next, I'll patch the config and update the related tests."
|
|
79
|
-
- "I'm about to scaffold the CLI commands and helper functions."
|
|
80
|
-
- "Ok cool, so I've wrapped my head around the repo. Now digging into the API routes."
|
|
81
|
-
- "Config's looking tidy. Next up is patching helpers to keep things in sync."
|
|
82
|
-
- "Finished poking at the DB gateway. I will now chase down error handling."
|
|
83
|
-
- "Alright, build pipeline order is interesting. Checking how it reports failures."
|
|
84
|
-
- "Spotted a clever caching util; now hunting where it gets used."
|
|
85
|
-
|
|
86
|
-
## Planning
|
|
87
|
-
|
|
88
|
-
You have access to an \`update_plan\` tool which tracks steps and progress and renders them to the user. Using the tool helps demonstrate that you've understood the task and convey how you're approaching it. Plans can help to make complex, ambiguous, or multi-phase work clearer and more collaborative for the user. A good plan should break the task into meaningful, logically ordered steps that are easy to verify as you go.
|
|
89
|
-
|
|
90
|
-
Note that plans are not for padding out simple work with filler steps or stating the obvious. The content of your plan should not involve doing anything that you aren't capable of doing (i.e. don't try to test things that you can't test). Do not use plans for simple or single-step queries that you can just do or answer immediately.
|
|
91
|
-
|
|
92
|
-
Do not repeat the full contents of the plan after an \`update_plan\` call — the harness already displays it. Instead, summarize the change made and highlight any important context or next step.
|
|
93
|
-
|
|
94
|
-
Before running a command, consider whether or not you have completed the previous step, and make sure to mark it as completed before moving on to the next step. It may be the case that you complete all steps in your plan after a single pass of implementation. If this is the case, you can simply mark all the planned steps as completed. Sometimes, you may need to change plans in the middle of a task: call \`update_plan\` with the updated plan and make sure to provide an \`explanation\` of the rationale when doing so.
|
|
95
|
-
|
|
96
|
-
Use a plan when:
|
|
97
|
-
|
|
98
|
-
- The task is non-trivial and will require multiple actions over a long time horizon.
|
|
99
|
-
- There are logical phases or dependencies where sequencing matters.
|
|
100
|
-
- The work has ambiguity that benefits from outlining high-level goals.
|
|
101
|
-
- You want intermediate checkpoints for feedback and validation.
|
|
102
|
-
- When the user asked you to do more than one thing in a single prompt
|
|
103
|
-
- The user has asked you to use the plan tool (aka "TODOs")
|
|
104
|
-
- You generate additional steps while working, and plan to do them before yielding to the user
|
|
105
|
-
|
|
106
|
-
### Examples
|
|
107
|
-
|
|
108
|
-
**High-quality plans**
|
|
109
|
-
|
|
110
|
-
Example 1:
|
|
111
|
-
|
|
112
|
-
1. Add CLI entry with file args
|
|
113
|
-
2. Parse Markdown via CommonMark library
|
|
114
|
-
3. Apply semantic HTML template
|
|
115
|
-
4. Handle code blocks, images, links
|
|
116
|
-
5. Add error handling for invalid files
|
|
117
|
-
|
|
118
|
-
Example 2:
|
|
119
|
-
|
|
120
|
-
1. Define CSS variables for colors
|
|
121
|
-
2. Add toggle with localStorage state
|
|
122
|
-
3. Refactor components to use variables
|
|
123
|
-
4. Verify all views for readability
|
|
124
|
-
5. Add smooth theme-change transition
|
|
125
|
-
|
|
126
|
-
Example 3:
|
|
127
|
-
|
|
128
|
-
1. Set up Node.js + WebSocket server
|
|
129
|
-
2. Add join/leave broadcast events
|
|
130
|
-
3. Implement messaging with timestamps
|
|
131
|
-
4. Add usernames + mention highlighting
|
|
132
|
-
5. Persist messages in lightweight DB
|
|
133
|
-
6. Add typing indicators + unread count
|
|
134
|
-
|
|
135
|
-
**Low-quality plans**
|
|
136
|
-
|
|
137
|
-
Example 1:
|
|
138
|
-
|
|
139
|
-
1. Create CLI tool
|
|
140
|
-
2. Add Markdown parser
|
|
141
|
-
3. Convert to HTML
|
|
142
|
-
|
|
143
|
-
Example 2:
|
|
144
|
-
|
|
145
|
-
1. Add dark mode toggle
|
|
146
|
-
2. Save preference
|
|
147
|
-
3. Make styles look good
|
|
148
|
-
|
|
149
|
-
Example 3:
|
|
150
|
-
|
|
151
|
-
1. Create single-file HTML game
|
|
152
|
-
2. Run quick sanity check
|
|
153
|
-
3. Summarize usage instructions
|
|
154
|
-
|
|
155
|
-
If you need to write a plan, only write high quality plans, not low quality ones.
|
|
156
|
-
|
|
157
|
-
## Task execution
|
|
158
|
-
|
|
159
|
-
You are a coding agent. Please keep going until the query is completely resolved, before ending your turn and yielding back to the user. Only terminate your turn when you are sure that the problem is solved. Autonomously resolve the query to the best of your ability, using the tools available to you, before coming back to the user. Do NOT guess or make up an answer.
|
|
160
|
-
|
|
161
|
-
You MUST adhere to the following criteria when solving queries:
|
|
162
|
-
|
|
163
|
-
- Working on the repo(s) in the current environment is allowed, even if they are proprietary.
|
|
164
|
-
- Analyzing code for vulnerabilities is allowed.
|
|
165
|
-
- Showing user code and tool call details is allowed.
|
|
166
|
-
- Use the \`apply_patch\` tool to edit files (NEVER try \`applypatch\` or \`apply-patch\`, only \`apply_patch\`): {"command":["apply_patch","*** Begin Patch\\\\n*** Update File: path/to/file.py\\\\n@@ def example():\\\\n- pass\\\\n+ return 123\\\\n*** End Patch"]}
|
|
167
|
-
|
|
168
|
-
If completing the user's task requires writing or modifying files, your code and final answer should follow these coding guidelines, though user instructions (i.e. AGENTS.md) may override these guidelines:
|
|
169
|
-
|
|
170
|
-
- Fix the problem at the root cause rather than applying surface-level patches, when possible.
|
|
171
|
-
- Avoid unneeded complexity in your solution.
|
|
172
|
-
- Do not attempt to fix unrelated bugs or broken tests. It is not your responsibility to fix them. (You may mention them to the user in your final message though.)
|
|
173
|
-
- Update documentation as necessary.
|
|
174
|
-
- Keep changes consistent with the style of the existing codebase. Changes should be minimal and focused on the task.
|
|
175
|
-
- Use \`git log\` and \`git blame\` to search the history of the codebase if additional context is required.
|
|
176
|
-
- NEVER add copyright or license headers unless specifically requested.
|
|
177
|
-
- Do not waste tokens by re-reading files after calling \`apply_patch\` on them. The tool call will fail if it didn't work. The same goes for making folders, deleting folders, etc.
|
|
178
|
-
- Do not \`git commit\` your changes or create new git branches unless explicitly requested.
|
|
179
|
-
- Do not add inline comments within code unless explicitly requested.
|
|
180
|
-
- Do not use one-letter variable names unless explicitly requested.
|
|
181
|
-
- NEVER output inline citations like "【F:README.md†L5-L14】" in your outputs. The CLI is not able to render these so they will just be broken in the UI. Instead, if you output valid filepaths, users will be able to click on them to open the files in their editor.
|
|
182
|
-
|
|
183
|
-
## Sandbox and approvals
|
|
184
|
-
|
|
185
|
-
The Codex CLI harness supports several different sandboxing, and approval configurations that the user can choose from.
|
|
186
|
-
|
|
187
|
-
Filesystem sandboxing prevents you from editing files without user approval. The options are:
|
|
188
|
-
|
|
189
|
-
- **read-only**: You can only read files.
|
|
190
|
-
- **workspace-write**: You can read files. You can write to files in your workspace folder, but not outside it.
|
|
191
|
-
- **danger-full-access**: No filesystem sandboxing.
|
|
192
|
-
|
|
193
|
-
Network sandboxing prevents you from accessing network without approval. Options are
|
|
194
|
-
|
|
195
|
-
- **restricted**
|
|
196
|
-
- **enabled**
|
|
197
|
-
|
|
198
|
-
Approvals are your mechanism to get user consent to perform more privileged actions. Although they introduce friction to the user because your work is paused until the user responds, you should leverage them to accomplish your important work. Do not let these settings or the sandbox deter you from attempting to accomplish the user's task. Approval options are
|
|
199
|
-
|
|
200
|
-
- **untrusted**: The harness will escalate most commands for user approval, apart from a limited allowlist of safe "read" commands.
|
|
201
|
-
- **on-failure**: The harness will allow all commands to run in the sandbox (if enabled), and failures will be escalated to the user for approval to run again without the sandbox.
|
|
202
|
-
- **on-request**: Commands will be run in the sandbox by default, and you can specify in your tool call if you want to escalate a command to run without sandboxing. (Note that this mode is not always available. If it is, you'll see parameters for it in the \`shell\` command description.)
|
|
203
|
-
- **never**: This is a non-interactive mode where you may NEVER ask the user for approval to run commands. Instead, you must always persist and work around constraints to solve the task for the user. You MUST do your utmost best to finish the task and validate your work before yielding. If this mode is pared with \`danger-full-access\`, take advantage of it to deliver the best outcome for the user. Further, in this mode, your default testing philosophy is overridden: Even if you don't see local patterns for testing, you may add tests and scripts to validate your work. Just remove them before yielding.
|
|
204
|
-
|
|
205
|
-
When you are running with approvals \`on-request\`, and sandboxing enabled, here are scenarios where you'll need to request approval:
|
|
206
|
-
|
|
207
|
-
- You need to run a command that writes to a directory that requires it (e.g. running tests that write to /tmp)
|
|
208
|
-
- You need to run a GUI app (e.g., open/xdg-open/osascript) to open browsers or files.
|
|
209
|
-
- You are running sandboxed and need to run a command that requires network access (e.g. installing packages)
|
|
210
|
-
- If you run a command that is important to solving the user's query, but it fails because of sandboxing, rerun the command with approval.
|
|
211
|
-
- You are about to take a potentially destructive action such as an \`rm\` or \`git reset\` that the user did not explicitly ask for
|
|
212
|
-
- (For all of these, you should weigh alternative paths that do not require approval.)
|
|
213
|
-
|
|
214
|
-
Note that when sandboxing is set to read-only, you'll need to request approval for any command that isn't a read.
|
|
215
|
-
|
|
216
|
-
You will be told what filesystem sandboxing, network sandboxing, and approval mode are active in a developer or user message. If you are not told about this, assume that you are running with workspace-write, network sandboxing ON, and approval on-failure.
|
|
217
|
-
|
|
218
|
-
## Validating your work
|
|
219
|
-
|
|
220
|
-
If the codebase has tests or the ability to build or run, consider using them to verify that your work is complete.
|
|
221
|
-
|
|
222
|
-
When testing, your philosophy should be to start as specific as possible to the code you changed so that you can catch issues efficiently, then make your way to broader tests as you build confidence. If there's no test for the code you changed, and if the adjacent patterns in the codebases show that there's a logical place for you to add a test, you may do so. However, do not add tests to codebases with no tests.
|
|
223
|
-
|
|
224
|
-
Similarly, once you're confident in correctness, you can suggest or use formatting commands to ensure that your code is well formatted. If there are issues you can iterate up to 3 times to get formatting right, but if you still can't manage it's better to save the user time and present them a correct solution where you call out the formatting in your final message. If the codebase does not have a formatter configured, do not add one.
|
|
225
|
-
|
|
226
|
-
For all of testing, running, building, and formatting, do not attempt to fix unrelated bugs. It is not your responsibility to fix them. (You may mention them to the user in your final message though.)
|
|
227
|
-
|
|
228
|
-
Be mindful of whether to run validation commands proactively. In the absence of behavioral guidance:
|
|
229
|
-
|
|
230
|
-
- When running in non-interactive approval modes like **never** or **on-failure**, proactively run tests, lint and do whatever you need to ensure you've completed the task.
|
|
231
|
-
- When working in interactive approval modes like **untrusted**, or **on-request**, hold off on running tests or lint commands until the user is ready for you to finalize your output, because these commands take time to run and slow down iteration. Instead suggest what you want to do next, and let the user confirm first.
|
|
232
|
-
- When working on test-related tasks, such as adding tests, fixing tests, or reproducing a bug to verify behavior, you may proactively run tests regardless of approval mode. Use your judgement to decide whether this is a test-related task.
|
|
233
|
-
|
|
234
|
-
## Ambition vs. precision
|
|
235
|
-
|
|
236
|
-
For tasks that have no prior context (i.e. the user is starting something brand new), you should feel free to be ambitious and demonstrate creativity with your implementation.
|
|
237
|
-
|
|
238
|
-
If you're operating in an existing codebase, you should make sure you do exactly what the user asks with surgical precision. Treat the surrounding codebase with respect, and don't overstep (i.e. changing filenames or variables unnecessarily). You should balance being sufficiently ambitious and proactive when completing tasks of this nature.
|
|
239
|
-
|
|
240
|
-
You should use judicious initiative to decide on the right level of detail and complexity to deliver based on the user's needs. This means showing good judgment that you're capable of doing the right extras without gold-plating. This might be demonstrated by high-value, creative touches when scope of the task is vague; while being surgical and targeted when scope is tightly specified.
|
|
241
|
-
|
|
242
|
-
## Sharing progress updates
|
|
243
|
-
|
|
244
|
-
For especially longer tasks that you work on (i.e. requiring many tool calls, or a plan with multiple steps), you should provide progress updates back to the user at reasonable intervals. These updates should be structured as a concise sentence or two (no more than 8-10 words long) recapping progress so far in plain language: this update demonstrates your understanding of what needs to be done, progress so far (i.e. files explores, subtasks complete), and where you're going next.
|
|
245
|
-
|
|
246
|
-
Before doing large chunks of work that may incur latency as experienced by the user (i.e. writing a new file), you should send a concise message to the user with an update indicating what you're about to do to ensure they know what you're spending time on. Don't start editing or writing large files before informing the user what you are doing and why.
|
|
247
|
-
|
|
248
|
-
The messages you send before tool calls should describe what is immediately about to be done next in very concise language. If there was previous work done, this preamble message should also include a note about the work done so far to bring the user along.
|
|
249
|
-
|
|
250
|
-
## Presenting your work and final message
|
|
251
|
-
|
|
252
|
-
Your final message should read naturally, like an update from a concise teammate. For casual conversation, brainstorming tasks, or quick questions from the user, respond in a friendly, conversational tone. You should ask questions, suggest ideas, and adapt to the user's style. If you've finished a large amount of work, when describing what you've done to the user, you should follow the final answer formatting guidelines to communicate substantive changes. You don't need to add structured formatting for one-word answers, greetings, or purely conversational exchanges.
|
|
253
|
-
|
|
254
|
-
You can skip heavy formatting for single, simple actions or confirmations. In these cases, respond in plain sentences with any relevant next step or quick option. Reserve multi-section structured responses for results that need grouping or explanation.
|
|
255
|
-
|
|
256
|
-
The user is working on the same computer as you, and has access to your work. As such there's no need to show the full contents of large files you have already written unless the user explicitly asks for them. Similarly, if you've created or modified files using \`apply_patch\`, there's no need to tell users to "save the file" or "copy the code into a file"—just reference the file path.
|
|
257
|
-
|
|
258
|
-
If there's something that you think you could help with as a logical next step, concisely ask the user if they want you to do so. Good examples of this are running tests, committing changes, or building out the next logical component. If there's something that you couldn't do (even with approval) but that the user might want to do (such as verifying changes by running the app), include those instructions succinctly.
|
|
259
|
-
|
|
260
|
-
Brevity is very important as a default. You should be very concise (i.e. no more than 10 lines), but can relax this requirement for tasks where additional detail and comprehensiveness is important for the user's understanding.
|
|
261
|
-
|
|
262
|
-
### Final answer structure and style guidelines
|
|
263
|
-
|
|
264
|
-
You are producing plain text that will later be styled by the CLI. Follow these rules exactly. Formatting should make results easy to scan, but not feel mechanical. Use judgment to decide how much structure adds value.
|
|
265
|
-
|
|
266
|
-
**Section Headers**
|
|
267
|
-
|
|
268
|
-
- Use only when they improve clarity — they are not mandatory for every answer.
|
|
269
|
-
- Choose descriptive names that fit the content
|
|
270
|
-
- Keep headers short (1–3 words) and in \`**Title Case**\`. Always start headers with \`**\` and end with \`**\`
|
|
271
|
-
- Leave no blank line before the first bullet under a header.
|
|
272
|
-
- Section headers should only be used where they genuinely improve scanability; avoid fragmenting the answer.
|
|
273
|
-
|
|
274
|
-
**Bullets**
|
|
275
|
-
|
|
276
|
-
- Use \`-\` followed by a space for every bullet.
|
|
277
|
-
- Merge related points when possible; avoid a bullet for every trivial detail.
|
|
278
|
-
- Keep bullets to one line unless breaking for clarity is unavoidable.
|
|
279
|
-
- Group into short lists (4–6 bullets) ordered by importance.
|
|
280
|
-
- Use consistent keyword phrasing and formatting across sections.
|
|
281
|
-
|
|
282
|
-
**Monospace**
|
|
283
|
-
|
|
284
|
-
- Wrap all commands, file paths, env vars, and code identifiers in backticks (\`\` \`...\` \`\`).
|
|
285
|
-
- Apply to inline examples and to bullet keywords if the keyword itself is a literal file/command.
|
|
286
|
-
- Never mix monospace and bold markers; choose one based on whether it's a keyword (\`**\`) or inline code/path (\`\` \` \`\`).
|
|
287
|
-
|
|
288
|
-
**File References**
|
|
289
|
-
When referencing files in your response, make sure to include the relevant start line and always follow the below rules:
|
|
290
|
-
* Use inline code to make file paths clickable.
|
|
291
|
-
* Each reference should have a stand alone path. Even if it's the same file.
|
|
292
|
-
* Accepted: absolute, workspace‑relative, a/ or b/ diff prefixes, or bare filename/suffix.
|
|
293
|
-
* Line/column (1‑based, optional): :line[:column] or #Lline[Ccolumn] (column defaults to 1).
|
|
294
|
-
* Do not use URIs like file://, vscode://, or https://.
|
|
295
|
-
* Do not provide range of lines
|
|
296
|
-
* Examples: src/app.ts, src/app.ts:42, b/server/index.js#L10, C:\\\\repo\\\\project\\\\main.rs:12:5
|
|
297
|
-
|
|
298
|
-
**Structure**
|
|
299
|
-
|
|
300
|
-
- Place related bullets together; don't mix unrelated concepts in the same section.
|
|
301
|
-
- Order sections from general → specific → supporting info.
|
|
302
|
-
- For subsections (e.g., "Binaries" under "Rust Workspace"), introduce with a bolded keyword bullet, then list items under it.
|
|
303
|
-
- Match structure to complexity:
|
|
304
|
-
- Multi-part or detailed results → use clear headers and grouped bullets.
|
|
305
|
-
- Simple results → minimal headers, possibly just a short list or paragraph.
|
|
306
|
-
|
|
307
|
-
**Tone**
|
|
308
|
-
|
|
309
|
-
- Keep the voice collaborative and natural, like a coding partner handing off work.
|
|
310
|
-
- Be concise and factual — no filler or conversational commentary and avoid unnecessary repetition
|
|
311
|
-
- Use present tense and active voice (e.g., "Runs tests" not "This will run tests").
|
|
312
|
-
- Keep descriptions self-contained; don't refer to "above" or "below".
|
|
313
|
-
- Use parallel structure in lists for consistency.
|
|
314
|
-
|
|
315
|
-
**Don't**
|
|
316
|
-
|
|
317
|
-
- Don't use literal words "bold" or "monospace" in the content.
|
|
318
|
-
- Don't nest bullets or create deep hierarchies.
|
|
319
|
-
- Don't output ANSI escape codes directly — the CLI renderer applies them.
|
|
320
|
-
- Don't cram unrelated keywords into a single bullet; split for clarity.
|
|
321
|
-
- Don't let keyword lists run long — wrap or reformat for scanability.
|
|
322
|
-
|
|
323
|
-
Generally, ensure your final answers adapt their shape and depth to the request. For example, answers to code explanations should have a precise, structured explanation with code references that answer the question directly. For tasks with a simple implementation, lead with the outcome and supplement only with what's needed for clarity. Larger changes can be presented as a logical walkthrough of your approach, grouping related steps, explaining rationale where it adds value, and highlighting next actions to accelerate the user. Your answers should provide the right level of detail while being easily scannable.
|
|
324
|
-
|
|
325
|
-
For casual greetings, acknowledgements, or other one-off conversational messages that are not delivering substantive information or structured results, respond naturally without section headers or bullet formatting.
|
|
326
|
-
|
|
327
|
-
# Tool Guidelines
|
|
328
|
-
|
|
329
|
-
## Shell commands
|
|
330
|
-
|
|
331
|
-
When using the shell, you must adhere to the following guidelines:
|
|
332
|
-
|
|
333
|
-
- When searching for text or files, prefer using \`rg\` or \`rg --files\` respectively because \`rg\` is much faster than alternatives like \`grep\`. (If the \`rg\` command is not found, then use alternatives.)
|
|
334
|
-
- Read files in chunks with a max chunk size of 250 lines. Do not use python scripts to attempt to output larger chunks of a file. Command line output will be truncated after 10 kilobytes or 256 lines of output, regardless of the command used.
|
|
335
|
-
|
|
336
|
-
## \`update_plan\`
|
|
337
|
-
|
|
338
|
-
A tool named \`update_plan\` is available to you. You can use it to keep an up‑to‑date, step‑by‑step plan for the task.
|
|
339
|
-
|
|
340
|
-
To create a new plan, call \`update_plan\` with a short list of 1‑sentence steps (no more than 5-7 words each) with a \`status\` for each step (\`pending\`, \`in_progress\`, or \`completed\`).
|
|
341
|
-
|
|
342
|
-
When steps have been completed, use \`update_plan\` to mark each finished step as \`completed\` and the next step you are working on as \`in_progress\`. There should always be exactly one \`in_progress\` step until everything is done. You can mark multiple items as complete in a single \`update_plan\` call.
|
|
343
|
-
|
|
344
|
-
If all steps are complete, ensure you call \`update_plan\` to mark all steps as \`completed\`.
|
|
345
|
-
|
|
346
|
-
## \`apply_patch\`
|
|
347
|
-
|
|
348
|
-
Use the \`apply_patch\` shell command to edit files.
|
|
349
|
-
Your patch language is a stripped‑down, file‑oriented diff format designed to be easy to parse and safe to apply. You can think of it as a high‑level envelope:
|
|
350
|
-
|
|
351
|
-
*** Begin Patch
|
|
352
|
-
[ one or more file sections ]
|
|
353
|
-
*** End Patch
|
|
354
|
-
|
|
355
|
-
Within that envelope, you get a sequence of file operations.
|
|
356
|
-
You MUST include a header to specify the action you are taking.
|
|
357
|
-
Each operation starts with one of three headers:
|
|
358
|
-
|
|
359
|
-
*** Add File: <path> - create a new file. Every following line is a + line (the initial contents).
|
|
360
|
-
*** Delete File: <path> - remove an existing file. Nothing follows.
|
|
361
|
-
*** Update File: <path> - patch an existing file in place (optionally with a rename).
|
|
362
|
-
|
|
363
|
-
May be immediately followed by *** Move to: <new path> if you want to rename the file.
|
|
364
|
-
Then one or more "hunks", each introduced by @@ (optionally followed by a hunk header).
|
|
365
|
-
Within a hunk each line starts with:
|
|
366
|
-
|
|
367
|
-
For instructions on [context_before] and [context_after]:
|
|
368
|
-
- By default, show 3 lines of code immediately above and 3 lines immediately below each change. If a change is within 3 lines of a previous change, do NOT duplicate the first change's [context_after] lines in the second change's [context_before] lines.
|
|
369
|
-
- If 3 lines of context is insufficient to uniquely identify the snippet of code within the file, use the @@ operator to indicate the class or function to which the snippet belongs. For instance, we might have:
|
|
370
|
-
@@ class BaseClass
|
|
371
|
-
[3 lines of pre-context]
|
|
372
|
-
- [old_code]
|
|
373
|
-
+ [new_code]
|
|
374
|
-
[3 lines of post-context]
|
|
375
|
-
|
|
376
|
-
- If a code block is repeated so many times in a class or function such that even a single \`@@\` statement and 3 lines of context cannot uniquely identify the snippet of code, you can use multiple \`@@\` statements to jump to the right context. For instance:
|
|
377
|
-
|
|
378
|
-
@@ class BaseClass
|
|
379
|
-
@@ def method():
|
|
380
|
-
[3 lines of pre-context]
|
|
381
|
-
- [old_code]
|
|
382
|
-
+ [new_code]
|
|
383
|
-
[3 lines of post-context]
|
|
384
|
-
|
|
385
|
-
The full grammar definition is below:
|
|
386
|
-
Patch := Begin { FileOp } End
|
|
387
|
-
Begin := "*** Begin Patch" NEWLINE
|
|
388
|
-
End := "*** End Patch" NEWLINE
|
|
389
|
-
FileOp := AddFile | DeleteFile | UpdateFile
|
|
390
|
-
AddFile := "*** Add File: " path NEWLINE { "+" line NEWLINE }
|
|
391
|
-
DeleteFile := "*** Delete File: " path NEWLINE
|
|
392
|
-
UpdateFile := "*** Update File: " path NEWLINE [ MoveTo ] { Hunk }
|
|
393
|
-
MoveTo := "*** Move to: " newPath NEWLINE
|
|
394
|
-
Hunk := "@@" [ header ] NEWLINE { HunkLine } [ "*** End of File" NEWLINE ]
|
|
395
|
-
HunkLine := (" " | "-" | "+") text NEWLINE
|
|
396
|
-
|
|
397
|
-
A full patch can combine several operations:
|
|
398
|
-
|
|
399
|
-
*** Begin Patch
|
|
400
|
-
*** Add File: hello.txt
|
|
401
|
-
+Hello world
|
|
402
|
-
*** Update File: src/app.py
|
|
403
|
-
*** Move to: src/main.py
|
|
404
|
-
@@ def greet():
|
|
405
|
-
-print("Hi")
|
|
406
|
-
+print("Hello, world!")
|
|
407
|
-
*** Delete File: obsolete.txt
|
|
408
|
-
*** End Patch
|
|
409
|
-
|
|
410
|
-
It is important to remember:
|
|
411
|
-
|
|
412
|
-
- You must include a header with your intended action (Add/Delete/Update)
|
|
413
|
-
- You must prefix new lines with \`+\` even when creating a new file
|
|
414
|
-
- File references can only be relative, NEVER ABSOLUTE.
|
|
415
|
-
|
|
416
|
-
You can invoke apply_patch like:
|
|
417
|
-
|
|
418
|
-
\`\`\`
|
|
419
|
-
shell {"command":["apply_patch","*** Begin Patch\\\\n*** Add File: hello.txt\\\\n+Hello, world!\\\\n*** End Patch\\\\n"]}
|
|
420
|
-
\`\`\`
|
|
421
|
-
`;class dm{config;codexAuth;codexInstructions;constructor(t,n){this.config=t,this.codexAuth=n,this.codexInstructions=this.loadCodexInstructions()}loadCodexInstructions(){return _m}async transform(t,n){try{const o=JSON.parse(n);this.config.logger?.debug("[ClaudeToOpenAI] ===== ORIGINAL CLAUDE REQUEST ====="),this.config.logger?.debug("[ClaudeToOpenAI] Original body",{body:JSON.stringify(o,null,2)});const e=jc.randomUUID(),i=e,s=this.config.sessionReasoningEffort,a=o.model&&o.model.toLowerCase().includes("haiku"),u=s||(a?"minimal":"medium");this.config.logger?.debug("[ClaudeToOpenAI] Model detection and reasoning effort",{originalModel:o.model,isHaikuModel:a,sessionReasoningEffort:s||"none",finalReasoningEffort:u,source:s?"session override":"model-based"});const c={model:this.config.toModel||"gpt-5",stream:!0,store:!1,tool_choice:"auto",parallel_tool_calls:!1,reasoning:{effort:u,summary:"auto"},include:["reasoning.encrypted_content"],prompt_cache_key:e};c.instructions=this.adaptInstructionsForChatGPT(this.codexInstructions);const l=[];let d="";if(o.system){const p=this.extractSystemMessages(o.system);p&&Array.isArray(p)&&p.length>0&&(d=p.map(g=>g.content).join(`
|
|
422
|
-
|
|
423
|
-
`))}if(d=this.removeClaudeCodeInstructions(d),d&&l.push({type:"message",role:"user",content:[{type:"input_text",text:d}]}),o.messages&&Array.isArray(o.messages))for(const p of o.messages){const g=this.convertMessageToInput(p);Array.isArray(g)?l.push(...g):g&&l.push(g)}if(c.input=l,o.tools&&Array.isArray(o.tools)){this.config.logger?.debug("[ClaudeToOpenAI] Original Claude tools",{tools:JSON.stringify(o.tools,null,2)});const p=this.convertTools(o.tools);this.config.logger?.debug("[ClaudeToOpenAI] Converted tools",{tools:JSON.stringify(p,null,2)}),p.length>0?(c.tools=p,this.config.logger?.debug("[ClaudeToOpenAI] Added tools to responsesRequest",{toolCount:p.length}),this.config.logger?.debug("[ClaudeToOpenAI] Verify responsesRequest.tools exists",{hasTools:!!c.tools,toolsLength:c.tools?.length,keys:Object.keys(c)})):this.config.logger?.warn("[ClaudeToOpenAI] No valid tools after conversion, omitting tools field")}else this.config.logger?.debug("[ClaudeToOpenAI] No tools in Claude request",{hasTools:!!o.tools,isArray:Array.isArray(o.tools)});const h=this.config.toEndpoint||"https://chatgpt.com/backend-api/codex/responses",m={version:"0.46.0","openai-beta":"responses=experimental",conversation_id:e,session_id:i,accept:"text/event-stream","content-type":"application/json","user-agent":"codex_cli_rs/0.46.0 (Mac OS 15.6.0; arm64) iTerm.app/3.6.2",originator:"codex_cli_rs"};if(this.codexAuth){const p=await this.codexAuth.getAccessToken();this.config.logger?.debug("[ClaudeToOpenAI] Raw access token",{token:p?.substring(0,30)+"..."}),p&&(p.startsWith("Bearer ")?(m.authorization=p,this.config.logger?.debug("[ClaudeToOpenAI] Token already has Bearer prefix, using as-is")):(m.authorization=`Bearer ${p}`,this.config.logger?.debug("[ClaudeToOpenAI] Added Bearer prefix to token")));const g=await this.codexAuth.getAccountId();g&&(m["chatgpt-account-id"]=g)}else this.config.toApiKey&&(m.authorization=`Bearer ${this.config.toApiKey}`);return this.config.logger?.debug("[ClaudeToOpenAI] ===== REQUEST DETAILS ====="),this.config.logger?.debug("[ClaudeToOpenAI] Target URL",{targetUrl:h}),this.config.logger?.debug("[ClaudeToOpenAI] Headers",{headers:{...m,authorization:m.authorization?`${m.authorization.substring(0,30)}...`:void 0}}),this.config.logger?.debug("[ClaudeToOpenAI] Body",{body:JSON.stringify(c,null,2)}),this.config.logger?.debug("[ClaudeToOpenAI] ==============================="),this.config.logger?.debug("[ClaudeToOpenAI] ===== FINAL TRANSFORMED REQUEST ====="),this.config.logger?.debug("[ClaudeToOpenAI] Pre-final check - responsesRequest.tools",{hasTools:!!c.tools,toolsLength:c.tools?.length,keys:Object.keys(c)}),this.config.logger?.debug("[ClaudeToOpenAI] Final body",{body:JSON.stringify(c,null,2)}),this.config.logger?.debug("[ClaudeToOpenAI] ===== END FINAL TRANSFORMED REQUEST ====="),{url:h,body:JSON.stringify(c),headers:m}}catch(o){throw new Error(`Failed to transform Claude request to OpenAI: ${o}`)}}adaptInstructionsForChatGPT(t){let n=t;return n=n.replace(/You are powered by the model named Sonnet 4\.5\. The exact model ID is claude-sonnet-4-5-\d+\./g,"You are powered by ChatGPT (GPT-5 reasoning model)."),n=n.replace(/Assistant knowledge cutoff is January 2025/g,"Assistant knowledge cutoff is October 2023"),n=n.replace(/\bClaude\b/g,"ChatGPT"),n=n.replace(/\bAnthropic\b/g,"OpenAI"),n}removeClaudeCodeInstructions(t){const n=[/You are Claude Code, Anthropic's official CLI for Claude\.[\s\S]*?claude_code_docs_map\.md/,/You are Claude Code[\s\S]*?using Claude Code\n/];let o=t;for(const e of n)o=o.replace(e,"");return o=o.replace(/\n{3,}/g,`
|
|
424
|
-
|
|
425
|
-
`).trim(),o}extractSystemMessages(t){const n=[];if(typeof t=="string")n.push({role:"system",content:t});else if(Array.isArray(t))for(const o of t)typeof o=="string"?n.push({role:"system",content:o}):o.type==="text"&&o.text&&n.push({role:"system",content:o.text});else t.type==="text"&&t.text&&n.push({role:"system",content:t.text});return n}convertMessageToInput(t){if(!t.role||!t.content)return null;const n=t.role==="assistant"?"output_text":"input_text";if(Array.isArray(t.content)){const o=[],e=[],i=[];for(const a of t.content)if(a.type==="tool_result"){const u=typeof a.content=="string"?a.content:JSON.stringify(a.content);o.push({type:"function_call_output",call_id:a.tool_use_id,output:u})}else if(a.type==="text")i.push({type:n,text:a.text||""});else if(a.type==="image")if(a.source&&a.source.type==="base64"&&a.source.data){const u=a.source.media_type||"image/jpeg",c=`data:${u};base64,${a.source.data}`;i.push({type:"input_image",image_url:c}),this.config.logger?.debug("[ClaudeToOpenAI] Converted image block",{mediaType:u,dataLength:a.source.data.length})}else this.config.logger?.warn("[ClaudeToOpenAI] Unsupported image format",{source:a.source});else a.type==="tool_use"&&e.push({type:"function_call",call_id:a.id,name:a.name,arguments:JSON.stringify(a.input||{})});const s=[];return i.length>0&&s.push({type:"message",role:t.role,content:i}),e.length>0&&s.push(...e),o.length>0&&s.push(...o),s.length>1?s:s.length===1?s[0]:null}else if(typeof t.content=="string")return{type:"message",role:t.role,content:[{type:n,text:t.content}]};return null}convertTools(t){return!t||!Array.isArray(t)?[]:t.filter(n=>!(!n||typeof n!="object"||!n.name)).map(n=>({type:"function",name:n.name,description:n.description||"",parameters:n.input_schema||n.parameters||{}}))}}class mm{logger;constructor(t){this.logger=t}transform(t){try{return!t||t.trim()===""?this.createEmptyClaudeResponse():t.includes("data:")?this.convertStreamingResponse(t):this.convertNonStreamingResponse(t)}catch(n){return this.logger?.error("[OpenAIToClaude] ERROR in transform",n),this.createEmptyClaudeResponse()}}createEmptyClaudeResponse(){const t=`msg_${ze.ulid()}`,n=[];return n.push("event: message_start"),n.push(`data: ${JSON.stringify({type:"message_start",message:{id:t,type:"message",role:"assistant",content:[],model:"gpt-5",stop_reason:null,stop_sequence:null,usage:{input_tokens:0,output_tokens:0}}})}`),n.push(""),n.push("event: message_stop"),n.push('data: {"type":"message_stop"}'),n.push(""),n.join(`
|
|
426
|
-
`)}convertStreamingResponse(t){const n=this.parseOpenAIStream(t),o=this.createClaudeStreamFromParsed(n),e=n.errorMessage||"Empty streaming response from provider";return this.ensureValidClaudeStream(o,e)}parseOpenAIStream(t){const n={textSegments:[],thinkingSegments:[],toolCalls:new Map,model:"gpt-5",inputTokens:0,outputTokens:0,cachedTokens:0,reasoningTokens:0,reasoningEffort:void 0,stopReason:void 0,errorMessage:void 0},o=t.split(`
|
|
427
|
-
`);let e="";const i=/event:\s*response\./i.test(t)||/"type"\s*:\s*"response\./i.test(t)||/"response"\s*:\s*\{/i.test(t);for(const s of o){const a=s.trim();if(!a)continue;if(a.startsWith("event:")){e=a.slice(6).trim();continue}if(!a.startsWith("data:"))continue;const u=a.slice(5).trim();if(!u||u==="[DONE]")continue;let c;try{c=JSON.parse(u)}catch{continue}if(c?.error){n.errorMessage=c.error?.message||c.error?.error||(typeof c.error=="string"?c.error:"Unexpected API error");break}i||e.startsWith("response.")?this.handleResponsesEvent(e,c,n):this.handleChatCompletionChunk(c,n)}return n}handleResponsesEvent(t,n,o){const e=typeof n?.type=="string"?n.type:t;switch(n?.model&&typeof n.model=="string"&&(o.model=n.model),n?.usage&&(o.inputTokens=n.usage.input_tokens??n.usage.prompt_tokens??o.inputTokens,o.outputTokens=n.usage.output_tokens??n.usage.completion_tokens??o.outputTokens),e){case"response.created":n?.response?.model&&(o.model=n.response.model);break;case"response.reasoning.delta":case"response.reasoning_summary_text.delta":case"response.function_call_arguments.delta":case"response.function_call_arguments.done":case"response.in_progress":case"response.output_item.added":case"response.output_item.done":case"response.content_part.added":case"response.content_part.done":case"response.reasoning_summary_part.added":case"response.reasoning_summary_part.done":case"response.reasoning_summary_text.done":break;case"response.output_text.delta":case"response.delta":n?.delta?.tool_calls;break;case"response.output_text.done":break;case"response.completed":if(n?.response?.model&&(o.model=n.response.model),n?.response?.usage&&(o.inputTokens=n.response.usage.input_tokens??n.response.usage.prompt_tokens??o.inputTokens,o.outputTokens=n.response.usage.output_tokens??n.response.usage.completion_tokens??o.outputTokens,n.response.usage.input_tokens_details?.cached_tokens&&(o.cachedTokens=n.response.usage.input_tokens_details.cached_tokens),n.response.usage.output_tokens_details?.reasoning_tokens&&(o.reasoningTokens=n.response.usage.output_tokens_details.reasoning_tokens)),n?.response?.reasoning?.effort&&(o.reasoningEffort=n.response.reasoning.effort),Array.isArray(n?.response?.tool_calls)&&this.collectToolCalls(n.response.tool_calls,o.toolCalls),Array.isArray(n?.response?.output)){for(const i of n.response.output)if(i?.type==="reasoning"){if(Array.isArray(i?.summary))for(const s of i.summary)s?.type==="summary_text"&&s?.text&&o.thinkingSegments.push(s.text)}else if(i?.type==="message"){if(Array.isArray(i?.content))for(const s of i.content)(s?.type==="output_text"||s?.type==="text")&&s?.text&&o.textSegments.push(s.text)}else if(i?.type==="function_call"){const s={index:o.toolCalls.size,id:i.id||`tool_${ze.ulid()}`,function:{name:i.name,arguments:i.arguments}};this.collectToolCalls([s],o.toolCalls)}}n?.response?.output_text&&this.collectTextFromNode(n.response.output_text,o.textSegments),o.stopReason=this.mapResponseStatusToStopReason(n?.response?.status);break;case"response.error":o.errorMessage=n?.error?.message||n?.message||"Unexpected API error";break;default:n?.delta&&(this.collectTextFromNode(n.delta,o.textSegments),n.delta.tool_calls&&this.collectToolCalls(n.delta.tool_calls,o.toolCalls));break}}handleChatCompletionChunk(t,n){if(t&&(t.model&&typeof t.model=="string"&&(n.model=t.model),t.usage&&(n.inputTokens=t.usage.prompt_tokens??n.inputTokens,n.outputTokens=t.usage.completion_tokens??n.outputTokens),!!Array.isArray(t.choices)))for(const o of t.choices)o?.delta&&(this.collectTextFromNode(o.delta,n.textSegments),o.delta.tool_calls&&this.collectToolCalls(o.delta.tool_calls,n.toolCalls)),o?.message?.content&&this.collectTextFromNode(o.message.content,n.textSegments),o?.finish_reason&&(n.stopReason=this.mapFinishReason(o.finish_reason))}collectTextFromNode(t,n){if(t==null)return;if(typeof t=="string"){t.length>0&&n.push(t);return}if(Array.isArray(t)){for(const e of t)this.collectTextFromNode(e,n);return}if(typeof t!="object")return;typeof t.text=="string"&&n.push(t.text),typeof t.output_text=="string"&&n.push(t.output_text),typeof t.value=="string"&&n.push(t.value),typeof t.delta=="string"?n.push(t.delta):t.delta&&this.collectTextFromNode(t.delta,n),t.token&&typeof t.token.text=="string"&&n.push(t.token.text);const o=["content","output","output_text","message","choices","segments"];for(const e of o)if(t[e]!==void 0)if(e==="choices"&&Array.isArray(t[e]))for(const i of t[e])i?.message?.content&&this.collectTextFromNode(i.message.content,n),i?.delta&&this.collectTextFromNode(i.delta,n);else this.collectTextFromNode(t[e],n)}collectToolCalls(t,n){if(!t)return;const o=Array.isArray(t)?t:[t];for(const e of o){if(!e)continue;const i=typeof e.index=="number"?e.index:n.size,s=n.get(i)||{id:"",name:"",argumentChunks:[]};typeof e.id=="string"&&!s.id&&(s.id=e.id);const a=e.function?.name;typeof a=="string"&&a.length>0&&(s.name=a);const u=e.function?.arguments;typeof u=="string"&&u.length>0&&s.argumentChunks.push(u),n.set(i,s)}}createClaudeStreamFromParsed(t){if(t.errorMessage)return this.createClaudeErrorStream(t.errorMessage);const n=this.mergeAndChunkSegments(t.thinkingSegments),o=this.mergeAndChunkSegments(t.textSegments),e=Array.from(t.toolCalls.entries()).sort((m,p)=>m[0]-p[0]).map(([m,p])=>({index:m,id:p.id,name:p.name,arguments:p.argumentChunks.join("")})).filter(m=>m.name);if(n.length===0&&o.length===0&&e.length===0)return this.createClaudeErrorStream("Empty streaming response from provider");const i=`msg_${ze.ulid()}`,s=t.model||"gpt-5",a=[];a.push("event: message_start"),a.push(`data: ${JSON.stringify({type:"message_start",message:{id:i,type:"message",role:"assistant",content:[],model:s,stop_reason:null,stop_sequence:null,usage:{input_tokens:t.inputTokens??0,output_tokens:0}}})}`),a.push("");let u=0;if(n.length>0){a.push("event: content_block_start"),a.push(`data: ${JSON.stringify({type:"content_block_start",index:u,content_block:{type:"thinking",thinking:"",_chatgpt_reasoning:!0}})}`),a.push("");for(const m of n)m&&(a.push("event: content_block_delta"),a.push(`data: ${JSON.stringify({type:"content_block_delta",index:u,delta:{type:"thinking_delta",thinking:m}})}`),a.push(""));a.push("event: content_block_stop"),a.push(`data: ${JSON.stringify({type:"content_block_stop",index:u})}`),a.push(""),u+=1}if(o.length>0){a.push("event: content_block_start"),a.push(`data: ${JSON.stringify({type:"content_block_start",index:u,content_block:{type:"text",text:""}})}`),a.push("");for(const m of o)m&&(a.push("event: content_block_delta"),a.push(`data: ${JSON.stringify({type:"content_block_delta",index:u,delta:{type:"text_delta",text:m}})}`),a.push(""));a.push("event: content_block_stop"),a.push(`data: ${JSON.stringify({type:"content_block_stop",index:u})}`),a.push(""),u+=1}for(const m of e){const p=u+m.index,g=m.id||`tool_${ze.ulid()}`;a.push("event: content_block_start"),a.push(`data: ${JSON.stringify({type:"content_block_start",index:p,content_block:{type:"tool_use",id:g,name:m.name,input:{}}})}`),a.push(""),m.arguments&&(a.push("event: content_block_delta"),a.push(`data: ${JSON.stringify({type:"content_block_delta",index:p,delta:{type:"input_json_delta",partial_json:m.arguments}})}`),a.push("")),a.push("event: content_block_stop"),a.push(`data: ${JSON.stringify({type:"content_block_stop",index:p})}`),a.push("")}const c=t.stopReason||"end_turn",d={output_tokens:t.outputTokens??0};return(t.cachedTokens||t.reasoningTokens||t.reasoningEffort)&&(d.metadata={},t.cachedTokens&&(d.metadata.cached_tokens=t.cachedTokens),t.reasoningTokens&&(d.metadata.reasoning_tokens=t.reasoningTokens),t.reasoningEffort&&(d.metadata.reasoning_effort=t.reasoningEffort)),a.push("event: message_delta"),a.push(`data: ${JSON.stringify({type:"message_delta",delta:{stop_reason:c,stop_sequence:null},usage:d})}`),a.push(""),a.push("event: message_stop"),a.push('data: {"type":"message_stop"}'),a.push(""),a.join(`
|
|
428
|
-
`)}mergeAndChunkSegments(t,n=2e3){if(!t||t.length===0)return[];const o=t.join("");if(!o)return[];const e=[];for(let i=0;i<o.length;i+=n)e.push(o.slice(i,i+n));return e}mapResponseStatusToStopReason(t){return t&&{completed:"end_turn",completed_with_error:"error",completed_with_streaming_error:"error",cancelled:"error",errored:"error"}[t]||"end_turn"}convertNonStreamingResponse(t){try{const n=JSON.parse(t);if(n?.error){const s=n.error?.message||n.error?.error||(typeof n.error=="string"?n.error:"Unexpected API error");return this.createClaudeErrorResponse(s)}const o=n.choices?.[0];if(!o)return t;const i={id:`msg_${ze.ulid()}`,type:"message",role:"assistant",content:[{type:"text",text:o.message?.content||""}],model:n.model||"gpt-4-turbo",stop_reason:this.mapFinishReason(o.finish_reason),stop_sequence:null,usage:{input_tokens:n.usage?.prompt_tokens||0,output_tokens:n.usage?.completion_tokens||0}};return JSON.stringify(i)}catch{const o=typeof t=="string"&&t.trim()?t.trim():"Unexpected API error";return this.createClaudeErrorResponse(o)}}mapFinishReason(t){return t?{stop:"end_turn",length:"max_tokens",function_call:"tool_use",tool_calls:"tool_use",content_filter:"stop_sequence"}[t]||"end_turn":null}createClaudeErrorResponse(t){const n=`msg_${ze.ulid()}`;return JSON.stringify({id:n,type:"message",role:"assistant",content:[{type:"text",text:t||"Unexpected API error"}],model:"gpt-5",stop_reason:"error",stop_sequence:null,usage:{input_tokens:0,output_tokens:0}})}createClaudeErrorStream(t){const n=`msg_${ze.ulid()}`,o=t||"Unexpected API error",e=[];return e.push("event: message_start"),e.push(`data: ${JSON.stringify({type:"message_start",message:{id:n,type:"message",role:"assistant",content:[],model:"gpt-5",stop_reason:null,stop_sequence:null,usage:{input_tokens:0,output_tokens:0}}})}`),e.push(""),e.push("event: content_block_start"),e.push(`data: ${JSON.stringify({type:"content_block_start",index:0,content_block:{type:"text",text:""}})}`),e.push(""),e.push("event: content_block_delta"),e.push(`data: ${JSON.stringify({type:"content_block_delta",index:0,delta:{type:"text_delta",text:o}})}`),e.push(""),e.push("event: content_block_stop"),e.push(`data: ${JSON.stringify({type:"content_block_stop",index:0})}`),e.push(""),e.push("event: message_delta"),e.push(`data: ${JSON.stringify({type:"message_delta",delta:{stop_reason:"error",stop_sequence:null},usage:{output_tokens:0}})}`),e.push(""),e.push("event: message_stop"),e.push('data: {"type":"message_stop"}'),e.push(""),e.join(`
|
|
429
|
-
`)}ensureValidClaudeStream(t,n){return!t||!t.includes("event: message_start")?this.createClaudeErrorStream(n):t}}class gm{config;requestTransformer=null;responseTransformer=null;routingContextMap=new Map;codexAuth;hasSessionSettings=!1;lastSessionCheckTimestamp=0;SESSION_CHECK_INTERVAL_MS=1e3;cachedSessionSettings=null;CLAUDE_PATTERNS=[/anthropic\.com/i,/claude\.ai/i,/\/v1\/messages/i,/\/publishers\/anthropic\/models/i];constructor(t){this.config=t,this.applySessionSettings()}applySessionSettings(){this.config.sessionId?this.loadSessionSettingsAsync():this.initializeRouter()}async loadSessionSettingsAsync(){await this.checkAndReloadSessionSettings(),this.initializeRouter()}async checkAndReloadSessionSettings(){if(!this.config.sessionId)return;const t=Date.now();if(!(t-this.lastSessionCheckTimestamp<this.SESSION_CHECK_INTERVAL_MS))try{const n=await lm.getSessionSettings(this.config.sessionId);if(this.lastSessionCheckTimestamp=t,JSON.stringify(n)!==JSON.stringify(this.cachedSessionSettings))if(this.cachedSessionSettings=n,n&&n.provider){const e=this.mapProviderName(n.provider);this.config.toProvider=e,this.config.toModel=n.model,this.config.sessionReasoningEffort=n.reasoningEffort,this.hasSessionSettings=!0,this.initializeTransformers()}else this.hasSessionSettings=!1}catch(n){this.config.logger?.error("[Router] Failed to check session settings",n)}}initializeRouter(){this.config.toApiKey||(this.codexAuth=new De(this.config.logger)),this.initializeTransformers()}mapProviderName(t){const n=t.toLowerCase().trim();return n==="chatgpt"||n==="gpt"||n==="openai"?"openai":n}initializeTransformers(){this.config.toProvider?.toLowerCase()==="openai"&&(this.requestTransformer=new dm(this.config,this.codexAuth),this.responseTransformer=new mm(this.config.logger))}shouldRoute(t,n){if(this.checkAndReloadSessionSettings().catch(o=>{this.config.logger?.error("[Router] Failed to check session settings in shouldRoute",o)}),!this.requestTransformer||!this.responseTransformer||!n)return!1;try{return JSON.parse(n),!!(this.hasSessionSettings&&this.CLAUDE_PATTERNS.some(e=>e.test(t)))}catch(o){return this.config.logger?.error("[Router] JSON parse error in shouldRoute",o),!1}}async transformRequest(t,n){if(!this.requestTransformer)throw new Error("Request transformer not initialized");const o=await this.requestTransformer.transform(t,n),e=`${t}_${Date.now()}`;return this.routingContextMap.set(e,{originalUrl:t,targetUrl:o.url,fromProvider:"anthropic",toProvider:this.config.toProvider,wasRouted:!0}),o}transformResponse(t){if(!this.responseTransformer)throw new Error("Response transformer not initialized");try{return this.responseTransformer.transform(t)}catch(n){return this.config.logger?.error("[Router] Response transformation failed",n),this.createFallbackClaudeResponse()}}cleanRequestForPassthrough(t){try{const n=JSON.parse(t);if(!n.messages||!Array.isArray(n.messages))return t;let o=!1;const e=n.messages.map(i=>{if(!i.content||!Array.isArray(i.content))return i;const s=i.content.filter(a=>a.type==="thinking"&&a._chatgpt_reasoning===!0?(o=!0,!1):!0);return s.length>0?{...i,content:s}:null}).filter(Boolean);return o?(n.messages=e,JSON.stringify(n)):t}catch(n){return this.config.logger?.warn("[Router] Failed to clean request for passthrough",{error:n instanceof Error?n.message:String(n)}),t}}createFallbackClaudeResponse(){const t=`msg_error_${Date.now()}`,n=[];return n.push("event: message_start"),n.push(`data: ${JSON.stringify({type:"message_start",message:{id:t,type:"message",role:"assistant",content:[],model:"gpt-5",stop_reason:null,stop_sequence:null,usage:{input_tokens:0,output_tokens:0}}})}`),n.push(""),n.push("event: content_block_start"),n.push(`data: ${JSON.stringify({type:"content_block_start",index:0,content_block:{type:"text",text:""}})}`),n.push(""),n.push("event: content_block_delta"),n.push(`data: ${JSON.stringify({type:"content_block_delta",index:0,delta:{type:"text_delta",text:"Error: Response transformation failed. Please try again."}})}`),n.push(""),n.push("event: content_block_stop"),n.push(`data: ${JSON.stringify({type:"content_block_stop",index:0})}`),n.push(""),n.push("event: message_stop"),n.push('data: {"type":"message_stop"}'),n.push(""),n.join(`
|
|
430
|
-
`)}wasRouted(t){for(const n of this.routingContextMap.values())if(n.targetUrl===t)return!0;return!1}getRoutingContext(t){for(const n of this.routingContextMap.values())if(n.targetUrl===t||n.originalUrl===t)return n}clearRoutingContext(t){for(const[n,o]of this.routingContextMap.entries())(o.targetUrl===t||o.originalUrl===t)&&this.routingContextMap.delete(n)}getTargetProvider(){return this.config.toProvider}getTargetModel(){return this.config.toModel}}const Po=_o(()=>je([ro(),D(),xe(),rt(),we(Po),nt(D(),Po)])),Do=R({toolCallId:D(),toolName:D(),args:$e()}),hm=R({toolCallId:D(),toolName:D(),args:$e(),result:$e()}),fm=je([Do.extend({state:ue("partial-call"),step:xe().optional()}),Do.extend({state:ue("call"),step:xe().optional()}),hm.extend({state:ue("result"),step:xe().optional()})]),vm=R({type:D(),content:D()}),km=R({type:ue("text"),text:D()}),ym=R({type:ue("reasoning"),reasoning:D(),details:we(je([R({type:ue("text"),text:D(),signature:D().optional()}),R({type:ue("redacted"),data:D()})])).optional()}),bm=R({name:ue("select"),props:R({options:we(R({label:D(),value:je([D(),xe()]),selected:rt().optional()}))})}),xm=R({name:ue("placeholder"),props:R({})}),$m=je([bm,xm]),Sc=R({completed:rt(),component:$m}),wm=R({type:ue("tool-invocation"),toolInvocation:fm,input:Sc.optional(),jsx:D().describe("UI rendering").optional()}),Im=R({type:ue("source"),source:vm}),Sm=R({type:ue("file"),mimeType:D(),data:D()}),zm=R({type:ue("error"),text:D(),error:$e().optional()}),Om=R({type:ue("step-start")}),zc=je([km,ym,wm,Im,Sm,zm,Om]),mo=ot(["input","output","error","system"]),Oc=R({messageType:mo,parts:we(zc),metadata:nt(D(),Ee()).optional(),raw:$e().optional()});R({id:D(),sessionId:D(),agentTypeId:D(),messageType:mo,contentSize:xe().nullable(),timestamp:Ct(),metadata:D().nullable(),parts:D().nullable().optional(),raw:$e().nullable().optional(),createdAt:Ct(),updatedAt:Ct()});const Tm=R({messageType:ot(["output"]).default("output"),metadata:nt(D(),Ee()).optional()});R({id:D(),messageId:D()});const Em=R({parts:we(zc).optional(),metadata:nt(D(),Ee()).optional(),raw:$e().optional(),toolName:D().optional(),toolResult:$e().optional()});R({messages:we(Oc)});const Nm=R({toolName:D(),toolArgs:$e(),input:Sc});R({messageId:D(),success:rt()});function jm(r){return[Am(r)]}function Ro(r){let t=r.parts;if(!t&&r.content&&(t=jm(r.content)),!t)throw new Error("Either content or parts is required for message creation");return{messageType:r.messageType,parts:t,metadata:r.metadata,raw:r.raw}}function Am(r){return{type:"text",text:r}}const gr=10,Co=(r=0)=>t=>`\x1B[${t+r}m`,Lo=(r=0)=>t=>`\x1B[${38+r};5;${t}m`,Fo=(r=0)=>(t,n,o)=>`\x1B[${38+r};2;${t};${n};${o}m`,B={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(B.modifier);const Um=Object.keys(B.color),Pm=Object.keys(B.bgColor);[...Um,...Pm];function Dm(){const r=new Map;for(const[t,n]of Object.entries(B)){for(const[o,e]of Object.entries(n))B[o]={open:`\x1B[${e[0]}m`,close:`\x1B[${e[1]}m`},n[o]=B[o],r.set(e[0],e[1]);Object.defineProperty(B,t,{value:n,enumerable:!1})}return Object.defineProperty(B,"codes",{value:r,enumerable:!1}),B.color.close="\x1B[39m",B.bgColor.close="\x1B[49m",B.color.ansi=Co(),B.color.ansi256=Lo(),B.color.ansi16m=Fo(),B.bgColor.ansi=Co(gr),B.bgColor.ansi256=Lo(gr),B.bgColor.ansi16m=Fo(gr),Object.defineProperties(B,{rgbToAnsi256:{value(t,n,o){return t===n&&n===o?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(o/255*5)},enumerable:!1},hexToRgb:{value(t){const n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!n)return[0,0,0];let[o]=n;o.length===3&&(o=[...o].map(i=>i+i).join(""));const e=Number.parseInt(o,16);return[e>>16&255,e>>8&255,e&255]},enumerable:!1},hexToAnsi256:{value:t=>B.rgbToAnsi256(...B.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let n,o,e;if(t>=232)n=((t-232)*10+8)/255,o=n,e=n;else{t-=16;const a=t%36;n=Math.floor(t/36)/5,o=Math.floor(a/6)/5,e=a%6/5}const i=Math.max(n,o,e)*2;if(i===0)return 30;let s=30+(Math.round(e)<<2|Math.round(o)<<1|Math.round(n));return i===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(t,n,o)=>B.ansi256ToAnsi(B.rgbToAnsi256(t,n,o)),enumerable:!1},hexToAnsi:{value:t=>B.ansi256ToAnsi(B.hexToAnsi256(t)),enumerable:!1}}),B}const ke=Dm(),Zo=(()=>{if(!("navigator"in globalThis))return 0;if(globalThis.navigator.userAgentData){const r=navigator.userAgentData.brands.find(({brand:t})=>t==="Chromium");if(r&&r.version>93)return 3}return/\b(Chrome|Chromium)\//.test(globalThis.navigator.userAgent)?1:0})(),Mo=Zo!==0&&{level:Zo},Rm={stdout:Mo,stderr:Mo};function Cm(r,t,n){let o=r.indexOf(t);if(o===-1)return r;const e=t.length;let i=0,s="";do s+=r.slice(i,o)+t+n,i=o+e,o=r.indexOf(t,i);while(o!==-1);return s+=r.slice(i),s}function Lm(r,t,n,o){let e=0,i="";do{const s=r[o-1]==="\r";i+=r.slice(e,s?o-1:o)+t+(s?`\r
|
|
431
|
-
`:`
|
|
432
|
-
`)+n,e=o+1,o=r.indexOf(`
|
|
433
|
-
`,e)}while(o!==-1);return i+=r.slice(e),i}const{stdout:qo,stderr:Bo}=Rm,wr=Symbol("GENERATOR"),Qe=Symbol("STYLER"),ht=Symbol("IS_EMPTY"),Jo=["ansi","ansi","ansi256","ansi16m"],et=Object.create(null),Fm=(r,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");const n=qo?qo.level:0;r.level=t.level===void 0?n:t.level},Zm=r=>{const t=(...n)=>n.join(" ");return Fm(t,r),Object.setPrototypeOf(t,Ot.prototype),t};function Ot(r){return Zm(r)}Object.setPrototypeOf(Ot.prototype,Function.prototype);for(const[r,t]of Object.entries(ke))et[r]={get(){const n=Ht(this,Sr(t.open,t.close,this[Qe]),this[ht]);return Object.defineProperty(this,r,{value:n}),n}};et.visible={get(){const r=Ht(this,this[Qe],!0);return Object.defineProperty(this,"visible",{value:r}),r}};const Ir=(r,t,n,...o)=>r==="rgb"?t==="ansi16m"?ke[n].ansi16m(...o):t==="ansi256"?ke[n].ansi256(ke.rgbToAnsi256(...o)):ke[n].ansi(ke.rgbToAnsi(...o)):r==="hex"?Ir("rgb",t,n,...ke.hexToRgb(...o)):ke[n][r](...o),Mm=["rgb","hex","ansi256"];for(const r of Mm){et[r]={get(){const{level:n}=this;return function(...o){const e=Sr(Ir(r,Jo[n],"color",...o),ke.color.close,this[Qe]);return Ht(this,e,this[ht])}}};const t="bg"+r[0].toUpperCase()+r.slice(1);et[t]={get(){const{level:n}=this;return function(...o){const e=Sr(Ir(r,Jo[n],"bgColor",...o),ke.bgColor.close,this[Qe]);return Ht(this,e,this[ht])}}}}const qm=Object.defineProperties(()=>{},{...et,level:{enumerable:!0,get(){return this[wr].level},set(r){this[wr].level=r}}}),Sr=(r,t,n)=>{let o,e;return n===void 0?(o=r,e=t):(o=n.openAll+r,e=t+n.closeAll),{open:r,close:t,openAll:o,closeAll:e,parent:n}},Ht=(r,t,n)=>{const o=(...e)=>Bm(o,e.length===1?""+e[0]:e.join(" "));return Object.setPrototypeOf(o,qm),o[wr]=r,o[Qe]=t,o[ht]=n,o},Bm=(r,t)=>{if(r.level<=0||!t)return r[ht]?"":t;let n=r[Qe];if(n===void 0)return t;const{openAll:o,closeAll:e}=n;if(t.includes("\x1B"))for(;n!==void 0;)t=Cm(t,n.close,n.open),n=n.parent;const i=t.indexOf(`
|
|
434
|
-
`);return i!==-1&&(t=Lm(t,e,o,i)),o+t+e};Object.defineProperties(Ot.prototype,et);const X=Ot();Ot({level:Bo?Bo.level:0});function Jm(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var ut={exports:{}},hr,Go;function Gm(){if(Go)return hr;Go=1;function r(n){try{return JSON.stringify(n)}catch{return'"[Circular]"'}}hr=t;function t(n,o,e){var i=e&&e.stringify||r,s=1;if(typeof n=="object"&&n!==null){var a=o.length+s;if(a===1)return n;var u=new Array(a);u[0]=i(n);for(var c=1;c<a;c++)u[c]=i(o[c]);return u.join(" ")}if(typeof n!="string")return n;var l=o.length;if(l===0)return n;for(var d="",h=1-s,m=-1,p=n&&n.length||0,g=0;g<p;){if(n.charCodeAt(g)===37&&g+1<p){switch(m=m>-1?m:0,n.charCodeAt(g+1)){case 100:case 102:if(h>=l||o[h]==null)break;m<g&&(d+=n.slice(m,g)),d+=Number(o[h]),m=g+2,g++;break;case 105:if(h>=l||o[h]==null)break;m<g&&(d+=n.slice(m,g)),d+=Math.floor(Number(o[h])),m=g+2,g++;break;case 79:case 111:case 106:if(h>=l||o[h]===void 0)break;m<g&&(d+=n.slice(m,g));var v=typeof o[h];if(v==="string"){d+="'"+o[h]+"'",m=g+2,g++;break}if(v==="function"){d+=o[h].name||"<anonymous>",m=g+2,g++;break}d+=i(o[h]),m=g+2,g++;break;case 115:if(h>=l)break;m<g&&(d+=n.slice(m,g)),d+=String(o[h]),m=g+2,g++;break;case 37:m<g&&(d+=n.slice(m,g)),d+="%",m=g+2,g++,h--;break}++h}++g}return m===-1?n:(m<p&&(d+=n.slice(m)),d)}return hr}var Vo;function Vm(){if(Vo)return ut.exports;Vo=1;const r=Gm();ut.exports=l;const t=se().console||{},n={mapHttpRequest:E,mapHttpResponse:E,wrapRequestSerializer:V,wrapResponseSerializer:V,wrapErrorSerializer:V,req:E,res:E,err:A,errWithCause:A};function o(f,x){return f==="silent"?1/0:x.levels.values[f]}const e=Symbol("pino.logFuncs"),i=Symbol("pino.hierarchy"),s={error:"log",fatal:"error",warn:"error",info:"log",debug:"log",trace:"log"};function a(f,x){const w={logger:x,parent:f[i]};x[i]=w}function u(f,x,w){const U={};x.forEach(j=>{U[j]=w[j]?w[j]:t[j]||t[s[j]||"log"]||ne}),f[e]=U}function c(f,x){return Array.isArray(f)?f.filter(function(U){return U!=="!stdSerializers.err"}):f===!0?Object.keys(x):!1}function l(f){f=f||{},f.browser=f.browser||{};const x=f.browser.transmit;if(x&&typeof x.send!="function")throw Error("pino: transmit option must have a send function");const w=f.browser.write||t;f.browser.write&&(f.browser.asObject=!0);const U=f.serializers||{},j=c(f.browser.serialize,U);let Y=f.browser.serialize;Array.isArray(f.browser.serialize)&&f.browser.serialize.indexOf("!stdSerializers.err")>-1&&(Y=!1);const W=Object.keys(f.customLevels||{}),C=["error","fatal","warn","info","debug","trace"].concat(W);typeof w=="function"&&C.forEach(function(pe){w[pe]=w}),(f.enabled===!1||f.browser.disabled)&&(f.level="silent");const K=f.level||"info",I=Object.create(w);I.log||(I.log=ne),u(I,C,w),a({},I),Object.defineProperty(I,"levelVal",{get:Ie}),Object.defineProperty(I,"level",{get:dr,set:Tt});const J={transmit:x,serialize:j,asObject:f.browser.asObject,asObjectBindingsOnly:f.browser.asObjectBindingsOnly,formatters:f.browser.formatters,levels:C,timestamp:M(f),messageKey:f.messageKey||"msg",onChild:f.onChild||ne};I.levels=d(f),I.level=K,I.isLevelEnabled=function(pe){return this.levels.values[pe]?this.levels.values[pe]>=this.levels.values[this.level]:!1},I.setMaxListeners=I.getMaxListeners=I.emit=I.addListener=I.on=I.prependListener=I.once=I.prependOnceListener=I.removeListener=I.removeAllListeners=I.listeners=I.listenerCount=I.eventNames=I.write=I.flush=ne,I.serializers=U,I._serialize=j,I._stdErrSerialize=Y,I.child=function(...pe){return go.call(this,J,...pe)},x&&(I._logEvent=S());function Ie(){return o(this.level,this)}function dr(){return this._level}function Tt(pe){if(pe!=="silent"&&!this.levels.values[pe])throw Error("unknown level "+pe);this._level=pe,p(this,J,I,"error"),p(this,J,I,"fatal"),p(this,J,I,"warn"),p(this,J,I,"info"),p(this,J,I,"debug"),p(this,J,I,"trace"),W.forEach(Se=>{p(this,J,I,Se)})}function go(pe,Se,it){if(!Se)throw new Error("missing bindings for child Pino");it=it||{},j&&Se.serializers&&(it.serializers=Se.serializers);const ho=it.serializers;if(j&&ho){var Et=Object.assign({},U,ho),fo=f.browser.serialize===!0?Object.keys(Et):j;delete Se.serializers,b([Se],fo,Et,this._stdErrSerialize)}function vo(Nt){this._childLevel=(Nt._childLevel|0)+1,this.bindings=Se,Et&&(this.serializers=Et,this._serialize=fo),x&&(this._logEvent=S([].concat(Nt._logEvent.bindings,Se)))}vo.prototype=this;const st=new vo(this);return a(this,st),st.child=function(...Nt){return go.call(this,pe,...Nt)},st.level=it.level||this.level,pe.onChild(st),st}return I}function d(f){const x=f.customLevels||{},w=Object.assign({},l.levels.values,x),U=Object.assign({},l.levels.labels,h(x));return{values:w,labels:U}}function h(f){const x={};return Object.keys(f).forEach(function(w){x[f[w]]=w}),x}l.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},l.stdSerializers=n,l.stdTimeFunctions=Object.assign({},{nullTime:F,epochTime:ee,unixTime:H,isoTime:ae});function m(f){const x=[];f.bindings&&x.push(f.bindings);let w=f[i];for(;w.parent;)w=w.parent,w.logger.bindings&&x.push(w.logger.bindings);return x.reverse()}function p(f,x,w,U){if(Object.defineProperty(f,U,{value:o(f.level,w)>o(U,w)?ne:w[e][U],writable:!0,enumerable:!0,configurable:!0}),f[U]===ne){if(!x.transmit)return;const Y=x.transmit.level||f.level,W=o(Y,w);if(o(U,w)<W)return}f[U]=v(f,x,w,U);const j=m(f);j.length!==0&&(f[U]=g(j,f[U]))}function g(f,x){return function(){return x.apply(this,[...f,...arguments])}}function v(f,x,w,U){return function(j){return function(){const W=x.timestamp(),C=new Array(arguments.length),K=Object.getPrototypeOf&&Object.getPrototypeOf(this)===t?t:this;for(var I=0;I<C.length;I++)C[I]=arguments[I];var J=!1;if(x.serialize&&(b(C,this._serialize,this.serializers,this._stdErrSerialize),J=!0),x.asObject||x.formatters?j.call(K,...$(this,U,C,W,x)):j.apply(K,C),x.transmit){const Ie=x.transmit.level||f._level,dr=o(Ie,w),Tt=o(U,w);if(Tt<dr)return;z(this,{ts:W,methodLevel:U,methodValue:Tt,transmitValue:w.levels.values[x.transmit.level||f._level],send:x.transmit.send,val:o(f._level,w)},C,J)}}}(f[e][U])}function $(f,x,w,U,j){const{level:Y,log:W=Ie=>Ie}=j.formatters||{},C=w.slice();let K=C[0];const I={};let J=(f._childLevel|0)+1;if(J<1&&(J=1),U&&(I.time=U),Y){const Ie=Y(x,f.levels.values[x]);Object.assign(I,Ie)}else I.level=f.levels.values[x];if(j.asObjectBindingsOnly){if(K!==null&&typeof K=="object")for(;J--&&typeof C[0]=="object";)Object.assign(I,C.shift());return[W(I),...C]}else{if(K!==null&&typeof K=="object"){for(;J--&&typeof C[0]=="object";)Object.assign(I,C.shift());K=C.length?r(C.shift(),C):void 0}else typeof K=="string"&&(K=r(C.shift(),C));return K!==void 0&&(I[j.messageKey]=K),[W(I)]}}function b(f,x,w,U){for(const j in f)if(U&&f[j]instanceof Error)f[j]=l.stdSerializers.err(f[j]);else if(typeof f[j]=="object"&&!Array.isArray(f[j])&&x)for(const Y in f[j])x.indexOf(Y)>-1&&Y in w&&(f[j][Y]=w[Y](f[j][Y]))}function z(f,x,w,U=!1){const j=x.send,Y=x.ts,W=x.methodLevel,C=x.methodValue,K=x.val,I=f._logEvent.bindings;U||b(w,f._serialize||Object.keys(f.serializers),f.serializers,f._stdErrSerialize===void 0?!0:f._stdErrSerialize),f._logEvent.ts=Y,f._logEvent.messages=w.filter(function(J){return I.indexOf(J)===-1}),f._logEvent.level.label=W,f._logEvent.level.value=C,j(W,f._logEvent,K),f._logEvent=S(I)}function S(f){return{ts:0,messages:[],bindings:f||[],level:{label:"",value:0}}}function A(f){const x={type:f.constructor.name,msg:f.message,stack:f.stack};for(const w in f)x[w]===void 0&&(x[w]=f[w]);return x}function M(f){return typeof f.timestamp=="function"?f.timestamp:f.timestamp===!1?F:ee}function E(){return{}}function V(f){return f}function ne(){}function F(){return!1}function ee(){return Date.now()}function H(){return Math.round(Date.now()/1e3)}function ae(){return new Date(Date.now()).toISOString()}function se(){function f(x){return typeof x<"u"&&x}try{return typeof globalThis<"u"||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return f(self)||f(window)||f(this)||{}}}return ut.exports.default=l,ut.exports.pino=l,ut.exports}var Hm=Vm();const Rt=Jm(Hm);class oe{pino;useTerminalFormat;static instance;constructor(t={}){this.useTerminalFormat=t.useTerminalFormat??!0;const n=t.debug?"debug":t.verbose?"trace":"info";t.silent?this.pino=Rt({level:"silent"}):t.logFile||t.logDir?this.pino=this.createMultiTransportLogger(n,t):this.useTerminalFormat&&process.stdout.isTTY?this.pino=Rt({level:n,transport:{target:"pino-pretty",options:{colorize:!0,ignore:"pid,hostname",translateTime:"HH:MM:ss",messageFormat:"{msg}"}}}):this.pino=Rt({level:n})}createMultiTransportLogger(t,n){let o;if(n.logFile)o=n.logFile;else if(n.logDir){be.existsSync(n.logDir)||be.mkdirSync(n.logDir,{recursive:!0});const i=new Date().toISOString().split("T")[0];o=ye.join(n.logDir,`app-${i}.log`)}else{const i=ye.join(Wt.tmpdir(),"agiflow-agents","logs",`session-${process.pid}`);be.existsSync(i)||be.mkdirSync(i,{recursive:!0});const s=new Date().toISOString().split("T")[0];o=ye.join(i,`app-${s}.log`)}const e=[];return this.useTerminalFormat&&process.stdout.isTTY?e.push({level:t,target:"pino-pretty",options:{destination:1,colorize:!0,ignore:"pid,hostname",translateTime:"HH:MM:ss",messageFormat:"{msg}"}}):e.push({level:t,target:"pino/file",options:{destination:1}}),n.maxFileSize||n.maxFiles?e.push({level:t,target:"pino-roll",options:{file:o,frequency:"daily",size:n.maxFileSize||"10m",limit:{count:n.maxFiles||7},symlink:!0,mkdir:!0}}):e.push({level:t,target:"pino/file",options:{destination:o,mkdir:!0}}),Rt({level:t,transport:{targets:e}})}static getInstance(){return oe.instance||(oe.instance=new oe),oe.instance}static configure(t){oe.instance=new oe(t)}getLogFilePath(){const t=this.pino.transports;if(t&&Array.isArray(t)){const n=t.find(o=>o.target==="pino/file"||o.target==="pino-roll");if(n&&n.options)return n.options.destination||n.options.file}}info(t,...n){this.useTerminalFormat&&process.stdout.isTTY?console.log(X.blue("ℹ"),t,...n):this.pino.info(t,...n)}static info(t,...n){oe.getInstance().info(t,...n)}success(t,...n){this.useTerminalFormat&&process.stdout.isTTY?console.log(X.green("✓"),t,...n):this.pino.info({type:"success"},t,...n)}static success(t,...n){oe.getInstance().success(t,...n)}warn(t,...n){this.useTerminalFormat&&process.stdout.isTTY?console.warn(X.yellow("⚠"),t,...n):this.pino.warn(t,...n)}static warn(t,...n){oe.getInstance().warn(t,...n)}error(t,n,o){let e,i;n instanceof Error?(e=n,i=o):i=n,this.useTerminalFormat&&process.stdout.isTTY?console.error(X.red("✗"),t,e||""):e?this.pino.error(e,t):this.pino.error(t),i?.exit!==void 0&&process.exit(i.exit)}static error(t,n){oe.getInstance().error(t,void 0,n)}debug(t,...n){this.useTerminalFormat&&process.stdout.isTTY?(re.isDebugMode||this.pino.level==="debug"||this.pino.level==="trace")&&console.log(X.gray("🔍"),X.gray(t),...n):this.pino.debug(t,...n)}static debug(t,...n){oe.getInstance().debug(t,...n)}trace(t,...n){this.useTerminalFormat&&process.stdout.isTTY?this.pino.level==="trace"&&console.log(X.gray("..."),X.gray(t),...n):this.pino.trace(t,...n)}title(t){this.useTerminalFormat&&process.stdout.isTTY?(console.log(),console.log(X.bold.cyan(t)),console.log(X.cyan("=".repeat(t.length)))):this.pino.info({type:"title"},t)}static title(t){oe.getInstance().title(t)}code(t){this.useTerminalFormat&&process.stdout.isTTY?(console.log(),console.log(X.gray(" "+t)),console.log()):this.pino.info({type:"code",code:t},"Code example")}static code(t){oe.getInstance().code(t)}newLine(){this.useTerminalFormat&&process.stdout.isTTY&&console.log()}static newLine(){oe.getInstance().newLine()}terminal(t,n,...o){if(!process.stdout.isTTY){this.pino[t==="success"||t==="title"||t==="code"?"info":t](n,...o);return}switch(t){case"info":console.log(X.blue("ℹ"),n,...o);break;case"success":console.log(X.green("✓"),n,...o);break;case"warn":console.warn(X.yellow("⚠"),n,...o);break;case"error":console.error(X.red("✗"),n,...o);break;case"debug":console.log(X.gray("🔍"),X.gray(n),...o);break;case"title":console.log(),console.log(X.bold.cyan(n)),console.log(X.cyan("=".repeat(n.length)));break;case"code":console.log(),console.log(X.gray(" "+n)),console.log();break}}getPino(){return this.pino}child(t){const n=new oe({useTerminalFormat:this.useTerminalFormat});return n.pino=this.pino.child(t),n}}class Wm{filePath;cache=null;dirty=!1;constructor(t){this.filePath=t||Ue.join(Q.AGIFLOW_DIR,"credentials.json")}async load(){if(this.cache)return this.cache;try{if(!await Q.exists(this.filePath))return null;const n=await Q.readJson(this.filePath);return this.cache=n,n}catch{return null}}async flush(){!this.dirty||!this.cache||(await Q.ensureDir(Q.AGIFLOW_DIR),await Q.writeJson(this.filePath,this.cache),this.dirty=!1)}async setApiKey(t){this.cache={apiKey:t.apiKey,organizationId:t.organizationId,deviceId:t.deviceId||this.cache?.deviceId,expiresAt:t.expiresAt},this.dirty=!0,await this.flush()}async setDeviceId(t){const n=await this.load()||{apiKey:"",organizationId:""};n.deviceId=t,this.cache=n,this.dirty=!0,await this.flush()}async getApiKey(){return(await this.load())?.apiKey||null}async getAgentCreds(){const t=await this.load();if(!t)throw new Error("Cred not set");return{apiKey:t.apiKey,organizationId:t.organizationId,deviceId:t.deviceId}}async getOrganizationId(){return(await this.load())?.organizationId||null}async getDeviceId(){return(await this.load())?.deviceId||null}async isExpired(t=300*1e3){const n=await this.load();return n?.expiresAt?Date.now()>=n.expiresAt-t:!1}async clear(){this.cache=null,this.dirty=!1;try{await Q.exists(this.filePath)&&await Q.remove(this.filePath)}catch{}}async buildAuthHeaders(){const t=await this.load();return t?.apiKey?{"x-api-key":t.apiKey}:{}}async buildDeviceAuthHeaders(t){const n=await this.load();if(!n?.apiKey)return{};const o={"x-api-key":n.apiKey};return t&&(o["x-device-guid"]=t),n.deviceId&&(o["x-device-id"]=n.deviceId),n.organizationId&&(o["x-organization-id"]=n.organizationId),o}async buildAgentAuthHeaders(t){let n=t;if(n||(n=await this.getApiKey()||void 0),n||(n=re.apiKey),!n)return{};const o={"x-api-key":n,"Content-Type":"application/json"},e=await this.getOrganizationId();e&&(o["x-organization-id"]=e);const i=await this.getDeviceId();return i&&(o["x-device-id"]=i),o}}R({limit:xe().min(1).max(100).optional(),offset:xe().min(0).optional(),messageType:mo.optional(),sort:D().optional(),order:ot(["asc","desc"]).optional()});class Km{options;authService;credentials;logger;constructor(t){this.options=t,this.authService=t.authService,this.credentials=t.credentials??new Wm,this.logger=t.logger??new oe({verbose:!1})}async getAuthHeaders(){let t=await this.credentials.getApiKey(),n=await this.credentials.getOrganizationId();if((!t||!n)&&this.authService){const e=await this.authService.getValidApiKey();t=e.api_key,n=e.organization_id,await this.credentials.setApiKey({apiKey:t,organizationId:n,expiresAt:e.expires_at})}if(!t&&this.options.apiKey&&(t=this.options.apiKey),!n&&this.options.organizationId&&(n=this.options.organizationId),t&&n)return this.options.organizationId=n,{"Content-Type":"application/json","x-api-key":t};const o=this.options.authToken;if(!o)throw new Error("Authentication token is required for agent message operations");if(!this.options.organizationId)throw new Error("Organization ID is required for agent message operations");return{"Content-Type":"application/json",Authorization:`Bearer ${o}`}}async makeAuthenticatedRequest(t,n,o=!0){const e=await fetch(t,n);if(e.status===401&&o&&this.authService){const i=await e.text();if(i.includes("Invalid API key")){this.logger.info("= API key expired or invalid, clearing tokens and retrying authentication..."),await this.authService.clearTokens();try{await this.credentials.clear()}catch{}this.logger.info("= Retrying authentication...");const s=await this.getAuthHeaders(),a={...n,headers:{...n.headers,...s}};return await this.makeAuthenticatedRequest(t,a,!1)}if(i.includes("Invalid or expired session")){const s=re.isContainerMode;if(this.logger.error("🚫 Session validation failed:",new Error(`Session validation failed for ${t}. Docker mode: ${s}, Method: ${n.method||"GET"}, Timestamp: ${new Date().toISOString()}`)),s)return this.logger.warn("🐳 Docker session timing issue detected, waiting and retrying..."),await new Promise(a=>setTimeout(a,2e3)),await this.makeAuthenticatedRequest(t,n,!1)}}return e.status===429&&this.logger.warn("= Rate limit exceeded, keeping credentials but not retrying"),e}async sendMessage(t){const n=await this.getAuthHeaders(),o=this.options.organizationId;if(!o)throw new Error("Organization ID is required for sending agent messages");const e=Ro(t);try{Oc.parse(e)}catch(i){throw new Error(`Invalid message payload: ${i instanceof Error?i.message:i}`)}try{const i=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${o}/agent-sessions/${t.sessionId}/messages`,{method:"POST",headers:n,body:JSON.stringify(e)});if(!i.ok){const a=await i.text();throw new Error(`Failed to send agent message: ${i.status} ${a}`)}return await i.json()}catch(i){throw new Error(`Failed to send agent message: ${i instanceof Error?i.message:i}`)}}async sendMessageBatch(t,n){const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)throw new Error("Organization ID is required for sending agent messages");const i=(n||[]).map(s=>Ro(s));try{const s=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${e}/agent-sessions/${t}/messages/batch`,{method:"POST",headers:o,body:JSON.stringify({messages:i})});if(!s.ok){const u=await s.text();throw new Error(`Failed to send agent message batch: ${s.status} ${u}`)}return await s.json()}catch(s){throw new Error(`Failed to send agent message batch: ${s instanceof Error?s.message:s}`)}}async getMessage(t,n){const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)throw new Error("Organization ID is required for fetching agent message");try{const i=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${e}/agent-sessions/${t}/messages/${n}`,{method:"GET",headers:o});if(!i.ok){const a=await i.text();throw new Error(`Failed to fetch message: ${i.status} ${a}`)}return await i.json()}catch(i){throw new Error(`Failed to fetch message: ${i instanceof Error?i.message:i}`)}}async getSessionMessages(t,n){const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)throw new Error("Organization ID is required for fetching agent messages");const i=new URLSearchParams;n?.limit&&i.append("limit",n.limit.toString()),n?.offset&&i.append("offset",n.offset.toString()),n?.messageType&&i.append("messageType",n.messageType),n?.sort&&i.append("sort",n.sort),n?.order&&i.append("order",n.order);const s=`${this.options.apiUrl}/api/v1/organizations/${e}/agent-sessions/${t}/messages?${i.toString()}`;try{const a=await this.makeAuthenticatedRequest(s,{method:"GET",headers:o});if(!a.ok){const c=await a.text();throw new Error(`Failed to fetch session messages: ${a.status} ${c}`)}return await a.json()}catch(a){throw new Error(`Failed to fetch session messages: ${a instanceof Error?a.message:a}`)}}async uploadMessageContent(t,n,o,e){const i=await this.getAuthHeaders(),s=this.options.organizationId;if(!s)throw new Error("Organization ID is required for uploading message content");const a=typeof o=="string"?Buffer.from(o,"utf-8"):o,u=a.length;try{const c=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${s}/agent-sessions/${t}/messages/presign`,{method:"POST",headers:i,body:JSON.stringify({messageType:n,contentSize:u})});if(!c.ok){const m=await c.text();throw new Error(`Failed to get presigned URL: ${c.status} ${m}`)}const{uploadUrl:l}=await c.json(),d=await fetch(l,{method:"PUT",body:a,headers:{"Content-Type":"application/octet-stream","Content-Length":u.toString()}});if(!d.ok)throw new Error(`Failed to upload content to R2: ${d.status}`);const h={sessionId:t,messageType:n,contentSize:u,metadata:e};return await this.sendMessage(h)}catch(c){throw new Error(`Failed to upload message content: ${c instanceof Error?c.message:c}`)}}async startMessage(t,n){const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)throw new Error("Organization ID is required for starting agent messages");try{Tm.parse(n)}catch(i){throw new Error(`Invalid start message payload: ${i instanceof Error?i.message:i}`)}try{const i=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${e}/agent-sessions/${t}/messages/start`,{method:"POST",headers:o,body:JSON.stringify(n)});if(!i.ok){const a=await i.text();throw new Error(`Failed to start agent message: ${i.status} ${a}`)}return await i.json()}catch(i){throw new Error(`Failed to start agent message: ${i instanceof Error?i.message:i}`)}}async updateMessage(t,n,o){const e=await this.getAuthHeaders(),i=this.options.organizationId;if(!i)throw new Error("Organization ID is required for updating agent messages");try{Em.parse(o)}catch(a){throw this.logger.error("=❌ Update message validation failed",new Error(`Update message validation failed: ${a instanceof Error?a.message:a}`)),new Error(`Invalid update message payload: ${a instanceof Error?a.message:a}`)}const s=JSON.stringify(o);try{const a=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${i}/agent-sessions/${t}/messages/${n}`,{method:"PATCH",headers:e,body:s});if(!a.ok){const c=await a.text();throw new Error(`Failed to update agent message: ${a.status} ${c}`)}return await a.json()}catch(a){throw new Error(`Failed to update agent message: ${a instanceof Error?a.message:a}`)}}async requestApproval(t,n){const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)throw new Error("Organization ID is required for requesting approval");try{Nm.parse(n)}catch(i){throw new Error(`Invalid request approval payload: ${i instanceof Error?i.message:i}`)}try{const i=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${e}/agent-sessions/${t}/messages/request-approval`,{method:"POST",headers:o,body:JSON.stringify(n)});if(!i.ok){const a=await i.text();throw new Error(`Failed to request approval: ${i.status} ${a}`)}return await i.json()}catch(i){throw new Error(`Failed to request approval: ${i instanceof Error?i.message:i}`)}}async deleteSessionMessages(t){const n=await this.getAuthHeaders(),o=this.options.organizationId;if(!o)throw new Error("Organization ID is required for deleting session messages");this.logger.info(`=� Deleting all messages for session ${t}...`);try{const e=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${o}/agent-sessions/${t}/messages`,{method:"DELETE",headers:n},!1);if(!e.ok){const s=await e.text().catch(()=>"Unknown error");return this.logger.warn(`� Failed to delete session messages: ${e.status} ${s}`),0}const{deletedCount:i}=await e.json();return this.logger.success(` Deleted ${i} messages for session ${t}`),i}catch(e){return this.logger.warn("� Failed to delete session messages:",e),0}}async getAgentSession(t){const n=await this.getAuthHeaders(),o=this.options.organizationId;if(!o)throw new Error("Organization ID is required for fetching agent session");try{const e=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${o}/agent-sessions/${t}`,{method:"GET",headers:n});if(!e.ok){const s=await e.text();throw new Error(`Failed to fetch agent session: ${e.status} ${s}`)}return await e.json()}catch(e){throw new Error(`Failed to fetch agent session: ${e instanceof Error?e.message:e}`)}}async createTaskComment(t,n,o,e){try{const i=await this.getAuthHeaders(),s=this.options.organizationId;if(!s)return this.logger.warn("Organization ID is required for creating task comment"),null;const a=n&&n.length>1e4?n.substring(0,1e4):n,u=await this.getAgentSession(t);if(!u)return this.logger.warn("Agent session not found for task comment creation"),null;if(!u.taskId)return this.logger.debug("Agent session has no associated task - skipping comment creation"),null;const c=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${s}/tasks/${u.taskId}/comments`,{method:"POST",headers:i,body:JSON.stringify({content:a,assigneeId:o,info:e})});if(!c.ok){const d=await c.text();return this.logger.warn(`Failed to create task comment: ${c.status} ${d}`),null}const l=await c.json();return this.logger.debug("Task comment created successfully"),l}catch(i){return this.logger.warn(`Failed to create task comment: ${i instanceof Error?i.message:i}`),null}}async updateTaskDevInfo(t,n){try{const o=await this.getAuthHeaders(),e=this.options.organizationId;if(!e)return this.logger.warn("Organization ID is required for updating task devInfo"),null;const i=await this.getAgentSession(t);if(!i)return this.logger.warn("Agent session not found for task devInfo update"),null;if(!i.taskId)return this.logger.debug("Agent session has no associated task - skipping devInfo update"),null;const s=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${e}/tasks/${i.taskId}`,{method:"PATCH",headers:o,body:JSON.stringify({devInfo:n})});if(!s.ok){const u=await s.text();return this.logger.warn(`Failed to update task devInfo: ${s.status} ${u}`),null}const a=await s.json();return this.logger.debug("Task devInfo updated successfully"),a}catch(o){return this.logger.warn(`Failed to update task devInfo: ${o instanceof Error?o.message:o}`),null}}async updateToolApproval(t,n,o,e,i){const s=await this.getAuthHeaders(),a=this.options.organizationId;if(!a)throw new Error("Organization ID is required for updating tool approval");try{const u=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${a}/agent-sessions/${t}/messages/${n}/tool-approval`,{method:"PATCH",headers:s,body:JSON.stringify({toolName:o,approved:e,autoApprove:i||!1})});if(!u.ok){const l=await u.text();throw new Error(`Failed to update tool approval: ${u.status} ${l}`)}return await u.json()}catch(u){throw new Error(`Failed to update tool approval: ${u instanceof Error?u.message:u}`)}}async sendToolApprovalNotification(t,n,o,e){const i=await this.getAuthHeaders(),s=this.options.organizationId;if(!s)throw new Error("Organization ID is required for sending tool approval notification");try{const a=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${s}/agent-sessions/${t}/messages/tool-approval-notification`,{method:"POST",headers:i,body:JSON.stringify({notificationType:n,message:o,metadata:e})});if(!a.ok){const c=await a.text();throw new Error(`Failed to send tool approval notification: ${a.status} ${c}`)}return await a.json()}catch(a){throw new Error(`Failed to send tool approval notification: ${a instanceof Error?a.message:a}`)}}async updateToolResult(t,n,o){const e=await this.getAuthHeaders(),i=this.options.organizationId;if(!i)throw new Error("Organization ID is required for updating tool result");try{const s=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${i}/agent-sessions/${t}/messages/tool-result`,{method:"POST",headers:e,body:JSON.stringify({toolName:n,toolResult:o})});if(!s.ok){const u=await s.text();throw new Error(`Failed to update tool result: ${s.status} ${u}`)}return await s.json()}catch(s){throw new Error(`Failed to update tool result: ${s instanceof Error?s.message:s}`)}}async sendAgentSessionReady(t){const n=await this.getAuthHeaders(),o=this.options.organizationId;if(!o)throw new Error("Organization ID is required for sending agent session ready status");try{const e=await this.makeAuthenticatedRequest(`${this.options.apiUrl}/api/v1/organizations/${o}/agent-sessions/${t}/ready`,{method:"POST",headers:n,body:JSON.stringify({ready:!0,timestamp:new Date().toISOString()})});if(!e.ok){const s=await e.text();throw new Error(`Failed to send agent session ready status: ${e.status} ${s}`)}return await e.json()}catch(e){throw new Error(`Failed to send agent session ready status: ${e instanceof Error?e.message:e}`)}}}class Ym{logger;agentHttpService=null;interceptor;llmProvider;maxBodyBytes;sessionId;router;constructor(){const t=re.netlogMaxBody;this.maxBodyBytes=t||8192,this.sessionId=re.sessionId||"",this.llmProvider=new Ic;const n=re.netlogFile||ye.join(Wt.tmpdir(),"agiflow-agents","network",`network-${process.pid}.log`);if(this.logger=new lt(n),this.sessionId)try{this.logger.info("[NetworkLog] Creating LlmRouter instance for session",{sessionId:this.sessionId}),this.router=new gm({toProvider:"openai",sessionId:this.sessionId,logger:this.logger}),this.logger.info("[NetworkLog] ✓ LLM Router initialized successfully",{sessionId:this.sessionId,routerExists:!!this.router})}catch(a){this.logger.error("[NetworkLog] ✗ Failed to initialize LLM Router",a)}else this.logger.info("[NetworkLog] No session ID, skipping router initialization");let o=re.serverUrl||"";o.startsWith("wss://")?o="https://"+o.slice(6):o.startsWith("ws://")&&(o="http://"+o.slice(5));const e=re.apiKey||"",i=re.organizationId||"";if(re.isNetlogRemoteEnabled&&!!(this.sessionId&&o)&&o)try{this.agentHttpService=new Km({apiUrl:o,organizationId:i,apiKey:e,logger:this.logger})}catch(a){lt.shouldDebug()&&this.logger.error("AgentHttpService initialization failed",a)}this.logger.info("[NetworkLog] Initializing LlmInterceptor",{hasRouter:!!this.router,hasAgentHttpService:!!this.agentHttpService,hasSessionId:!!this.sessionId,enableDebug:re.isDebugMode||re.isNetlogDebug}),this.interceptor=He.getInstance({maxBodyBytes:this.maxBodyBytes,enableDebug:re.isDebugMode||re.isNetlogDebug,llmProvider:this.llmProvider,idGenerator:ze.ulid,agentHttpService:this.agentHttpService||void 0,sessionId:this.sessionId,router:this.router,logger:this.logger,logFilePath:this.logger.getLogPath()}),this.logger.info("[NetworkLog] ✓ LlmInterceptor initialized",{interceptorExists:!!this.interceptor})}start(){this.interceptor.start()}}const Xm=new Ym;Xm.start();
|
|
435
|
-
//# sourceMappingURL=networkLog.js.map
|