@agentronics/sdk 0.5.0 → 0.7.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.
Files changed (54) hide show
  1. package/README.md +96 -76
  2. package/dist/chunk-3WPDIMJP.js +18 -0
  3. package/dist/chunk-3WPDIMJP.js.map +1 -0
  4. package/dist/chunk-6QQS26AP.js +1200 -0
  5. package/dist/chunk-6QQS26AP.js.map +1 -0
  6. package/dist/chunk-BPDWJCPY.js +2 -0
  7. package/dist/chunk-BPDWJCPY.js.map +1 -0
  8. package/dist/index.cjs +8 -7
  9. package/dist/index.cjs.map +1 -1
  10. package/dist/index.d.cts +51 -12
  11. package/dist/index.d.ts +51 -12
  12. package/dist/index.global.js +8 -7
  13. package/dist/index.global.js.map +1 -1
  14. package/dist/index.js +1 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/{init-only-7f8_LQAI.d.ts → init-only-C80qhujz.d.ts} +227 -30
  17. package/dist/{init-only-Cwll8MGz.d.cts → init-only-s9E9bVC0.d.cts} +227 -30
  18. package/dist/init-only.cjs +8 -7
  19. package/dist/init-only.cjs.map +1 -1
  20. package/dist/init-only.d.cts +2 -2
  21. package/dist/init-only.d.ts +2 -2
  22. package/dist/init-only.global.js +8 -7
  23. package/dist/init-only.global.js.map +1 -1
  24. package/dist/init-only.js +1 -1
  25. package/dist/lite.cjs +1 -1
  26. package/dist/lite.cjs.map +1 -1
  27. package/dist/lite.d.cts +2 -2
  28. package/dist/lite.d.ts +2 -2
  29. package/dist/lite.global.js +1 -1
  30. package/dist/lite.global.js.map +1 -1
  31. package/dist/lite.js +1 -1
  32. package/dist/middleware-Dd2T772u.d.cts +429 -0
  33. package/dist/middleware-Dd2T772u.d.ts +429 -0
  34. package/dist/next.cjs +1137 -0
  35. package/dist/next.cjs.map +1 -0
  36. package/dist/next.d.cts +20 -0
  37. package/dist/next.d.ts +20 -0
  38. package/dist/next.js +20 -0
  39. package/dist/next.js.map +1 -0
  40. package/dist/server.cjs +1321 -0
  41. package/dist/server.cjs.map +1 -0
  42. package/dist/server.d.cts +131 -0
  43. package/dist/server.d.ts +131 -0
  44. package/dist/server.js +95 -0
  45. package/dist/server.js.map +1 -0
  46. package/dist/webmcp-BgKzHeQ3.d.cts +97 -0
  47. package/dist/webmcp-BgKzHeQ3.d.ts +97 -0
  48. package/package.json +38 -6
  49. package/dist/chunk-77VJ65X2.js +0 -17
  50. package/dist/chunk-77VJ65X2.js.map +0 -1
  51. package/dist/chunk-LLD3Y2LZ.js +0 -2
  52. package/dist/chunk-LLD3Y2LZ.js.map +0 -1
  53. package/dist/webmcp-C4ikhM4g.d.cts +0 -12
  54. package/dist/webmcp-C4ikhM4g.d.ts +0 -12
@@ -1,17 +1,18 @@
1
- var Agentronics=(function(exports){'use strict';var en=Object.defineProperty;var tn=(t,e)=>{for(var r in e)en(t,r,{get:e[r],enumerable:true});};var l={};tn(l,{BRAND:()=>Cn,DIRTY:()=>se,EMPTY_PATH:()=>sn,INVALID:()=>v,NEVER:()=>fo,OK:()=>P,ParseStatus:()=>M,Schema:()=>k,ZodAny:()=>Q,ZodArray:()=>q,ZodBigInt:()=>ie,ZodBoolean:()=>ce,ZodBranded:()=>Be,ZodCatch:()=>xe,ZodDate:()=>le,ZodDefault:()=>ve,ZodDiscriminatedUnion:()=>He,ZodEffects:()=>B,ZodEnum:()=>ge,ZodError:()=>j,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>qe,ZodIntersection:()=>fe,ZodIssueCode:()=>d,ZodLazy:()=>me,ZodLiteral:()=>ye,ZodMap:()=>Me,ZodNaN:()=>Pe,ZodNativeEnum:()=>he,ZodNever:()=>U,ZodNull:()=>de,ZodNullable:()=>F,ZodNumber:()=>ae,ZodObject:()=>N,ZodOptional:()=>L,ZodParsedType:()=>y,ZodPipeline:()=>Ve,ZodPromise:()=>ee,ZodReadonly:()=>be,ZodRecord:()=>Je,ZodSchema:()=>k,ZodSet:()=>Oe,ZodString:()=>X,ZodSymbol:()=>Ee,ZodTransformer:()=>B,ZodTuple:()=>Z,ZodType:()=>k,ZodUndefined:()=>ue,ZodUnion:()=>pe,ZodUnknown:()=>J,ZodVoid:()=>Re,addIssueToContext:()=>m,any:()=>$n,array:()=>Vn,bigint:()=>On,boolean:()=>mr,coerce:()=>po,custom:()=>dr,date:()=>Pn,datetimeRegex:()=>lr,defaultErrorMap:()=>K,discriminatedUnion:()=>Zn,effect:()=>no,enum:()=>eo,function:()=>Yn,getErrorMap:()=>Ae,getParsedType:()=>z,instanceof:()=>Rn,intersection:()=>Fn,isAborted:()=>Fe,isAsync:()=>Ie,isDirty:()=>Ke,isValid:()=>Y,late:()=>En,lazy:()=>Xn,literal:()=>Qn,makeIssue:()=>We,map:()=>Jn,nan:()=>Mn,nativeEnum:()=>to,never:()=>Wn,null:()=>Nn,nullable:()=>so,number:()=>fr,object:()=>Un,objectUtil:()=>ft,oboolean:()=>uo,onumber:()=>lo,optional:()=>oo,ostring:()=>co,pipeline:()=>io,preprocess:()=>ao,promise:()=>ro,quotelessJson:()=>rn,record:()=>Hn,set:()=>qn,setErrorMap:()=>on,strictObject:()=>Gn,string:()=>pr,symbol:()=>Dn,transformer:()=>no,tuple:()=>Kn,undefined:()=>jn,union:()=>zn,unknown:()=>Ln,util:()=>S,void:()=>Bn});var S;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let a of o)s[a]=a;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(i=>typeof o[o[i]]!="number"),a={};for(let i of s)a[i]=o[i];return t.objectValues(a)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let a in o)Object.prototype.hasOwnProperty.call(o,a)&&s.push(a);return s},t.find=(o,s)=>{for(let a of o)if(s(a))return a},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(a=>typeof a=="string"?`'${a}'`:a).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s;})(S||(S={}));var ft;(function(t){t.mergeShapes=(e,r)=>({...e,...r});})(ft||(ft={}));var y=S.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),z=t=>{switch(typeof t){case "undefined":return y.undefined;case "string":return y.string;case "number":return Number.isNaN(t)?y.nan:y.number;case "boolean":return y.boolean;case "function":return y.function;case "bigint":return y.bigint;case "symbol":return y.symbol;case "object":return Array.isArray(t)?y.array:t===null?y.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?y.promise:typeof Map<"u"&&t instanceof Map?y.map:typeof Set<"u"&&t instanceof Set?y.set:typeof Date<"u"&&t instanceof Date?y.date:y.object;default:return y.unknown}};var d=S.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),rn=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),j=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n];},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n];};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e;}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let a of s.issues)if(a.code==="invalid_union")a.unionErrors.map(o);else if(a.code==="invalid_return_type")o(a.returnTypeError);else if(a.code==="invalid_arguments")o(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else {let i=n,c=0;for(;c<a.path.length;){let u=a.path[c];c===a.path.length-1?(i[u]=i[u]||{_errors:[]},i[u]._errors.push(r(a))):i[u]=i[u]||{_errors:[]},i=i[u],c++;}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,S.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o));}else n.push(e(o));return {formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};j.create=t=>new j(t);var nn=(t,e)=>{let r;switch(t.code){case d.invalid_type:t.received===y.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case d.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,S.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:r=`Unrecognized key(s) in object: ${S.joinValues(t.keys,", ")}`;break;case d.invalid_union:r="Invalid input";break;case d.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${S.joinValues(t.options)}`;break;case d.invalid_enum_value:r=`Invalid enum value. Expected ${S.joinValues(t.options)}, received '${t.received}'`;break;case d.invalid_arguments:r="Invalid function arguments";break;case d.invalid_return_type:r="Invalid function return type";break;case d.invalid_date:r="Invalid date";break;case d.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:S.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case d.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case d.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case d.custom:r="Invalid input";break;case d.invalid_intersection_types:r="Intersection results could not be merged";break;case d.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case d.not_finite:r="Number must be finite";break;default:r=e.defaultError,S.assertNever(t);}return {message:r}},K=nn;var or=K;function on(t){or=t;}function Ae(){return or}var We=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],a={...o,path:s};if(o.message!==void 0)return {...o,path:s,message:o.message};let i="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)i=u(a,{data:e,defaultError:i}).message;return {...o,path:s,message:i}},sn=[];function m(t,e){let r=Ae(),n=We({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===K?void 0:K].filter(o=>!!o)});t.common.issues.push(n);}var M=class t{constructor(){this.value="valid";}dirty(){this.value==="valid"&&(this.value="dirty");}abort(){this.value!=="aborted"&&(this.value="aborted");}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return v;o.status==="dirty"&&e.dirty(),n.push(o.value);}return {status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,a=await o.value;n.push({key:s,value:a});}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:a}=o;if(s.status==="aborted"||a.status==="aborted")return v;s.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof a.value<"u"||o.alwaysSet)&&(n[s.value]=a.value);}return {status:e.value,value:n}}},v=Object.freeze({status:"aborted"}),se=t=>({status:"dirty",value:t}),P=t=>({status:"valid",value:t}),Fe=t=>t.status==="aborted",Ke=t=>t.status==="dirty",Y=t=>t.status==="valid",Ie=t=>typeof Promise<"u"&&t instanceof Promise;var g;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message;})(g||(g={}));var W=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o;}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},sr=(t,e)=>{if(Y(e))return {success:true,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return {success:false,get error(){if(this._error)return this._error;let r=new j(t.common.issues);return this._error=r,this._error}}};function _(t){if(!t)return {};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(a,i)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??i.defaultError}:typeof i.data>"u"?{message:c??n??i.defaultError}:a.code!=="invalid_type"?{message:i.defaultError}:{message:c??r??i.defaultError}},description:o}}var k=class{get description(){return this._def.description}_getType(e){return z(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return {status:new M,ctx:{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Ie(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??false,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},o=this._parseSync({data:e,path:n.path,parent:n});return sr(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Y(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=true),r.common={issues:[],async:true};}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Y(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:true},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Ie(o)?o:Promise.resolve(o));return sr(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let a=e(o),i=()=>s.addIssue({code:d.custom,...n(o)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?true:(i(),false)):a?true:(i(),false)})}refinement(e,r){return this._refinement((n,o)=>e(n)?true:(o.addIssue(typeof r=="function"?r(n,o):r),false))}_refinement(e){return new B({schema:this,typeName:x.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)};}optional(){return L.create(this,this._def)}nullable(){return F.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return q.create(this)}promise(){return ee.create(this,this._def)}or(e){return pe.create([this,e],this._def)}and(e){return fe.create(this,e,this._def)}transform(e){return new B({..._(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ve({..._(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new Be({typeName:x.ZodBranded,type:this,..._(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new xe({..._(this._def),innerType:this,catchValue:r,typeName:x.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Ve.create(this,e)}readonly(){return be.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},an=/^c[^\s-]{8,}$/i,cn=/^[0-9a-z]+$/,ln=/^[0-9A-HJKMNP-TV-Z]{26}$/i,un=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,dn=/^[a-z0-9_-]{21}$/i,pn=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,fn=/^[-+]?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)?)??$/,mn=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,yn="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",mt,gn=/^(?:(?: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])$/,hn=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,vn=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xn=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,bn=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,wn=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,ir="((\\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])))",_n=new RegExp(`^${ir}$`);function cr(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return `([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function kn(t){return new RegExp(`^${cr(t)}$`)}function lr(t){let e=`${ir}T${cr(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Tn(t,e){return !!((e==="v4"||!e)&&gn.test(t)||(e==="v6"||!e)&&vn.test(t))}function Sn(t,e){if(!pn.test(t))return false;try{let[r]=t.split(".");if(!r)return !1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return !(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return false}}function An(t,e){return !!((e==="v4"||!e)&&hn.test(t)||(e==="v6"||!e)&&xn.test(t))}var X=class t extends k{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==y.string){let s=this._getOrReturnCtx(e);return m(s,{code:d.invalid_type,expected:y.string,received:s.parsedType}),v}let n=new M,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),m(o,{code:d.too_small,minimum:s.value,type:"string",inclusive:true,exact:false,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),m(o,{code:d.too_big,maximum:s.value,type:"string",inclusive:true,exact:false,message:s.message}),n.dirty());else if(s.kind==="length"){let a=e.data.length>s.value,i=e.data.length<s.value;(a||i)&&(o=this._getOrReturnCtx(e,o),a?m(o,{code:d.too_big,maximum:s.value,type:"string",inclusive:true,exact:true,message:s.message}):i&&m(o,{code:d.too_small,minimum:s.value,type:"string",inclusive:true,exact:true,message:s.message}),n.dirty());}else if(s.kind==="email")mn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"email",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")mt||(mt=new RegExp(yn,"u")),mt.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"emoji",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")un.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"uuid",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")dn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"nanoid",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")an.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"cuid",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")cn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"cuid2",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")ln.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"ulid",code:d.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data);}catch{o=this._getOrReturnCtx(e,o),m(o,{validation:"url",code:d.invalid_string,message:s.message}),n.dirty();}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"regex",code:d.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?lr(s).test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?_n.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?kn(s).test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{code:d.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?fn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"duration",code:d.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Tn(e.data,s.version)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"ip",code:d.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Sn(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"jwt",code:d.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?An(e.data,s.version)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"cidr",code:d.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?bn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"base64",code:d.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?wn.test(e.data)||(o=this._getOrReturnCtx(e,o),m(o,{validation:"base64url",code:d.invalid_string,message:s.message}),n.dirty()):S.assertNever(s);return {status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:d.invalid_string,...g.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...g.errToObj(e)})}url(e){return this._addCheck({kind:"url",...g.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...g.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...g.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...g.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...g.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...g.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...g.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...g.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...g.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...g.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...g.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...g.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:false,local:false,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??false,local:e?.local??false,...g.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...g.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...g.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...g.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...g.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...g.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...g.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...g.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...g.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...g.errToObj(r)})}nonempty(e){return this.min(1,g.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return !!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return !!this._def.checks.find(e=>e.kind==="date")}get isTime(){return !!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return !!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return !!this._def.checks.find(e=>e.kind==="email")}get isURL(){return !!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return !!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return !!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return !!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return !!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return !!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return !!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return !!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return !!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return !!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return !!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};X.create=t=>new X({checks:[],typeName:x.ZodString,coerce:t?.coerce??false,..._(t)});function In(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return s%a/10**o}var ae=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf;}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==y.number){let s=this._getOrReturnCtx(e);return m(s,{code:d.invalid_type,expected:y.number,received:s.parsedType}),v}let n,o=new M;for(let s of this._def.checks)s.kind==="int"?S.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),m(n,{code:d.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:false,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:false,message:s.message}),o.dirty()):s.kind==="multipleOf"?In(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),m(n,{code:d.not_finite,message:s.message}),o.dirty()):S.assertNever(s);return {status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,true,g.toString(r))}gt(e,r){return this.setLimit("min",e,false,g.toString(r))}lte(e,r){return this.setLimit("max",e,true,g.toString(r))}lt(e,r){return this.setLimit("max",e,false,g.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:g.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:g.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:false,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:false,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:true,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:true,message:g.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:g.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:true,value:Number.MIN_SAFE_INTEGER,message:g.toString(e)})._addCheck({kind:"max",inclusive:true,value:Number.MAX_SAFE_INTEGER,message:g.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return !!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&S.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return true;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);}return Number.isFinite(r)&&Number.isFinite(e)}};ae.create=t=>new ae({checks:[],typeName:x.ZodNumber,coerce:t?.coerce||false,..._(t)});var ie=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte;}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data);}catch{return this._getInvalidInput(e)}if(this._getType(e)!==y.bigint)return this._getInvalidInput(e);let n,o=new M;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),m(n,{code:d.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):S.assertNever(s);return {status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return m(r,{code:d.invalid_type,expected:y.bigint,received:r.parsedType}),v}gte(e,r){return this.setLimit("min",e,true,g.toString(r))}gt(e,r){return this.setLimit("min",e,false,g.toString(r))}lte(e,r){return this.setLimit("max",e,true,g.toString(r))}lt(e,r){return this.setLimit("max",e,false,g.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:g.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:false,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:false,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:true,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:true,message:g.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};ie.create=t=>new ie({checks:[],typeName:x.ZodBigInt,coerce:t?.coerce??false,..._(t)});var ce=class extends k{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==y.boolean){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.boolean,received:n.parsedType}),v}return P(e.data)}};ce.create=t=>new ce({typeName:x.ZodBoolean,coerce:t?.coerce||false,..._(t)});var le=class t extends k{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==y.date){let s=this._getOrReturnCtx(e);return m(s,{code:d.invalid_type,expected:y.date,received:s.parsedType}),v}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return m(s,{code:d.invalid_date}),v}let n=new M,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),m(o,{code:d.too_small,message:s.message,inclusive:true,exact:false,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),m(o,{code:d.too_big,message:s.message,inclusive:true,exact:false,maximum:s.value,type:"date"}),n.dirty()):S.assertNever(s);return {status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:g.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:g.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};le.create=t=>new le({checks:[],coerce:t?.coerce||false,typeName:x.ZodDate,..._(t)});var Ee=class extends k{_parse(e){if(this._getType(e)!==y.symbol){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.symbol,received:n.parsedType}),v}return P(e.data)}};Ee.create=t=>new Ee({typeName:x.ZodSymbol,..._(t)});var ue=class extends k{_parse(e){if(this._getType(e)!==y.undefined){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.undefined,received:n.parsedType}),v}return P(e.data)}};ue.create=t=>new ue({typeName:x.ZodUndefined,..._(t)});var de=class extends k{_parse(e){if(this._getType(e)!==y.null){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.null,received:n.parsedType}),v}return P(e.data)}};de.create=t=>new de({typeName:x.ZodNull,..._(t)});var Q=class extends k{constructor(){super(...arguments),this._any=true;}_parse(e){return P(e.data)}};Q.create=t=>new Q({typeName:x.ZodAny,..._(t)});var J=class extends k{constructor(){super(...arguments),this._unknown=true;}_parse(e){return P(e.data)}};J.create=t=>new J({typeName:x.ZodUnknown,..._(t)});var U=class extends k{_parse(e){let r=this._getOrReturnCtx(e);return m(r,{code:d.invalid_type,expected:y.never,received:r.parsedType}),v}};U.create=t=>new U({typeName:x.ZodNever,..._(t)});var Re=class extends k{_parse(e){if(this._getType(e)!==y.undefined){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.void,received:n.parsedType}),v}return P(e.data)}};Re.create=t=>new Re({typeName:x.ZodVoid,..._(t)});var q=class t extends k{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==y.array)return m(r,{code:d.invalid_type,expected:y.array,received:r.parsedType}),v;if(o.exactLength!==null){let a=r.data.length>o.exactLength.value,i=r.data.length<o.exactLength.value;(a||i)&&(m(r,{code:a?d.too_big:d.too_small,minimum:i?o.exactLength.value:void 0,maximum:a?o.exactLength.value:void 0,type:"array",inclusive:true,exact:true,message:o.exactLength.message}),n.dirty());}if(o.minLength!==null&&r.data.length<o.minLength.value&&(m(r,{code:d.too_small,minimum:o.minLength.value,type:"array",inclusive:true,exact:false,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(m(r,{code:d.too_big,maximum:o.maxLength.value,type:"array",inclusive:true,exact:false,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,i)=>o.type._parseAsync(new W(r,a,r.path,i)))).then(a=>M.mergeArray(n,a));let s=[...r.data].map((a,i)=>o.type._parseSync(new W(r,a,r.path,i)));return M.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:g.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:g.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:g.toString(r)}})}nonempty(e){return this.min(1,e)}};q.create=(t,e)=>new q({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,..._(e)});function Ce(t){if(t instanceof N){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=L.create(Ce(n));}return new N({...t._def,shape:()=>e})}else return t instanceof q?new q({...t._def,type:Ce(t.element)}):t instanceof L?L.create(Ce(t.unwrap())):t instanceof F?F.create(Ce(t.unwrap())):t instanceof Z?Z.create(t.items.map(e=>Ce(e))):t}var N=class t extends k{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend;}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=S.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==y.object){let u=this._getOrReturnCtx(e);return m(u,{code:d.invalid_type,expected:y.object,received:u.parsedType}),v}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:a}=this._getCached(),i=[];if(!(this._def.catchall instanceof U&&this._def.unknownKeys==="strip"))for(let u in o.data)a.includes(u)||i.push(u);let c=[];for(let u of a){let p=s[u],h=o.data[u];c.push({key:{status:"valid",value:u},value:p._parse(new W(o,h,o.path,u)),alwaysSet:u in o.data});}if(this._def.catchall instanceof U){let u=this._def.unknownKeys;if(u==="passthrough")for(let p of i)c.push({key:{status:"valid",value:p},value:{status:"valid",value:o.data[p]}});else if(u==="strict")i.length>0&&(m(o,{code:d.unrecognized_keys,keys:i}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else {let u=this._def.catchall;for(let p of i){let h=o.data[p];c.push({key:{status:"valid",value:p},value:u._parse(new W(o,h,o.path,p)),alwaysSet:p in o.data});}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let p of c){let h=await p.key,w=await p.value;u.push({key:h,value:w,alwaysSet:p.alwaysSet});}return u}).then(u=>M.mergeObjectSync(n,u)):M.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return g.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:g.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:x.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of S.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of S.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Ce(this)}partial(e){let r={};for(let n of S.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional();}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of S.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else {let s=this.shape[n];for(;s instanceof L;)s=s._def.innerType;r[n]=s;}return new t({...this._def,shape:()=>r})}keyof(){return ur(S.objectKeys(this.shape))}};N.create=(t,e)=>new N({shape:()=>t,unknownKeys:"strip",catchall:U.create(),typeName:x.ZodObject,..._(e)});N.strictCreate=(t,e)=>new N({shape:()=>t,unknownKeys:"strict",catchall:U.create(),typeName:x.ZodObject,..._(e)});N.lazycreate=(t,e)=>new N({shape:t,unknownKeys:"strip",catchall:U.create(),typeName:x.ZodObject,..._(e)});var pe=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let i of s)if(i.result.status==="valid")return i.result;for(let i of s)if(i.result.status==="dirty")return r.common.issues.push(...i.ctx.common.issues),i.result;let a=s.map(i=>new j(i.ctx.common.issues));return m(r,{code:d.invalid_union,unionErrors:a}),v}if(r.common.async)return Promise.all(n.map(async s=>{let a={...r,common:{...r.common,issues:[]},parent:null};return {result:await s._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(o);{let s,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},p=c._parseSync({data:r.data,path:r.path,parent:u});if(p.status==="valid")return p;p.status==="dirty"&&!s&&(s={result:p,ctx:u}),u.common.issues.length&&a.push(u.common.issues);}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let i=a.map(c=>new j(c));return m(r,{code:d.invalid_union,unionErrors:i}),v}}get options(){return this._def.options}};pe.create=(t,e)=>new pe({options:t,typeName:x.ZodUnion,..._(e)});var H=t=>t instanceof me?H(t.schema):t instanceof B?H(t.innerType()):t instanceof ye?[t.value]:t instanceof ge?t.options:t instanceof he?S.objectValues(t.enum):t instanceof ve?H(t._def.innerType):t instanceof ue?[void 0]:t instanceof de?[null]:t instanceof L?[void 0,...H(t.unwrap())]:t instanceof F?[null,...H(t.unwrap())]:t instanceof Be||t instanceof be?H(t.unwrap()):t instanceof xe?H(t._def.innerType):[],He=class t extends k{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.object)return m(r,{code:d.invalid_type,expected:y.object,received:r.parsedType}),v;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(m(r,{code:d.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),v)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let a=H(s.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of a){if(o.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);o.set(i,s);}}return new t({typeName:x.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,..._(n)})}};function yt(t,e){let r=z(t),n=z(e);if(t===e)return {valid:true,data:t};if(r===y.object&&n===y.object){let o=S.objectKeys(e),s=S.objectKeys(t).filter(i=>o.indexOf(i)!==-1),a={...t,...e};for(let i of s){let c=yt(t[i],e[i]);if(!c.valid)return {valid:false};a[i]=c.data;}return {valid:true,data:a}}else if(r===y.array&&n===y.array){if(t.length!==e.length)return {valid:false};let o=[];for(let s=0;s<t.length;s++){let a=t[s],i=e[s],c=yt(a,i);if(!c.valid)return {valid:false};o.push(c.data);}return {valid:true,data:o}}else return r===y.date&&n===y.date&&+t==+e?{valid:true,data:t}:{valid:false}}var fe=class extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,a)=>{if(Fe(s)||Fe(a))return v;let i=yt(s.value,a.value);return i.valid?((Ke(s)||Ke(a))&&r.dirty(),{status:r.value,value:i.data}):(m(n,{code:d.invalid_intersection_types}),v)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,a])=>o(s,a)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};fe.create=(t,e,r)=>new fe({left:t,right:e,typeName:x.ZodIntersection,..._(r)});var Z=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.array)return m(n,{code:d.invalid_type,expected:y.array,received:n.parsedType}),v;if(n.data.length<this._def.items.length)return m(n,{code:d.too_small,minimum:this._def.items.length,inclusive:true,exact:false,type:"array"}),v;!this._def.rest&&n.data.length>this._def.items.length&&(m(n,{code:d.too_big,maximum:this._def.items.length,inclusive:true,exact:false,type:"array"}),r.dirty());let s=[...n.data].map((a,i)=>{let c=this._def.items[i]||this._def.rest;return c?c._parse(new W(n,a,n.path,i)):null}).filter(a=>!!a);return n.common.async?Promise.all(s).then(a=>M.mergeArray(r,a)):M.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Z.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Z({items:t,typeName:x.ZodTuple,rest:null,..._(e)})};var Je=class t extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.object)return m(n,{code:d.invalid_type,expected:y.object,received:n.parsedType}),v;let o=[],s=this._def.keyType,a=this._def.valueType;for(let i in n.data)o.push({key:s._parse(new W(n,i,n.path,i)),value:a._parse(new W(n,n.data[i],n.path,i)),alwaysSet:i in n.data});return n.common.async?M.mergeObjectAsync(r,o):M.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof k?new t({keyType:e,valueType:r,typeName:x.ZodRecord,..._(n)}):new t({keyType:X.create(),valueType:e,typeName:x.ZodRecord,..._(r)})}},Me=class extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.map)return m(n,{code:d.invalid_type,expected:y.map,received:n.parsedType}),v;let o=this._def.keyType,s=this._def.valueType,a=[...n.data.entries()].map(([i,c],u)=>({key:o._parse(new W(n,i,n.path,[u,"key"])),value:s._parse(new W(n,c,n.path,[u,"value"]))}));if(n.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let c of a){let u=await c.key,p=await c.value;if(u.status==="aborted"||p.status==="aborted")return v;(u.status==="dirty"||p.status==="dirty")&&r.dirty(),i.set(u.value,p.value);}return {status:r.value,value:i}})}else {let i=new Map;for(let c of a){let u=c.key,p=c.value;if(u.status==="aborted"||p.status==="aborted")return v;(u.status==="dirty"||p.status==="dirty")&&r.dirty(),i.set(u.value,p.value);}return {status:r.value,value:i}}}};Me.create=(t,e,r)=>new Me({valueType:e,keyType:t,typeName:x.ZodMap,..._(r)});var Oe=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==y.set)return m(n,{code:d.invalid_type,expected:y.set,received:n.parsedType}),v;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(m(n,{code:d.too_small,minimum:o.minSize.value,type:"set",inclusive:true,exact:false,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(m(n,{code:d.too_big,maximum:o.maxSize.value,type:"set",inclusive:true,exact:false,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function a(c){let u=new Set;for(let p of c){if(p.status==="aborted")return v;p.status==="dirty"&&r.dirty(),u.add(p.value);}return {status:r.value,value:u}}let i=[...n.data.values()].map((c,u)=>s._parse(new W(n,c,n.path,u)));return n.common.async?Promise.all(i).then(c=>a(c)):a(i)}min(e,r){return new t({...this._def,minSize:{value:e,message:g.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:g.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Oe.create=(t,e)=>new Oe({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,..._(e)});var qe=class t extends k{constructor(){super(...arguments),this.validate=this.implement;}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.function)return m(r,{code:d.invalid_type,expected:y.function,received:r.parsedType}),v;function n(i,c){return We({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ae(),K].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function o(i,c){return We({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ae(),K].filter(u=>!!u),issueData:{code:d.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof ee){let i=this;return P(async function(...c){let u=new j([]),p=await i._def.args.parseAsync(c,s).catch(I=>{throw u.addIssue(n(c,I)),u}),h=await Reflect.apply(a,this,p);return await i._def.returns._def.type.parseAsync(h,s).catch(I=>{throw u.addIssue(o(h,I)),u})})}else {let i=this;return P(function(...c){let u=i._def.args.safeParse(c,s);if(!u.success)throw new j([n(c,u.error)]);let p=Reflect.apply(a,this,u.data),h=i._def.returns.safeParse(p,s);if(!h.success)throw new j([o(p,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Z.create(e).rest(J.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Z.create([]).rest(J.create()),returns:r||J.create(),typeName:x.ZodFunction,..._(n)})}},me=class extends k{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};me.create=(t,e)=>new me({getter:t,typeName:x.ZodLazy,..._(e)});var ye=class extends k{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return m(r,{received:r.data,code:d.invalid_literal,expected:this._def.value}),v}return {status:"valid",value:e.data}}get value(){return this._def.value}};ye.create=(t,e)=>new ye({value:t,typeName:x.ZodLiteral,..._(e)});function ur(t,e){return new ge({values:t,typeName:x.ZodEnum,..._(e)})}var ge=class t extends k{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return m(r,{expected:S.joinValues(n),received:r.parsedType,code:d.invalid_type}),v}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return m(r,{received:r.data,code:d.invalid_enum_value,options:n}),v}return P(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};ge.create=ur;var he=class extends k{_parse(e){let r=S.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==y.string&&n.parsedType!==y.number){let o=S.objectValues(r);return m(n,{expected:S.joinValues(o),received:n.parsedType,code:d.invalid_type}),v}if(this._cache||(this._cache=new Set(S.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=S.objectValues(r);return m(n,{received:n.data,code:d.invalid_enum_value,options:o}),v}return P(e.data)}get enum(){return this._def.values}};he.create=(t,e)=>new he({values:t,typeName:x.ZodNativeEnum,..._(e)});var ee=class extends k{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==y.promise&&r.common.async===false)return m(r,{code:d.invalid_type,expected:y.promise,received:r.parsedType}),v;let n=r.parsedType===y.promise?r.data:Promise.resolve(r.data);return P(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ee.create=(t,e)=>new ee({type:t,typeName:x.ZodPromise,..._(e)});var B=class extends k{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===x.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:a=>{m(n,a),a.fatal?r.abort():r.dirty();},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let a=o.transform(n.data,s);if(n.common.async)return Promise.resolve(a).then(async i=>{if(r.value==="aborted")return v;let c=await this._def.schema._parseAsync({data:i,path:n.path,parent:n});return c.status==="aborted"?v:c.status==="dirty"?se(c.value):r.value==="dirty"?se(c.value):c});{if(r.value==="aborted")return v;let i=this._def.schema._parseSync({data:a,path:n.path,parent:n});return i.status==="aborted"?v:i.status==="dirty"?se(i.value):r.value==="dirty"?se(i.value):i}}if(o.type==="refinement"){let a=i=>{let c=o.refinement(i,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(n.common.async===false){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?v:(i.status==="dirty"&&r.dirty(),a(i.value),{status:r.value,value:i.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>i.status==="aborted"?v:(i.status==="dirty"&&r.dirty(),a(i.value).then(()=>({status:r.value,value:i.value}))))}if(o.type==="transform")if(n.common.async===false){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Y(a))return v;let i=o.transform(a.value,s);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return {status:r.value,value:i}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>Y(a)?Promise.resolve(o.transform(a.value,s)).then(i=>({status:r.value,value:i})):v);S.assertNever(o);}};B.create=(t,e,r)=>new B({schema:t,typeName:x.ZodEffects,effect:e,..._(r)});B.createWithPreprocess=(t,e,r)=>new B({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,..._(r)});var L=class extends k{_parse(e){return this._getType(e)===y.undefined?P(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};L.create=(t,e)=>new L({innerType:t,typeName:x.ZodOptional,..._(e)});var F=class extends k{_parse(e){return this._getType(e)===y.null?P(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};F.create=(t,e)=>new F({innerType:t,typeName:x.ZodNullable,..._(e)});var ve=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===y.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:x.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});var xe=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Ie(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new j(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new j(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};xe.create=(t,e)=>new xe({innerType:t,typeName:x.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});var Pe=class extends k{_parse(e){if(this._getType(e)!==y.nan){let n=this._getOrReturnCtx(e);return m(n,{code:d.invalid_type,expected:y.nan,received:n.parsedType}),v}return {status:"valid",value:e.data}}};Pe.create=t=>new Pe({typeName:x.ZodNaN,..._(t)});var Cn=Symbol("zod_brand"),Be=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Ve=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return (async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?v:s.status==="dirty"?(r.dirty(),se(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?v:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:x.ZodPipeline})}},be=class extends k{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Y(o)&&(o.value=Object.freeze(o.value)),o);return Ie(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};be.create=(t,e)=>new be({innerType:t,typeName:x.ZodReadonly,..._(e)});function ar(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function dr(t,e={},r){return t?Q.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(a=>{if(!a){let i=ar(e,n),c=i.fatal??r??true;o.addIssue({code:"custom",...i,fatal:c});}});if(!s){let a=ar(e,n),i=a.fatal??r??true;o.addIssue({code:"custom",...a,fatal:i});}}):Q.create()}var En={object:N.lazycreate},x;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly";})(x||(x={}));var Rn=(t,e={message:`Input not instance of ${t.name}`})=>dr(r=>r instanceof t,e),pr=X.create,fr=ae.create,Mn=Pe.create,On=ie.create,mr=ce.create,Pn=le.create,Dn=Ee.create,jn=ue.create,Nn=de.create,$n=Q.create,Ln=J.create,Wn=U.create,Bn=Re.create,Vn=q.create,Un=N.create,Gn=N.strictCreate,zn=pe.create,Zn=He.create,Fn=fe.create,Kn=Z.create,Hn=Je.create,Jn=Me.create,qn=Oe.create,Yn=qe.create,Xn=me.create,Qn=ye.create,eo=ge.create,to=he.create,ro=ee.create,no=B.create,oo=L.create,so=F.create,ao=B.createWithPreprocess,io=Ve.create,co=()=>pr().optional(),lo=()=>fr().optional(),uo=()=>mr().optional(),po={string:(t=>X.create({...t,coerce:true})),number:(t=>ae.create({...t,coerce:true})),boolean:(t=>ce.create({...t,coerce:true})),bigint:(t=>ie.create({...t,coerce:true})),date:(t=>le.create({...t,coerce:true}))};var fo=v;var De="agtx_pk_",Ye="agtx_sk_";l.string().min(De.length+8).startsWith(De,{message:`Publishable keys must start with "${De}".`});l.string().min(Ye.length+8).startsWith(Ye,{message:`Secret keys must start with "${Ye}".`});var yr=t=>t.startsWith(De)?"publishable":t.startsWith(Ye)?"secret":"unknown",we=l.enum(["webmcp","dom","screenshot","crawler"]),gt=l.enum(["detected","declared","verified","linked"]),mo=l.object({class:we,trust:gt,confidence:l.number().min(0).max(1).default(1),vendor:l.string().nullable(),userAgent:l.string().nullable(),detectionVersion:l.string().default("2026.04"),signals:l.record(l.unknown()).default({})}),yo=l.enum(["bearer","oauth2","sso","spiffe","google-agent","mtls","detection","declaration","extension","session-link","x-agent-header"]),Ue=l.object({class:we,vendor:l.string().min(1),token:l.string().min(8),expiresAt:l.string().datetime().optional()});l.object({publishableKey:l.string(),claim:Ue,nonce:l.string().min(8),origin:l.string().url()});l.object({trust:gt,vendor:l.string(),validUntil:l.string().datetime(),reason:l.string().optional(),subject:l.string().optional(),protocol:yo.optional(),signals:l.record(l.unknown()).optional()});l.object({issuer:l.string().url(),audiences:l.array(l.string().min(1)).min(1)});l.object({trustDomain:l.string().min(1),bundleEndpoint:l.string().url(),audiences:l.array(l.string().min(1)).min(1),googleTrustDomains:l.array(l.string().min(1)).optional()});l.object({rootCerts:l.array(l.string().min(20)).min(1),spiffeTrustDomain:l.string().min(1).optional(),xfccEntryPolicy:l.enum(["last","first","only"]).default("last")});l.enum(["sso","spiffe","mtls"]);l.object({siteId:l.string().min(1),token:l.string().min(8).optional(),xfcc:l.string().min(1).optional(),headers:l.record(l.string()).optional(),origin:l.string().url().optional()});var G={detected:0,declared:1,verified:2,linked:3},gr=(t,e)=>G[t]>G[e],hr=l.enum(["allow","deny","review"]),Ge=l.object({id:l.string(),tool:l.string(),minTrust:gt,allowedClasses:l.array(we).default([]),decision:hr,rateLimit:l.object({max:l.number().int().positive(),windowSeconds:l.number().int().positive()}).optional()}),go=l.object({decision:hr,ruleId:l.string().nullable(),reason:l.string()}),ho=l.enum(["session","user","org"]),ht=l.object({key:l.string().min(1),value:l.unknown(),scope:ho.default("session"),ttlSeconds:l.number().int().positive().nullable().default(null),updatedAt:l.string().datetime().optional()}),vo=l.object({path:l.string().min(1),name:l.string().optional(),purpose:l.string().optional(),availableActions:l.array(l.string()).optional(),prerequisites:l.array(l.string()).optional(),queryParams:l.record(l.string()).optional(),notes:l.string().optional()}),xo=l.object({pattern:l.string().optional(),flow:l.string().optional()}),bo=l.object({pages:l.array(vo).default([]),navigation:xo.optional()}),wo=l.object({step:l.number().int().positive(),action:l.string().min(1)}),_o=l.object({steps:l.array(wo).default([]),notes:l.string().optional(),policy:l.string().optional()}),ko=l.object({selector:l.string().min(1),behavior:l.string().optional(),location:l.string().optional(),showsCount:l.boolean().optional()}),To=l.object({categories:l.array(l.string()).optional(),productSchema:l.object({fields:l.array(l.string()).optional(),idFormat:l.string().optional()}).optional(),searchBehavior:l.string().optional()}),vt=l.object({path:l.string().min(1),payload:l.record(l.unknown()).default({}),updatedAt:l.string().datetime().optional()}).strict(),$=l.object({version:l.string().default("1"),siteMap:bo.optional(),workflows:l.record(_o).default({}),policies:l.record(l.union([l.string(),l.array(l.string())])).default({}),catalog:To.optional(),uiGuidance:l.record(ko).default({}),pageContexts:l.record(vt).default({}),updatedAt:l.string().datetime().optional()}),vr=$.parse({}),So=l.object({name:l.string().min(1),group:l.string().optional(),page:l.string().optional(),description:l.string().default(""),inputSchema:l.record(l.unknown()).default({}),outputSchema:l.record(l.unknown()).optional(),tokens:l.number().int().nonnegative().default(0)}),Ao=l.object({tools:l.array(So).default([])});Ao.parse({});var Io=l.enum(["agent.detected","agent.missed","auth.identity_presented","auth.identity_cleared","authz.policies_set","authz.evaluated","memory.accessed","memory.updated","tool.registered","tool.executed","tool.surfaced","tool.progressed","sdk.error"]),xt=l.object({id:l.string(),siteId:l.string(),sessionId:l.string(),occurredAt:l.string().datetime(),type:Io,tool:l.string().optional(),agent:mo.nullable().optional(),policy:go.optional(),durationMs:l.number().int().nonnegative().optional(),outcome:l.enum(["success","error","blocked"]),error:l.string().optional(),metadata:l.record(l.unknown()).default({})});l.object({publishableKey:l.string().optional(),events:l.array(xt).min(1).max(100)});var ze=class extends Error{code;constructor(t,e){super(e),this.name="AgentronicsError",this.code=t;}};var A="0.1.2";var Co=()=>{if(typeof navigator>"u")return null;let t=navigator.modelContext;return t&&typeof t=="object"?t:null},je=async(t={})=>{let{pollMs:e=500}=t,r=Date.now();for(;;){let n=Co();if(n)return Eo(n);if(Date.now()-r>=e)return null;await new Promise(o=>setTimeout(o,50));}},Eo=t=>({class:"webmcp",trust:"detected",confidence:1,vendor:t.vendor??t.client??null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{webmcp:true,toolCount:Array.isArray(t.tools)?t.tools.length:0}});var bt=[{name:"GPTBot",category:"ai",pattern:/GPTBot/i},{name:"OAI-SearchBot",category:"ai",pattern:/OAI-SearchBot/i},{name:"ChatGPT-User",category:"ai",pattern:/ChatGPT-User/i},{name:"ClaudeBot",category:"ai",pattern:/ClaudeBot/i},{name:"Claude-Web",category:"ai",pattern:/Claude-Web/i},{name:"anthropic-ai",category:"ai",pattern:/anthropic-ai/i},{name:"PerplexityBot",category:"ai",pattern:/PerplexityBot/i},{name:"Google-Extended",category:"ai",pattern:/Google-Extended/i},{name:"Applebot-Extended",category:"ai",pattern:/Applebot-Extended/i},{name:"Amazonbot",category:"ai",pattern:/Amazonbot/i},{name:"Bytespider",category:"ai",pattern:/Bytespider/i},{name:"CCBot",category:"ai",pattern:/CCBot/i},{name:"Meta-ExternalAgent",category:"ai",pattern:/Meta-ExternalAgent/i},{name:"cohere-ai",category:"ai",pattern:/cohere-ai/i},{name:"Googlebot",category:"search",pattern:/Googlebot/i},{name:"Bingbot",category:"search",pattern:/bingbot/i},{name:"DuckDuckBot",category:"search",pattern:/DuckDuckBot/i},{name:"YandexBot",category:"search",pattern:/YandexBot/i},{name:"Baiduspider",category:"search",pattern:/Baiduspider/i},{name:"Applebot",category:"search",pattern:/Applebot/i}],Ne=(t={})=>{let{signatures:e=bt,disable:r=false,confidence:n=.9}=t;if(r||typeof navigator>"u")return null;let o=navigator.userAgent??"";if(!o)return null;for(let s of e)if(s.pattern.test(o))return {class:"crawler",trust:"detected",confidence:n,vendor:s.name,userAgent:o,detectionVersion:A,signals:{matched:s.name,category:s.category,ua:o}};return null};var Ro=[/HeadlessChrome/i,/Headless/i,/PhantomJS/i,/SlimerJS/i],Mo=()=>({hit:(typeof navigator<"u"&&navigator.webdriver)===true,weight:.6,detail:"navigator.webdriver === true"}),Oo=()=>{if(typeof window>"u")return {hit:false,weight:.5};let t=Object.keys(window).filter(e=>e.startsWith("cdc_"));return {hit:t.length>0,weight:.5,detail:`window.${t[0]??"cdc_*"}`}},Po=()=>{if(typeof navigator>"u"||!navigator.plugins)return {hit:false,weight:.2};let t=/Win|Mac|Linux/.test(navigator.userAgent??""),e=navigator.plugins.length===0;return {hit:t&&e,weight:.2,detail:"desktop UA with no plugins"}},Do=()=>{if(typeof navigator>"u")return {hit:false,weight:.7};let t=navigator.userAgent??"",e=Ro.some(r=>r.test(t));return e?{hit:e,weight:.7,detail:`headless UA: ${t}`}:{hit:e,weight:.7}},jo=()=>{if(typeof navigator>"u")return {hit:false,weight:.15};let t=navigator.languages;return {hit:!t||t.length===0,weight:.15,detail:"navigator.languages empty"}},No=()=>{if(typeof navigator>"u")return {hit:false,weight:.1};let t="chrome"in window,e=navigator.userAgent??"";return {hit:/Chrome\//.test(e)&&!/Edg\//.test(e)&&!t,weight:.2,detail:"Chrome UA without window.chrome"}},$o={webdriver:Mo,chromedriver:Oo,headlessUa:Do,languages:jo,permissions:No,plugins:Po},$e=(t={})=>{let{threshold:e=.4}=t,r={},n=0,o=0;for(let[a,i]of Object.entries($o)){let c=i();n+=c.weight,r[a]={hit:c.hit,weight:c.weight,detail:c.detail},c.hit&&(o+=c.weight);}let s=n===0?0:o/n;return s<e?null:{class:"dom",trust:"detected",confidence:s,vendor:null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:r}};var wt=()=>[{id:"webmcp.model-context",status:"stable",detect:()=>je({pollMs:0})},{id:"crawler.user-agent",status:"beta",detect:()=>Ne()},{id:"dom.automation-heuristics",status:"beta",detect:()=>$e()}],Xe=(t=wt())=>{let e=new Map(t.map(r=>[r.id,r]));return {register(r){e.set(r.id,r);},list(r){let n=[...e.values()];return r?n.filter(o=>o.status===r):n},async detectAll(r=false){for(let n of e.values()){if(n.status==="research"&&!r)continue;let o=await n.detect();if(o)return o}return null}}};var _t=t=>{let e=we.parse(t.class),r=t.verificationToken?"verified":"declared";return {class:e,trust:r,confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{declared:true,hasVerificationToken:!!t.verificationToken}}};var xr=({gatewayUrl:t,fetcher:e=fetch})=>{let r=null,n=[];return {snapshot(){return [...n]},async sync(){let o=await e(`${t.replace(/\/$/,"")}/v1/detector-signatures`,{headers:r?{"if-none-match":r}:{}});if(o.status===304)return this.snapshot();if(!o.ok)throw new Error(`Detector signature sync failed with status ${o.status}.`);return n=(await o.json()).signatures??[],r=o.headers.get("etag"),this.snapshot()}}};var Qe=async(t={})=>{if(t.customDetectors?.length){let e=await Xe(t.customDetectors).detectAll(!!t.experimental);if(e)return e}if(t.webmcp!==false){let e=await je(t.webmcp??{});if(e)return e}if(t.crawler!==false){let e=Ne(t.crawler??{});if(e)return e}if(t.dom!==false){let e=$e(t.dom??{});if(e)return e}return null};var Lo=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),kt=()=>{let t=null;return {present(e){let r=Ue.safeParse(e);if(!r.success)throw new ze("invalid_api_key",`Invalid identity claim: ${r.error.issues[0]?.message??"unknown"}`);let n={claim:r.data,identity:Lo(r.data)};return t=n,n},clear(){t=null;},preferOver(e){return t?e?gr(t.identity.trust,e.trust)?t.identity:e:t.identity:e},snapshot(){return t}}};var Wo=({detected:t,declared:e,verified:r,linked:n})=>n?"linked":r?"verified":e?"declared":"detected",Tt=t=>{let e=null;for(let r of t)(!e||G[r.trust]>G[e.trust])&&(e=r);return e};var br=()=>({name:"bearer",async authenticate(t,e){if(!t.bearerToken)return null;let r=await e.verifyToken?.("bearer",t.bearerToken);return {class:t.classHint??"dom",trust:r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"bearer",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{bearer:true,verifiedRemotely:!!r}}}});var wr=()=>({name:"detection",async authenticate(t){return t.detected??null}});var _r=()=>({name:"extensionToken",async authenticate(t,e){if(!t.extensionToken)return null;let r=await e.verifyToken?.("extensionToken",t.extensionToken);return {class:"dom",trust:r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"browser-extension",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{extensionToken:true,verifiedRemotely:!!r}}}});var kr=()=>({name:"mtls",async authenticate(t,e){if(!t.xfccHeader)return null;let r=await e.verifyToken?.("mtls",t.xfccHeader);return {class:t.classHint??"webmcp",trust:r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"mtls",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{mtls:true,subject:r?.subject??null,verifiedRemotely:!!r,...r?.signals??{}}}}});var Tr=()=>({name:"oauth2",async authenticate(t,e){if(!t.oauth2AccessToken)return null;let r=await e.verifyToken?.("oauth2",t.oauth2AccessToken);return {class:t.classHint??"webmcp",trust:t.oauth2Subject?"linked":r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"oauth2",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{oauth2:true,subject:t.oauth2Subject??null,verifiedRemotely:!!r}}}});var Bo=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),Sr=()=>({name:"selfDeclaration",async authenticate(t){return t.declaration?Bo(Ue.parse(t.declaration)):null}});var Ar=()=>({name:"sessionLink",async authenticate(t,e){if(!t.sessionLinkToken)return null;let r=await e.verifyToken?.("sessionLink",t.sessionLinkToken);return {class:t.classHint??"screenshot",trust:t.linkedUserId?"linked":r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"session-link",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{sessionLink:true,linkedUserId:t.linkedUserId??null,verifiedRemotely:!!r}}}});var Ir=()=>({name:"sso",async authenticate(t,e){if(!t.ssoIdToken)return null;let r=await e.verifyToken?.("sso",t.ssoIdToken);return {class:t.classHint??"dom",trust:r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"sso",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{sso:true,subject:r?.subject??null,verifiedRemotely:!!r,...r?.signals??{}}}}});var Cr=()=>({name:"spiffe",async authenticate(t,e){if(!t.spiffeJwt)return null;let r=await e.verifyToken?.("spiffe",t.spiffeJwt),n=r?.vendor==="google";return {class:t.classHint??"webmcp",trust:r?.trust??"verified",confidence:1,vendor:r?.vendor??t.vendorHint??"spiffe",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{spiffe:true,spiffeId:r?.subject??null,subject:r?.subject??null,verifiedRemotely:!!r,...n?{googleAgent:true}:{},...r?.signals??{}}}}});var Er=()=>({name:"xAgentHeader",async authenticate(t){if(!t.xAgentHeader)return null;let[e="x-agent",r="dom",n]=t.xAgentHeader.split(";"),o=we.safeParse(r);return {class:o.success?o.data:"dom",trust:n?"verified":"declared",confidence:n?1:.8,vendor:e,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:A,signals:{xAgentHeader:true,hasProof:!!n}}}});var Vo=()=>[wr(),Sr(),br(),Er(),_r(),Ar(),Tr(),Ir(),Cr(),kr()],Uo={detection:"detection",selfDeclaration:"declaration",bearer:"bearer",xAgentHeader:"x-agent-header",extensionToken:"extension",sessionLink:"session-link",oauth2:"oauth2",sso:"sso",spiffe:"spiffe",mtls:"mtls"},Go=(t,e)=>t==="spiffe"&&e.signals?.googleAgent===true?"google-agent":Uo[t],St=({methods:t=Vo(),context:e={},onTrace:r}={})=>({async authenticate(n){let o=[],s={};for(let h of t){let w=await h.authenticate(n,e);s[h.name]=!!w,w&&o.push({method:h.name,identity:w});}let a=Tt(o.map(h=>h.identity)),i=a?o.find(h=>h.identity===a):void 0,c=i?Go(i.method,i.identity):void 0,u=typeof a?.signals?.subject=="string"?a.signals.subject:void 0,p={type:a?"auth.identity_presented":"sdk.error",agent:a,outcome:a?"success":"error",metadata:{methods:s,...c?{protocol:c}:{},...u?{subject:u}:{}}};return a||(p.error="No auth method produced an identity."),r?.(p),a},methods(){return t.map(n=>n.name)}});var zo={identity:null,source:"initial",updatedAt:null},At=()=>{let t=zo,e=new Set,r=()=>{e.size!==0&&e.forEach(n=>n(t));};return {snapshot(){return t},set(n,o){t={identity:n,source:o,updatedAt:new Date().toISOString()},r();},subscribe(n){return e.add(n),()=>{e.delete(n);}}}};var Zo=()=>{let t=new Map;return {read:e=>t.get(e)??null,write:(e,r)=>{t.set(e,r);}}},Fo=()=>typeof window>"u"||!window.localStorage?Zo():{read:t=>{try{return window.localStorage.getItem(t)}catch{return null}},write:(t,e)=>{try{window.localStorage.setItem(t,e);}catch{}}},Ko=t=>{if(!t)return null;try{let e=JSON.parse(t);if(typeof e=="object"&&e!==null&&Number.isFinite(e.count)&&Number.isFinite(e.resetAt))return e}catch{return null}return null},It=(t=Fo())=>({consume(e,r,n=Date.now()){let o=`agtx:rate:${e}`,s=Ko(t.read(o)),a=s&&s.resetAt>n?s.resetAt:n+r.windowSeconds*1e3,i=s&&s.resetAt>n?s.count+1:1;return t.write(o,JSON.stringify({count:i,resetAt:a})),{allowed:i<=r.max,remaining:Math.max(0,r.max-i),resetAt:a}}});var Ho=(t,e)=>t==="*"||t===e?true:t.includes("*")?new RegExp("^"+t.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*")+"$").test(e):false,Jo=(t,e)=>{let r=t?G[t.trust]:-1,n=G[e.minTrust];return r>=n},qo=(t,e)=>e.allowedClasses.length===0?true:t?e.allowedClasses.includes(t.class):false,Rr="review",Yo=(t,e)=>{let r=e?.class??"unknown",n=e?.vendor??"unknown",o=e?.trust??"none";return `${t}:${r}:${n}:${o}`},Ct=(t=[],e={})=>{let r=t.map(o=>Ge.parse(o)),n=e.rateLimiter??It();return {set(o){r=o.map(s=>Ge.parse(s));},list(){return [...r]},evaluate({tool:o,identity:s}){for(let a of r)if(Ho(a.tool,o)){if(!Jo(s,a))return {decision:"deny",ruleId:a.id,reason:`Rule "${a.id}" requires trust >= ${a.minTrust}.`};if(!qo(s,a))return {decision:"deny",ruleId:a.id,reason:`Rule "${a.id}" restricts to classes: ${a.allowedClasses.join(", ")}.`};if(a.rateLimit){let i=n.consume(Yo(o,s),a.rateLimit);if(!i.allowed)return {decision:"deny",ruleId:a.id,reason:`Rule "${a.id}" rate limit exceeded. Resets at ${new Date(i.resetAt).toISOString()}.`}}return {decision:a.decision,ruleId:a.id,reason:`Matched rule "${a.id}".`}}return {decision:Rr,ruleId:null,reason:`No rule matched tool "${o}". Falling back to "${Rr}".`}}}};var Et=({gatewayUrl:t,siteId:e,publishableKey:r,fetcher:n=fetch})=>{let o={policies:[],etag:null};return {snapshot(){return {policies:[...o.policies],etag:o.etag}},async sync(){let s=await n(`${t.replace(/\/$/,"")}/v1/sites/${encodeURIComponent(e)}/policies`,{headers:{authorization:`Bearer ${r}`,...o.etag?{"if-none-match":o.etag}:{}}});if(s.status===304)return this.snapshot();if(!s.ok)throw new Error(`Policy sync failed with status ${s.status}.`);let a=await s.json();return o={policies:Ge.array().parse(a.policies??[]),etag:s.headers.get("etag")},this.snapshot()}}};var Rt=({message:t="Agent action blocked by site policy.",durationMs:e=2400,documentRef:r=typeof document>"u"?void 0:document}={})=>{if(!r?.body)return null;let n=r.createElement("div");return n.setAttribute("role","status"),n.setAttribute("data-agentronics-deny-overlay","true"),n.textContent=t,Object.assign(n.style,{position:"fixed",zIndex:"2147483647",left:"50%",bottom:"24px",transform:"translateX(-50%)",maxWidth:"min(520px, calc(100vw - 32px))",padding:"12px 16px",borderRadius:"8px",background:"#07091A",color:"#F4F4F5",border:"1px solid #6366F1",boxShadow:"0 20px 48px -16px rgba(7,9,26,0.55)",font:"13px/1.45 'Space Mono', ui-monospace, SFMono-Regular, Menlo, monospace"}),r.body.appendChild(n),window.setTimeout(()=>n.remove(),e),n};var Mt=({policyEngine:t,getIdentity:e,documentRef:r=typeof document>"u"?void 0:document,selector:n="[data-agentronics-tool]"})=>{if(!r)return {uninstall:()=>{}};let o=s=>{let a=s.target instanceof Element?s.target.closest(n):null;if(!(a instanceof HTMLElement))return;let i=a.dataset.agentronicsTool;i&&Promise.resolve(e()).then(c=>{let u=t.evaluate({tool:i,identity:c});u.decision==="deny"&&(s.preventDefault(),s.stopPropagation(),Rt({message:u.reason,documentRef:r}));});};return r.addEventListener("click",o,true),{uninstall:()=>r.removeEventListener("click",o,true)}};var Ot=()=>{let t=new Map;return {read:e=>t.get(e)??null,write:(e,r)=>{t.set(e,r);},remove:e=>{t.delete(e);},keys:()=>[...t.keys()]}},Mr=(t,e)=>({read:r=>{try{return t.getItem(e+r)}catch{return null}},write:(r,n)=>{try{t.setItem(e+r,n);}catch{}},remove:r=>{try{t.removeItem(e+r);}catch{}},keys:()=>{let r=[];try{for(let n=0;n<t.length;n++){let o=t.key(n);o&&o.startsWith(e)&&r.push(o.slice(e.length));}}catch{}return r}}),Or="agtx:",Pr=()=>{let t=typeof window<"u",e=t&&typeof window.sessionStorage<"u"?Mr(window.sessionStorage,Or+"session:"):Ot(),r=t&&typeof window.localStorage<"u"?Mr(window.localStorage,Or+"user:"):Ot();return {session:e,user:r,org:Ot()}};var Dr=(t,e)=>t.expiresAt!==null&&t.expiresAt<=e,jr=t=>{if(!t)return null;try{let e=JSON.parse(t);return typeof e!="object"||e===null?null:e}catch{return null}},Xo=t=>JSON.stringify(t),Pt=(t={})=>{let e=Pr(),r=c=>{t.onTrace?.(c);};return {get:(c,u={})=>{let p=u.scope??"session",h=e[p],w=jr(h.read(c));if(!w){r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:p,hit:false}});return}if(Dr(w,Date.now())){h.remove(c),r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:p,hit:false,expired:true}});return}return r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:p,hit:true}}),w.value},set:(c,u,p={})=>{let h=p.scope??"session",w=p.ttlSeconds??null,I=Date.now(),E={value:u,expiresAt:w===null?null:I+w*1e3,updatedAt:new Date(I).toISOString()};return e[h].write(c,Xo(E)),r({type:"memory.updated",metadata:{operation:"set",key:c,scope:h,ttlSeconds:w}}),ht.parse({key:c,value:u,scope:h,ttlSeconds:w,updatedAt:E.updatedAt})},remove:(c,u={})=>{let p=u.scope??"session";e[p].remove(c),r({type:"memory.updated",metadata:{operation:"remove",key:c,scope:p}});},list:(c={})=>{let u=c.scope??"session",p=e[u],h=Date.now(),w=[];for(let I of p.keys()){let E=jr(p.read(I));if(E){if(Dr(E,h)){p.remove(I);continue}w.push(ht.parse({key:I,value:E.value,scope:u,ttlSeconds:E.expiresAt===null?null:Math.max(0,Math.round((E.expiresAt-h)/1e3)),updatedAt:E.updatedAt}));}}return r({type:"memory.accessed",metadata:{operation:"list",scope:u,count:w.length}}),w},clear:(c={})=>{let u=c.scope??"session",p=e[u],h=p.keys().length;for(let w of p.keys())p.remove(w);r({type:"memory.updated",metadata:{operation:"clear",scope:u,count:h}});}}};var Dt=t=>$.parse(JSON.parse(JSON.stringify(t))),et=t=>({...t,updatedAt:new Date().toISOString()}),jt=(t={})=>{let e=$.parse({...vr,...t.initial??{}}),r=null,n=new Set,o=b=>{t.onTrace?.(b);},s=()=>{r=null;},a=()=>{if(n.size===0)return;let b=Dt(e);r=b,n.forEach(C=>C(b));},i=b=>{let C=$.parse({...e,...b,workflows:{...e.workflows,...b.workflows??{}},policies:{...e.policies,...b.policies??{}},uiGuidance:{...e.uiGuidance,...b.uiGuidance??{}},pageContexts:{...e.pageContexts,...b.pageContexts??{}}});return e=et(C),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"provide",keys:Object.keys(b)}}),a(),p()},c=(b,C)=>{let R=b.split(".").filter(Boolean);if(R.length===0)throw new Error("siteMemory.update() requires a non-empty dot-path.");let re=JSON.parse(JSON.stringify(e)),ne=re;for(let _e=0;_e<R.length-1;_e++){let V=R[_e],ke=ne[V];(typeof ke!="object"||ke===null||Array.isArray(ke))&&(ne[V]={}),ne=ne[V];}return ne[R[R.length-1]]=C,e=et($.parse(re)),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"update",path:b}}),a(),p()},u=b=>{let C=vt.parse({path:b.path,payload:b.payload,updatedAt:new Date().toISOString()});return e=et({...e,pageContexts:{...e.pageContexts,[b.path]:C}}),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"provideForPage",path:b.path}}),a(),{...C,payload:{...C.payload}}},p=()=>(r||(r=Dt(e)),r);return {provide:i,update:c,provideForPage:u,snapshot:p,get:b=>{if(o({type:"memory.accessed",metadata:{kind:"site",operation:b?"get":"snapshot",path:b??null}}),!b)return Dt(e);let C=b.split(".").filter(Boolean),R=e;for(let re of C){if(typeof R!="object"||R===null)return;R=R[re];}return R},getForPage:b=>{o({type:"memory.accessed",metadata:{kind:"site",operation:"getForPage",path:b}});let C=e.pageContexts[b];return C?{...C,payload:{...C.payload}}:null},replace:b=>(e=et($.parse(b)),s(),a(),p()),subscribe:b=>(n.add(b),()=>{n.delete(b);})}};var Nt=({gatewayUrl:t,siteId:e,publishableKey:r,fetcher:n=fetch})=>{let o={memory:null,etag:null};return {snapshot(){return {memory:o.memory?$.parse(o.memory):null,etag:o.etag}},async sync(){let s=await n(`${t.replace(/\/$/,"")}/v1/sites/${encodeURIComponent(e)}/memory`,{headers:{authorization:`Bearer ${r}`,...o.etag?{"if-none-match":o.etag}:{}}});if(s.status===304)return this.snapshot();if(!s.ok)throw new Error(`Memory sync failed with status ${s.status}.`);let a=await s.json();return o={memory:$.parse(a.memory??{}),etag:s.headers.get("etag")},this.snapshot()}}};var Nr=({toolName:t="getSiteContext",description:e="Returns Agentronics site memory: page map, workflows, policies, UI guidance.",getSnapshot:r,onAccess:n})=>({name:t,description:e,inputSchema:{type:"object",properties:{path:{type:"string",description:'Optional dot-path into the site memory (e.g. "workflows.purchase").'}},required:[]},invoke(o={}){let s=r(),a=o.path??null;if(n?.(a),!a)return {content:s};let i=a.split(".").filter(Boolean),c=s;for(let u of i){if(typeof c!="object"||c===null)return {content:void 0};c=c[u];}return {content:c}}});var te="agent-context-",$t="agentronics-site-context",Qo=t=>{try{return JSON.stringify(t)}catch{return "{}"}},tt=(t,e,r)=>{let n=t.querySelector(`meta[name="${e}"]`);n||(n=t.createElement("meta"),n.setAttribute("name",e),t.head.appendChild(n)),n.setAttribute("content",r);},rt=(t,e)=>{t.querySelectorAll(`meta[name="${e}"]`).forEach(r=>r.remove());},nt=({doc:t=typeof document>"u"?null:document,snapshot:e,schemaType:r="WebSite"})=>{if(!t)return {uninstall:()=>{}};tt(t,`${te}version`,e.version),tt(t,`${te}updated-at`,e.updatedAt??new Date().toISOString()),e.siteMap?.navigation?.flow&&tt(t,`${te}flow`,e.siteMap.navigation.flow),tt(t,`${te}workflows`,Object.keys(e.workflows).join(","));let n=t.getElementById($t);return n||(n=t.createElement("script"),n.type="application/ld+json",n.id=$t,t.head.appendChild(n)),n.textContent=Qo({"@context":"https://schema.org","@type":r,name:"Agentronics Site Memory",agentronics:e}),{uninstall:()=>{rt(t,`${te}version`),rt(t,`${te}updated-at`),rt(t,`${te}flow`),rt(t,`${te}workflows`),t.getElementById($t)?.remove();}}};var $r="agentronics-memory-overlay",es=t=>`
1
+ var Agentronics=(function(exports){'use strict';var Or=Object.defineProperty;var Pr=(t,e)=>{for(var n in e)Or(t,n,{get:e[n],enumerable:true});};var d={};Pr(d,{BRAND:()=>so,DIRTY:()=>fe,EMPTY_PATH:()=>Lr,INVALID:()=>k,NEVER:()=>zo,OK:()=>L,ParseStatus:()=>j,Schema:()=>I,ZodAny:()=>le,ZodArray:()=>se,ZodBigInt:()=>ye,ZodBoolean:()=>he,ZodBranded:()=>He,ZodCatch:()=>Ie,ZodDate:()=>ve,ZodDefault:()=>Ce,ZodDiscriminatedUnion:()=>rt,ZodEffects:()=>Z,ZodEnum:()=>Se,ZodError:()=>V,ZodFirstPartyTypeKind:()=>_,ZodFunction:()=>st,ZodIntersection:()=>ke,ZodIssueCode:()=>m,ZodLazy:()=>_e,ZodLiteral:()=>Te,ZodMap:()=>$e,ZodNaN:()=>Ve,ZodNativeEnum:()=>Ae,ZodNever:()=>J,ZodNull:()=>be,ZodNullable:()=>Q,ZodNumber:()=>ge,ZodObject:()=>B,ZodOptional:()=>F,ZodParsedType:()=>y,ZodPipeline:()=>Je,ZodPromise:()=>de,ZodReadonly:()=>Re,ZodRecord:()=>ot,ZodSchema:()=>I,ZodSet:()=>We,ZodString:()=>ce,ZodSymbol:()=>Ne,ZodTransformer:()=>Z,ZodTuple:()=>X,ZodType:()=>I,ZodUndefined:()=>xe,ZodUnion:()=>we,ZodUnknown:()=>oe,ZodVoid:()=>Le,addIssueToContext:()=>f,any:()=>go,array:()=>xo,bigint:()=>lo,boolean:()=>Un,coerce:()=>Go,custom:()=>Wn,date:()=>uo,datetimeRegex:()=>Ln,defaultErrorMap:()=>ne,discriminatedUnion:()=>_o,effect:()=>jo,enum:()=>Oo,function:()=>Ro,getErrorMap:()=>Pe,getParsedType:()=>Y,instanceof:()=>ao,intersection:()=>To,isAborted:()=>tt,isAsync:()=>De,isDirty:()=>nt,isValid:()=>ae,late:()=>io,lazy:()=>Mo,literal:()=>Eo,makeIssue:()=>Ze,map:()=>Co,nan:()=>co,nativeEnum:()=>Po,never:()=>ho,null:()=>fo,nullable:()=>Lo,number:()=>Bn,object:()=>bo,objectUtil:()=>Tt,oboolean:()=>Uo,onumber:()=>Bo,optional:()=>No,ostring:()=>Vo,pipeline:()=>Wo,preprocess:()=>$o,promise:()=>Do,quotelessJson:()=>Dr,record:()=>Ao,set:()=>Io,setErrorMap:()=>Nr,strictObject:()=>wo,string:()=>Vn,symbol:()=>po,transformer:()=>jo,tuple:()=>So,undefined:()=>mo,union:()=>ko,unknown:()=>yo,util:()=>R,void:()=>vo});var R;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function n(o){throw new Error}t.assertNever=n,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function r(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=r,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s;})(R||(R={}));var Tt;(function(t){t.mergeShapes=(e,n)=>({...e,...n});})(Tt||(Tt={}));var y=R.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Y=t=>{switch(typeof t){case "undefined":return y.undefined;case "string":return y.string;case "number":return Number.isNaN(t)?y.nan:y.number;case "boolean":return y.boolean;case "function":return y.function;case "bigint":return y.bigint;case "symbol":return y.symbol;case "object":return Array.isArray(t)?y.array:t===null?y.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?y.promise:typeof Map<"u"&&t instanceof Map?y.map:typeof Set<"u"&&t instanceof Set?y.set:typeof Date<"u"&&t instanceof Date?y.date:y.object;default:return y.unknown}};var m=R.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Dr=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),V=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r];},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r];};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e;}format(e){let n=e||function(s){return s.message},r={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)r._errors.push(n(i));else {let a=r,l=0;for(;l<i.path.length;){let c=i.path[l];l===i.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(n(i))):a[c]=a[c]||{_errors:[]},a=a[c],l++;}}};return o(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,R.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];n[s]=n[s]||[],n[s].push(e(o));}else r.push(e(o));return {formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};V.create=t=>new V(t);var jr=(t,e)=>{let n;switch(t.code){case m.invalid_type:t.received===y.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case m.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,R.jsonStringifyReplacer)}`;break;case m.unrecognized_keys:n=`Unrecognized key(s) in object: ${R.joinValues(t.keys,", ")}`;break;case m.invalid_union:n="Invalid input";break;case m.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${R.joinValues(t.options)}`;break;case m.invalid_enum_value:n=`Invalid enum value. Expected ${R.joinValues(t.options)}, received '${t.received}'`;break;case m.invalid_arguments:n="Invalid function arguments";break;case m.invalid_return_type:n="Invalid function return type";break;case m.invalid_date:n="Invalid date";break;case m.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:R.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case m.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case m.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case m.custom:n="Invalid input";break;case m.invalid_intersection_types:n="Intersection results could not be merged";break;case m.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case m.not_finite:n="Number must be finite";break;default:n=e.defaultError,R.assertNever(t);}return {message:n}},ne=jr;var On=ne;function Nr(t){On=t;}function Pe(){return On}var Ze=t=>{let{data:e,path:n,errorMaps:r,issueData:o}=t,s=[...n,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return {...o,path:s,message:o.message};let a="",l=r.filter(c=>!!c).slice().reverse();for(let c of l)a=c(i,{data:e,defaultError:a}).message;return {...o,path:s,message:a}},Lr=[];function f(t,e){let n=Pe(),r=Ze({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===ne?void 0:ne].filter(o=>!!o)});t.common.issues.push(r);}var j=class t{constructor(){this.value="valid";}dirty(){this.value==="valid"&&(this.value="dirty");}abort(){this.value!=="aborted"&&(this.value="aborted");}static mergeArray(e,n){let r=[];for(let o of n){if(o.status==="aborted")return k;o.status==="dirty"&&e.dirty(),r.push(o.value);}return {status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let o of n){let s=await o.key,i=await o.value;r.push({key:s,value:i});}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let o of n){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return k;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(r[s.value]=i.value);}return {status:e.value,value:r}}},k=Object.freeze({status:"aborted"}),fe=t=>({status:"dirty",value:t}),L=t=>({status:"valid",value:t}),tt=t=>t.status==="aborted",nt=t=>t.status==="dirty",ae=t=>t.status==="valid",De=t=>typeof Promise<"u"&&t instanceof Promise;var w;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message;})(w||(w={}));var K=class{constructor(e,n,r,o){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=o;}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Pn=(t,e)=>{if(ae(e))return {success:true,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return {success:false,get error(){if(this._error)return this._error;let n=new V(t.common.issues);return this._error=n,this._error}}};function C(t){if(!t)return {};let{errorMap:e,invalid_type_error:n,required_error:r,description:o}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:l}=t;return i.code==="invalid_enum_value"?{message:l??a.defaultError}:typeof a.data>"u"?{message:l??r??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:l??n??a.defaultError}},description:o}}var I=class{get description(){return this._def.description}_getType(e){return Y(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:Y(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return {status:new j,ctx:{common:e.parent.common,data:e.data,parsedType:Y(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(De(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??false,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Y(e)},o=this._parseSync({data:e,path:r.path,parent:r});return Pn(r,o)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Y(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return ae(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=true),n.common={issues:[],async:true};}return this._parseAsync({data:e,path:[],parent:n}).then(r=>ae(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:true},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Y(e)},o=this._parse({data:e,path:r.path,parent:r}),s=await(De(o)?o:Promise.resolve(o));return Pn(r,s)}refine(e,n){let r=o=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(o):n;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:m.custom,...r(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(l=>l?true:(a(),false)):i?true:(a(),false)})}refinement(e,n){return this._refinement((r,o)=>e(r)?true:(o.addIssue(typeof n=="function"?n(r,o):n),false))}_refinement(e){return new Z({schema:this,typeName:_.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)};}optional(){return F.create(this,this._def)}nullable(){return Q.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return se.create(this)}promise(){return de.create(this,this._def)}or(e){return we.create([this,e],this._def)}and(e){return ke.create(this,e,this._def)}transform(e){return new Z({...C(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new Ce({...C(this._def),innerType:this,defaultValue:n,typeName:_.ZodDefault})}brand(){return new He({typeName:_.ZodBranded,type:this,...C(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new Ie({...C(this._def),innerType:this,catchValue:n,typeName:_.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Je.create(this,e)}readonly(){return Re.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},$r=/^c[^\s-]{8,}$/i,Wr=/^[0-9a-z]+$/,Vr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Br=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Ur=/^[a-z0-9_-]{21}$/i,Gr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,zr=/^[-+]?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)?)??$/,Fr=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Kr="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",St,Zr=/^(?:(?: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])$/,Hr=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Jr=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,qr=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Yr=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Xr=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,jn="((\\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])))",Qr=new RegExp(`^${jn}$`);function Nn(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return `([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function eo(t){return new RegExp(`^${Nn(t)}$`)}function Ln(t){let e=`${jn}T${Nn(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function to(t,e){return !!((e==="v4"||!e)&&Zr.test(t)||(e==="v6"||!e)&&Jr.test(t))}function no(t,e){if(!Gr.test(t))return false;try{let[n]=t.split(".");if(!n)return !1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),o=JSON.parse(atob(r));return !(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return false}}function ro(t,e){return !!((e==="v4"||!e)&&Hr.test(t)||(e==="v6"||!e)&&qr.test(t))}var ce=class t extends I{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==y.string){let s=this._getOrReturnCtx(e);return f(s,{code:m.invalid_type,expected:y.string,received:s.parsedType}),k}let r=new j,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),f(o,{code:m.too_small,minimum:s.value,type:"string",inclusive:true,exact:false,message:s.message}),r.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),f(o,{code:m.too_big,maximum:s.value,type:"string",inclusive:true,exact:false,message:s.message}),r.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?f(o,{code:m.too_big,maximum:s.value,type:"string",inclusive:true,exact:true,message:s.message}):a&&f(o,{code:m.too_small,minimum:s.value,type:"string",inclusive:true,exact:true,message:s.message}),r.dirty());}else if(s.kind==="email")Fr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"email",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="emoji")St||(St=new RegExp(Kr,"u")),St.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"emoji",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="uuid")Br.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"uuid",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="nanoid")Ur.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"nanoid",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid")$r.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"cuid",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid2")Wr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"cuid2",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="ulid")Vr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"ulid",code:m.invalid_string,message:s.message}),r.dirty());else if(s.kind==="url")try{new URL(e.data);}catch{o=this._getOrReturnCtx(e,o),f(o,{validation:"url",code:m.invalid_string,message:s.message}),r.dirty();}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"regex",code:m.invalid_string,message:s.message}),r.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),r.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:{startsWith:s.value},message:s.message}),r.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:{endsWith:s.value},message:s.message}),r.dirty()):s.kind==="datetime"?Ln(s).test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:"datetime",message:s.message}),r.dirty()):s.kind==="date"?Qr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:"date",message:s.message}),r.dirty()):s.kind==="time"?eo(s).test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{code:m.invalid_string,validation:"time",message:s.message}),r.dirty()):s.kind==="duration"?zr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"duration",code:m.invalid_string,message:s.message}),r.dirty()):s.kind==="ip"?to(e.data,s.version)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"ip",code:m.invalid_string,message:s.message}),r.dirty()):s.kind==="jwt"?no(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"jwt",code:m.invalid_string,message:s.message}),r.dirty()):s.kind==="cidr"?ro(e.data,s.version)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"cidr",code:m.invalid_string,message:s.message}),r.dirty()):s.kind==="base64"?Yr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"base64",code:m.invalid_string,message:s.message}),r.dirty()):s.kind==="base64url"?Xr.test(e.data)||(o=this._getOrReturnCtx(e,o),f(o,{validation:"base64url",code:m.invalid_string,message:s.message}),r.dirty()):R.assertNever(s);return {status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(o=>e.test(o),{validation:n,code:m.invalid_string,...w.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...w.errToObj(e)})}url(e){return this._addCheck({kind:"url",...w.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...w.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...w.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...w.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...w.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...w.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...w.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...w.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...w.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...w.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...w.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...w.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:false,local:false,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??false,local:e?.local??false,...w.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...w.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...w.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...w.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...w.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...w.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...w.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...w.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...w.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...w.errToObj(n)})}nonempty(e){return this.min(1,w.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return !!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return !!this._def.checks.find(e=>e.kind==="date")}get isTime(){return !!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return !!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return !!this._def.checks.find(e=>e.kind==="email")}get isURL(){return !!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return !!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return !!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return !!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return !!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return !!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return !!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return !!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return !!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return !!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return !!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ce.create=t=>new ce({checks:[],typeName:_.ZodString,coerce:t?.coerce??false,...C(t)});function oo(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,o=n>r?n:r,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var ge=class t extends I{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf;}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==y.number){let s=this._getOrReturnCtx(e);return f(s,{code:m.invalid_type,expected:y.number,received:s.parsedType}),k}let r,o=new j;for(let s of this._def.checks)s.kind==="int"?R.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:m.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:false,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:false,message:s.message}),o.dirty()):s.kind==="multipleOf"?oo(e.data,s.value)!==0&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:m.not_finite,message:s.message}),o.dirty()):R.assertNever(s);return {status:o.value,value:e.data}}gte(e,n){return this.setLimit("min",e,true,w.toString(n))}gt(e,n){return this.setLimit("min",e,false,w.toString(n))}lte(e,n){return this.setLimit("max",e,true,w.toString(n))}lt(e,n){return this.setLimit("max",e,false,w.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:w.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:w.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:false,message:w.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:false,message:w.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:true,message:w.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:true,message:w.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:w.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:w.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:true,value:Number.MIN_SAFE_INTEGER,message:w.toString(e)})._addCheck({kind:"max",inclusive:true,value:Number.MAX_SAFE_INTEGER,message:w.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return !!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&R.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return true;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);}return Number.isFinite(n)&&Number.isFinite(e)}};ge.create=t=>new ge({checks:[],typeName:_.ZodNumber,coerce:t?.coerce||false,...C(t)});var ye=class t extends I{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte;}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data);}catch{return this._getInvalidInput(e)}if(this._getType(e)!==y.bigint)return this._getInvalidInput(e);let r,o=new j;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),f(r,{code:m.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):R.assertNever(s);return {status:o.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return f(n,{code:m.invalid_type,expected:y.bigint,received:n.parsedType}),k}gte(e,n){return this.setLimit("min",e,true,w.toString(n))}gt(e,n){return this.setLimit("min",e,false,w.toString(n))}lte(e,n){return this.setLimit("max",e,true,w.toString(n))}lt(e,n){return this.setLimit("max",e,false,w.toString(n))}setLimit(e,n,r,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:w.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:false,message:w.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:false,message:w.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:true,message:w.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:true,message:w.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:w.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ye.create=t=>new ye({checks:[],typeName:_.ZodBigInt,coerce:t?.coerce??false,...C(t)});var he=class extends I{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==y.boolean){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.boolean,received:r.parsedType}),k}return L(e.data)}};he.create=t=>new he({typeName:_.ZodBoolean,coerce:t?.coerce||false,...C(t)});var ve=class t extends I{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==y.date){let s=this._getOrReturnCtx(e);return f(s,{code:m.invalid_type,expected:y.date,received:s.parsedType}),k}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return f(s,{code:m.invalid_date}),k}let r=new j,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),f(o,{code:m.too_small,message:s.message,inclusive:true,exact:false,minimum:s.value,type:"date"}),r.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),f(o,{code:m.too_big,message:s.message,inclusive:true,exact:false,maximum:s.value,type:"date"}),r.dirty()):R.assertNever(s);return {status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:w.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:w.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};ve.create=t=>new ve({checks:[],coerce:t?.coerce||false,typeName:_.ZodDate,...C(t)});var Ne=class extends I{_parse(e){if(this._getType(e)!==y.symbol){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.symbol,received:r.parsedType}),k}return L(e.data)}};Ne.create=t=>new Ne({typeName:_.ZodSymbol,...C(t)});var xe=class extends I{_parse(e){if(this._getType(e)!==y.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.undefined,received:r.parsedType}),k}return L(e.data)}};xe.create=t=>new xe({typeName:_.ZodUndefined,...C(t)});var be=class extends I{_parse(e){if(this._getType(e)!==y.null){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.null,received:r.parsedType}),k}return L(e.data)}};be.create=t=>new be({typeName:_.ZodNull,...C(t)});var le=class extends I{constructor(){super(...arguments),this._any=true;}_parse(e){return L(e.data)}};le.create=t=>new le({typeName:_.ZodAny,...C(t)});var oe=class extends I{constructor(){super(...arguments),this._unknown=true;}_parse(e){return L(e.data)}};oe.create=t=>new oe({typeName:_.ZodUnknown,...C(t)});var J=class extends I{_parse(e){let n=this._getOrReturnCtx(e);return f(n,{code:m.invalid_type,expected:y.never,received:n.parsedType}),k}};J.create=t=>new J({typeName:_.ZodNever,...C(t)});var Le=class extends I{_parse(e){if(this._getType(e)!==y.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.void,received:r.parsedType}),k}return L(e.data)}};Le.create=t=>new Le({typeName:_.ZodVoid,...C(t)});var se=class t extends I{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),o=this._def;if(n.parsedType!==y.array)return f(n,{code:m.invalid_type,expected:y.array,received:n.parsedType}),k;if(o.exactLength!==null){let i=n.data.length>o.exactLength.value,a=n.data.length<o.exactLength.value;(i||a)&&(f(n,{code:i?m.too_big:m.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:true,exact:true,message:o.exactLength.message}),r.dirty());}if(o.minLength!==null&&n.data.length<o.minLength.value&&(f(n,{code:m.too_small,minimum:o.minLength.value,type:"array",inclusive:true,exact:false,message:o.minLength.message}),r.dirty()),o.maxLength!==null&&n.data.length>o.maxLength.value&&(f(n,{code:m.too_big,maximum:o.maxLength.value,type:"array",inclusive:true,exact:false,message:o.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((i,a)=>o.type._parseAsync(new K(n,i,n.path,a)))).then(i=>j.mergeArray(r,i));let s=[...n.data].map((i,a)=>o.type._parseSync(new K(n,i,n.path,a)));return j.mergeArray(r,s)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:w.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:w.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:w.toString(n)}})}nonempty(e){return this.min(1,e)}};se.create=(t,e)=>new se({type:t,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...C(e)});function je(t){if(t instanceof B){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=F.create(je(r));}return new B({...t._def,shape:()=>e})}else return t instanceof se?new se({...t._def,type:je(t.element)}):t instanceof F?F.create(je(t.unwrap())):t instanceof Q?Q.create(je(t.unwrap())):t instanceof X?X.create(t.items.map(e=>je(e))):t}var B=class t extends I{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend;}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=R.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==y.object){let c=this._getOrReturnCtx(e);return f(c,{code:m.invalid_type,expected:y.object,received:c.parsedType}),k}let{status:r,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof J&&this._def.unknownKeys==="strip"))for(let c in o.data)i.includes(c)||a.push(c);let l=[];for(let c of i){let u=s[c],v=o.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new K(o,v,o.path,c)),alwaysSet:c in o.data});}if(this._def.catchall instanceof J){let c=this._def.unknownKeys;if(c==="passthrough")for(let u of a)l.push({key:{status:"valid",value:u},value:{status:"valid",value:o.data[u]}});else if(c==="strict")a.length>0&&(f(o,{code:m.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else {let c=this._def.catchall;for(let u of a){let v=o.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new K(o,v,o.path,u)),alwaysSet:u in o.data});}}return o.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let v=await u.key,h=await u.value;c.push({key:v,value:h,alwaysSet:u.alwaysSet});}return c}).then(c=>j.mergeObjectSync(r,c)):j.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(e){return w.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{let o=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:w.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of R.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of R.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return je(this)}partial(e){let n={};for(let r of R.objectKeys(this.shape)){let o=this.shape[r];e&&!e[r]?n[r]=o:n[r]=o.optional();}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of R.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else {let s=this.shape[r];for(;s instanceof F;)s=s._def.innerType;n[r]=s;}return new t({...this._def,shape:()=>n})}keyof(){return $n(R.objectKeys(this.shape))}};B.create=(t,e)=>new B({shape:()=>t,unknownKeys:"strip",catchall:J.create(),typeName:_.ZodObject,...C(e)});B.strictCreate=(t,e)=>new B({shape:()=>t,unknownKeys:"strict",catchall:J.create(),typeName:_.ZodObject,...C(e)});B.lazycreate=(t,e)=>new B({shape:t,unknownKeys:"strip",catchall:J.create(),typeName:_.ZodObject,...C(e)});var we=class extends I{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return n.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new V(a.ctx.common.issues));return f(n,{code:m.invalid_union,unionErrors:i}),k}if(n.common.async)return Promise.all(r.map(async s=>{let i={...n,common:{...n.common,issues:[]},parent:null};return {result:await s._parseAsync({data:n.data,path:n.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let l of r){let c={...n,common:{...n.common,issues:[]},parent:null},u=l._parseSync({data:n.data,path:n.path,parent:c});if(u.status==="valid")return u;u.status==="dirty"&&!s&&(s={result:u,ctx:c}),c.common.issues.length&&i.push(c.common.issues);}if(s)return n.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(l=>new V(l));return f(n,{code:m.invalid_union,unionErrors:a}),k}}get options(){return this._def.options}};we.create=(t,e)=>new we({options:t,typeName:_.ZodUnion,...C(e)});var re=t=>t instanceof _e?re(t.schema):t instanceof Z?re(t.innerType()):t instanceof Te?[t.value]:t instanceof Se?t.options:t instanceof Ae?R.objectValues(t.enum):t instanceof Ce?re(t._def.innerType):t instanceof xe?[void 0]:t instanceof be?[null]:t instanceof F?[void 0,...re(t.unwrap())]:t instanceof Q?[null,...re(t.unwrap())]:t instanceof He||t instanceof Re?re(t.unwrap()):t instanceof Ie?re(t._def.innerType):[],rt=class t extends I{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==y.object)return f(n,{code:m.invalid_type,expected:y.object,received:n.parsedType}),k;let r=this.discriminator,o=n.data[r],s=this.optionsMap.get(o);return s?n.common.async?s._parseAsync({data:n.data,path:n.path,parent:n}):s._parseSync({data:n.data,path:n.path,parent:n}):(f(n,{code:m.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),k)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let o=new Map;for(let s of n){let i=re(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s);}}return new t({typeName:_.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:o,...C(r)})}};function At(t,e){let n=Y(t),r=Y(e);if(t===e)return {valid:true,data:t};if(n===y.object&&r===y.object){let o=R.objectKeys(e),s=R.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let l=At(t[a],e[a]);if(!l.valid)return {valid:false};i[a]=l.data;}return {valid:true,data:i}}else if(n===y.array&&r===y.array){if(t.length!==e.length)return {valid:false};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],l=At(i,a);if(!l.valid)return {valid:false};o.push(l.data);}return {valid:true,data:o}}else return n===y.date&&r===y.date&&+t==+e?{valid:true,data:t}:{valid:false}}var ke=class extends I{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=(s,i)=>{if(tt(s)||tt(i))return k;let a=At(s.value,i.value);return a.valid?((nt(s)||nt(i))&&n.dirty(),{status:n.value,value:a.data}):(f(r,{code:m.invalid_intersection_types}),k)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};ke.create=(t,e,n)=>new ke({left:t,right:e,typeName:_.ZodIntersection,...C(n)});var X=class t extends I{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==y.array)return f(r,{code:m.invalid_type,expected:y.array,received:r.parsedType}),k;if(r.data.length<this._def.items.length)return f(r,{code:m.too_small,minimum:this._def.items.length,inclusive:true,exact:false,type:"array"}),k;!this._def.rest&&r.data.length>this._def.items.length&&(f(r,{code:m.too_big,maximum:this._def.items.length,inclusive:true,exact:false,type:"array"}),n.dirty());let s=[...r.data].map((i,a)=>{let l=this._def.items[a]||this._def.rest;return l?l._parse(new K(r,i,r.path,a)):null}).filter(i=>!!i);return r.common.async?Promise.all(s).then(i=>j.mergeArray(n,i)):j.mergeArray(n,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};X.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new X({items:t,typeName:_.ZodTuple,rest:null,...C(e)})};var ot=class t extends I{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==y.object)return f(r,{code:m.invalid_type,expected:y.object,received:r.parsedType}),k;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in r.data)o.push({key:s._parse(new K(r,a,r.path,a)),value:i._parse(new K(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?j.mergeObjectAsync(n,o):j.mergeObjectSync(n,o)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof I?new t({keyType:e,valueType:n,typeName:_.ZodRecord,...C(r)}):new t({keyType:ce.create(),valueType:e,typeName:_.ZodRecord,...C(n)})}},$e=class extends I{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==y.map)return f(r,{code:m.invalid_type,expected:y.map,received:r.parsedType}),k;let o=this._def.keyType,s=this._def.valueType,i=[...r.data.entries()].map(([a,l],c)=>({key:o._parse(new K(r,a,r.path,[c,"key"])),value:s._parse(new K(r,l,r.path,[c,"value"]))}));if(r.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let l of i){let c=await l.key,u=await l.value;if(c.status==="aborted"||u.status==="aborted")return k;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value);}return {status:n.value,value:a}})}else {let a=new Map;for(let l of i){let c=l.key,u=l.value;if(c.status==="aborted"||u.status==="aborted")return k;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value);}return {status:n.value,value:a}}}};$e.create=(t,e,n)=>new $e({valueType:e,keyType:t,typeName:_.ZodMap,...C(n)});var We=class t extends I{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==y.set)return f(r,{code:m.invalid_type,expected:y.set,received:r.parsedType}),k;let o=this._def;o.minSize!==null&&r.data.size<o.minSize.value&&(f(r,{code:m.too_small,minimum:o.minSize.value,type:"set",inclusive:true,exact:false,message:o.minSize.message}),n.dirty()),o.maxSize!==null&&r.data.size>o.maxSize.value&&(f(r,{code:m.too_big,maximum:o.maxSize.value,type:"set",inclusive:true,exact:false,message:o.maxSize.message}),n.dirty());let s=this._def.valueType;function i(l){let c=new Set;for(let u of l){if(u.status==="aborted")return k;u.status==="dirty"&&n.dirty(),c.add(u.value);}return {status:n.value,value:c}}let a=[...r.data.values()].map((l,c)=>s._parse(new K(r,l,r.path,c)));return r.common.async?Promise.all(a).then(l=>i(l)):i(a)}min(e,n){return new t({...this._def,minSize:{value:e,message:w.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:w.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};We.create=(t,e)=>new We({valueType:t,minSize:null,maxSize:null,typeName:_.ZodSet,...C(e)});var st=class t extends I{constructor(){super(...arguments),this.validate=this.implement;}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==y.function)return f(n,{code:m.invalid_type,expected:y.function,received:n.parsedType}),k;function r(a,l){return Ze({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Pe(),ne].filter(c=>!!c),issueData:{code:m.invalid_arguments,argumentsError:l}})}function o(a,l){return Ze({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Pe(),ne].filter(c=>!!c),issueData:{code:m.invalid_return_type,returnTypeError:l}})}let s={errorMap:n.common.contextualErrorMap},i=n.data;if(this._def.returns instanceof de){let a=this;return L(async function(...l){let c=new V([]),u=await a._def.args.parseAsync(l,s).catch(T=>{throw c.addIssue(r(l,T)),c}),v=await Reflect.apply(i,this,u);return await a._def.returns._def.type.parseAsync(v,s).catch(T=>{throw c.addIssue(o(v,T)),c})})}else {let a=this;return L(function(...l){let c=a._def.args.safeParse(l,s);if(!c.success)throw new V([r(l,c.error)]);let u=Reflect.apply(i,this,c.data),v=a._def.returns.safeParse(u,s);if(!v.success)throw new V([o(u,v.error)]);return v.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:X.create(e).rest(oe.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||X.create([]).rest(oe.create()),returns:n||oe.create(),typeName:_.ZodFunction,...C(r)})}},_e=class extends I{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};_e.create=(t,e)=>new _e({getter:t,typeName:_.ZodLazy,...C(e)});var Te=class extends I{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return f(n,{received:n.data,code:m.invalid_literal,expected:this._def.value}),k}return {status:"valid",value:e.data}}get value(){return this._def.value}};Te.create=(t,e)=>new Te({value:t,typeName:_.ZodLiteral,...C(e)});function $n(t,e){return new Se({values:t,typeName:_.ZodEnum,...C(e)})}var Se=class t extends I{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{expected:R.joinValues(r),received:n.parsedType,code:m.invalid_type}),k}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{received:n.data,code:m.invalid_enum_value,options:r}),k}return L(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};Se.create=$n;var Ae=class extends I{_parse(e){let n=R.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==y.string&&r.parsedType!==y.number){let o=R.objectValues(n);return f(r,{expected:R.joinValues(o),received:r.parsedType,code:m.invalid_type}),k}if(this._cache||(this._cache=new Set(R.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=R.objectValues(n);return f(r,{received:r.data,code:m.invalid_enum_value,options:o}),k}return L(e.data)}get enum(){return this._def.values}};Ae.create=(t,e)=>new Ae({values:t,typeName:_.ZodNativeEnum,...C(e)});var de=class extends I{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==y.promise&&n.common.async===false)return f(n,{code:m.invalid_type,expected:y.promise,received:n.parsedType}),k;let r=n.parsedType===y.promise?n.data:Promise.resolve(n.data);return L(r.then(o=>this._def.type.parseAsync(o,{path:n.path,errorMap:n.common.contextualErrorMap})))}};de.create=(t,e)=>new de({type:t,typeName:_.ZodPromise,...C(e)});var Z=class extends I{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{f(r,i),i.fatal?n.abort():n.dirty();},get path(){return r.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(r.data,s);if(r.common.async)return Promise.resolve(i).then(async a=>{if(n.value==="aborted")return k;let l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?k:l.status==="dirty"?fe(l.value):n.value==="dirty"?fe(l.value):l});{if(n.value==="aborted")return k;let a=this._def.schema._parseSync({data:i,path:r.path,parent:r});return a.status==="aborted"?k:a.status==="dirty"?fe(a.value):n.value==="dirty"?fe(a.value):a}}if(o.type==="refinement"){let i=a=>{let l=o.refinement(a,s);if(r.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(r.common.async===false){let a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?k:(a.status==="dirty"&&n.dirty(),i(a.value),{status:n.value,value:a.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>a.status==="aborted"?k:(a.status==="dirty"&&n.dirty(),i(a.value).then(()=>({status:n.value,value:a.value}))))}if(o.type==="transform")if(r.common.async===false){let i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!ae(i))return k;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return {status:n.value,value:a}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>ae(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:n.value,value:a})):k);R.assertNever(o);}};Z.create=(t,e,n)=>new Z({schema:t,typeName:_.ZodEffects,effect:e,...C(n)});Z.createWithPreprocess=(t,e,n)=>new Z({schema:e,effect:{type:"preprocess",transform:t},typeName:_.ZodEffects,...C(n)});var F=class extends I{_parse(e){return this._getType(e)===y.undefined?L(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};F.create=(t,e)=>new F({innerType:t,typeName:_.ZodOptional,...C(e)});var Q=class extends I{_parse(e){return this._getType(e)===y.null?L(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Q.create=(t,e)=>new Q({innerType:t,typeName:_.ZodNullable,...C(e)});var Ce=class extends I{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===y.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Ce.create=(t,e)=>new Ce({innerType:t,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...C(e)});var Ie=class extends I{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},o=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return De(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new V(r.common.issues)},input:r.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new V(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};Ie.create=(t,e)=>new Ie({innerType:t,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...C(e)});var Ve=class extends I{_parse(e){if(this._getType(e)!==y.nan){let r=this._getOrReturnCtx(e);return f(r,{code:m.invalid_type,expected:y.nan,received:r.parsedType}),k}return {status:"valid",value:e.data}}};Ve.create=t=>new Ve({typeName:_.ZodNaN,...C(t)});var so=Symbol("zod_brand"),He=class extends I{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Je=class t extends I{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return (async()=>{let s=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?k:s.status==="dirty"?(n.dirty(),fe(s.value)):this._def.out._parseAsync({data:s.value,path:r.path,parent:r})})();{let o=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?k:o.status==="dirty"?(n.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:_.ZodPipeline})}},Re=class extends I{_parse(e){let n=this._def.innerType._parse(e),r=o=>(ae(o)&&(o.value=Object.freeze(o.value)),o);return De(n)?n.then(o=>r(o)):r(n)}unwrap(){return this._def.innerType}};Re.create=(t,e)=>new Re({innerType:t,typeName:_.ZodReadonly,...C(e)});function Dn(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function Wn(t,e={},n){return t?le.create().superRefine((r,o)=>{let s=t(r);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Dn(e,r),l=a.fatal??n??true;o.addIssue({code:"custom",...a,fatal:l});}});if(!s){let i=Dn(e,r),a=i.fatal??n??true;o.addIssue({code:"custom",...i,fatal:a});}}):le.create()}var io={object:B.lazycreate},_;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly";})(_||(_={}));var ao=(t,e={message:`Input not instance of ${t.name}`})=>Wn(n=>n instanceof t,e),Vn=ce.create,Bn=ge.create,co=Ve.create,lo=ye.create,Un=he.create,uo=ve.create,po=Ne.create,mo=xe.create,fo=be.create,go=le.create,yo=oe.create,ho=J.create,vo=Le.create,xo=se.create,bo=B.create,wo=B.strictCreate,ko=we.create,_o=rt.create,To=ke.create,So=X.create,Ao=ot.create,Co=$e.create,Io=We.create,Ro=st.create,Mo=_e.create,Eo=Te.create,Oo=Se.create,Po=Ae.create,Do=de.create,jo=Z.create,No=F.create,Lo=Q.create,$o=Z.createWithPreprocess,Wo=Je.create,Vo=()=>Vn().optional(),Bo=()=>Bn().optional(),Uo=()=>Un().optional(),Go={string:(t=>ce.create({...t,coerce:true})),number:(t=>ge.create({...t,coerce:true})),boolean:(t=>he.create({...t,coerce:true})),bigint:(t=>ye.create({...t,coerce:true})),date:(t=>ve.create({...t,coerce:true}))};var zo=k;var Be="agtx_pk_",it="agtx_sk_";d.string().min(Be.length+8).startsWith(Be,{message:`Publishable keys must start with "${Be}".`});d.string().min(it.length+8).startsWith(it,{message:`Secret keys must start with "${it}".`});var Gn=t=>t.startsWith(Be)?"publishable":t.startsWith(it)?"secret":"unknown",Me=d.enum(["webmcp","dom","screenshot","crawler"]),Ct=d.enum(["detected","declared","verified","linked"]),Fo=d.object({class:Me,trust:Ct,confidence:d.number().min(0).max(1).default(1),vendor:d.string().nullable(),userAgent:d.string().nullable(),detectionVersion:d.string().default("2026.04"),signals:d.record(d.unknown()).default({})}),Ko=d.enum(["bearer","oauth2","sso","spiffe","google-agent","mtls","detection","declaration","extension","session-link","x-agent-header","web-bot-auth","api-key","verified-crawler"]),qe=d.object({class:Me,vendor:d.string().min(1),token:d.string().min(8),expiresAt:d.string().datetime().optional()});d.object({publishableKey:d.string(),claim:qe,nonce:d.string().min(8),origin:d.string().url()});d.object({trust:Ct,vendor:d.string(),validUntil:d.string().datetime(),reason:d.string().optional(),subject:d.string().optional(),protocol:Ko.optional(),signals:d.record(d.unknown()).optional()});d.object({issuer:d.string().url(),audiences:d.array(d.string().min(1)).min(1)});d.object({trustDomain:d.string().min(1),bundleEndpoint:d.string().url(),audiences:d.array(d.string().min(1)).min(1),googleTrustDomains:d.array(d.string().min(1)).optional()});d.object({rootCerts:d.array(d.string().min(20)).min(1),spiffeTrustDomain:d.string().min(1).optional(),xfccEntryPolicy:d.enum(["last","first","only"]).default("last")});d.enum(["sso","spiffe","mtls"]);d.object({siteId:d.string().min(1),token:d.string().min(8).optional(),xfcc:d.string().min(1).optional(),headers:d.record(d.string()).optional(),origin:d.string().url().optional()});var q={detected:0,declared:1,verified:2,linked:3},zn=(t,e)=>q[t]>q[e],Fn=d.enum(["allow","deny","review"]),Ee=d.object({id:d.string(),tool:d.string(),minTrust:Ct,allowedClasses:d.array(Me).default([]),decision:Fn,rateLimit:d.object({max:d.number().int().positive(),windowSeconds:d.number().int().positive()}).optional()}),Zo=d.object({decision:Fn,ruleId:d.string().nullable(),reason:d.string()}),Ho=d.enum(["session","user","org"]),It=d.object({key:d.string().min(1),value:d.unknown(),scope:Ho.default("session"),ttlSeconds:d.number().int().positive().nullable().default(null),updatedAt:d.string().datetime().optional()}),Jo=d.object({path:d.string().min(1),name:d.string().optional(),purpose:d.string().optional(),availableActions:d.array(d.string()).optional(),prerequisites:d.array(d.string()).optional(),queryParams:d.record(d.string()).optional(),notes:d.string().optional()}),qo=d.object({pattern:d.string().optional(),flow:d.string().optional()}),Yo=d.object({pages:d.array(Jo).default([]),navigation:qo.optional()}),Xo=d.object({step:d.number().int().positive(),action:d.string().min(1)}),Qo=d.object({steps:d.array(Xo).default([]),notes:d.string().optional(),policy:d.string().optional()}),es=d.object({selector:d.string().min(1),behavior:d.string().optional(),location:d.string().optional(),showsCount:d.boolean().optional()}),ts=d.object({categories:d.array(d.string()).optional(),productSchema:d.object({fields:d.array(d.string()).optional(),idFormat:d.string().optional()}).optional(),searchBehavior:d.string().optional()}),Rt=d.object({path:d.string().min(1),payload:d.record(d.unknown()).default({}),updatedAt:d.string().datetime().optional()}).strict(),W=d.object({version:d.string().default("1"),siteMap:Yo.optional(),workflows:d.record(Qo).default({}),policies:d.record(d.union([d.string(),d.array(d.string())])).default({}),catalog:ts.optional(),uiGuidance:d.record(es).default({}),pageContexts:d.record(Rt).default({}),updatedAt:d.string().datetime().optional()}),Kn=W.parse({}),ns=d.object({name:d.string().min(1),title:d.string().optional(),group:d.string().optional(),page:d.string().optional(),description:d.string().default(""),inputSchema:d.record(d.unknown()).default({}),outputSchema:d.record(d.unknown()).optional(),annotations:d.record(d.boolean()).optional(),tokens:d.number().int().nonnegative().default(0)}),rs=d.object({tools:d.array(ns).default([])});rs.parse({});var os=d.enum(["agent.detected","agent.missed","auth.identity_presented","auth.identity_cleared","authz.policies_set","authz.evaluated","memory.accessed","memory.updated","tool.registered","tool.executed","tool.surfaced","tool.progressed","sdk.error"]),Mt=d.object({id:d.string(),siteId:d.string(),sessionId:d.string(),occurredAt:d.string().datetime(),type:os,tool:d.string().optional(),agent:Fo.nullable().optional(),policy:Zo.optional(),durationMs:d.number().int().nonnegative().optional(),outcome:d.enum(["success","error","blocked"]),error:d.string().optional(),metadata:d.record(d.unknown()).default({})});d.object({publishableKey:d.string().optional(),events:d.array(Mt).min(1).max(100)});var Ye=class extends Error{code;constructor(t,e){super(e),this.name="AgentronicsError",this.code=t;}};var M="0.1.2";var Et=(t,e)=>typeof t=="object"&&t!==null&&typeof t[e]=="function",Xe=t=>{let e=t??(typeof globalThis>"u"?null:globalThis);if(!e)return null;let n=e.document?.modelContext;if(Et(n,"registerTool"))return {source:"document",context:n};let r=e.navigator?.modelContext;return Et(r,"registerTool")?{source:"navigator",context:r}:Et(r,"provideContext")?{source:"legacy",context:r}:null},Ot=null,Pt=new Set,Dt=(t,e)=>{Ot={type:t,toolName:e,at:Date.now()},Pt.forEach(n=>n(Ot));},Zn=()=>Ot,jt=t=>(Pt.add(t),()=>{Pt.delete(t);});var ss=()=>{if(typeof navigator>"u")return null;let t=navigator.modelContext;return !t||typeof t!="object"?null:t.vendor||t.client?t:null},Hn=()=>Xe()?.source??null,Ue=async(t={})=>{let{pollMs:e=500}=t,n=Date.now();for(;;){let r=Zn();if(r)return is(r);let o=ss();if(o)return as(o);if(Date.now()-n>=e)return null;await new Promise(s=>setTimeout(s,50));}},Jn=()=>({class:"webmcp",trust:"detected",confidence:1,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M}),is=t=>({...Jn(),vendor:null,signals:{webmcp:true,source:Hn(),event:t.type,tool:t.toolName}}),as=t=>({...Jn(),vendor:t.vendor??t.client??null,signals:{webmcp:true,source:"legacy-extension",toolCount:Array.isArray(t.tools)?t.tools.length:0}});var Nt=[{name:"GPTBot",category:"ai",pattern:/GPTBot/i},{name:"OAI-SearchBot",category:"ai",pattern:/OAI-SearchBot/i},{name:"ChatGPT-User",category:"ai",pattern:/ChatGPT-User/i},{name:"Claude-User",category:"ai",pattern:/Claude-User/i},{name:"Claude-SearchBot",category:"ai",pattern:/Claude-SearchBot/i},{name:"ClaudeBot",category:"ai",pattern:/ClaudeBot/i},{name:"Claude-Web",category:"ai",pattern:/Claude-Web/i},{name:"anthropic-ai",category:"ai",pattern:/anthropic-ai/i},{name:"Perplexity-User",category:"ai",pattern:/Perplexity-User/i},{name:"PerplexityBot",category:"ai",pattern:/PerplexityBot/i},{name:"Google-Extended",category:"ai",pattern:/Google-Extended/i},{name:"Applebot-Extended",category:"ai",pattern:/Applebot-Extended/i},{name:"Amazonbot",category:"ai",pattern:/Amazonbot/i},{name:"Bytespider",category:"ai",pattern:/Bytespider/i},{name:"CCBot",category:"ai",pattern:/CCBot/i},{name:"Meta-ExternalAgent",category:"ai",pattern:/Meta-ExternalAgent/i},{name:"cohere-ai",category:"ai",pattern:/cohere-ai/i},{name:"Googlebot",category:"search",pattern:/Googlebot/i},{name:"Bingbot",category:"search",pattern:/bingbot/i},{name:"DuckDuckBot",category:"search",pattern:/DuckDuckBot/i},{name:"YandexBot",category:"search",pattern:/YandexBot/i},{name:"Baiduspider",category:"search",pattern:/Baiduspider/i},{name:"Applebot",category:"search",pattern:/Applebot/i}],Ge=(t={})=>{let{signatures:e=Nt,disable:n=false,confidence:r=.9}=t;if(n||typeof navigator>"u")return null;let o=navigator.userAgent??"";if(!o)return null;for(let s of e)if(s.pattern.test(o))return {class:"crawler",trust:"detected",confidence:r,vendor:s.name,userAgent:o,detectionVersion:M,signals:{matched:s.name,category:s.category,ua:o}};return null};var cs=[/HeadlessChrome/i,/Headless/i,/PhantomJS/i,/SlimerJS/i],ls=()=>({hit:(typeof navigator<"u"&&navigator.webdriver)===true,weight:.6,detail:"navigator.webdriver === true"}),ds=()=>{if(typeof window>"u")return {hit:false,weight:.5};let t=Object.keys(window).filter(e=>e.startsWith("cdc_"));return {hit:t.length>0,weight:.5,detail:`window.${t[0]??"cdc_*"}`}},us=["__playwright__binding__","__pwInitScripts","__puppeteer_evaluation_script__","_phantom","callPhantom","__nightmare","domAutomation","domAutomationController","__selenium_unwrapped","__webdriver_evaluate","__driver_evaluate","__fxdriver_unwrapped"],ps=()=>{if(typeof window>"u")return {hit:false,weight:.6};let t=us.find(e=>e in window);return t?{hit:true,weight:.6,detail:`window.${t}`}:{hit:false,weight:.6}},ms=()=>{if(typeof navigator>"u"||!navigator.plugins)return {hit:false,weight:.2};let t=/Win|Mac|Linux/.test(navigator.userAgent??""),e=navigator.plugins.length===0;return {hit:t&&e,weight:.2,detail:"desktop UA with no plugins"}},fs=()=>{if(typeof navigator>"u")return {hit:false,weight:.7};let t=navigator.userAgent??"",e=cs.some(n=>n.test(t));return e?{hit:e,weight:.7,detail:`headless UA: ${t}`}:{hit:e,weight:.7}},gs=()=>{if(typeof navigator>"u")return {hit:false,weight:.15};let t=navigator.languages;return {hit:!t||t.length===0,weight:.15,detail:"navigator.languages empty"}},ys=()=>{if(typeof navigator>"u")return {hit:false,weight:.1};let t="chrome"in window,e=navigator.userAgent??"";return {hit:/Chrome\//.test(e)&&!/Edg\//.test(e)&&!t,weight:.2,detail:"Chrome UA without window.chrome"}},hs={webdriver:ls,chromedriver:ds,automationGlobals:ps,headlessUa:fs,languages:gs,permissions:ys,plugins:ms},ze=(t={})=>{let{threshold:e=.4}=t,n={},r=0,o=0;for(let[i,a]of Object.entries(hs)){let l=a();r+=l.weight,n[i]={hit:l.hit,weight:l.weight,detail:l.detail},l.hit&&(o+=l.weight);}let s=r===0?0:o/r;return s<e?null:{class:"dom",trust:"detected",confidence:s,vendor:null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:n}};var Lt=()=>[{id:"webmcp.model-context",status:"stable",detect:()=>Ue({pollMs:0})},{id:"crawler.user-agent",status:"beta",detect:()=>Ge()},{id:"dom.automation-heuristics",status:"beta",detect:()=>ze()}],at=(t=Lt())=>{let e=new Map(t.map(n=>[n.id,n]));return {register(n){e.set(n.id,n);},list(n){let r=[...e.values()];return n?r.filter(o=>o.status===n):r},async detectAll(n=false){for(let r of e.values()){if(r.status==="research"&&!n)continue;let o=await r.detect();if(o)return o}return null}}};var $t=t=>{let e=Me.parse(t.class),n=t.verificationToken?"verified":"declared";return {class:e,trust:n,confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{declared:true,hasVerificationToken:!!t.verificationToken}}};var qn=({gatewayUrl:t,publishableKey:e,fetcher:n=fetch})=>{let r=null,o=[];return {snapshot(){return [...o]},async sync(){let s=await n(`${t.replace(/\/$/,"")}/v1/pub/detector-signatures`,{headers:{...e?{authorization:`Bearer ${e}`}:{},...r?{"if-none-match":r}:{}}});if(s.status===304)return this.snapshot();if(!s.ok)throw new Error(`Detector signature sync failed with status ${s.status}.`);return o=(await s.json()).signatures??[],r=s.headers.get("etag"),this.snapshot()}}};var ct=async(t={})=>{if(t.customDetectors?.length){let e=await at(t.customDetectors).detectAll(!!t.experimental);if(e)return e}if(t.webmcp!==false){let e=await Ue(t.webmcp??{});if(e)return e}if(t.crawler!==false){let e=Ge(t.crawler??{});if(e)return e}if(t.dom!==false){let e=ze(t.dom??{});if(e)return e}return null};var vs=new Set(["1024x768","1280x800","1280x720","1280x1024","1440x900","1920x1080"]),xs=t=>{if(t.length<6)return null;let e=t.reduce((r,o)=>r+o,0)/t.length;if(e<=0)return null;let n=t.reduce((r,o)=>r+(o-e)**2,0)/t.length;return Math.sqrt(n)/e},Wt=t=>{let e=0;return t.clicks>=2&&(e+=.35*(t.teleportClicks/t.clicks),e+=.25*(t.centreClicks/t.clicks),t.pointerMoves===0&&(e+=.15)),t.keyIntervalCv!==null&&t.keyIntervalCv<.15&&(e+=.2),t.insertWithoutKeys>0&&(e+=.15),t.wheelEvents===0&&t.clicks>=3&&(e+=.05),t.vmViewport&&(e+=.1),Math.min(1,e)},Vt=(t={})=>{let{threshold:e=.6,minInteractions:n=3,onDetect:r,acceptUntrustedEvents:o=false}=t,s=E=>E.isTrusted||o,i=t.documentRef??(typeof document>"u"?void 0:document),a={clicks:0,teleportClicks:0,centreClicks:0,keyIntervals:0,keyIntervalCv:null,insertWithoutKeys:0,pointerMoves:0,wheelEvents:0,vmViewport:false},l=Number.NEGATIVE_INFINITY,c=0,u=0,v=[],h=0,T=null,x=i?.defaultView;x&&(a.vmViewport=vs.has(`${x.innerWidth}x${x.innerHeight}`));let g=E=>({class:"screenshot",trust:"detected",confidence:Number(E.toFixed(2)),vendor:null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{vision:true,...a}}),A=()=>{if(T||a.clicks+h<n)return;let E=Wt(a);E>=e&&(T=g(E),r?.(T));},S=E=>{s(E)&&(a.pointerMoves+=1,l=E.timeStamp);},et=[["pointermove",S],["mousemove",S],["wheel",E=>{s(E)&&(a.wheelEvents+=1);}],["click",E=>{if(!s(E))return;let P=E;a.clicks+=1,E.timeStamp-l>400&&(a.teleportClicks+=1);let Fe=P.target instanceof Element?P.target:null;if(Fe&&typeof Fe.getBoundingClientRect=="function"){let ee=Fe.getBoundingClientRect();if(ee.width>8&&ee.height>8){let te=Math.abs(P.clientX-(ee.left+ee.width/2)),ie=Math.abs(P.clientY-(ee.top+ee.height/2));te<=1.5&&ie<=1.5&&(a.centreClicks+=1);}}A();}],["keydown",E=>{if(!s(E))return;let P=E.timeStamp;c&&P-c<1500?(v.push(P-c),v.length>60&&v.shift(),a.keyIntervals=v.length,a.keyIntervalCv=xs(v)):h+=1,c=P,u=P;}],["keyup",()=>A()],["input",E=>{if(!s(E))return;let P=E;P.inputType==="insertText"&&P.data&&P.data.length>1&&E.timeStamp-u>200&&(a.insertWithoutKeys+=1,h+=1,A());}]];for(let[E,P]of et)i?.addEventListener(E,P,{capture:true,passive:true});return {signals:()=>({...a}),score:()=>Wt(a),detected:()=>T,stop:()=>{for(let[E,P]of et)i?.removeEventListener(E,P,{capture:true});}}};var bs=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),Bt=()=>{let t=null;return {present(e){let n=qe.safeParse(e);if(!n.success)throw new Ye("invalid_api_key",`Invalid identity claim: ${n.error.issues[0]?.message??"unknown"}`);let r={claim:n.data,identity:bs(n.data)};return t=r,r},clear(){t=null;},preferOver(e){return t?e?zn(t.identity.trust,e.trust)?t.identity:e:t.identity:e},snapshot(){return t}}};var ws=({detected:t,declared:e,verified:n,linked:r})=>r?"linked":n?"verified":e?"declared":"detected",Ut=t=>{let e=null;for(let n of t)(!e||q[n.trust]>q[e.trust])&&(e=n);return e};var Yn=()=>({name:"bearer",async authenticate(t,e){if(!t.bearerToken)return null;let n=await e.verifyToken?.("bearer",t.bearerToken);return {class:t.classHint??"dom",trust:n?.trust??"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"bearer",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{bearer:true,verifiedRemotely:!!n}}}});var Xn=()=>({name:"detection",async authenticate(t){return t.detected??null}});var Qn=()=>({name:"extensionToken",async authenticate(t,e){if(!t.extensionToken)return null;let n=await e.verifyToken?.("extensionToken",t.extensionToken);return {class:"dom",trust:n?.trust??"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"browser-extension",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{extensionToken:true,verifiedRemotely:!!n}}}});var er=()=>({name:"mtls",async authenticate(t,e){if(!t.xfccHeader)return null;let n=await e.verifyToken?.("mtls",t.xfccHeader);return {class:t.classHint??"webmcp",trust:n?.trust??"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"mtls",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{mtls:true,subject:n?.subject??null,verifiedRemotely:!!n,...n?.signals??{}}}}});var tr=()=>({name:"oauth2",async authenticate(t,e){if(!t.oauth2AccessToken)return null;let n=await e.verifyToken?.("oauth2",t.oauth2AccessToken);return {class:t.classHint??"webmcp",trust:n?t.oauth2Subject&&n.trust!=="detected"&&n.trust!=="declared"?"linked":n.trust:"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"oauth2",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{oauth2:true,subject:t.oauth2Subject??null,verifiedRemotely:!!n}}}});var ks=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),nr=()=>({name:"selfDeclaration",async authenticate(t){return t.declaration?ks(qe.parse(t.declaration)):null}});var rr=()=>({name:"sessionLink",async authenticate(t,e){if(!t.sessionLinkToken)return null;let n=await e.verifyToken?.("sessionLink",t.sessionLinkToken);return {class:t.classHint??"screenshot",trust:n?t.linkedUserId&&n.trust!=="detected"&&n.trust!=="declared"?"linked":n.trust:"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"session-link",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{sessionLink:true,linkedUserId:t.linkedUserId??null,verifiedRemotely:!!n}}}});var or=()=>({name:"sso",async authenticate(t,e){if(!t.ssoIdToken)return null;let n=await e.verifyToken?.("sso",t.ssoIdToken);return {class:t.classHint??"dom",trust:n?.trust??"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"sso",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{sso:true,subject:n?.subject??null,verifiedRemotely:!!n,...n?.signals??{}}}}});var sr=()=>({name:"spiffe",async authenticate(t,e){if(!t.spiffeJwt)return null;let n=await e.verifyToken?.("spiffe",t.spiffeJwt),r=n?.vendor==="google";return {class:t.classHint??"webmcp",trust:n?.trust??"declared",confidence:1,vendor:n?.vendor??t.vendorHint??"spiffe",userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{spiffe:true,spiffeId:n?.subject??null,subject:n?.subject??null,verifiedRemotely:!!n,...r?{googleAgent:true}:{},...n?.signals??{}}}}});var ir=()=>({name:"xAgentHeader",async authenticate(t){if(!t.xAgentHeader)return null;let[e="x-agent",n="dom",r]=t.xAgentHeader.split(";"),o=Me.safeParse(n);return {class:o.success?o.data:"dom",trust:"declared",confidence:r?1:.8,vendor:e,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:M,signals:{xAgentHeader:true,hasProof:!!r}}}});var ar=new Set(["bearer","extensionToken","sessionLink","oauth2","sso","spiffe","mtls"]),_s=(t,e,n)=>{if(ar.has(t)&&e.signals?.verifiedRemotely===false){let r=t==="oauth2"&&n.oauth2Subject||t==="sessionLink"&&n.linkedUserId;return {...e,trust:r?"linked":"verified",signals:{...e.signals,compat:"0.6"}}}return t==="xAgentHeader"&&e.signals?.hasProof===true?{...e,trust:"verified",confidence:1,signals:{...e.signals,compat:"0.6"}}:e},Gt=()=>[Xn(),nr(),Yn(),ir(),Qn(),rr(),tr()],cr=()=>[or(),sr(),er()],Ts={detection:"detection",selfDeclaration:"declaration",bearer:"bearer",xAgentHeader:"x-agent-header",extensionToken:"extension",sessionLink:"session-link",oauth2:"oauth2",sso:"sso",spiffe:"spiffe",mtls:"mtls"},Ss=(t,e)=>t==="spiffe"&&e.signals?.googleAgent===true?"google-agent":Ts[t],zt=({compat:t,methods:e=t==="0.6"?[...Gt(),...cr()]:Gt(),context:n={},onTrace:r,onUnverifiedToken:o}={})=>{let s=false;return {async authenticate(i){let a=[],l={};for(let x of e){let g=await x.authenticate(i,n);l[x.name]=!!g,g&&(ar.has(x.name)&&g.signals?.verifiedRemotely===false&&!n.verifyToken&&!s&&(s=true,o?.(x.name)),t==="0.6"&&(g=_s(x.name,g,i)),a.push({method:x.name,identity:g}));}let c=Ut(a.map(x=>x.identity)),u=c?a.find(x=>x.identity===c):void 0,v=u?Ss(u.method,u.identity):void 0,h=typeof c?.signals?.subject=="string"?c.signals.subject:void 0,T={type:c?"auth.identity_presented":"sdk.error",agent:c,outcome:c?"success":"error",metadata:{methods:l,...v?{protocol:v}:{},...h?{subject:h}:{}}};return c||(T.error="No auth method produced an identity."),r?.(T),c},methods(){return e.map(i=>i.name)}}};var As={identity:null,source:"initial",updatedAt:null},Ft=()=>{let t=As,e=new Set,n=()=>{e.size!==0&&e.forEach(r=>r(t));};return {snapshot(){return t},set(r,o){t={identity:r,source:o,updatedAt:new Date().toISOString()},n();},subscribe(r){return e.add(r),()=>{e.delete(r);}}}};var Cs=()=>{let t=new Map;return {read:e=>t.get(e)??null,write:(e,n)=>{t.set(e,n);}}},Is=()=>typeof window>"u"||!window.localStorage?Cs():{read:t=>{try{return window.localStorage.getItem(t)}catch{return null}},write:(t,e)=>{try{window.localStorage.setItem(t,e);}catch{}}},Rs=t=>{if(!t)return null;try{let e=JSON.parse(t);if(typeof e=="object"&&e!==null&&Number.isFinite(e.count)&&Number.isFinite(e.resetAt))return e}catch{return null}return null},Kt=(t=Is())=>({consume(e,n,r=Date.now()){let o=`agtx:rate:${e}`,s=Rs(t.read(o)),i=s&&s.resetAt>r?s.resetAt:r+n.windowSeconds*1e3,a=s&&s.resetAt>r?s.count+1:1;return t.write(o,JSON.stringify({count:a,resetAt:i})),{allowed:a<=n.max,remaining:Math.max(0,n.max-a),resetAt:i}}});var Ms=(t,e)=>t==="*"||t===e?true:t.includes("*")?new RegExp("^"+t.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*")+"$").test(e):false,Es=(t,e)=>{let n=t?q[t.trust]:-1,r=q[e.minTrust];return n>=r},Os=(t,e)=>e.allowedClasses.length===0?true:t?e.allowedClasses.includes(t.class):false,lr="allow",Ps=(t,e)=>{let n=e?.class??"unknown",r=e?.vendor??"unknown",o=e?.trust??"none";return `${t}:${n}:${r}:${o}`},Zt=(t=[],e={})=>{let n=t.map(o=>Ee.parse(o)),r=e.rateLimiter??Kt();return {set(o){n=o.map(s=>Ee.parse(s));},list(){return [...n]},evaluate({tool:o,identity:s}){for(let i of n)if(Ms(i.tool,o)){if(!Es(s,i))return {decision:"deny",ruleId:i.id,reason:`Rule "${i.id}" requires trust >= ${i.minTrust}.`};if(!Os(s,i))return {decision:"deny",ruleId:i.id,reason:`Rule "${i.id}" restricts to classes: ${i.allowedClasses.join(", ")}.`};if(i.rateLimit){let a=r.consume(Ps(o,s),i.rateLimit);if(!a.allowed)return {decision:"deny",ruleId:i.id,reason:`Rule "${i.id}" rate limit exceeded. Resets at ${new Date(a.resetAt).toISOString()}.`}}return {decision:i.decision,ruleId:i.id,reason:`Matched rule "${i.id}".`}}return {decision:lr,ruleId:null,reason:`No rule matched tool "${o}". Falling back to "${lr}".`}}}};var Ht=({gatewayUrl:t,siteId:e,publishableKey:n,fetcher:r=fetch})=>{let o={policies:[],etag:null};return {snapshot(){return {policies:[...o.policies],etag:o.etag}},async sync(){let s=await r(`${t.replace(/\/$/,"")}/v1/pub/sites/${encodeURIComponent(e)}/policies`,{headers:{authorization:`Bearer ${n}`,...o.etag?{"if-none-match":o.etag}:{}}});if(s.status===304)return this.snapshot();if(!s.ok)throw new Error(`Policy sync failed with status ${s.status}.`);let i=await s.json();return o={policies:Ee.array().parse(i.policies??[]),etag:s.headers.get("etag")},this.snapshot()}}};var Jt=({message:t="Agent action blocked by site policy.",durationMs:e=2400,documentRef:n=typeof document>"u"?void 0:document}={})=>{if(!n?.body)return null;let r=n.createElement("div");return r.setAttribute("role","status"),r.setAttribute("data-agentronics-deny-overlay","true"),r.textContent=t,Object.assign(r.style,{position:"fixed",zIndex:"2147483647",left:"50%",bottom:"24px",transform:"translateX(-50%)",maxWidth:"min(520px, calc(100vw - 32px))",padding:"12px 16px",borderRadius:"12px",background:"#0B0B0C",color:"#FFFFFF",border:"2px solid #FF4D1F",font:"13px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace"}),n.body.appendChild(r),window.setTimeout(()=>r.remove(),e),r};var qt=({policyEngine:t,getIdentity:e,documentRef:n=typeof document>"u"?void 0:document,selector:r="[data-agentronics-tool]"})=>{if(!n)return {uninstall:()=>{}};let o=s=>{let i=s.target instanceof Element?s.target.closest(r):null;if(!(i instanceof HTMLElement))return;let a=i.dataset.agentronicsTool;a&&Promise.resolve(e()).then(l=>{let c=t.evaluate({tool:a,identity:l});c.decision==="deny"&&(s.preventDefault(),s.stopPropagation(),Jt({message:c.reason,documentRef:n}));});};return n.addEventListener("click",o,true),{uninstall:()=>n.removeEventListener("click",o,true)}};var Yt=()=>{let t=new Map;return {read:e=>t.get(e)??null,write:(e,n)=>{t.set(e,n);},remove:e=>{t.delete(e);},keys:()=>[...t.keys()]}},dr=(t,e)=>({read:n=>{try{return t.getItem(e+n)}catch{return null}},write:(n,r)=>{try{t.setItem(e+n,r);}catch{}},remove:n=>{try{t.removeItem(e+n);}catch{}},keys:()=>{let n=[];try{for(let r=0;r<t.length;r++){let o=t.key(r);o&&o.startsWith(e)&&n.push(o.slice(e.length));}}catch{}return n}}),ur="agtx:",pr=()=>{let t=typeof window<"u",e=t&&typeof window.sessionStorage<"u"?dr(window.sessionStorage,ur+"session:"):Yt(),n=t&&typeof window.localStorage<"u"?dr(window.localStorage,ur+"user:"):Yt();return {session:e,user:n,org:Yt()}};var mr=(t,e)=>t.expiresAt!==null&&t.expiresAt<=e,fr=t=>{if(!t)return null;try{let e=JSON.parse(t);return typeof e!="object"||e===null?null:e}catch{return null}},Ds=t=>JSON.stringify(t),Xt=(t={})=>{let e=pr(),n=l=>{t.onTrace?.(l);};return {get:(l,c={})=>{let u=c.scope??"session",v=e[u],h=fr(v.read(l));if(!h){n({type:"memory.accessed",metadata:{operation:"get",key:l,scope:u,hit:false}});return}if(mr(h,Date.now())){v.remove(l),n({type:"memory.accessed",metadata:{operation:"get",key:l,scope:u,hit:false,expired:true}});return}return n({type:"memory.accessed",metadata:{operation:"get",key:l,scope:u,hit:true}}),h.value},set:(l,c,u={})=>{let v=u.scope??"session",h=u.ttlSeconds??null,T=Date.now(),x={value:c,expiresAt:h===null?null:T+h*1e3,updatedAt:new Date(T).toISOString()};return e[v].write(l,Ds(x)),n({type:"memory.updated",metadata:{operation:"set",key:l,scope:v,ttlSeconds:h}}),It.parse({key:l,value:c,scope:v,ttlSeconds:h,updatedAt:x.updatedAt})},remove:(l,c={})=>{let u=c.scope??"session";e[u].remove(l),n({type:"memory.updated",metadata:{operation:"remove",key:l,scope:u}});},list:(l={})=>{let c=l.scope??"session",u=e[c],v=Date.now(),h=[];for(let T of u.keys()){let x=fr(u.read(T));if(x){if(mr(x,v)){u.remove(T);continue}h.push(It.parse({key:T,value:x.value,scope:c,ttlSeconds:x.expiresAt===null?null:Math.max(0,Math.round((x.expiresAt-v)/1e3)),updatedAt:x.updatedAt}));}}return n({type:"memory.accessed",metadata:{operation:"list",scope:c,count:h.length}}),h},clear:(l={})=>{let c=l.scope??"session",u=e[c],v=u.keys().length;for(let h of u.keys())u.remove(h);n({type:"memory.updated",metadata:{operation:"clear",scope:c,count:v}});}}};var Qt=t=>W.parse(JSON.parse(JSON.stringify(t))),lt=t=>({...t,updatedAt:new Date().toISOString()}),en=(t={})=>{let e=W.parse({...Kn,...t.initial??{}}),n=null,r=new Set,o=g=>{t.onTrace?.(g);},s=()=>{n=null;},i=()=>{if(r.size===0)return;let g=Qt(e);n=g,r.forEach(A=>A(g));},a=g=>{let A=W.parse({...e,...g,workflows:{...e.workflows,...g.workflows??{}},policies:{...e.policies,...g.policies??{}},uiGuidance:{...e.uiGuidance,...g.uiGuidance??{}},pageContexts:{...e.pageContexts,...g.pageContexts??{}}});return e=lt(A),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"provide",keys:Object.keys(g)}}),i(),u()},l=(g,A)=>{let S=g.split(".").filter(Boolean);if(S.length===0)throw new Error("siteMemory.update() requires a non-empty dot-path.");let D=JSON.parse(JSON.stringify(e)),U=D;for(let G=0;G<S.length-1;G++){let N=S[G],z=U[N];(typeof z!="object"||z===null||Array.isArray(z))&&(U[N]={}),U=U[N];}return U[S[S.length-1]]=A,e=lt(W.parse(D)),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"update",path:g}}),i(),u()},c=g=>{let A=Rt.parse({path:g.path,payload:g.payload,updatedAt:new Date().toISOString()});return e=lt({...e,pageContexts:{...e.pageContexts,[g.path]:A}}),s(),o({type:"memory.updated",metadata:{kind:"site",operation:"provideForPage",path:g.path}}),i(),{...A,payload:{...A.payload}}},u=()=>(n||(n=Qt(e)),n);return {provide:a,update:l,provideForPage:c,snapshot:u,get:g=>{if(o({type:"memory.accessed",metadata:{kind:"site",operation:g?"get":"snapshot",path:g??null}}),!g)return Qt(e);let A=g.split(".").filter(Boolean),S=e;for(let D of A){if(typeof S!="object"||S===null)return;S=S[D];}return S},getForPage:g=>{o({type:"memory.accessed",metadata:{kind:"site",operation:"getForPage",path:g}});let A=e.pageContexts[g];return A?{...A,payload:{...A.payload}}:null},replace:g=>(e=lt(W.parse(g)),s(),i(),u()),subscribe:g=>(r.add(g),()=>{r.delete(g);})}};var tn=({gatewayUrl:t,siteId:e,publishableKey:n,fetcher:r=fetch})=>{let o={memory:null,etag:null};return {snapshot(){return {memory:o.memory?W.parse(o.memory):null,etag:o.etag}},async sync(){let s=await r(`${t.replace(/\/$/,"")}/v1/pub/sites/${encodeURIComponent(e)}/memory`,{headers:{authorization:`Bearer ${n}`,...o.etag?{"if-none-match":o.etag}:{}}});if(s.status===304)return this.snapshot();if(!s.ok)throw new Error(`Memory sync failed with status ${s.status}.`);let i=await s.json();return o={memory:W.parse(i.memory??{}),etag:s.headers.get("etag")},this.snapshot()}}};var gr=({toolName:t="getSiteContext",description:e="Returns Agentronics site memory: page map, workflows, policies, UI guidance.",getSnapshot:n,onAccess:r})=>({name:t,description:e,inputSchema:{type:"object",properties:{path:{type:"string",description:'Optional dot-path into the site memory (e.g. "workflows.purchase").'}},required:[]},invoke(o={}){let s=n(),i=o.path??null;if(r?.(i),!i)return {content:s};let a=i.split(".").filter(Boolean),l=s;for(let c of a){if(typeof l!="object"||l===null)return {content:void 0};l=l[c];}return {content:l}}});var ue="agent-context-",nn="agentronics-site-context",js=t=>{try{return JSON.stringify(t)}catch{return "{}"}},dt=(t,e,n)=>{let r=t.querySelector(`meta[name="${e}"]`);r||(r=t.createElement("meta"),r.setAttribute("name",e),t.head.appendChild(r)),r.setAttribute("content",n);},ut=(t,e)=>{t.querySelectorAll(`meta[name="${e}"]`).forEach(n=>n.remove());},pt=({doc:t=typeof document>"u"?null:document,snapshot:e,schemaType:n="WebSite"})=>{if(!t)return {uninstall:()=>{}};dt(t,`${ue}version`,e.version),dt(t,`${ue}updated-at`,e.updatedAt??new Date().toISOString()),e.siteMap?.navigation?.flow&&dt(t,`${ue}flow`,e.siteMap.navigation.flow),dt(t,`${ue}workflows`,Object.keys(e.workflows).join(","));let r=t.getElementById(nn);return r||(r=t.createElement("script"),r.type="application/ld+json",r.id=nn,t.head.appendChild(r)),r.textContent=js({"@context":"https://schema.org","@type":n,name:"Agentronics Site Memory",agentronics:e}),{uninstall:()=>{ut(t,`${ue}version`),ut(t,`${ue}updated-at`),ut(t,`${ue}flow`),ut(t,`${ue}workflows`),t.getElementById(nn)?.remove();}}};var yr="agentronics-memory-overlay",Ns=t=>`
2
2
  position: fixed;
3
3
  bottom: 16px;
4
4
  right: 16px;
5
5
  max-width: 320px;
6
6
  padding: 10px 12px;
7
- background: rgba(17, 24, 39, 0.92);
8
- color: #f9fafb;
7
+ background: rgba(11, 11, 12, 0.92);
8
+ color: #ffffff;
9
9
  font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace;
10
- border-radius: 8px;
10
+ border: 1px solid rgba(255, 255, 255, 0.15);
11
+ border-radius: 10px;
11
12
  z-index: 2147483647;
12
13
  opacity: ${t?"0":"1"};
13
14
  pointer-events: ${t?"none":"auto"};
14
- box-shadow: 0 12px 32px rgba(15, 23, 42, 0.35);
15
- `,Lr=t=>{let e=t.siteMap?.pages?.length??0,r=Object.keys(t.workflows).length,n=Object.keys(t.uiGuidance).length;return `Agentronics site memory \xB7 pages:${e} \xB7 workflows:${r} \xB7 ui-hints:${n}`},ot=({doc:t=typeof document>"u"?null:document,snapshot:e,hidden:r=false})=>{if(!t)return {uninstall:()=>{},refresh:()=>{}};let n=t.getElementById($r);return n||(n=t.createElement("div"),n.id=$r,n.setAttribute("role","note"),n.setAttribute("aria-label","Agentronics site memory summary"),n.setAttribute("data-agent-context","overlay"),t.body.appendChild(n)),n.setAttribute("style",es(r)),n.textContent=Lr(e),{uninstall:()=>{n?.remove();},refresh:o=>{n&&(n.textContent=Lr(o));}}};var Lt="/.well-known/agent-context.json",st=async({origin:t,fetcher:e=fetch,signal:r}={})=>{let n=(t?t.replace(/\/$/,""):typeof window<"u"?window.location.origin:"")+Lt;if(!n.startsWith("http"))return null;let o={headers:{accept:"application/json"}};r!==void 0&&(o.signal=r);let s=await e(n,o);if(!s.ok){if(s.status===404)return null;throw new Error(`well-known agent-context fetch failed with status ${s.status}.`)}let a=await s.json();return $.parse(a)},Wr=({snapshot:t})=>JSON.stringify($.parse(t));var Wt=({evaluate:t,setPolicies:e,listPolicies:r,onTrace:n,identityResolver:o})=>{let s=new Map,a=new Set,i=c=>{if(!c.authz||!e||!r)return;let u={id:`tool:${c.name}`,tool:c.name,...c.authz,rateLimit:c.rateLimit??c.authz.rateLimit};e([...r().filter(p=>p.id!==u.id),u]);};return {register(c){return s.set(c.name,c),a.delete(c.name),i(c),n?.({type:"tool.registered",tool:c.name,metadata:{version:c.version??null,group:c.group??null,stage:c.stage??null}}),()=>{s.delete(c.name),a.delete(c.name);}},unregister(c){s.delete(c),a.delete(c);},enable(c){!s.has(c)||!a.has(c)||(a.delete(c),n?.({type:"tool.surfaced",tool:c,metadata:{state:"enabled"}}));},disable(c){!s.has(c)||a.has(c)||(a.add(c),n?.({type:"tool.surfaced",tool:c,metadata:{state:"disabled"}}));},isEnabled:c=>s.has(c)&&!a.has(c),list({includeDisabled:c=false}={}){let u=[...s.values()];return c?u:u.filter(p=>!a.has(p.name))},get:c=>s.get(c),async execute(c,u,p){let h=p===void 0?o?.()??null:p,w=s.get(c);if(!w)throw new Error(`Tool "${c}" is not registered.`);if(a.has(c)){let b={decision:"deny",ruleId:`tool:${c}`,reason:"Tool is disabled."};throw n?.({type:"tool.executed",tool:c,agent:h,policy:b,outcome:"blocked"}),new Error(b.reason)}let I=await t(c,{identity:h});if(I.decision==="deny")throw n?.({type:"tool.executed",tool:c,agent:h,policy:I,outcome:"blocked"}),new Error(I.reason);let E=Date.now();try{let b=await w.execute(u,{identity:h});return n?.({type:"tool.executed",tool:c,agent:h,policy:I,outcome:"success",durationMs:Date.now()-E}),b}catch(b){throw n?.({type:"tool.executed",tool:c,agent:h,policy:I,outcome:"error",durationMs:Date.now()-E,error:b instanceof Error?b.message:String(b)}),b}}}};var Bt=t=>{let e={name:t.name,description:t.description??"",inputSchema:t.inputSchema??{},tokens:0};return t.group&&(e.group=t.group),t.stage&&(e.page=t.stage),t.outputSchema&&(e.outputSchema=t.outputSchema),e.tokens=Math.ceil(JSON.stringify({name:e.name,description:e.description,inputSchema:e.inputSchema,...e.outputSchema?{outputSchema:e.outputSchema}:{}}).length/4),e},Br=({gatewayUrl:t,siteId:e,publishableKey:r,fetcher:n=fetch})=>({async push(o){let s=o.map(Bt),a=await n(`${t.replace(/\/$/,"")}/v1/sites/${encodeURIComponent(e)}/tools`,{method:"PUT",headers:{authorization:`Bearer ${r}`,"content-type":"application/json"},body:JSON.stringify({registry:{tools:s}})});if(!a.ok)throw new Error(`Tool sync failed with status ${a.status}.`);return s.length}});var Vt=(t,e={})=>{let r=new Map;for(let a of t.stages)r.set(a.name,a);if(!r.has(t.initial))throw new Error(`Initial stage "${t.initial}" is not declared in progression stages.`);let n=t.initial,o=()=>{let a=r.get(n);return a?.enables?[n,...a.enables]:[n]},s=(a,i)=>{let c=n;if(!r.has(a))throw new Error(`Cannot transition to unknown stage "${a}".`);return a===n?{changed:false,from:c,to:a}:(n=a,e.onTrace?.({type:"tool.progressed",metadata:{from:c,to:a,trigger:i}}),{changed:true,from:c,to:a})};return {current:()=>n,enabledStages:()=>o(),notify(a){let c=r.get(n)?.transitions?.find(u=>u.on===a);return c?s(c.to,a):{changed:false,from:n,to:n}},set(a){return s(a,"manual")},reset(){let a=n;n=t.initial,a!==n&&e.onTrace?.({type:"tool.progressed",metadata:{from:a,to:n,trigger:"reset"}});},snapshot:()=>({current:n,enabled:o()})}};var ts=(t,e)=>{let r=t.authz?.minTrust;return r?e?G[e.trust]<G[r]?{ok:false,reason:`trust-too-low:${e.trust}<${r}`}:{ok:true,reason:"trust-ok"}:{ok:false,reason:`requires-trust:${r}`}:{ok:true,reason:"no-trust-floor"}},rs=(t,e)=>{let r=t.authz?.allowedClasses??[];return r.length===0?{ok:true,reason:"no-class-restriction"}:e?r.includes(e.class)?{ok:true,reason:"class-ok"}:{ok:false,reason:`class-not-allowed:${e.class}`}:{ok:false,reason:`requires-class:${r.join("|")}`}},ns=(t,e)=>t.stage?e.enabledStages&&e.enabledStages.includes(t.stage)?{ok:true,reason:`stage-enabled:${t.stage}`}:e.stage===t.stage?{ok:true,reason:`stage-active:${t.stage}`}:{ok:false,reason:`stage-locked:${t.stage}`}:{ok:true,reason:"no-stage"},Ut=(t,e)=>{let r=ts(t,e.identity);if(!r.ok)return {tool:t,visible:false,reason:r.reason};let n=rs(t,e.identity);if(!n.ok)return {tool:t,visible:false,reason:n.reason};let o=ns(t,e);return o.ok?t.authz?.decision==="deny"?{tool:t,visible:false,reason:"authz-deny"}:{tool:t,visible:true,reason:"visible"}:{tool:t,visible:false,reason:o.reason}},Gt=(t,e)=>t.filter(r=>Ut(r,e).visible),zt=(t,e)=>t.map(r=>Ut(r,e));var Zt="default",Ft=t=>{let e=new Map;for(let r of t){let n=r.group??Zt,o=e.get(n)??[];o.push(r),e.set(n,o);}return [...e.entries()].sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,tools:n}))},os=t=>[...new Set(t.map(e=>e.group??Zt))].sort();var Kt=t=>t===null||typeof t!="object"?JSON.stringify(t):Array.isArray(t)?`[${t.map(Kt).join(",")}]`:`{${Object.keys(t).sort().map(r=>`${JSON.stringify(r)}:${Kt(t[r])}`).join(",")}}`,Vr=t=>{let e={name:t.name,version:t.version??null,group:t.group??null,description:t.description??null,inputSchema:t.inputSchema??null,authz:t.authz??null,rateLimit:t.rateLimit??null},r=Kt(e).length;return {name:t.name,characters:r,tokens:Math.ceil(r/4)}},Ht=t=>{let e=t.map(Vr);return {total:e.reduce((n,o)=>n+o.tokens,0),perTool:e}};var Ur=t=>{if(t.provider)return t.provider;let r=(t.doc?.defaultView??(typeof globalThis<"u"?globalThis:null))?.navigator?.modelContext;return !r||typeof r.provideContext!="function"?null:r},ss=(t,e)=>{let r={name:t.name,invoke:n=>e(t,n)};return t.description!==void 0&&(r.description=t.description),t.inputSchema!==void 0&&(r.inputSchema=t.inputSchema),r},Jt=(t={})=>{let e=t.invoke??(async(n,o)=>n.execute(o,{identity:null})),r=null;return {publish(n){let o=Ur(t);return o?(r?.revoke(),r=o.provideContext({tools:n.map(s=>ss(s,e))}),{revoked:true}):{revoked:false}},revoke(){r?.revoke(),r=null;},available:()=>!!Ur(t)}};var at=(t=500)=>{let e=[];return {add(r){e.push(r),e.length>t&&e.splice(0,e.length-t);},list(){return [...e]},clear(){e.length=0;}}};var Gr=(t,e)=>t===void 0?e:Math.max(0,Math.min(1,t)),qt=(t={})=>{let e=Gr(t.traceRate,1),r=Gr(t.errorRate,1),n=t.random??Math.random;return {shouldKeep(o){let s=o.outcome==="error"?r:e;return n()<s}}};var as="[REDACTED]",is=t=>{if(t!==void 0)return JSON.parse(JSON.stringify(t))},Yt=(t,e)=>{if(e.length===0||typeof t!="object"||t===null)return;let[r,...n]=e;if(!r)return;if(Array.isArray(t)){for(let s of t)Yt(s,e);return}let o=t;if(r in o){if(n.length===0){o[r]=as;return}Yt(o[r],n);}},Xt=(t,e=[])=>{if(e.length===0)return t;let r=is(t);for(let n of e)Yt(r,n.split(".").filter(Boolean));return r},Qt=["metadata.password","metadata.token","metadata.authorization","metadata.cookie"];var cs=()=>typeof location<"u"&&typeof location.pathname=="string"?location.pathname:void 0,zr=t=>{let e=globalThis.crypto;return e&&"randomUUID"in e?`${t}_${e.randomUUID()}`:`${t}_${Date.now().toString(36)}_${Math.random().toString(36).slice(2)}`},it=({siteId:t,bufferSize:e,sessionId:r=zr("ses"),scrubPaths:n=Qt,exporters:o=[],onExporterError:s,pageProvider:a=cs,...i})=>{let c=at(e),u=qt(i),p=()=>{try{return a()}catch{return}};return {sessionId:r,async emit(h){let w={...h.metadata};if(w.page===void 0){let E=p();E!==void 0&&(w.page=E);}let I=xt.parse(Xt({id:zr("trc"),siteId:t,sessionId:r,occurredAt:new Date().toISOString(),outcome:h.outcome??"success",...h,metadata:w},n));return u.shouldKeep(I)?(c.add(I),await Promise.all(o.map(async E=>{try{await E.export([I]);}catch(b){s?.(b,E,I);}})),I):null},list:()=>c.list(),clear:()=>c.clear()}};var ct=()=>({name:"console",export(t){for(let e of t)console.info("[agentronics:trace]",e.type,e);}});var lt=({gatewayUrl:t,publishableKey:e,fetcher:r=fetch})=>({name:"gateway",async export(n){let o={publishableKey:e,events:n};await r(`${t.replace(/\/$/,"")}/v1/traces`,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(o)});}});var ls=t=>new Promise(e=>setTimeout(e,t)),ut=({url:t,fetcher:e=fetch,maxRetries:r=2,queueLimit:n=500})=>({name:"webhook",async export(o){let a=[...us(t),...o].slice(-n),i=0;for(;;){let c=await e(t,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({events:a})});if(c.ok){Zr(t,[]);return}if(i>=r)throw Zr(t,a),new Error(`Webhook exporter failed with status ${c.status}.`);i+=1,await ls(100*i);}}}),er=t=>`agtx:webhook:${t}`,us=t=>{if(typeof window>"u"||!window.localStorage)return [];try{let e=window.localStorage.getItem(er(t));return e?JSON.parse(e):[]}catch{return []}},Zr=(t,e)=>{if(!(typeof window>"u"||!window.localStorage))try{if(e.length===0){window.localStorage.removeItem(er(t));return}window.localStorage.setItem(er(t),JSON.stringify(e));}catch{}};var Fr="/v1/sdk/events",Kr=({url:t,ingestKey:e,fetcher:r=fetch})=>{let n=t.replace(/\/$/,""),o=n.endsWith(Fr)?n:`${n}${Fr}`;return {name:"intel",async export(s){let a={events:s},i=await r(o,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(a)});if(!i.ok)throw new Error(`Intel exporter failed with status ${i.status}.`)}}},Hr=({url:t,ingestKey:e,siteId:r,fetcher:n=fetch})=>{let o=t.replace(/\/$/,""),s=async(a,i)=>{let c=await n(`${o}${a}`,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(i)});if(!c.ok)throw new Error(`Intel sync ${a} failed with status ${c.status}.`)};return {async pushTools(a){let i=a.map(Bt);return await s("/v1/sdk/tools",{siteId:r,tools:i}),i.length},async pushMemory(a,i){await s("/v1/sdk/memory",{siteId:r,snapshot:a,...typeof i=="number"?{score:i}:{}});}}};var Jr="https://gateway.agentronics.dev",ds=t=>{if(t===void 0)return Jr;if(t===Jr)return t;let e;try{e=new URL(t);}catch{throw new Error(`Agentronics SDK: \`gatewayUrl\` is not a valid URL: ${t}`)}if(e.hostname==="localhost"||e.hostname==="127.0.0.1")return t;throw new Error(`Agentronics SDK does not support custom gateway URLs. Omit \`gatewayUrl\` to use the canonical https://gateway.agentronics.dev. The only accepted override is a localhost / 127.0.0.1 URL for local development. Got: ${t}`)},qr=t=>{let{publishableKey:e,siteId:r="default",debug:n=false,policies:o=[],trace:s={}}=t,a=ds(t.gatewayUrl),i=yr(e);if(i==="secret")throw new ze("wrong_key_kind","A secret key was passed to Agentronics.init(). Browser code must use a publishable key (agtx_pk_*).");if(i!=="publishable")throw new ze("invalid_api_key",`Agentronics.init() expected a key starting with "${De}".`);let c=s.enabled??true,u=[...n?[ct()]:[],...s.gateway?[lt({gatewayUrl:a,publishableKey:e})]:[],...s.webhookUrl?[ut({url:s.webhookUrl})]:[],...s.exporters??[]],p={siteId:r,exporters:c?u:[],onExporterError:(f,T)=>{n&&console.warn(`[agentronics] trace exporter "${T.name}" failed`,f);}};s.bufferSize!==void 0&&(p.bufferSize=s.bufferSize),s.traceRate!==void 0&&(p.traceRate=s.traceRate),s.errorRate!==void 0&&(p.errorRate=s.errorRate),s.scrubPaths!==void 0&&(p.scrubPaths=s.scrubPaths);let h=it(p),w=f=>{c&&h.emit(f);},I=kt(),E={onTrace:w};t.auth!==void 0&&(E.context=t.auth);let b=St(E),C=At(),R=Ct(o),re=Et({gatewayUrl:a,siteId:r,publishableKey:e}),ne=Pt({onTrace:w}),_e={onTrace:w};t.siteMemory!==void 0&&(_e.initial=t.siteMemory);let V=jt(_e),ke=Nt({gatewayUrl:a,siteId:r,publishableKey:e}),Yr=Br({gatewayUrl:a,siteId:r,publishableKey:e}),Ze=async f=>{let T=Date.now(),O=await Qe(f),D=I.preferOver(O);return c&&await h.emit({type:D?"agent.detected":"agent.missed",agent:D,durationMs:Date.now()-T,metadata:{detectedClass:O?.class??null,presented:I.snapshot()!==null}}),C.set(D,"detect"),D},tr=async(f,T={})=>{let O=Date.now(),D=T.identity!==void 0?T.identity:await Ze(),pt=R.evaluate({tool:f,identity:D});return c&&await h.emit({type:"authz.evaluated",tool:f,agent:D,policy:pt,outcome:pt.decision==="deny"?"blocked":"success",durationMs:Date.now()-O}),pt},oe=Wt({evaluate:tr,setPolicies:f=>R.set(f),listPolicies:()=>R.list(),onTrace:w,identityResolver:()=>C.snapshot().identity});for(let f of t.tools??[])oe.register(f);let Te=t.progression?Vt(t.progression,{onTrace:w}):null,rr=f=>{let T={identity:f};return Te&&(T.stage=Te.current(),T.enabledStages=Te.enabledStages()),T},Se=f=>Gt(oe.list(),rr(f)),nr=f=>{if(!Te)return;Te.notify(f).changed&&Le.publish(Se(C.snapshot().identity));},Xr={class:"webmcp",trust:"detected",confidence:1,vendor:null,userAgent:typeof navigator<"u"?navigator.userAgent:null,detectionVersion:A,signals:{source:"navigator.modelContext"}},Le=Jt({invoke:async(f,T)=>{let O=C.snapshot().identity??Xr,D=await oe.execute(f.name,T,O);return nr(f.name),D}});C.subscribe(f=>{Le.available()&&Le.publish(Se(f.identity));});let dt=t.autoDetect??true,Qr=dt===false?Promise.resolve(null):(async()=>{let f=dt===true?{}:dt;try{return await Ze(f)}catch(T){return n&&console.warn("[agentronics] autoDetect failed:",T),null}})();return Object.freeze({publishableKey:e,siteId:r,gatewayUrl:a,debug:n,memory:ne,siteMemory:V,memoryCache:ke,tracer:h,auth:b,agentContext:C,authz:R,policyCache:re,tools:oe,progression:Te,webmcp:Le,ready:Qr,detect:Ze,authenticate:async f=>{let T=await b.authenticate(f);return C.set(T,"authenticate"),T},presentIdentity:f=>{let T=I.present(f);return w({type:"auth.identity_presented",agent:T.identity,metadata:{vendor:T.identity.vendor,class:T.identity.class}}),C.set(T.identity,"declare"),T},clearIdentity:()=>{I.clear(),w({type:"auth.identity_cleared"}),C.set(null,"cleared");},presentedIdentity:()=>I.snapshot(),setPolicies:f=>{R.set(f),w({type:"authz.policies_set",metadata:{count:f.length}});},listPolicies:()=>R.list(),syncPolicies:async()=>{let f=await re.sync();return R.set(f.policies),w({type:"authz.policies_set",metadata:{count:f.policies.length,synced:true}}),f.policies},syncSiteMemory:async()=>{let f=await ke.sync();return f.memory&&(V.replace(f.memory),w({type:"memory.updated",metadata:{kind:"site",operation:"sync",etag:f.etag}})),f.memory},provideSiteMemory:f=>V.provide(f),provideForPage:f=>{V.provideForPage(f);},installMemoryDelivery:({metaTags:f=true,overlay:T=false}={})=>{let O=[];return f&&O.push(nt({snapshot:V.snapshot()})),T&&O.push(ot({snapshot:V.snapshot()})),{uninstall:()=>{O.forEach(D=>D.uninstall());}}},fetchWellKnown:async f=>{let T={};f!==void 0&&(T.origin=f);let O=await st(T);return O&&(V.replace(O),w({type:"memory.updated",metadata:{kind:"site",operation:"wellKnown",origin:f??null}})),O},installDomEnforcer:()=>Mt({policyEngine:R,getIdentity:()=>Ze({webmcp:{pollMs:0}})}),registerTool:f=>oe.register(f),syncTools:async()=>{let f=oe.list({includeDisabled:true}),T=await Yr.push(f);return w({type:"tool.registered",metadata:{operation:"sync",count:T}}),T},surfaceTools:({identity:f=null}={})=>Se(f),explainSurfacing:({identity:f=null}={})=>zt(oe.list(),rr(f)),groupedTools:({identity:f=null}={})=>Ft(Se(f)),estimateTokens:({identity:f=null}={})=>Ht(Se(f)),publishToWebMcp:({identity:f=null}={})=>{let T=Se(f),O=Le.publish(T);return T.forEach(D=>{w({type:"tool.surfaced",tool:D.name,metadata:{state:"published",trust:f?.trust??null,group:D.group??null}});}),{revoked:O.revoked,surfaced:T.length}},notifyToolInvoked:f=>nr(f),evaluate:tr,traces:()=>h.list(),clearTraces:()=>h.clear(),async ping(){try{let f=await fetch(`${a.replace(/\/$/,"")}/v1/health`,{method:"GET",headers:{authorization:`Bearer ${e}`}});if(!f.ok)return {ok:!1,status:f.status,error:`gateway returned ${f.status}`};let T=await f.json().catch(()=>null)??{};return {ok:!0,status:f.status,body:T}}catch(f){return {ok:false,status:0,error:f instanceof Error?f.message:String(f)}}}})};var nl={init:qr,declareAgent:_t,detectAgent:Qe},ol="0.1.0";
16
- exports.Agentronics=nl;exports.CRAWLER_SIGNATURES=bt;exports.DEFAULT_GROUP=Zt;exports.VERSION=ol;exports.WELL_KNOWN_PATH=Lt;exports.bundledDetectors=wt;exports.createAgentContextStore=At;exports.createAuthEngine=St;exports.createConsoleExporter=ct;exports.createDetectorRegistry=Xe;exports.createGatewayExporter=lt;exports.createIdentityStore=kt;exports.createIntelExporter=Kr;exports.createIntelSync=Hr;exports.createMemoryCache=Nt;exports.createMemoryStore=Pt;exports.createPolicyCache=Et;exports.createPolicyEngine=Ct;exports.createProgressionStore=Vt;exports.createRateLimiter=It;exports.createSignatureLoader=xr;exports.createSiteMemoryStore=jt;exports.createToolRegistry=Wt;exports.createTraceBuffer=at;exports.createTracer=it;exports.createWebMcpAdapter=Jt;exports.createWebMcpContextTool=Nr;exports.createWebhookExporter=ut;exports.decideSurfacing=Ut;exports.declareAgent=_t;exports.deriveTrustLevel=Wo;exports.detectAgent=Qe;exports.detectCrawler=Ne;exports.detectDom=$e;exports.detectWebMcp=je;exports.estimateBudget=Ht;exports.estimateToolTokens=Vr;exports.explainSurfacing=zt;exports.fetchWellKnownContext=st;exports.groupTools=Ft;exports.highestTrust=Tt;exports.init=qr;exports.installDomEnforcer=Mt;exports.installMemoryOverlay=ot;exports.installMetaTags=nt;exports.listGroupNames=os;exports.serializeWellKnownContext=Wr;exports.showDenyOverlay=Rt;exports.surfaceTools=Gt;return exports;})({});//# sourceMappingURL=index.global.js.map
15
+ `,hr=t=>{let e=t.siteMap?.pages?.length??0,n=Object.keys(t.workflows).length,r=Object.keys(t.uiGuidance).length;return `Agentronics site memory \xB7 pages:${e} \xB7 workflows:${n} \xB7 ui-hints:${r}`},mt=({doc:t=typeof document>"u"?null:document,snapshot:e,hidden:n=false})=>{if(!t)return {uninstall:()=>{},refresh:()=>{}};let r=t.getElementById(yr);return r||(r=t.createElement("div"),r.id=yr,r.setAttribute("role","note"),r.setAttribute("aria-label","Agentronics site memory summary"),r.setAttribute("data-agent-context","overlay"),t.body.appendChild(r)),r.setAttribute("style",Ns(n)),r.textContent=hr(e),{uninstall:()=>{r?.remove();},refresh:o=>{r&&(r.textContent=hr(o));}}};var rn="/.well-known/agent-context.json",ft=async({origin:t,fetcher:e=fetch,signal:n}={})=>{let r=(t?t.replace(/\/$/,""):typeof window<"u"?window.location.origin:"")+rn;if(!r.startsWith("http"))return null;let o={headers:{accept:"application/json"}};n!==void 0&&(o.signal=n);let s=await e(r,o);if(!s.ok){if(s.status===404)return null;throw new Error(`well-known agent-context fetch failed with status ${s.status}.`)}let i=await s.json();return W.parse(i)},vr=({snapshot:t})=>JSON.stringify(W.parse(t));var on=({evaluate:t,setPolicies:e,listPolicies:n,onTrace:r,identityResolver:o,reviewer:s})=>{let i=new Map,a=new Set,l=c=>{if(!c.authz||!e||!n)return;let u={id:`tool:${c.name}`,tool:c.name,...c.authz,rateLimit:c.rateLimit??c.authz.rateLimit};e([...n().filter(v=>v.id!==u.id),u]);};return {register(c){return i.set(c.name,c),a.delete(c.name),l(c),r?.({type:"tool.registered",tool:c.name,metadata:{version:c.version??null,group:c.group??null,stage:c.stage??null}}),()=>{i.delete(c.name),a.delete(c.name);}},unregister(c){i.delete(c),a.delete(c);},enable(c){!i.has(c)||!a.has(c)||(a.delete(c),r?.({type:"tool.surfaced",tool:c,metadata:{state:"enabled"}}));},disable(c){!i.has(c)||a.has(c)||(a.add(c),r?.({type:"tool.surfaced",tool:c,metadata:{state:"disabled"}}));},isEnabled:c=>i.has(c)&&!a.has(c),list({includeDisabled:c=false}={}){let u=[...i.values()];return c?u:u.filter(v=>!a.has(v.name))},get:c=>i.get(c),async execute(c,u,v,h={}){let T=v===void 0?o?.()??null:v,x=i.get(c);if(!x)throw new Error(`Tool "${c}" is not registered.`);if(a.has(c)){let S={decision:"deny",ruleId:`tool:${c}`,reason:"Tool is disabled."};throw r?.({type:"tool.executed",tool:c,agent:T,policy:S,outcome:"blocked"}),new Error(S.reason)}let g=await t(c,{identity:T});if(g.decision==="deny")throw r?.({type:"tool.executed",tool:c,agent:T,policy:g,outcome:"blocked"}),new Error(g.reason);if(g.decision==="review"){let S={tool:c,input:u,identity:T,reason:g.reason};x.title!==void 0&&(S.title=x.title),x.description!==void 0&&(S.description=x.description);let D=s?await s(S).catch(()=>false):false;if(r?.({type:"authz.evaluated",tool:c,agent:T,policy:g,outcome:D?"success":"blocked",metadata:{review:true,approved:D,reviewer:s?"configured":"none"}}),!D){let U={...g,decision:"deny",reason:s?"The person on the page did not approve this action.":"This action needs review and no reviewer is configured."};throw r?.({type:"tool.executed",tool:c,agent:T,policy:U,outcome:"blocked"}),new Error(U.reason)}g={...g,reason:`${g.reason} Approved by the person on the page.`};}let A=Date.now();try{let S={identity:T};h.signal&&(S.signal=h.signal);let D=await x.execute(u,S);return r?.({type:"tool.executed",tool:c,agent:T,policy:g,outcome:"success",durationMs:Date.now()-A}),D}catch(S){throw r?.({type:"tool.executed",tool:c,agent:T,policy:g,outcome:"error",durationMs:Date.now()-A,error:S instanceof Error?S.message:String(S)}),S}}}};var gt=t=>t===null||typeof t!="object"?JSON.stringify(t):Array.isArray(t)?`[${t.map(gt).join(",")}]`:`{${Object.keys(t).sort().map(n=>`${JSON.stringify(n)}:${gt(t[n])}`).join(",")}}`,sn=t=>({name:t.name,...t.title?{title:t.title}:{},description:t.description??t.name,...t.inputSchema?{inputSchema:t.inputSchema}:{},...t.annotations?{annotations:t.annotations}:{}}),an=t=>Math.ceil(gt(sn(t)).length/4),xr=t=>{let e=gt(sn(t)).length;return {name:t.name,characters:e,tokens:Math.ceil(e/4)}},cn=t=>{let e=t.map(xr);return {total:e.reduce((r,o)=>r+o.tokens,0),perTool:e}};var ln=t=>{let e={name:t.name,description:t.description??"",inputSchema:t.inputSchema??{},tokens:0};return t.title&&(e.title=t.title),t.annotations&&(e.annotations={...t.annotations}),t.group&&(e.group=t.group),t.stage&&(e.page=t.stage),t.outputSchema&&(e.outputSchema=t.outputSchema),e.tokens=an(t),e},br=({gatewayUrl:t,siteId:e,publishableKey:n,fetcher:r=fetch})=>({async push(o){let s=o.map(ln),i=await r(`${t.replace(/\/$/,"")}/v1/pub/sites/${encodeURIComponent(e)}/tools`,{method:"PUT",headers:{authorization:`Bearer ${n}`,"content-type":"application/json"},body:JSON.stringify({registry:{tools:s}})});if(!i.ok)throw new Error(`Tool sync failed with status ${i.status}.`);return s.length}});var dn=(t,e={})=>{let n=new Map;for(let i of t.stages)n.set(i.name,i);if(!n.has(t.initial))throw new Error(`Initial stage "${t.initial}" is not declared in progression stages.`);let r=t.initial,o=()=>{let i=n.get(r);return i?.enables?[r,...i.enables]:[r]},s=(i,a)=>{let l=r;if(!n.has(i))throw new Error(`Cannot transition to unknown stage "${i}".`);return i===r?{changed:false,from:l,to:i}:(r=i,e.onTrace?.({type:"tool.progressed",metadata:{from:l,to:i,trigger:a}}),{changed:true,from:l,to:i})};return {current:()=>r,enabledStages:()=>o(),notify(i){let l=n.get(r)?.transitions?.find(c=>c.on===i);return l?s(l.to,i):{changed:false,from:r,to:r}},set(i){return s(i,"manual")},reset(){let i=r;r=t.initial,i!==r&&e.onTrace?.({type:"tool.progressed",metadata:{from:i,to:r,trigger:"reset"}});},snapshot:()=>({current:r,enabled:o()})}};var Ls=(t,e)=>{let n=t.authz?.minTrust;return n?e?q[e.trust]<q[n]?{ok:false,reason:`trust-too-low:${e.trust}<${n}`}:{ok:true,reason:"trust-ok"}:{ok:false,reason:`requires-trust:${n}`}:{ok:true,reason:"no-trust-floor"}},$s=(t,e)=>{let n=t.authz?.allowedClasses??[];return n.length===0?{ok:true,reason:"no-class-restriction"}:e?n.includes(e.class)?{ok:true,reason:"class-ok"}:{ok:false,reason:`class-not-allowed:${e.class}`}:{ok:false,reason:`requires-class:${n.join("|")}`}},Ws=(t,e)=>t.stage?e.enabledStages&&e.enabledStages.includes(t.stage)?{ok:true,reason:`stage-enabled:${t.stage}`}:e.stage===t.stage?{ok:true,reason:`stage-active:${t.stage}`}:{ok:false,reason:`stage-locked:${t.stage}`}:{ok:true,reason:"no-stage"},un=(t,e)=>{let n=Ls(t,e.identity);if(!n.ok)return {tool:t,visible:false,reason:n.reason};let r=$s(t,e.identity);if(!r.ok)return {tool:t,visible:false,reason:r.reason};let o=Ws(t,e);return o.ok?t.authz?.decision==="deny"?{tool:t,visible:false,reason:"authz-deny"}:{tool:t,visible:true,reason:"visible"}:{tool:t,visible:false,reason:o.reason}},pn=(t,e)=>t.filter(n=>un(n,e).visible),mn=(t,e)=>t.map(n=>un(n,e));var fn="default",gn=t=>{let e=new Map;for(let n of t){let r=n.group??fn,o=e.get(r)??[];o.push(n),e.set(r,o);}return [...e.entries()].sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>({name:n,tools:r}))},Vs=t=>[...new Set(t.map(e=>e.group??fn))].sort();var Bs=(t,e)=>t==="legacy",Us=(t,e)=>{let n={name:t.name,description:t.description??t.name,execute:(r,{signal:o})=>e(t,r??{},o)};return t.title!==void 0&&(n.title=t.title),t.inputSchema!==void 0&&(n.inputSchema=t.inputSchema),t.annotations!==void 0&&(n.annotations={...t.annotations}),n},yn=(t={})=>{let e=t.invoke??(async(c,u)=>c.execute(u,{identity:null})),n=null,r=null,o=null,s=[],i=()=>{let c=t.modelContext??t.provider;return c?{source:typeof c.registerTool=="function"?"document":"legacy",context:c}:Xe(t.host)},a=()=>{n?.abort(),n=null,r?.revoke(),r=null;},l=c=>{if(o||typeof c.addEventListener!="function")return;let u=h=>Dt("activated",h.toolName??""),v=h=>Dt("cancelled",h.toolName??"");c.addEventListener("toolactivated",u),c.addEventListener("toolcancel",v),o=()=>{c.removeEventListener?.("toolactivated",u),c.removeEventListener?.("toolcancel",v),o=null;};};return {publish(c){let u=i();if(!u)return {revoked:false,registrations:Promise.resolve([])};if(a(),Bs(u.source,u.context))return r=u.context.provideContext({tools:c.map(x=>{let g={name:x.name,invoke:A=>e(x,A)};return x.description!==void 0&&(g.description=x.description),x.inputSchema!==void 0&&(g.inputSchema=x.inputSchema),g})}),s=c.map(x=>({name:x.name,status:"callable"})),{revoked:true,registrations:Promise.resolve(s)};let v=u.context;l(v);let h=new AbortController;return n=h,{revoked:true,registrations:Promise.all(c.map(async x=>{try{let g={signal:h.signal};return x.exposedTo?.length&&(g.exposedTo=x.exposedTo),await v.registerTool(Us(x,e),g),{name:x.name,status:"callable"}}catch(g){return {name:x.name,status:"failed",error:g instanceof Error?`${g.name}: ${g.message}`:String(g)}}})).then(x=>(n===h&&(s=x),x))}},revoke(){a(),o?.(),s=[];},available:()=>!!i(),source:()=>i()?.source??null,status:()=>[...s]}};var Gs=t=>t===null||typeof t!="object"?"":Object.entries(t).slice(0,6).map(([n,r])=>`${n}: ${typeof r=="string"?r:JSON.stringify(r)}`.slice(0,90)).join(`
16
+ `),hn=({documentRef:t=typeof document>"u"?void 0:document,timeoutMs:e=12e4}={})=>n=>new Promise(r=>{if(!t?.body)return r(false);let o=t,s=o.createElement("div");s.setAttribute("data-agentronics-review","true"),Object.assign(s.style,{position:"fixed",inset:"0",zIndex:"2147483647",background:"rgba(11,11,12,0.45)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px"});let i=o.createElement("div");i.setAttribute("role","dialog"),i.setAttribute("aria-modal","true"),i.setAttribute("aria-label","Approve agent action"),Object.assign(i.style,{width:"min(440px, 100%)",background:"#FFFFFF",color:"#0B0B0C",border:"2px solid #0B0B0C",borderRadius:"16px",padding:"20px",boxShadow:"8px 8px 0 #0B0B0C",font:"14px/1.5 system-ui, -apple-system, 'Segoe UI', sans-serif"});let a=o.createElement("div");a.style.fontWeight="700",a.style.fontSize="16px";let l=n.identity?.vendor??"An AI agent";a.textContent=`${l} wants to ${n.title??n.tool}`;let c=o.createElement("div");c.style.margin="8px 0 0",c.style.color="rgba(11,11,12,0.65)",c.textContent=n.description??"Allow this action on your behalf?";let u=o.createElement("pre"),v=Gs(n.input);Object.assign(u.style,{display:v?"block":"none",margin:"12px 0 0",padding:"10px 12px",background:"rgba(11,11,12,0.06)",borderRadius:"10px",fontSize:"12px",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace",whiteSpace:"pre-wrap",overflowWrap:"anywhere"}),u.textContent=v;let h=o.createElement("div");Object.assign(h.style,{display:"flex",gap:"8px",justifyContent:"flex-end",marginTop:"16px"});let T=(G,N)=>{let z=o.createElement("button");return z.type="button",z.textContent=G,Object.assign(z.style,{padding:"9px 16px",borderRadius:"10px",border:"2px solid #0B0B0C",background:N?"#D4FF3A":"#FFFFFF",color:"#0B0B0C",boxShadow:N?"3px 3px 0 #0B0B0C":"none",font:"inherit",fontWeight:"650",cursor:"pointer"}),z},x=T("Not now",false),g=T("Allow",true);h.append(x,g),i.append(a,c,u,h),s.append(i);let A=false,S=G=>{A||(A=true,clearTimeout(U),o.removeEventListener("keydown",D,true),s.remove(),r(G));},D=G=>{G.key==="Escape"&&S(false);},U=setTimeout(()=>S(false),e);g.addEventListener("click",()=>S(true)),x.addEventListener("click",()=>S(false)),o.addEventListener("keydown",D,true),o.body.appendChild(s),g.focus();});var yt=(t=500)=>{let e=[];return {add(n){e.push(n),e.length>t&&e.splice(0,e.length-t);},list(){return [...e]},clear(){e.length=0;}}};var wr=(t,e)=>t===void 0?e:Math.max(0,Math.min(1,t)),vn=(t={})=>{let e=wr(t.traceRate,1),n=wr(t.errorRate,1),r=t.random??Math.random;return {shouldKeep(o){let s=o.outcome==="error"?n:e;return r()<s}}};var zs="[REDACTED]",Fs=t=>{if(t!==void 0)return JSON.parse(JSON.stringify(t))},xn=(t,e)=>{if(e.length===0||typeof t!="object"||t===null)return;let[n,...r]=e;if(!n)return;if(Array.isArray(t)){for(let s of t)xn(s,e);return}let o=t;if(n in o){if(r.length===0){o[n]=zs;return}xn(o[n],r);}},bn=(t,e=[])=>{if(e.length===0)return t;let n=Fs(t);for(let r of e)xn(n,r.split(".").filter(Boolean));return n},wn=["metadata.password","metadata.token","metadata.authorization","metadata.cookie"];var Ks=()=>typeof location<"u"&&typeof location.pathname=="string"?location.pathname:void 0,kr=t=>{let e=globalThis.crypto;return e&&"randomUUID"in e?`${t}_${e.randomUUID()}`:`${t}_${Date.now().toString(36)}_${Math.random().toString(36).slice(2)}`},ht=({siteId:t,bufferSize:e,sessionId:n=kr("ses"),scrubPaths:r=wn,exporters:o=[],onExporterError:s,pageProvider:i=Ks,...a})=>{let l=yt(e),c=vn(a),u=()=>{try{return i()}catch{return}};return {sessionId:n,async emit(v){let h={...v.metadata};if(h.page===void 0){let x=u();x!==void 0&&(h.page=x);}let T=Mt.parse(bn({id:kr("trc"),siteId:t,sessionId:n,occurredAt:new Date().toISOString(),outcome:v.outcome??"success",...v,metadata:h},r));return c.shouldKeep(T)?(l.add(T),await Promise.all(o.map(async x=>{try{await x.export([T]);}catch(g){s?.(g,x,T);}})),T):null},list:()=>l.list(),clear:()=>l.clear()}};var vt=()=>({name:"console",export(t){for(let e of t)console.info("[agentronics:trace]",e.type,e);}});var xt=({gatewayUrl:t,publishableKey:e,fetcher:n=fetch})=>({name:"gateway",async export(r){let o={publishableKey:e,events:r};await n(`${t.replace(/\/$/,"")}/v1/pub/traces`,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(o)});}});var Zs=t=>new Promise(e=>setTimeout(e,t)),bt=({url:t,fetcher:e=fetch,maxRetries:n=2,queueLimit:r=500})=>({name:"webhook",async export(o){let i=[...Hs(t),...o].slice(-r),a=0;for(;;){let l=await e(t,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({events:i})});if(l.ok){_r(t,[]);return}if(a>=n)throw _r(t,i),new Error(`Webhook exporter failed with status ${l.status}.`);a+=1,await Zs(100*a);}}}),kn=t=>`agtx:webhook:${t}`,Hs=t=>{if(typeof window>"u"||!window.localStorage)return [];try{let e=window.localStorage.getItem(kn(t));return e?JSON.parse(e):[]}catch{return []}},_r=(t,e)=>{if(!(typeof window>"u"||!window.localStorage))try{if(e.length===0){window.localStorage.removeItem(kn(t));return}window.localStorage.setItem(kn(t),JSON.stringify(e));}catch{}};var Tr="/v1/sdk/events",_n=({url:t,ingestKey:e,fetcher:n=fetch})=>{let r=t.replace(/\/$/,""),o=r.endsWith(Tr)?r:`${r}${Tr}`;return {name:"intel",async export(s){let i={events:s},a=await n(o,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(i)});if(!a.ok)throw new Error(`Intel exporter failed with status ${a.status}.`)}}},Tn=({url:t,ingestKey:e,siteId:n,fetcher:r=fetch})=>{let o=t.replace(/\/$/,""),s=async(l,c)=>{let u=await r(`${o}${l}`,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(c)});if(!u.ok)throw new Error(`Intel sync ${l} failed with status ${u.status}.`);return u},i=async(l,c)=>{await s(l,c);},a=new Map;return {async pushTools(l){let c=l.map(ln);return await i("/v1/sdk/tools",{siteId:n,tools:c}),c.length},async pushMemory(l,c){await i("/v1/sdk/memory",{siteId:n,snapshot:l,...typeof c=="number"?{score:c}:{}});},async pullConfig(){let l=await(await s("/v1/sdk/config",{siteId:n})).json();return {policies:Array.isArray(l.policies)?l.policies:[],toolDescriptions:l.toolDescriptions&&typeof l.toolDescriptions=="object"?l.toolDescriptions:{},siteMemory:l.siteMemory&&typeof l.siteMemory=="object"?l.siteMemory:null,fetchedAt:typeof l.fetchedAt=="string"?l.fetchedAt:new Date().toISOString()}},keyVerifier({cacheSeconds:l=60}={}){return async c=>{let u=a.get(c);if(u&&u.until>Date.now())return u.value;let v=null;try{let h=await(await s("/v1/sdk/agent-keys/verify",{key:c})).json();h.valid&&h.agentId&&(v={agentId:h.agentId},h.name&&(v.name=h.name),h.vendor&&(v.vendor=h.vendor));}catch{return u?u.value:null}return a.size>5e3&&a.delete(a.keys().next().value),a.set(c,{value:v,until:Date.now()+l*1e3}),v}}}},Sr=_n,Ar=Tn;var Qe="https://api.agentronics.dev",Js="https://gateway.agentronics.dev",qs=t=>{if(t===void 0||t.replace(/\/$/,"")===Qe||t.replace(/\/$/,"")===Js)return Qe;let e;try{e=new URL(t);}catch{throw new Error(`Agentronics SDK: \`gatewayUrl\` is not a valid URL: ${t}`)}if(e.hostname==="localhost"||e.hostname==="127.0.0.1")return t;throw new Error(`Agentronics SDK does not support custom API URLs. Omit \`gatewayUrl\` to use the canonical ${Qe}. The only accepted override is a localhost / 127.0.0.1 URL for local development. Got: ${t}`)},Cr=t=>{let{publishableKey:e,siteId:n="default",debug:r=false,policies:o=[],trace:s={}}=t,i=qs(t.gatewayUrl),a=Gn(e);if(a==="secret")throw new Ye("wrong_key_kind","A secret key was passed to Agentronics.init(). Browser code must use a publishable key (agtx_pk_*).");if(a!=="publishable")throw new Ye("invalid_api_key",`Agentronics.init() expected a key starting with "${Be}".`);let l=s.enabled??true,c=[...r?[vt()]:[],...s.gateway?[xt({gatewayUrl:i,publishableKey:e})]:[],...s.webhookUrl?[bt({url:s.webhookUrl})]:[],...s.exporters??[]],u={siteId:n,exporters:l?c:[],onExporterError:(p,b)=>{r&&console.warn(`[agentronics] trace exporter "${b.name}" failed`,p);}};s.bufferSize!==void 0&&(u.bufferSize=s.bufferSize),s.traceRate!==void 0&&(u.traceRate=s.traceRate),s.errorRate!==void 0&&(u.errorRate=s.errorRate),s.scrubPaths!==void 0&&(u.scrubPaths=s.scrubPaths);let v=ht(u),h=p=>{l&&v.emit(p);},T=Bt(),x={onTrace:h};t.auth!==void 0&&(x.context=t.auth),t.compat==="0.6"&&(x.compat="0.6",console.warn("[agentronics] compat: '0.6' is on \u2014 unverified tokens are trusted and review rules run without asking. Remove it once you have upgraded: https://agentronics.dev/docs/guides/upgrade-0-7")),x.onUnverifiedToken=p=>{t.compat!=="0.6"&&console.warn(`[agentronics] A ${p} credential was presented but nothing verifies it, so the agent is 'declared', not 'verified'. Wire auth.verifyToken to your backend: https://agentronics.dev/docs/auth/overview#in-the-browser`);};let g=zt(x),A=Ft(),S=Zt(o),D=Ht({gatewayUrl:i,siteId:n,publishableKey:e}),U=Xt({onTrace:h}),G={onTrace:h};t.siteMemory!==void 0&&(G.initial=t.siteMemory);let N=en(G),z=tn({gatewayUrl:i,siteId:n,publishableKey:e}),et=br({gatewayUrl:i,siteId:n,publishableKey:e}),E=async p=>{let b=Date.now(),O=await ct(p),$=T.preferOver(O);return l&&await v.emit({type:$?"agent.detected":"agent.missed",agent:$,durationMs:Date.now()-b,metadata:{detectedClass:O?.class??null,presented:T.snapshot()!==null}}),A.set($,"detect"),$},P=async(p,b={})=>{let O=Date.now(),$=b.identity!==void 0?b.identity:await E(),H=S.evaluate({tool:p,identity:$});return l&&await v.emit({type:"authz.evaluated",tool:p,agent:$,policy:H,outcome:H.decision==="deny"?"blocked":"success",durationMs:Date.now()-O}),H},Fe=async()=>true,ee=t.review===false?void 0:t.review??(t.compat==="0.6"?Fe:typeof document>"u"?void 0:hn()),te=on({evaluate:P,...ee?{reviewer:ee}:{},setPolicies:p=>S.set(p),listPolicies:()=>S.list(),onTrace:h,identityResolver:()=>A.snapshot().identity});for(let p of t.tools??[])te.register(p);let ie=t.progression?dn(t.progression,{onTrace:h}):null,Sn=p=>{let b={identity:p};return ie&&(b.stage=ie.current(),b.enabledStages=ie.enabledStages()),b},An={...t.toolDescriptions??{}},Ir=p=>p.map(b=>{let O=An[b.name];return O?{...b,description:O}:b}),pe=p=>Ir(pn(te.list(),Sn(p))),Cn=p=>{An={...p},me!==null&&(me=null,wt(pe(A.snapshot().identity)));},me=null,In=p=>p.map(b=>b.name).sort().join(`
17
+ `),wt=p=>{let b=In(p);return b===me?null:(me=b,Oe.publish(p))},Rn=p=>{if(!ie)return;ie.notify(p).changed&&me!==null&&wt(pe(A.snapshot().identity));},Mn={class:"webmcp",trust:"detected",confidence:1,vendor:null,userAgent:typeof navigator<"u"?navigator.userAgent:null,detectionVersion:M,signals:{source:"navigator.modelContext"}},Oe=yn({invoke:async(p,b,O)=>{Rr(p.name);let $=A.snapshot().identity??Mn,H=await te.execute(p.name,b,$,O?{signal:O}:{});return Rn(p.name),H}}),En=p=>{let b=A.snapshot().identity;if(b&&b.trust!=="detected"||b?.class==="webmcp")return;let O={...Mn,signals:{source:Oe.source()??"document",tool:p}};A.set(O,"detect"),h({type:"agent.detected",agent:O,metadata:{detectedClass:"webmcp",via:"webmcp-activity"}});},Rr=p=>En(p);jt(p=>{p.type==="activated"&&En(p.toolName);}),A.subscribe(p=>{me===null||!Oe.available()||wt(pe(p.identity));});let kt=t.visionDetection??t.autoDetect!==false,Mr=kt===false||typeof document>"u"?null:Vt({...kt===true?{}:kt,onDetect:p=>{let b=A.snapshot().identity;b&&(b.trust!=="detected"||b.class==="webmcp")||(A.set(p,"detect"),h({type:"agent.detected",agent:p,metadata:{detectedClass:"screenshot",via:"vision-behaviour"}}));}}),_t=t.autoDetect??true,Er=_t===false?Promise.resolve(null):(async()=>{let p=_t===true?{}:_t;try{return await E(p)}catch(b){return r&&console.warn("[agentronics] autoDetect failed:",b),null}})();return Object.freeze({publishableKey:e,siteId:n,gatewayUrl:i,debug:r,memory:U,siteMemory:N,memoryCache:z,tracer:v,auth:g,agentContext:A,authz:S,policyCache:D,tools:te,progression:ie,webmcp:Oe,vision:Mr,ready:Er,detect:E,authenticate:async p=>{let b=await g.authenticate(p);return A.set(b,"authenticate"),b},presentIdentity:p=>{let b=T.present(p);return h({type:"auth.identity_presented",agent:b.identity,metadata:{vendor:b.identity.vendor,class:b.identity.class}}),A.set(b.identity,"declare"),b},clearIdentity:()=>{T.clear(),h({type:"auth.identity_cleared"}),A.set(null,"cleared");},presentedIdentity:()=>T.snapshot(),setPolicies:p=>{S.set(p),h({type:"authz.policies_set",metadata:{count:p.length}});},listPolicies:()=>S.list(),syncPolicies:async()=>{let p=await D.sync();return S.set(p.policies),h({type:"authz.policies_set",metadata:{count:p.policies.length,synced:true}}),p.policies},syncSiteMemory:async()=>{let p=await z.sync();return p.memory&&(N.replace(p.memory),h({type:"memory.updated",metadata:{kind:"site",operation:"sync",etag:p.etag}})),p.memory},syncConfig:async()=>{let p=await fetch(`${i.replace(/\/$/,"")}/v1/pub/sites/${encodeURIComponent(n)}/config`,{headers:{authorization:`Bearer ${e}`}});if(!p.ok)throw new Error(`Config sync failed with status ${p.status}.`);let b=await p.json(),O=Ee.array().parse(b.policies??[]);S.set(O),h({type:"authz.policies_set",metadata:{count:O.length,synced:true}});let $=b.siteMemory&&typeof b.siteMemory=="object"&&Object.keys(b.siteMemory).length?N.replace(W.parse(b.siteMemory)):null,H=b.toolDescriptions&&typeof b.toolDescriptions=="object"?b.toolDescriptions:{};return Cn(H),{policies:O,toolDescriptions:H,siteMemory:$}},provideSiteMemory:p=>N.provide(p),provideForPage:p=>{N.provideForPage(p);},installMemoryDelivery:({metaTags:p=true,overlay:b=false}={})=>{let O=[];return p&&O.push(pt({snapshot:N.snapshot()})),b&&O.push(mt({snapshot:N.snapshot()})),{uninstall:()=>{O.forEach($=>$.uninstall());}}},fetchWellKnown:async p=>{let b={};p!==void 0&&(b.origin=p);let O=await ft(b);return O&&(N.replace(O),h({type:"memory.updated",metadata:{kind:"site",operation:"wellKnown",origin:p??null}})),O},installDomEnforcer:()=>qt({policyEngine:S,getIdentity:()=>E({webmcp:{pollMs:0}})}),registerTool:p=>te.register(p),setToolDescriptions:p=>Cn(p),syncTools:async()=>{let p=te.list({includeDisabled:true}),b=await et.push(p);return h({type:"tool.registered",metadata:{operation:"sync",count:b}}),b},surfaceTools:({identity:p=null}={})=>pe(p),explainSurfacing:({identity:p=null}={})=>mn(te.list(),Sn(p)),groupedTools:({identity:p=null}={})=>gn(pe(p)),estimateTokens:({identity:p=null}={})=>cn(pe(p)),publishToWebMcp:({identity:p=null}={})=>{let b=pe(p);me=In(b);let O=Oe.publish(b),$=O.registrations.then(H=>(H.forEach(Ke=>{h({type:"tool.surfaced",tool:Ke.name,outcome:Ke.status==="callable"?"success":"error",...Ke.error?{error:Ke.error}:{},metadata:{state:Ke.status==="callable"?"published":"failed",source:Oe.source(),trust:p?.trust??null}});}),H));return {revoked:O.revoked,surfaced:b.length,registrations:$}},notifyToolInvoked:p=>Rn(p),evaluate:P,traces:()=>v.list(),clearTraces:()=>v.clear(),async ping(){try{let p=await fetch(`${i.replace(/\/$/,"")}/v1/pub/health`,{method:"GET",headers:{authorization:`Bearer ${e}`}});if(!p.ok)return {ok:!1,status:p.status,error:`gateway returned ${p.status}`};let b=await p.json().catch(()=>null)??{};return {ok:!0,status:p.status,body:b}}catch(p){return {ok:false,status:0,error:p instanceof Error?p.message:String(p)}}}})};var nd={init:Cr,declareAgent:$t,detectAgent:ct};exports.Agentronics=nd;exports.CRAWLER_SIGNATURES=Nt;exports.DEFAULT_GROUP=fn;exports.VERSION=M;exports.WELL_KNOWN_PATH=rn;exports.bundledDetectors=Lt;exports.createAgentContextStore=Ft;exports.createAuthEngine=zt;exports.createConsoleExporter=vt;exports.createDashboardExporter=Sr;exports.createDashboardSync=Ar;exports.createDetectorRegistry=at;exports.createGatewayExporter=xt;exports.createIdentityStore=Bt;exports.createIntelExporter=_n;exports.createIntelSync=Tn;exports.createMemoryCache=tn;exports.createMemoryStore=Xt;exports.createPolicyCache=Ht;exports.createPolicyEngine=Zt;exports.createProgressionStore=dn;exports.createRateLimiter=Kt;exports.createReviewPrompt=hn;exports.createSignatureLoader=qn;exports.createSiteMemoryStore=en;exports.createToolRegistry=on;exports.createTraceBuffer=yt;exports.createTracer=ht;exports.createVisionDetector=Vt;exports.createWebMcpAdapter=yn;exports.createWebMcpContextTool=gr;exports.createWebhookExporter=bt;exports.decideSurfacing=un;exports.declareAgent=$t;exports.defaultAuthMethods=Gt;exports.deriveTrustLevel=ws;exports.descriptorTokens=an;exports.detectAgent=ct;exports.detectCrawler=Ge;exports.detectDom=ze;exports.detectWebMcp=Ue;exports.estimateBudget=cn;exports.estimateToolTokens=xr;exports.explainSurfacing=mn;exports.fetchWellKnownContext=ft;exports.groupTools=gn;exports.highestTrust=Ut;exports.init=Cr;exports.installDomEnforcer=qt;exports.installMemoryOverlay=mt;exports.installMetaTags=pt;exports.listGroupNames=Vs;exports.modelFacingDescriptor=sn;exports.onWebMcpActivity=jt;exports.previewAuthMethods=cr;exports.resolveModelContext=Xe;exports.scoreVisionSignals=Wt;exports.serializeWellKnownContext=vr;exports.showDenyOverlay=Jt;exports.surfaceTools=pn;exports.webMcpSupport=Hn;return exports;})({});//# sourceMappingURL=index.global.js.map
17
18
  //# sourceMappingURL=index.global.js.map