@agentronics/sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,146 @@
1
+ import * as _agentronics_protocol from '@agentronics/protocol';
2
+ import { AgentIdentity, TraceEvent, TrustLevel, SiteMemory } from '@agentronics/protocol';
3
+ import { T as TraceExporter, P as PolicyEngine, I as InitOptions, A as AgentronicsClient, D as DetectAgentOptions } from './init-only-DrZymcuA.js';
4
+ export { a as AgentContextListener, b as AgentContextSnapshot, c as AgentContextStore, d as AuthEngine, e as AuthInput, f as AuthMethod, g as DEFAULT_GROUP, h as DetectDomOptions, i as Detector, j as DetectorRegistry, k as DetectorStatus, l as DomSignalName, G as GovernedTool, m as IdentityStore, M as MemoryCache, n as MemoryStore, o as PolicyCache, p as PresentIdentityOptions, q as PresentedIdentity, r as ProgressionConfig, s as ProgressionStage, t as ProgressionStore, u as ProgressionTransition, v as ProvideForPageInput, R as RateLimiter, S as SiteMemoryListener, w as SiteMemoryStore, x as SurfacingContext, y as SurfacingDecision, z as TokenBudgetReport, B as ToolGroupSummary, C as ToolRegistry, E as ToolTokenEstimate, F as TraceInput, H as Tracer, W as WebMcpAdapter, J as WebMcpAdapterOptions, K as WebMcpProvider, L as WebMcpToolDescriptor, N as bundledDetectors, O as createAgentContextStore, Q as createAuthEngine, U as createDetectorRegistry, V as createIdentityStore, X as createMemoryCache, Y as createMemoryStore, Z as createPolicyCache, _ as createPolicyEngine, $ as createProgressionStore, a0 as createRateLimiter, a1 as createSiteMemoryStore, a2 as createToolRegistry, a3 as createTracer, a4 as createWebMcpAdapter, a5 as decideSurfacing, a6 as detectAgent, a7 as detectDom, a8 as estimateBudget, a9 as estimateToolTokens, aa as explainSurfacing, ab as groupTools, ac as init, ad as listGroupNames, ae as surfaceTools } from './init-only-DrZymcuA.js';
5
+ export { D as DetectWebMcpOptions, d as detectWebMcp } from './webmcp-C4ikhM4g.js';
6
+
7
+ interface DeclareAgentInput {
8
+ class: 'webmcp' | 'dom' | 'screenshot';
9
+ vendor: string;
10
+ /** Optional bearer token returned by the customer's verification endpoint. */
11
+ verificationToken?: string;
12
+ }
13
+ declare const declareAgent: (input: DeclareAgentInput) => AgentIdentity;
14
+
15
+ interface DetectorSignature {
16
+ id: string;
17
+ status: 'stable' | 'beta' | 'research';
18
+ version: string;
19
+ signals: Record<string, unknown>;
20
+ }
21
+ interface SignatureLoaderOptions {
22
+ gatewayUrl: string;
23
+ fetcher?: typeof fetch;
24
+ }
25
+ declare const createSignatureLoader: ({ gatewayUrl, fetcher }: SignatureLoaderOptions) => {
26
+ snapshot(): DetectorSignature[];
27
+ sync(): Promise<DetectorSignature[]>;
28
+ };
29
+
30
+ interface TraceBuffer {
31
+ add(event: TraceEvent): void;
32
+ list(): TraceEvent[];
33
+ clear(): void;
34
+ }
35
+ declare const createTraceBuffer: (limit?: number) => TraceBuffer;
36
+
37
+ declare const createConsoleExporter: () => TraceExporter;
38
+
39
+ interface GatewayExporterOptions {
40
+ gatewayUrl: string;
41
+ publishableKey: string;
42
+ fetcher?: typeof fetch;
43
+ }
44
+ declare const createGatewayExporter: ({ gatewayUrl, publishableKey, fetcher, }: GatewayExporterOptions) => TraceExporter;
45
+
46
+ interface WebhookExporterOptions {
47
+ url: string;
48
+ fetcher?: typeof fetch;
49
+ maxRetries?: number;
50
+ queueLimit?: number;
51
+ }
52
+ declare const createWebhookExporter: ({ url, fetcher, maxRetries, queueLimit, }: WebhookExporterOptions) => TraceExporter;
53
+
54
+ interface TrustDerivationInput {
55
+ detected?: boolean;
56
+ declared?: boolean;
57
+ verified?: boolean;
58
+ linked?: boolean;
59
+ }
60
+ declare const deriveTrustLevel: ({ detected, declared, verified, linked, }: TrustDerivationInput) => TrustLevel;
61
+ declare const highestTrust: <T extends {
62
+ trust: TrustLevel;
63
+ }>(identities: T[]) => T | null;
64
+
65
+ interface DomEnforcerOptions {
66
+ policyEngine: PolicyEngine;
67
+ getIdentity: () => AgentIdentity | null | Promise<AgentIdentity | null>;
68
+ documentRef?: Document;
69
+ selector?: string;
70
+ }
71
+ declare const installDomEnforcer: ({ policyEngine, getIdentity, documentRef, selector, }: DomEnforcerOptions) => {
72
+ uninstall: () => void;
73
+ };
74
+
75
+ interface DenyOverlayOptions {
76
+ message?: string;
77
+ durationMs?: number;
78
+ documentRef?: Document;
79
+ }
80
+ declare const showDenyOverlay: ({ message, durationMs, documentRef, }?: DenyOverlayOptions) => HTMLDivElement | null;
81
+
82
+ interface WebMcpContextTool {
83
+ name: string;
84
+ description: string;
85
+ inputSchema: {
86
+ type: 'object';
87
+ properties: Record<string, unknown>;
88
+ required: string[];
89
+ };
90
+ invoke(input?: {
91
+ path?: string;
92
+ }): {
93
+ content: SiteMemory | unknown;
94
+ };
95
+ }
96
+ interface WebMcpContextOptions {
97
+ toolName?: string;
98
+ description?: string;
99
+ getSnapshot: () => SiteMemory;
100
+ onAccess?: (path: string | null) => void;
101
+ }
102
+ declare const createWebMcpContextTool: ({ toolName, description, getSnapshot, onAccess, }: WebMcpContextOptions) => WebMcpContextTool;
103
+
104
+ interface MetaTagsOptions {
105
+ doc?: Document;
106
+ snapshot: SiteMemory;
107
+ schemaType?: string;
108
+ }
109
+ declare const installMetaTags: ({ doc, snapshot, schemaType, }: MetaTagsOptions) => {
110
+ uninstall: () => void;
111
+ };
112
+
113
+ interface MemoryOverlayOptions {
114
+ doc?: Document;
115
+ snapshot: SiteMemory;
116
+ hidden?: boolean;
117
+ }
118
+ declare const installMemoryOverlay: ({ doc, snapshot, hidden, }: MemoryOverlayOptions) => {
119
+ uninstall: () => void;
120
+ refresh: (next: SiteMemory) => void;
121
+ };
122
+
123
+ declare const WELL_KNOWN_PATH = "/.well-known/agent-context.json";
124
+ interface WellKnownClientOptions {
125
+ origin?: string;
126
+ fetcher?: typeof fetch;
127
+ signal?: AbortSignal;
128
+ }
129
+ declare const fetchWellKnownContext: ({ origin, fetcher, signal, }?: WellKnownClientOptions) => Promise<SiteMemory | null>;
130
+ interface ServeWellKnownOptions {
131
+ snapshot: SiteMemory;
132
+ }
133
+ /**
134
+ * Returns a JSON string suitable for /.well-known/agent-context.json. Hosts proxy this
135
+ * through their CDN/edge so any agent can fetch it with no SDK installed.
136
+ */
137
+ declare const serializeWellKnownContext: ({ snapshot }: ServeWellKnownOptions) => string;
138
+
139
+ declare const Agentronics: {
140
+ init: (options: InitOptions) => AgentronicsClient;
141
+ declareAgent: (input: DeclareAgentInput) => _agentronics_protocol.AgentIdentity;
142
+ detectAgent: (options?: DetectAgentOptions) => Promise<_agentronics_protocol.AgentIdentity | null>;
143
+ };
144
+ declare const VERSION = "0.1.0";
145
+
146
+ export { Agentronics, AgentronicsClient, type DeclareAgentInput, DetectAgentOptions, InitOptions, PolicyEngine, TraceExporter, VERSION, WELL_KNOWN_PATH, type WebMcpContextOptions, type WebMcpContextTool, createConsoleExporter, createGatewayExporter, createSignatureLoader, createTraceBuffer, createWebMcpContextTool, createWebhookExporter, declareAgent, deriveTrustLevel, fetchWellKnownContext, highestTrust, installDomEnforcer, installMemoryOverlay, installMetaTags, serializeWellKnownContext, showDenyOverlay };
@@ -0,0 +1,17 @@
1
+ var Agentronics=(function(exports){'use strict';var Wr=Object.defineProperty;var Br=(t,e)=>{for(var r in e)Wr(t,r,{get:e[r],enumerable:true});};var l={};Br(l,{BRAND:()=>fn,DIRTY:()=>ne,EMPTY_PATH:()=>Zr,INVALID:()=>g,NEVER:()=>Yn,OK:()=>E,ParseStatus:()=>C,Schema:()=>_,ZodAny:()=>X,ZodArray:()=>q,ZodBigInt:()=>oe,ZodBoolean:()=>ae,ZodBranded:()=>$e,ZodCatch:()=>ge,ZodDate:()=>ie,ZodDefault:()=>ye,ZodDiscriminatedUnion:()=>Ze,ZodEffects:()=>W,ZodEnum:()=>me,ZodError:()=>O,ZodFirstPartyTypeKind:()=>v,ZodFunction:()=>Fe,ZodIntersection:()=>de,ZodIssueCode:()=>d,ZodLazy:()=>pe,ZodLiteral:()=>fe,ZodMap:()=>Ce,ZodNaN:()=>Ee,ZodNativeEnum:()=>he,ZodNever:()=>z,ZodNull:()=>le,ZodNullable:()=>G,ZodNumber:()=>se,ZodObject:()=>P,ZodOptional:()=>$,ZodParsedType:()=>h,ZodPipeline:()=>Le,ZodPromise:()=>Q,ZodReadonly:()=>ve,ZodRecord:()=>Ge,ZodSchema:()=>_,ZodSet:()=>Re,ZodString:()=>Y,ZodSymbol:()=>Me,ZodTransformer:()=>W,ZodTuple:()=>Z,ZodType:()=>_,ZodUndefined:()=>ce,ZodUnion:()=>ue,ZodUnknown:()=>H,ZodVoid:()=>Ie,addIssueToContext:()=>p,any:()=>kn,array:()=>An,bigint:()=>gn,boolean:()=>lr,coerce:()=>Jn,custom:()=>ar,date:()=>vn,datetimeRegex:()=>sr,defaultErrorMap:()=>F,discriminatedUnion:()=>Rn,effect:()=>Un,enum:()=>Wn,function:()=>Nn,getErrorMap:()=>Te,getParsedType:()=>V,instanceof:()=>hn,intersection:()=>En,isAborted:()=>Ue,isAsync:()=>Se,isDirty:()=>Ve,isValid:()=>J,late:()=>mn,lazy:()=>$n,literal:()=>Ln,makeIssue:()=>Ne,map:()=>Dn,nan:()=>yn,nativeEnum:()=>Bn,never:()=>Tn,null:()=>_n,nullable:()=>Zn,number:()=>cr,object:()=>Mn,objectUtil:()=>ut,oboolean:()=>qn,onumber:()=>Hn,optional:()=>Vn,ostring:()=>Kn,pipeline:()=>Fn,preprocess:()=>Gn,promise:()=>zn,quotelessJson:()=>zr,record:()=>Pn,set:()=>jn,setErrorMap:()=>Vr,strictObject:()=>In,string:()=>ir,symbol:()=>xn,transformer:()=>Un,tuple:()=>On,undefined:()=>bn,union:()=>Cn,unknown:()=>wn,util:()=>k,void:()=>Sn});var k;(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let o={};for(let a of s)o[a]=a;return o},t.getValidEnumValues=s=>{let o=t.objectKeys(s).filter(i=>typeof s[s[i]]!="number"),a={};for(let i of o)a[i]=s[i];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(o){return s[o]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let o=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&o.push(a);return o},t.find=(s,o)=>{for(let a of s)if(o(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,o=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}t.joinValues=n,t.jsonStringifyReplacer=(s,o)=>typeof o=="bigint"?o.toString():o;})(k||(k={}));var ut;(function(t){t.mergeShapes=(e,r)=>({...e,...r});})(ut||(ut={}));var h=k.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),V=t=>{switch(typeof t){case "undefined":return h.undefined;case "string":return h.string;case "number":return Number.isNaN(t)?h.nan:h.number;case "boolean":return h.boolean;case "function":return h.function;case "bigint":return h.bigint;case "symbol":return h.symbol;case "object":return Array.isArray(t)?h.array:t===null?h.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?h.promise:typeof Map<"u"&&t instanceof Map?h.map:typeof Set<"u"&&t instanceof Set?h.set:typeof Date<"u"&&t instanceof Date?h.date:h.object;default:return h.unknown}};var d=k.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"]),zr=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),O=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(o){return o.message},n={_errors:[]},s=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(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 s(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,k.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let o=s.path[0];r[o]=r[o]||[],r[o].push(e(s));}else n.push(e(s));return {formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};O.create=t=>new O(t);var Ur=(t,e)=>{let r;switch(t.code){case d.invalid_type:t.received===h.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case d.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,k.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:r=`Unrecognized key(s) in object: ${k.joinValues(t.keys,", ")}`;break;case d.invalid_union:r="Invalid input";break;case d.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${k.joinValues(t.options)}`;break;case d.invalid_enum_value:r=`Invalid enum value. Expected ${k.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}"`:k.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,k.assertNever(t);}return {message:r}},F=Ur;var Qt=F;function Vr(t){Qt=t;}function Te(){return Qt}var Ne=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,o=[...r,...s.path||[]],a={...s,path:o};if(s.message!==void 0)return {...s,path:o,message:s.message};let i="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)i=u(a,{data:e,defaultError:i}).message;return {...s,path:o,message:i}},Zr=[];function p(t,e){let r=Te(),n=Ne({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===F?void 0:F].filter(s=>!!s)});t.common.issues.push(n);}var C=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 s of r){if(s.status==="aborted")return g;s.status==="dirty"&&e.dirty(),n.push(s.value);}return {status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let o=await s.key,a=await s.value;n.push({key:o,value:a});}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:o,value:a}=s;if(o.status==="aborted"||a.status==="aborted")return g;o.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[o.value]=a.value);}return {status:e.value,value:n}}},g=Object.freeze({status:"aborted"}),ne=t=>({status:"dirty",value:t}),E=t=>({status:"valid",value:t}),Ue=t=>t.status==="aborted",Ve=t=>t.status==="dirty",J=t=>t.status==="valid",Se=t=>typeof Promise<"u"&&t instanceof Promise;var y;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message;})(y||(y={}));var L=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s;}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}},er=(t,e)=>{if(J(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 O(t.common.issues);return this._error=r,this._error}}};function x(t){if(!t)return {};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=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:s}:{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:s}}var _=class{get description(){return this._def.description}_getType(e){return V(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return {status:new C,ctx:{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Se(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:V(e)},s=this._parseSync({data:e,path:n.path,parent:n});return er(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return J(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=>J(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:V(e)},s=this._parse({data:e,path:n.path,parent:n}),o=await(Se(s)?s:Promise.resolve(s));return er(n,o)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,o)=>{let a=e(s),i=()=>o.addIssue({code:d.custom,...n(s)});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,s)=>e(n)?true:(s.addIssue(typeof r=="function"?r(n,s):r),false))}_refinement(e){return new W({schema:this,typeName:v.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 $.create(this,this._def)}nullable(){return G.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return q.create(this)}promise(){return Q.create(this,this._def)}or(e){return ue.create([this,e],this._def)}and(e){return de.create(this,e,this._def)}transform(e){return new W({...x(this._def),schema:this,typeName:v.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ye({...x(this._def),innerType:this,defaultValue:r,typeName:v.ZodDefault})}brand(){return new $e({typeName:v.ZodBranded,type:this,...x(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new ge({...x(this._def),innerType:this,catchValue:r,typeName:v.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Le.create(this,e)}readonly(){return ve.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Gr=/^c[^\s-]{8,}$/i,Fr=/^[0-9a-z]+$/,Kr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Hr=/^[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,qr=/^[a-z0-9_-]{21}$/i,Jr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Yr=/^[-+]?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)?)??$/,Xr=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Qr="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",dt,en=/^(?:(?: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])$/,tn=/^(?:(?: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])$/,rn=/^(([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]))$/,nn=/^(([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])$/,sn=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,on=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,rr="((\\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])))",an=new RegExp(`^${rr}$`);function nr(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 cn(t){return new RegExp(`^${nr(t)}$`)}function sr(t){let e=`${rr}T${nr(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 ln(t,e){return !!((e==="v4"||!e)&&en.test(t)||(e==="v6"||!e)&&rn.test(t))}function un(t,e){if(!Jr.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,"="),s=JSON.parse(atob(n));return !(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return false}}function dn(t,e){return !!((e==="v4"||!e)&&tn.test(t)||(e==="v6"||!e)&&nn.test(t))}var Y=class t extends _{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==h.string){let o=this._getOrReturnCtx(e);return p(o,{code:d.invalid_type,expected:h.string,received:o.parsedType}),g}let n=new C,s;for(let o of this._def.checks)if(o.kind==="min")e.data.length<o.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:d.too_small,minimum:o.value,type:"string",inclusive:true,exact:false,message:o.message}),n.dirty());else if(o.kind==="max")e.data.length>o.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:d.too_big,maximum:o.value,type:"string",inclusive:true,exact:false,message:o.message}),n.dirty());else if(o.kind==="length"){let a=e.data.length>o.value,i=e.data.length<o.value;(a||i)&&(s=this._getOrReturnCtx(e,s),a?p(s,{code:d.too_big,maximum:o.value,type:"string",inclusive:true,exact:true,message:o.message}):i&&p(s,{code:d.too_small,minimum:o.value,type:"string",inclusive:true,exact:true,message:o.message}),n.dirty());}else if(o.kind==="email")Xr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"email",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="emoji")dt||(dt=new RegExp(Qr,"u")),dt.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"emoji",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="uuid")Hr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"uuid",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="nanoid")qr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"nanoid",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid")Gr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="cuid2")Fr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid2",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="ulid")Kr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ulid",code:d.invalid_string,message:o.message}),n.dirty());else if(o.kind==="url")try{new URL(e.data);}catch{s=this._getOrReturnCtx(e,s),p(s,{validation:"url",code:d.invalid_string,message:o.message}),n.dirty();}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"regex",code:d.invalid_string,message:o.message}),n.dirty())):o.kind==="trim"?e.data=e.data.trim():o.kind==="includes"?e.data.includes(o.value,o.position)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),n.dirty()):o.kind==="toLowerCase"?e.data=e.data.toLowerCase():o.kind==="toUpperCase"?e.data=e.data.toUpperCase():o.kind==="startsWith"?e.data.startsWith(o.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:{startsWith:o.value},message:o.message}),n.dirty()):o.kind==="endsWith"?e.data.endsWith(o.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:{endsWith:o.value},message:o.message}),n.dirty()):o.kind==="datetime"?sr(o).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:"datetime",message:o.message}),n.dirty()):o.kind==="date"?an.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:"date",message:o.message}),n.dirty()):o.kind==="time"?cn(o).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:d.invalid_string,validation:"time",message:o.message}),n.dirty()):o.kind==="duration"?Yr.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"duration",code:d.invalid_string,message:o.message}),n.dirty()):o.kind==="ip"?ln(e.data,o.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ip",code:d.invalid_string,message:o.message}),n.dirty()):o.kind==="jwt"?un(e.data,o.alg)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"jwt",code:d.invalid_string,message:o.message}),n.dirty()):o.kind==="cidr"?dn(e.data,o.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cidr",code:d.invalid_string,message:o.message}),n.dirty()):o.kind==="base64"?sn.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64",code:d.invalid_string,message:o.message}),n.dirty()):o.kind==="base64url"?on.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64url",code:d.invalid_string,message:o.message}),n.dirty()):k.assertNever(o);return {status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:d.invalid_string,...y.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...y.errToObj(e)})}url(e){return this._addCheck({kind:"url",...y.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...y.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...y.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...y.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...y.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...y.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...y.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...y.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...y.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...y.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...y.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...y.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,...y.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,...y.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...y.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...y.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...y.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...y.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...y.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...y.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...y.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...y.errToObj(r)})}nonempty(e){return this.min(1,y.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}};Y.create=t=>new Y({checks:[],typeName:v.ZodString,coerce:t?.coerce??false,...x(t)});function pn(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,o=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return o%a/10**s}var se=class t extends _{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)!==h.number){let o=this._getOrReturnCtx(e);return p(o,{code:d.invalid_type,expected:h.number,received:o.parsedType}),g}let n,s=new C;for(let o of this._def.checks)o.kind==="int"?k.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:d.invalid_type,expected:"integer",received:"float",message:o.message}),s.dirty()):o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:false,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:false,message:o.message}),s.dirty()):o.kind==="multipleOf"?pn(e.data,o.value)!==0&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):o.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:d.not_finite,message:o.message}),s.dirty()):k.assertNever(o);return {status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,true,y.toString(r))}gt(e,r){return this.setLimit("min",e,false,y.toString(r))}lte(e,r){return this.setLimit("max",e,true,y.toString(r))}lt(e,r){return this.setLimit("max",e,false,y.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:y.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:y.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:false,message:y.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:false,message:y.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:true,message:y.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:true,message:y.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:y.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:y.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:true,value:Number.MIN_SAFE_INTEGER,message:y.toString(e)})._addCheck({kind:"max",inclusive:true,value:Number.MAX_SAFE_INTEGER,message:y.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"&&k.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)}};se.create=t=>new se({checks:[],typeName:v.ZodNumber,coerce:t?.coerce||false,...x(t)});var oe=class t extends _{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)!==h.bigint)return this._getInvalidInput(e);let n,s=new C;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="multipleOf"?e.data%o.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),p(n,{code:d.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):k.assertNever(o);return {status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return p(r,{code:d.invalid_type,expected:h.bigint,received:r.parsedType}),g}gte(e,r){return this.setLimit("min",e,true,y.toString(r))}gt(e,r){return this.setLimit("min",e,false,y.toString(r))}lte(e,r){return this.setLimit("max",e,true,y.toString(r))}lt(e,r){return this.setLimit("max",e,false,y.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:y.toString(s)}]})}_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:y.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:false,message:y.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:true,message:y.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:true,message:y.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:y.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}};oe.create=t=>new oe({checks:[],typeName:v.ZodBigInt,coerce:t?.coerce??false,...x(t)});var ae=class extends _{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==h.boolean){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.boolean,received:n.parsedType}),g}return E(e.data)}};ae.create=t=>new ae({typeName:v.ZodBoolean,coerce:t?.coerce||false,...x(t)});var ie=class t extends _{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==h.date){let o=this._getOrReturnCtx(e);return p(o,{code:d.invalid_type,expected:h.date,received:o.parsedType}),g}if(Number.isNaN(e.data.getTime())){let o=this._getOrReturnCtx(e);return p(o,{code:d.invalid_date}),g}let n=new C,s;for(let o of this._def.checks)o.kind==="min"?e.data.getTime()<o.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:d.too_small,message:o.message,inclusive:true,exact:false,minimum:o.value,type:"date"}),n.dirty()):o.kind==="max"?e.data.getTime()>o.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:d.too_big,message:o.message,inclusive:true,exact:false,maximum:o.value,type:"date"}),n.dirty()):k.assertNever(o);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:y.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:y.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}};ie.create=t=>new ie({checks:[],coerce:t?.coerce||false,typeName:v.ZodDate,...x(t)});var Me=class extends _{_parse(e){if(this._getType(e)!==h.symbol){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.symbol,received:n.parsedType}),g}return E(e.data)}};Me.create=t=>new Me({typeName:v.ZodSymbol,...x(t)});var ce=class extends _{_parse(e){if(this._getType(e)!==h.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.undefined,received:n.parsedType}),g}return E(e.data)}};ce.create=t=>new ce({typeName:v.ZodUndefined,...x(t)});var le=class extends _{_parse(e){if(this._getType(e)!==h.null){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.null,received:n.parsedType}),g}return E(e.data)}};le.create=t=>new le({typeName:v.ZodNull,...x(t)});var X=class extends _{constructor(){super(...arguments),this._any=true;}_parse(e){return E(e.data)}};X.create=t=>new X({typeName:v.ZodAny,...x(t)});var H=class extends _{constructor(){super(...arguments),this._unknown=true;}_parse(e){return E(e.data)}};H.create=t=>new H({typeName:v.ZodUnknown,...x(t)});var z=class extends _{_parse(e){let r=this._getOrReturnCtx(e);return p(r,{code:d.invalid_type,expected:h.never,received:r.parsedType}),g}};z.create=t=>new z({typeName:v.ZodNever,...x(t)});var Ie=class extends _{_parse(e){if(this._getType(e)!==h.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.void,received:n.parsedType}),g}return E(e.data)}};Ie.create=t=>new Ie({typeName:v.ZodVoid,...x(t)});var q=class t extends _{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==h.array)return p(r,{code:d.invalid_type,expected:h.array,received:r.parsedType}),g;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,i=r.data.length<s.exactLength.value;(a||i)&&(p(r,{code:a?d.too_big:d.too_small,minimum:i?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:true,exact:true,message:s.exactLength.message}),n.dirty());}if(s.minLength!==null&&r.data.length<s.minLength.value&&(p(r,{code:d.too_small,minimum:s.minLength.value,type:"array",inclusive:true,exact:false,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(p(r,{code:d.too_big,maximum:s.maxLength.value,type:"array",inclusive:true,exact:false,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,i)=>s.type._parseAsync(new L(r,a,r.path,i)))).then(a=>C.mergeArray(n,a));let o=[...r.data].map((a,i)=>s.type._parseSync(new L(r,a,r.path,i)));return C.mergeArray(n,o)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:y.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:y.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:y.toString(r)}})}nonempty(e){return this.min(1,e)}};q.create=(t,e)=>new q({type:t,minLength:null,maxLength:null,exactLength:null,typeName:v.ZodArray,...x(e)});function Ae(t){if(t instanceof P){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=$.create(Ae(n));}return new P({...t._def,shape:()=>e})}else return t instanceof q?new q({...t._def,type:Ae(t.element)}):t instanceof $?$.create(Ae(t.unwrap())):t instanceof G?G.create(Ae(t.unwrap())):t instanceof Z?Z.create(t.items.map(e=>Ae(e))):t}var P=class t extends _{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=k.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==h.object){let u=this._getOrReturnCtx(e);return p(u,{code:d.invalid_type,expected:h.object,received:u.parsedType}),g}let{status:n,ctx:s}=this._processInputParams(e),{shape:o,keys:a}=this._getCached(),i=[];if(!(this._def.catchall instanceof z&&this._def.unknownKeys==="strip"))for(let u in s.data)a.includes(u)||i.push(u);let c=[];for(let u of a){let f=o[u],b=s.data[u];c.push({key:{status:"valid",value:u},value:f._parse(new L(s,b,s.path,u)),alwaysSet:u in s.data});}if(this._def.catchall instanceof z){let u=this._def.unknownKeys;if(u==="passthrough")for(let f of i)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(u==="strict")i.length>0&&(p(s,{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 f of i){let b=s.data[f];c.push({key:{status:"valid",value:f},value:u._parse(new L(s,b,s.path,f)),alwaysSet:f in s.data});}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let f of c){let b=await f.key,w=await f.value;u.push({key:b,value:w,alwaysSet:f.alwaysSet});}return u}).then(u=>C.mergeObjectSync(n,u)):C.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return y.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:y.errToObj(e).message??s}:{message:s}}}:{}})}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:v.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 k.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 k.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Ae(this)}partial(e){let r={};for(let n of k.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional();}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of k.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else {let o=this.shape[n];for(;o instanceof $;)o=o._def.innerType;r[n]=o;}return new t({...this._def,shape:()=>r})}keyof(){return or(k.objectKeys(this.shape))}};P.create=(t,e)=>new P({shape:()=>t,unknownKeys:"strip",catchall:z.create(),typeName:v.ZodObject,...x(e)});P.strictCreate=(t,e)=>new P({shape:()=>t,unknownKeys:"strict",catchall:z.create(),typeName:v.ZodObject,...x(e)});P.lazycreate=(t,e)=>new P({shape:t,unknownKeys:"strip",catchall:z.create(),typeName:v.ZodObject,...x(e)});var ue=class extends _{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(o){for(let i of o)if(i.result.status==="valid")return i.result;for(let i of o)if(i.result.status==="dirty")return r.common.issues.push(...i.ctx.common.issues),i.result;let a=o.map(i=>new O(i.ctx.common.issues));return p(r,{code:d.invalid_union,unionErrors:a}),g}if(r.common.async)return Promise.all(n.map(async o=>{let a={...r,common:{...r.common,issues:[]},parent:null};return {result:await o._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let o,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},f=c._parseSync({data:r.data,path:r.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!o&&(o={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues);}if(o)return r.common.issues.push(...o.ctx.common.issues),o.result;let i=a.map(c=>new O(c));return p(r,{code:d.invalid_union,unionErrors:i}),g}}get options(){return this._def.options}};ue.create=(t,e)=>new ue({options:t,typeName:v.ZodUnion,...x(e)});var K=t=>t instanceof pe?K(t.schema):t instanceof W?K(t.innerType()):t instanceof fe?[t.value]:t instanceof me?t.options:t instanceof he?k.objectValues(t.enum):t instanceof ye?K(t._def.innerType):t instanceof ce?[void 0]:t instanceof le?[null]:t instanceof $?[void 0,...K(t.unwrap())]:t instanceof G?[null,...K(t.unwrap())]:t instanceof $e||t instanceof ve?K(t.unwrap()):t instanceof ge?K(t._def.innerType):[],Ze=class t extends _{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==h.object)return p(r,{code:d.invalid_type,expected:h.object,received:r.parsedType}),g;let n=this.discriminator,s=r.data[n],o=this.optionsMap.get(s);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(p(r,{code:d.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),g)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let o of r){let a=K(o.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(s.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);s.set(i,o);}}return new t({typeName:v.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...x(n)})}};function pt(t,e){let r=V(t),n=V(e);if(t===e)return {valid:true,data:t};if(r===h.object&&n===h.object){let s=k.objectKeys(e),o=k.objectKeys(t).filter(i=>s.indexOf(i)!==-1),a={...t,...e};for(let i of o){let c=pt(t[i],e[i]);if(!c.valid)return {valid:false};a[i]=c.data;}return {valid:true,data:a}}else if(r===h.array&&n===h.array){if(t.length!==e.length)return {valid:false};let s=[];for(let o=0;o<t.length;o++){let a=t[o],i=e[o],c=pt(a,i);if(!c.valid)return {valid:false};s.push(c.data);}return {valid:true,data:s}}else return r===h.date&&n===h.date&&+t==+e?{valid:true,data:t}:{valid:false}}var de=class extends _{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(o,a)=>{if(Ue(o)||Ue(a))return g;let i=pt(o.value,a.value);return i.valid?((Ve(o)||Ve(a))&&r.dirty(),{status:r.value,value:i.data}):(p(n,{code:d.invalid_intersection_types}),g)};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(([o,a])=>s(o,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};de.create=(t,e,r)=>new de({left:t,right:e,typeName:v.ZodIntersection,...x(r)});var Z=class t extends _{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==h.array)return p(n,{code:d.invalid_type,expected:h.array,received:n.parsedType}),g;if(n.data.length<this._def.items.length)return p(n,{code:d.too_small,minimum:this._def.items.length,inclusive:true,exact:false,type:"array"}),g;!this._def.rest&&n.data.length>this._def.items.length&&(p(n,{code:d.too_big,maximum:this._def.items.length,inclusive:true,exact:false,type:"array"}),r.dirty());let o=[...n.data].map((a,i)=>{let c=this._def.items[i]||this._def.rest;return c?c._parse(new L(n,a,n.path,i)):null}).filter(a=>!!a);return n.common.async?Promise.all(o).then(a=>C.mergeArray(r,a)):C.mergeArray(r,o)}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:v.ZodTuple,rest:null,...x(e)})};var Ge=class t extends _{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!==h.object)return p(n,{code:d.invalid_type,expected:h.object,received:n.parsedType}),g;let s=[],o=this._def.keyType,a=this._def.valueType;for(let i in n.data)s.push({key:o._parse(new L(n,i,n.path,i)),value:a._parse(new L(n,n.data[i],n.path,i)),alwaysSet:i in n.data});return n.common.async?C.mergeObjectAsync(r,s):C.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof _?new t({keyType:e,valueType:r,typeName:v.ZodRecord,...x(n)}):new t({keyType:Y.create(),valueType:e,typeName:v.ZodRecord,...x(r)})}},Ce=class extends _{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!==h.map)return p(n,{code:d.invalid_type,expected:h.map,received:n.parsedType}),g;let s=this._def.keyType,o=this._def.valueType,a=[...n.data.entries()].map(([i,c],u)=>({key:s._parse(new L(n,i,n.path,[u,"key"])),value:o._parse(new L(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,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),i.set(u.value,f.value);}return {status:r.value,value:i}})}else {let i=new Map;for(let c of a){let u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),i.set(u.value,f.value);}return {status:r.value,value:i}}}};Ce.create=(t,e,r)=>new Ce({valueType:e,keyType:t,typeName:v.ZodMap,...x(r)});var Re=class t extends _{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==h.set)return p(n,{code:d.invalid_type,expected:h.set,received:n.parsedType}),g;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(p(n,{code:d.too_small,minimum:s.minSize.value,type:"set",inclusive:true,exact:false,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(p(n,{code:d.too_big,maximum:s.maxSize.value,type:"set",inclusive:true,exact:false,message:s.maxSize.message}),r.dirty());let o=this._def.valueType;function a(c){let u=new Set;for(let f of c){if(f.status==="aborted")return g;f.status==="dirty"&&r.dirty(),u.add(f.value);}return {status:r.value,value:u}}let i=[...n.data.values()].map((c,u)=>o._parse(new L(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:y.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:y.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Re.create=(t,e)=>new Re({valueType:t,minSize:null,maxSize:null,typeName:v.ZodSet,...x(e)});var Fe=class t extends _{constructor(){super(...arguments),this.validate=this.implement;}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==h.function)return p(r,{code:d.invalid_type,expected:h.function,received:r.parsedType}),g;function n(i,c){return Ne({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Te(),F].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function s(i,c){return Ne({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Te(),F].filter(u=>!!u),issueData:{code:d.invalid_return_type,returnTypeError:c}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Q){let i=this;return E(async function(...c){let u=new O([]),f=await i._def.args.parseAsync(c,o).catch(M=>{throw u.addIssue(n(c,M)),u}),b=await Reflect.apply(a,this,f);return await i._def.returns._def.type.parseAsync(b,o).catch(M=>{throw u.addIssue(s(b,M)),u})})}else {let i=this;return E(function(...c){let u=i._def.args.safeParse(c,o);if(!u.success)throw new O([n(c,u.error)]);let f=Reflect.apply(a,this,u.data),b=i._def.returns.safeParse(f,o);if(!b.success)throw new O([s(f,b.error)]);return b.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Z.create(e).rest(H.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(H.create()),returns:r||H.create(),typeName:v.ZodFunction,...x(n)})}},pe=class extends _{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})}};pe.create=(t,e)=>new pe({getter:t,typeName:v.ZodLazy,...x(e)});var fe=class extends _{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return p(r,{received:r.data,code:d.invalid_literal,expected:this._def.value}),g}return {status:"valid",value:e.data}}get value(){return this._def.value}};fe.create=(t,e)=>new fe({value:t,typeName:v.ZodLiteral,...x(e)});function or(t,e){return new me({values:t,typeName:v.ZodEnum,...x(e)})}var me=class t extends _{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return p(r,{expected:k.joinValues(n),received:r.parsedType,code:d.invalid_type}),g}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 p(r,{received:r.data,code:d.invalid_enum_value,options:n}),g}return E(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})}};me.create=or;var he=class extends _{_parse(e){let r=k.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==h.string&&n.parsedType!==h.number){let s=k.objectValues(r);return p(n,{expected:k.joinValues(s),received:n.parsedType,code:d.invalid_type}),g}if(this._cache||(this._cache=new Set(k.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=k.objectValues(r);return p(n,{received:n.data,code:d.invalid_enum_value,options:s}),g}return E(e.data)}get enum(){return this._def.values}};he.create=(t,e)=>new he({values:t,typeName:v.ZodNativeEnum,...x(e)});var Q=class extends _{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==h.promise&&r.common.async===false)return p(r,{code:d.invalid_type,expected:h.promise,received:r.parsedType}),g;let n=r.parsedType===h.promise?r.data:Promise.resolve(r.data);return E(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Q.create=(t,e)=>new Q({type:t,typeName:v.ZodPromise,...x(e)});var W=class extends _{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===v.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,o={addIssue:a=>{p(n,a),a.fatal?r.abort():r.dirty();},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),s.type==="preprocess"){let a=s.transform(n.data,o);if(n.common.async)return Promise.resolve(a).then(async i=>{if(r.value==="aborted")return g;let c=await this._def.schema._parseAsync({data:i,path:n.path,parent:n});return c.status==="aborted"?g:c.status==="dirty"?ne(c.value):r.value==="dirty"?ne(c.value):c});{if(r.value==="aborted")return g;let i=this._def.schema._parseSync({data:a,path:n.path,parent:n});return i.status==="aborted"?g:i.status==="dirty"?ne(i.value):r.value==="dirty"?ne(i.value):i}}if(s.type==="refinement"){let a=i=>{let c=s.refinement(i,o);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"?g:(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"?g:(i.status==="dirty"&&r.dirty(),a(i.value).then(()=>({status:r.value,value:i.value}))))}if(s.type==="transform")if(n.common.async===false){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!J(a))return g;let i=s.transform(a.value,o);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=>J(a)?Promise.resolve(s.transform(a.value,o)).then(i=>({status:r.value,value:i})):g);k.assertNever(s);}};W.create=(t,e,r)=>new W({schema:t,typeName:v.ZodEffects,effect:e,...x(r)});W.createWithPreprocess=(t,e,r)=>new W({schema:e,effect:{type:"preprocess",transform:t},typeName:v.ZodEffects,...x(r)});var $=class extends _{_parse(e){return this._getType(e)===h.undefined?E(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};$.create=(t,e)=>new $({innerType:t,typeName:v.ZodOptional,...x(e)});var G=class extends _{_parse(e){return this._getType(e)===h.null?E(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};G.create=(t,e)=>new G({innerType:t,typeName:v.ZodNullable,...x(e)});var ye=class extends _{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===h.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ye.create=(t,e)=>new ye({innerType:t,typeName:v.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...x(e)});var ge=class extends _{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Se(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new O(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new O(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};ge.create=(t,e)=>new ge({innerType:t,typeName:v.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...x(e)});var Ee=class extends _{_parse(e){if(this._getType(e)!==h.nan){let n=this._getOrReturnCtx(e);return p(n,{code:d.invalid_type,expected:h.nan,received:n.parsedType}),g}return {status:"valid",value:e.data}}};Ee.create=t=>new Ee({typeName:v.ZodNaN,...x(t)});var fn=Symbol("zod_brand"),$e=class extends _{_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}},Le=class t extends _{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return (async()=>{let o=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?g:o.status==="dirty"?(r.dirty(),ne(o.value)):this._def.out._parseAsync({data:o.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?g:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:v.ZodPipeline})}},ve=class extends _{_parse(e){let r=this._def.innerType._parse(e),n=s=>(J(s)&&(s.value=Object.freeze(s.value)),s);return Se(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:v.ZodReadonly,...x(e)});function tr(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function ar(t,e={},r){return t?X.create().superRefine((n,s)=>{let o=t(n);if(o instanceof Promise)return o.then(a=>{if(!a){let i=tr(e,n),c=i.fatal??r??true;s.addIssue({code:"custom",...i,fatal:c});}});if(!o){let a=tr(e,n),i=a.fatal??r??true;s.addIssue({code:"custom",...a,fatal:i});}}):X.create()}var mn={object:P.lazycreate},v;(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";})(v||(v={}));var hn=(t,e={message:`Input not instance of ${t.name}`})=>ar(r=>r instanceof t,e),ir=Y.create,cr=se.create,yn=Ee.create,gn=oe.create,lr=ae.create,vn=ie.create,xn=Me.create,bn=ce.create,_n=le.create,kn=X.create,wn=H.create,Tn=z.create,Sn=Ie.create,An=q.create,Mn=P.create,In=P.strictCreate,Cn=ue.create,Rn=Ze.create,En=de.create,On=Z.create,Pn=Ge.create,Dn=Ce.create,jn=Re.create,Nn=Fe.create,$n=pe.create,Ln=fe.create,Wn=me.create,Bn=he.create,zn=Q.create,Un=W.create,Vn=$.create,Zn=G.create,Gn=W.createWithPreprocess,Fn=Le.create,Kn=()=>ir().optional(),Hn=()=>cr().optional(),qn=()=>lr().optional(),Jn={string:(t=>Y.create({...t,coerce:true})),number:(t=>se.create({...t,coerce:true})),boolean:(t=>ae.create({...t,coerce:true})),bigint:(t=>oe.create({...t,coerce:true})),date:(t=>ie.create({...t,coerce:true}))};var Yn=g;var Oe="agtx_pk_",Ke="agtx_sk_";l.string().min(Oe.length+8).startsWith(Oe,{message:`Publishable keys must start with "${Oe}".`});l.string().min(Ke.length+8).startsWith(Ke,{message:`Secret keys must start with "${Ke}".`});var ur=t=>t.startsWith(Oe)?"publishable":t.startsWith(Ke)?"secret":"unknown",xe=l.enum(["webmcp","dom","screenshot"]),ft=l.enum(["detected","declared","verified","linked"]),Xn=l.object({class:xe,trust:ft,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({})}),We=l.object({class:xe,vendor:l.string().min(1),token:l.string().min(8),expiresAt:l.string().datetime().optional()});l.object({publishableKey:l.string(),claim:We,nonce:l.string().min(8),origin:l.string().url()});l.object({trust:ft,vendor:l.string(),validUntil:l.string().datetime(),reason:l.string().optional()});var U={detected:0,declared:1,verified:2,linked:3},dr=(t,e)=>U[t]>U[e],pr=l.enum(["allow","deny","review"]),Be=l.object({id:l.string(),tool:l.string(),minTrust:ft,allowedClasses:l.array(xe).default([]),decision:pr,rateLimit:l.object({max:l.number().int().positive(),windowSeconds:l.number().int().positive()}).optional()}),Qn=l.object({decision:pr,ruleId:l.string().nullable(),reason:l.string()}),es=l.enum(["session","user","org"]),mt=l.object({key:l.string().min(1),value:l.unknown(),scope:es.default("session"),ttlSeconds:l.number().int().positive().nullable().default(null),updatedAt:l.string().datetime().optional()}),ts=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()}),rs=l.object({pattern:l.string().optional(),flow:l.string().optional()}),ns=l.object({pages:l.array(ts).default([]),navigation:rs.optional()}),ss=l.object({step:l.number().int().positive(),action:l.string().min(1)}),os=l.object({steps:l.array(ss).default([]),notes:l.string().optional(),policy:l.string().optional()}),as=l.object({selector:l.string().min(1),behavior:l.string().optional(),location:l.string().optional(),showsCount:l.boolean().optional()}),is=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()}),ht=l.object({path:l.string().min(1),payload:l.record(l.unknown()).default({}),updatedAt:l.string().datetime().optional()}).strict(),j=l.object({version:l.string().default("1"),siteMap:ns.optional(),workflows:l.record(os).default({}),policies:l.record(l.union([l.string(),l.array(l.string())])).default({}),catalog:is.optional(),uiGuidance:l.record(as).default({}),pageContexts:l.record(ht).default({}),updatedAt:l.string().datetime().optional()}),fr=j.parse({}),cs=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"]),yt=l.object({id:l.string(),siteId:l.string(),sessionId:l.string(),occurredAt:l.string().datetime(),type:cs,tool:l.string().optional(),agent:Xn.nullable().optional(),policy:Qn.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(),events:l.array(yt).min(1).max(100)});var ze=class extends Error{code;constructor(t,e){super(e),this.name="AgentronicsError",this.code=t;}};var ls=()=>{if(typeof navigator>"u")return null;let t=navigator.modelContext;return t&&typeof t=="object"?t:null},Pe=async(t={})=>{let{pollMs:e=500}=t,r=Date.now();for(;;){let n=ls();if(n)return us(n);if(Date.now()-r>=e)return null;await new Promise(s=>setTimeout(s,50));}},us=t=>({class:"webmcp",trust:"detected",confidence:1,vendor:t.vendor??t.client??null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:"2026.04",signals:{webmcp:true,toolCount:Array.isArray(t.tools)?t.tools.length:0}});var ds=[/HeadlessChrome/i,/Headless/i,/PhantomJS/i,/SlimerJS/i],ps=()=>({hit:(typeof navigator<"u"&&navigator.webdriver)===true,weight:.6,detail:"navigator.webdriver === true"}),fs=()=>{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_*"}`}},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"}},hs=()=>{if(typeof navigator>"u")return {hit:false,weight:.7};let t=navigator.userAgent??"",e=ds.some(r=>r.test(t));return e?{hit:e,weight:.7,detail:`headless UA: ${t}`}:{hit:e,weight:.7}},ys=()=>{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"}},gs=()=>{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"}},vs={webdriver:ps,chromedriver:fs,headlessUa:hs,languages:ys,permissions:gs,plugins:ms},De=(t={})=>{let{threshold:e=.4}=t,r={},n=0,s=0;for(let[a,i]of Object.entries(vs)){let c=i();n+=c.weight,r[a]={hit:c.hit,weight:c.weight,detail:c.detail},c.hit&&(s+=c.weight);}let o=n===0?0:s/n;return o<e?null:{class:"dom",trust:"detected",confidence:o,vendor:null,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:"2026.04",signals:r}};var gt=()=>[{id:"webmcp.model-context",status:"stable",detect:()=>Pe({pollMs:0})},{id:"dom.automation-heuristics",status:"beta",detect:()=>De()}],He=(t=gt())=>{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(s=>s.status===r):n},async detectAll(r=false){for(let n of e.values()){if(n.status==="research"&&!r)continue;let s=await n.detect();if(s)return s}return null}}};var vt=t=>{let e=xe.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:"2026.04",signals:{declared:true,hasVerificationToken:!!t.verificationToken}}};var mr=({gatewayUrl:t,fetcher:e=fetch})=>{let r=null,n=[];return {snapshot(){return [...n]},async sync(){let s=await e(`${t.replace(/\/$/,"")}/v1/detector-signatures`,{headers: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 n=(await s.json()).signatures??[],r=s.headers.get("etag"),this.snapshot()}}};var qe=async(t={})=>{if(t.customDetectors?.length){let e=await He(t.customDetectors).detectAll(!!t.experimental);if(e)return e}if(t.webmcp!==false){let e=await Pe(t.webmcp??{});if(e)return e}if(t.dom!==false){let e=De(t.dom??{});if(e)return e}return null};var xs=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:"2026.04",signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),xt=()=>{let t=null;return {present(e){let r=We.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:xs(r.data)};return t=n,n},clear(){t=null;},preferOver(e){return t?e?dr(t.identity.trust,e.trust)?t.identity:e:t.identity:e},snapshot(){return t}}};var bs=({detected:t,declared:e,verified:r,linked:n})=>n?"linked":r?"verified":e?"declared":"detected",bt=t=>{let e=null;for(let r of t)(!e||U[r.trust]>U[e.trust])&&(e=r);return e};var hr=()=>({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:"2026.04",signals:{bearer:true,verifiedRemotely:!!r}}}});var yr=()=>({name:"detection",async authenticate(t){return t.detected??null}});var gr=()=>({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:"2026.04",signals:{extensionToken:true,verifiedRemotely:!!r}}}});var vr=()=>({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:"2026.04",signals:{oauth2:true,subject:t.oauth2Subject??null,verifiedRemotely:!!r}}}});var _s=t=>({class:t.class,trust:"declared",confidence:1,vendor:t.vendor,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:"2026.04",signals:{declared:true,hasToken:true,tokenExpiresAt:t.expiresAt??null}}),xr=()=>({name:"selfDeclaration",async authenticate(t){return t.declaration?_s(We.parse(t.declaration)):null}});var br=()=>({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:"2026.04",signals:{sessionLink:true,linkedUserId:t.linkedUserId??null,verifiedRemotely:!!r}}}});var _r=()=>({name:"xAgentHeader",async authenticate(t){if(!t.xAgentHeader)return null;let[e="x-agent",r="dom",n]=t.xAgentHeader.split(";"),s=xe.safeParse(r);return {class:s.success?s.data:"dom",trust:n?"verified":"declared",confidence:n?1:.8,vendor:e,userAgent:typeof navigator>"u"?null:navigator.userAgent,detectionVersion:"2026.04",signals:{xAgentHeader:true,hasProof:!!n}}}});var ks=()=>[yr(),xr(),hr(),_r(),gr(),br(),vr()],_t=({methods:t=ks(),context:e={},onTrace:r}={})=>({async authenticate(n){let s=[],o={};for(let c of t){let u=await c.authenticate(n,e);o[c.name]=!!u,u&&s.push(u);}let a=bt(s),i={type:a?"auth.identity_presented":"sdk.error",agent:a,outcome:a?"success":"error",metadata:{methods:o}};return a||(i.error="No auth method produced an identity."),r?.(i),a},methods(){return t.map(n=>n.name)}});var ws={identity:null,source:"initial",updatedAt:null},kt=()=>{let t=ws,e=new Set,r=()=>{e.size!==0&&e.forEach(n=>n(t));};return {snapshot(){return t},set(n,s){t={identity:n,source:s,updatedAt:new Date().toISOString()},r();},subscribe(n){return e.add(n),()=>{e.delete(n);}}}};var Ts=()=>{let t=new Map;return {read:e=>t.get(e)??null,write:(e,r)=>{t.set(e,r);}}},Ss=()=>typeof window>"u"||!window.localStorage?Ts():{read:t=>{try{return window.localStorage.getItem(t)}catch{return null}},write:(t,e)=>{try{window.localStorage.setItem(t,e);}catch{}}},As=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},wt=(t=Ss())=>({consume(e,r,n=Date.now()){let s=`agtx:rate:${e}`,o=As(t.read(s)),a=o&&o.resetAt>n?o.resetAt:n+r.windowSeconds*1e3,i=o&&o.resetAt>n?o.count+1:1;return t.write(s,JSON.stringify({count:i,resetAt:a})),{allowed:i<=r.max,remaining:Math.max(0,r.max-i),resetAt:a}}});var Ms=(t,e)=>t==="*"||t===e?true:t.includes("*")?new RegExp("^"+t.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*")+"$").test(e):false,Is=(t,e)=>{let r=t?U[t.trust]:-1,n=U[e.minTrust];return r>=n},Cs=(t,e)=>e.allowedClasses.length===0?true:t?e.allowedClasses.includes(t.class):false,kr="review",Rs=(t,e)=>{let r=e?.class??"unknown",n=e?.vendor??"unknown",s=e?.trust??"none";return `${t}:${r}:${n}:${s}`},Tt=(t=[],e={})=>{let r=t.map(s=>Be.parse(s)),n=e.rateLimiter??wt();return {set(s){r=s.map(o=>Be.parse(o));},list(){return [...r]},evaluate({tool:s,identity:o}){for(let a of r)if(Ms(a.tool,s)){if(!Is(o,a))return {decision:"deny",ruleId:a.id,reason:`Rule "${a.id}" requires trust >= ${a.minTrust}.`};if(!Cs(o,a))return {decision:"deny",ruleId:a.id,reason:`Rule "${a.id}" restricts to classes: ${a.allowedClasses.join(", ")}.`};if(a.rateLimit){let i=n.consume(Rs(s,o),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:kr,ruleId:null,reason:`No rule matched tool "${s}". Falling back to "${kr}".`}}}};var St=({gatewayUrl:t,siteId:e,publishableKey:r,fetcher:n=fetch})=>{let s={policies:[],etag:null};return {snapshot(){return {policies:[...s.policies],etag:s.etag}},async sync(){let o=await n(`${t.replace(/\/$/,"")}/v1/sites/${encodeURIComponent(e)}/policies`,{headers:{authorization:`Bearer ${r}`,...s.etag?{"if-none-match":s.etag}:{}}});if(o.status===304)return this.snapshot();if(!o.ok)throw new Error(`Policy sync failed with status ${o.status}.`);let a=await o.json();return s={policies:Be.array().parse(a.policies??[]),etag:o.headers.get("etag")},this.snapshot()}}};var At=({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 s=o=>{let a=o.target instanceof Element?o.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"&&(o.preventDefault(),o.stopPropagation(),At({message:u.reason,documentRef:r}));});};return r.addEventListener("click",s,true),{uninstall:()=>r.removeEventListener("click",s,true)}};var It=()=>{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()]}},wr=(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 s=t.key(n);s&&s.startsWith(e)&&r.push(s.slice(e.length));}}catch{}return r}}),Tr="agtx:",Sr=()=>{let t=typeof window<"u",e=t&&typeof window.sessionStorage<"u"?wr(window.sessionStorage,Tr+"session:"):It(),r=t&&typeof window.localStorage<"u"?wr(window.localStorage,Tr+"user:"):It();return {session:e,user:r,org:It()}};var Ar=(t,e)=>t.expiresAt!==null&&t.expiresAt<=e,Mr=t=>{if(!t)return null;try{let e=JSON.parse(t);return typeof e!="object"||e===null?null:e}catch{return null}},Es=t=>JSON.stringify(t),Ct=(t={})=>{let e=Sr(),r=c=>{t.onTrace?.(c);};return {get:(c,u={})=>{let f=u.scope??"session",b=e[f],w=Mr(b.read(c));if(!w){r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:f,hit:false}});return}if(Ar(w,Date.now())){b.remove(c),r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:f,hit:false,expired:true}});return}return r({type:"memory.accessed",metadata:{operation:"get",key:c,scope:f,hit:true}}),w.value},set:(c,u,f={})=>{let b=f.scope??"session",w=f.ttlSeconds??null,M=Date.now(),D={value:u,expiresAt:w===null?null:M+w*1e3,updatedAt:new Date(M).toISOString()};return e[b].write(c,Es(D)),r({type:"memory.updated",metadata:{operation:"set",key:c,scope:b,ttlSeconds:w}}),mt.parse({key:c,value:u,scope:b,ttlSeconds:w,updatedAt:D.updatedAt})},remove:(c,u={})=>{let f=u.scope??"session";e[f].remove(c),r({type:"memory.updated",metadata:{operation:"remove",key:c,scope:f}});},list:(c={})=>{let u=c.scope??"session",f=e[u],b=Date.now(),w=[];for(let M of f.keys()){let D=Mr(f.read(M));if(D){if(Ar(D,b)){f.remove(M);continue}w.push(mt.parse({key:M,value:D.value,scope:u,ttlSeconds:D.expiresAt===null?null:Math.max(0,Math.round((D.expiresAt-b)/1e3)),updatedAt:D.updatedAt}));}}return r({type:"memory.accessed",metadata:{operation:"list",scope:u,count:w.length}}),w},clear:(c={})=>{let u=c.scope??"session",f=e[u],b=f.keys().length;for(let w of f.keys())f.remove(w);r({type:"memory.updated",metadata:{operation:"clear",scope:u,count:b}});}}};var Rt=t=>j.parse(JSON.parse(JSON.stringify(t))),Je=t=>({...t,updatedAt:new Date().toISOString()}),Et=(t={})=>{let e=j.parse({...fr,...t.initial??{}}),r=null,n=new Set,s=T=>{t.onTrace?.(T);},o=()=>{r=null;},a=()=>{if(n.size===0)return;let T=Rt(e);r=T,n.forEach(A=>A(T));},i=T=>{let A=j.parse({...e,...T,workflows:{...e.workflows,...T.workflows??{}},policies:{...e.policies,...T.policies??{}},uiGuidance:{...e.uiGuidance,...T.uiGuidance??{}},pageContexts:{...e.pageContexts,...T.pageContexts??{}}});return e=Je(A),o(),s({type:"memory.updated",metadata:{kind:"site",operation:"provide",keys:Object.keys(T)}}),a(),f()},c=(T,A)=>{let I=T.split(".").filter(Boolean);if(I.length===0)throw new Error("siteMemory.update() requires a non-empty dot-path.");let te=JSON.parse(JSON.stringify(e)),re=te;for(let be=0;be<I.length-1;be++){let B=I[be],_e=re[B];(typeof _e!="object"||_e===null||Array.isArray(_e))&&(re[B]={}),re=re[B];}return re[I[I.length-1]]=A,e=Je(j.parse(te)),o(),s({type:"memory.updated",metadata:{kind:"site",operation:"update",path:T}}),a(),f()},u=T=>{let A=ht.parse({path:T.path,payload:T.payload,updatedAt:new Date().toISOString()});return e=Je({...e,pageContexts:{...e.pageContexts,[T.path]:A}}),o(),s({type:"memory.updated",metadata:{kind:"site",operation:"provideForPage",path:T.path}}),a(),{...A,payload:{...A.payload}}},f=()=>(r||(r=Rt(e)),r);return {provide:i,update:c,provideForPage:u,snapshot:f,get:T=>{if(s({type:"memory.accessed",metadata:{kind:"site",operation:T?"get":"snapshot",path:T??null}}),!T)return Rt(e);let A=T.split(".").filter(Boolean),I=e;for(let te of A){if(typeof I!="object"||I===null)return;I=I[te];}return I},getForPage:T=>{s({type:"memory.accessed",metadata:{kind:"site",operation:"getForPage",path:T}});let A=e.pageContexts[T];return A?{...A,payload:{...A.payload}}:null},replace:T=>(e=Je(j.parse(T)),o(),a(),f()),subscribe:T=>(n.add(T),()=>{n.delete(T);})}};var Ot=({gatewayUrl:t,siteId:e,publishableKey:r,fetcher:n=fetch})=>{let s={memory:null,etag:null};return {snapshot(){return {memory:s.memory?j.parse(s.memory):null,etag:s.etag}},async sync(){let o=await n(`${t.replace(/\/$/,"")}/v1/sites/${encodeURIComponent(e)}/memory`,{headers:{authorization:`Bearer ${r}`,...s.etag?{"if-none-match":s.etag}:{}}});if(o.status===304)return this.snapshot();if(!o.ok)throw new Error(`Memory sync failed with status ${o.status}.`);let a=await o.json();return s={memory:j.parse(a.memory??{}),etag:o.headers.get("etag")},this.snapshot()}}};var Ir=({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(s={}){let o=r(),a=s.path??null;if(n?.(a),!a)return {content:o};let i=a.split(".").filter(Boolean),c=o;for(let u of i){if(typeof c!="object"||c===null)return {content:void 0};c=c[u];}return {content:c}}});var ee="agent-context-",Pt="agentronics-site-context",Os=t=>{try{return JSON.stringify(t)}catch{return "{}"}},Ye=(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);},Xe=(t,e)=>{t.querySelectorAll(`meta[name="${e}"]`).forEach(r=>r.remove());},Qe=({doc:t=typeof document>"u"?null:document,snapshot:e,schemaType:r="WebSite"})=>{if(!t)return {uninstall:()=>{}};Ye(t,`${ee}version`,e.version),Ye(t,`${ee}updated-at`,e.updatedAt??new Date().toISOString()),e.siteMap?.navigation?.flow&&Ye(t,`${ee}flow`,e.siteMap.navigation.flow),Ye(t,`${ee}workflows`,Object.keys(e.workflows).join(","));let n=t.getElementById(Pt);return n||(n=t.createElement("script"),n.type="application/ld+json",n.id=Pt,t.head.appendChild(n)),n.textContent=Os({"@context":"https://schema.org","@type":r,name:"Agentronics Site Memory",agentronics:e}),{uninstall:()=>{Xe(t,`${ee}version`),Xe(t,`${ee}updated-at`),Xe(t,`${ee}flow`),Xe(t,`${ee}workflows`),t.getElementById(Pt)?.remove();}}};var Cr="agentronics-memory-overlay",Ps=t=>`
2
+ position: fixed;
3
+ bottom: 16px;
4
+ right: 16px;
5
+ max-width: 320px;
6
+ padding: 10px 12px;
7
+ background: rgba(17, 24, 39, 0.92);
8
+ color: #f9fafb;
9
+ font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace;
10
+ border-radius: 8px;
11
+ z-index: 2147483647;
12
+ opacity: ${t?"0":"1"};
13
+ pointer-events: ${t?"none":"auto"};
14
+ box-shadow: 0 12px 32px rgba(15, 23, 42, 0.35);
15
+ `,Rr=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}`},et=({doc:t=typeof document>"u"?null:document,snapshot:e,hidden:r=false})=>{if(!t)return {uninstall:()=>{},refresh:()=>{}};let n=t.getElementById(Cr);return n||(n=t.createElement("div"),n.id=Cr,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",Ps(r)),n.textContent=Rr(e),{uninstall:()=>{n?.remove();},refresh:s=>{n&&(n.textContent=Rr(s));}}};var Dt="/.well-known/agent-context.json",tt=async({origin:t,fetcher:e=fetch,signal:r}={})=>{let n=(t?t.replace(/\/$/,""):typeof window<"u"?window.location.origin:"")+Dt;if(!n.startsWith("http"))return null;let s={headers:{accept:"application/json"}};r!==void 0&&(s.signal=r);let o=await e(n,s);if(!o.ok){if(o.status===404)return null;throw new Error(`well-known agent-context fetch failed with status ${o.status}.`)}let a=await o.json();return j.parse(a)},Er=({snapshot:t})=>JSON.stringify(j.parse(t));var jt=({evaluate:t,setPolicies:e,listPolicies:r,onTrace:n})=>{let s=new Map,o=new Set,a=i=>{if(!i.authz||!e||!r)return;let c={id:`tool:${i.name}`,tool:i.name,...i.authz,rateLimit:i.rateLimit??i.authz.rateLimit};e([...r().filter(u=>u.id!==c.id),c]);};return {register(i){return s.set(i.name,i),o.delete(i.name),a(i),n?.({type:"tool.registered",tool:i.name,metadata:{version:i.version??null,group:i.group??null,stage:i.stage??null}}),()=>{s.delete(i.name),o.delete(i.name);}},unregister(i){s.delete(i),o.delete(i);},enable(i){!s.has(i)||!o.has(i)||(o.delete(i),n?.({type:"tool.surfaced",tool:i,metadata:{state:"enabled"}}));},disable(i){!s.has(i)||o.has(i)||(o.add(i),n?.({type:"tool.surfaced",tool:i,metadata:{state:"disabled"}}));},isEnabled:i=>s.has(i)&&!o.has(i),list({includeDisabled:i=false}={}){let c=[...s.values()];return i?c:c.filter(u=>!o.has(u.name))},get:i=>s.get(i),async execute(i,c,u=null){let f=s.get(i);if(!f)throw new Error(`Tool "${i}" is not registered.`);if(o.has(i)){let M={decision:"deny",ruleId:`tool:${i}`,reason:"Tool is disabled."};throw n?.({type:"tool.executed",tool:i,agent:u,policy:M,outcome:"blocked"}),new Error(M.reason)}let b=await t(i,{identity:u});if(b.decision==="deny")throw n?.({type:"tool.executed",tool:i,agent:u,policy:b,outcome:"blocked"}),new Error(b.reason);let w=await f.execute(c,{identity:u});return n?.({type:"tool.executed",tool:i,agent:u,policy:b,outcome:"success"}),w}}};var Nt=(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,s=()=>{let a=r.get(n);return a?.enables?[n,...a.enables]:[n]},o=(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:()=>s(),notify(a){let c=r.get(n)?.transitions?.find(u=>u.on===a);return c?o(c.to,a):{changed:false,from:n,to:n}},set(a){return o(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:s()})}};var Ds=(t,e)=>{let r=t.authz?.minTrust;return r?e?U[e.trust]<U[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"}},js=(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"},$t=(t,e)=>{let r=Ds(t,e.identity);if(!r.ok)return {tool:t,visible:false,reason:r.reason};let n=js(t,e.identity);if(!n.ok)return {tool:t,visible:false,reason:n.reason};let s=Ns(t,e);return s.ok?t.authz?.decision==="deny"?{tool:t,visible:false,reason:"authz-deny"}:{tool:t,visible:true,reason:"visible"}:{tool:t,visible:false,reason:s.reason}},Lt=(t,e)=>t.filter(r=>$t(r,e).visible),Wt=(t,e)=>t.map(r=>$t(r,e));var Bt="default",zt=t=>{let e=new Map;for(let r of t){let n=r.group??Bt,s=e.get(n)??[];s.push(r),e.set(n,s);}return [...e.entries()].sort(([r],[n])=>r.localeCompare(n)).map(([r,n])=>({name:r,tools:n}))},$s=t=>[...new Set(t.map(e=>e.group??Bt))].sort();var Ut=t=>t===null||typeof t!="object"?JSON.stringify(t):Array.isArray(t)?`[${t.map(Ut).join(",")}]`:`{${Object.keys(t).sort().map(r=>`${JSON.stringify(r)}:${Ut(t[r])}`).join(",")}}`,Or=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=Ut(e).length;return {name:t.name,characters:r,tokens:Math.ceil(r/4)}},Vt=t=>{let e=t.map(Or);return {total:e.reduce((n,s)=>n+s.tokens,0),perTool:e}};var Pr=t=>t.provider?t.provider:(t.doc?.defaultView??(typeof globalThis<"u"?globalThis:null))?.navigator?.modelContext??null,Ls=(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},Zt=(t={})=>{let e=t.invoke??(async(n,s)=>n.execute(s,{identity:null})),r=null;return {publish(n){let s=Pr(t);return s?(r?.revoke(),r=s.provideContext({tools:n.map(o=>Ls(o,e))}),{revoked:true}):{revoked:false}},revoke(){r?.revoke(),r=null;},available:()=>!!Pr(t)}};var rt=(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 Dr=(t,e)=>t===void 0?e:Math.max(0,Math.min(1,t)),Gt=(t={})=>{let e=Dr(t.traceRate,1),r=Dr(t.errorRate,1),n=t.random??Math.random;return {shouldKeep(s){let o=s.outcome==="error"?r:e;return n()<o}}};var Ws="[REDACTED]",Bs=t=>{if(t!==void 0)return JSON.parse(JSON.stringify(t))},Ft=(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 o of t)Ft(o,e);return}let s=t;if(r in s){if(n.length===0){s[r]=Ws;return}Ft(s[r],n);}},Kt=(t,e=[])=>{if(e.length===0)return t;let r=Bs(t);for(let n of e)Ft(r,n.split(".").filter(Boolean));return r},Ht=["metadata.password","metadata.token","metadata.authorization","metadata.cookie"];var jr=t=>{let e=globalThis.crypto;return e&&"randomUUID"in e?`${t}_${e.randomUUID()}`:`${t}_${Date.now().toString(36)}_${Math.random().toString(36).slice(2)}`},nt=({siteId:t,bufferSize:e,sessionId:r=jr("ses"),scrubPaths:n=Ht,exporters:s=[],onExporterError:o,...a})=>{let i=rt(e),c=Gt(a);return {sessionId:r,async emit(u){let f=yt.parse(Kt({id:jr("trc"),siteId:t,sessionId:r,occurredAt:new Date().toISOString(),outcome:u.outcome??"success",metadata:{},...u},n));return c.shouldKeep(f)?(i.add(f),await Promise.all(s.map(async b=>{try{await b.export([f]);}catch(w){o?.(w,b,f);}})),f):null},list:()=>i.list(),clear:()=>i.clear()}};var st=()=>({name:"console",export(t){for(let e of t)console.info("[agentronics:trace]",e.type,e);}});var ot=({gatewayUrl:t,publishableKey:e,fetcher:r=fetch})=>({name:"gateway",async export(n){let s={publishableKey:e,events:n};await r(`${t.replace(/\/$/,"")}/v1/traces`,{method:"POST",headers:{"content-type":"application/json",authorization:`Bearer ${e}`},body:JSON.stringify(s)});}});var zs=t=>new Promise(e=>setTimeout(e,t)),at=({url:t,fetcher:e=fetch,maxRetries:r=2,queueLimit:n=500})=>({name:"webhook",async export(s){let a=[...Us(t),...s].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){Nr(t,[]);return}if(i>=r)throw Nr(t,a),new Error(`Webhook exporter failed with status ${c.status}.`);i+=1,await zs(100*i);}}}),qt=t=>`agtx:webhook:${t}`,Us=t=>{if(typeof window>"u"||!window.localStorage)return [];try{let e=window.localStorage.getItem(qt(t));return e?JSON.parse(e):[]}catch{return []}},Nr=(t,e)=>{if(!(typeof window>"u"||!window.localStorage))try{if(e.length===0){window.localStorage.removeItem(qt(t));return}window.localStorage.setItem(qt(t),JSON.stringify(e));}catch{}};var $r="https://gateway.agentronics.dev",Vs=t=>{if(t===void 0)return $r;if(t===$r)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}`)},Lr=t=>{let{publishableKey:e,siteId:r="default",debug:n=false,policies:s=[],trace:o={}}=t,a=Vs(t.gatewayUrl),i=ur(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 "${Oe}".`);let c=o.enabled??true,u=[...n?[st()]:[],...o.gateway?[ot({gatewayUrl:a,publishableKey:e})]:[],...o.webhookUrl?[at({url:o.webhookUrl})]:[],...o.exporters??[]],f={siteId:r,exporters:c?u:[],onExporterError:(m,S)=>{n&&console.warn(`[agentronics] trace exporter "${S.name}" failed`,m);}};o.bufferSize!==void 0&&(f.bufferSize=o.bufferSize),o.traceRate!==void 0&&(f.traceRate=o.traceRate),o.errorRate!==void 0&&(f.errorRate=o.errorRate),o.scrubPaths!==void 0&&(f.scrubPaths=o.scrubPaths);let b=nt(f),w=m=>{c&&b.emit(m);},M=xt(),D={onTrace:w};t.auth!==void 0&&(D.context=t.auth);let T=_t(D),A=kt(),I=Tt(s),te=St({gatewayUrl:a,siteId:r,publishableKey:e}),re=Ct({onTrace:w}),be={onTrace:w};t.siteMemory!==void 0&&(be.initial=t.siteMemory);let B=Et(be),_e=Ot({gatewayUrl:a,siteId:r,publishableKey:e}),it=async m=>{let S=Date.now(),R=await qe(m),N=M.preferOver(R);return c&&await b.emit({type:N?"agent.detected":"agent.missed",agent:N,durationMs:Date.now()-S,metadata:{detectedClass:R?.class??null,presented:M.snapshot()!==null}}),A.set(N,"detect"),N},Jt=async(m,S={})=>{let R=Date.now(),N=S.identity!==void 0?S.identity:await it(),lt=I.evaluate({tool:m,identity:N});return c&&await b.emit({type:"authz.evaluated",tool:m,agent:N,policy:lt,outcome:lt.decision==="deny"?"blocked":"success",durationMs:Date.now()-R}),lt},ke=jt({evaluate:Jt,setPolicies:m=>I.set(m),listPolicies:()=>I.list(),onTrace:w});for(let m of t.tools??[])ke.register(m);let we=t.progression?Nt(t.progression,{onTrace:w}):null,Yt=m=>{let S={identity:m};return we&&(S.stage=we.current(),S.enabledStages=we.enabledStages()),S},je=m=>Lt(ke.list(),Yt(m)),Xt=m=>{if(!we)return;we.notify(m).changed&&ct.publish(je(null));},ct=Zt({invoke:async(m,S)=>{let R=await ke.execute(m.name,S,null);return Xt(m.name),R}});return Object.freeze({publishableKey:e,siteId:r,gatewayUrl:a,debug:n,memory:re,siteMemory:B,memoryCache:_e,tracer:b,auth:T,agentContext:A,authz:I,policyCache:te,tools:ke,progression:we,webmcp:ct,detect:it,authenticate:async m=>{let S=await T.authenticate(m);return A.set(S,"authenticate"),S},presentIdentity:m=>{let S=M.present(m);return w({type:"auth.identity_presented",agent:S.identity,metadata:{vendor:S.identity.vendor,class:S.identity.class}}),A.set(S.identity,"declare"),S},clearIdentity:()=>{M.clear(),w({type:"auth.identity_cleared"}),A.set(null,"cleared");},presentedIdentity:()=>M.snapshot(),setPolicies:m=>{I.set(m),w({type:"authz.policies_set",metadata:{count:m.length}});},listPolicies:()=>I.list(),syncPolicies:async()=>{let m=await te.sync();return I.set(m.policies),w({type:"authz.policies_set",metadata:{count:m.policies.length,synced:true}}),m.policies},syncSiteMemory:async()=>{let m=await _e.sync();return m.memory&&(B.replace(m.memory),w({type:"memory.updated",metadata:{kind:"site",operation:"sync",etag:m.etag}})),m.memory},provideSiteMemory:m=>B.provide(m),provideForPage:m=>{B.provideForPage(m);},installMemoryDelivery:({metaTags:m=true,overlay:S=false}={})=>{let R=[];return m&&R.push(Qe({snapshot:B.snapshot()})),S&&R.push(et({snapshot:B.snapshot()})),{uninstall:()=>{R.forEach(N=>N.uninstall());}}},fetchWellKnown:async m=>{let S={};m!==void 0&&(S.origin=m);let R=await tt(S);return R&&(B.replace(R),w({type:"memory.updated",metadata:{kind:"site",operation:"wellKnown",origin:m??null}})),R},installDomEnforcer:()=>Mt({policyEngine:I,getIdentity:()=>it({webmcp:{pollMs:0}})}),registerTool:m=>ke.register(m),surfaceTools:({identity:m=null}={})=>je(m),explainSurfacing:({identity:m=null}={})=>Wt(ke.list(),Yt(m)),groupedTools:({identity:m=null}={})=>zt(je(m)),estimateTokens:({identity:m=null}={})=>Vt(je(m)),publishToWebMcp:({identity:m=null}={})=>{let S=je(m),R=ct.publish(S);return S.forEach(N=>{w({type:"tool.surfaced",tool:N.name,metadata:{state:"published",trust:m?.trust??null,group:N.group??null}});}),{revoked:R.revoked,surfaced:S.length}},notifyToolInvoked:m=>Xt(m),evaluate:Jt,traces:()=>b.list(),clearTraces:()=>b.clear(),async ping(){try{let m=await fetch(`${a.replace(/\/$/,"")}/v1/health`,{method:"GET",headers:{authorization:`Bearer ${e}`}});if(!m.ok)return {ok:!1,status:m.status,error:`gateway returned ${m.status}`};let S=await m.json().catch(()=>null)??{};return {ok:!0,status:m.status,body:S}}catch(m){return {ok:false,status:0,error:m instanceof Error?m.message:String(m)}}}})};var Qi={init:Lr,declareAgent:vt,detectAgent:qe},ec="0.1.0";
16
+ exports.Agentronics=Qi;exports.DEFAULT_GROUP=Bt;exports.VERSION=ec;exports.WELL_KNOWN_PATH=Dt;exports.bundledDetectors=gt;exports.createAgentContextStore=kt;exports.createAuthEngine=_t;exports.createConsoleExporter=st;exports.createDetectorRegistry=He;exports.createGatewayExporter=ot;exports.createIdentityStore=xt;exports.createMemoryCache=Ot;exports.createMemoryStore=Ct;exports.createPolicyCache=St;exports.createPolicyEngine=Tt;exports.createProgressionStore=Nt;exports.createRateLimiter=wt;exports.createSignatureLoader=mr;exports.createSiteMemoryStore=Et;exports.createToolRegistry=jt;exports.createTraceBuffer=rt;exports.createTracer=nt;exports.createWebMcpAdapter=Zt;exports.createWebMcpContextTool=Ir;exports.createWebhookExporter=at;exports.decideSurfacing=$t;exports.declareAgent=vt;exports.deriveTrustLevel=bs;exports.detectAgent=qe;exports.detectDom=De;exports.detectWebMcp=Pe;exports.estimateBudget=Vt;exports.estimateToolTokens=Or;exports.explainSurfacing=Wt;exports.fetchWellKnownContext=tt;exports.groupTools=zt;exports.highestTrust=bt;exports.init=Lr;exports.installDomEnforcer=Mt;exports.installMemoryOverlay=et;exports.installMetaTags=Qe;exports.listGroupNames=$s;exports.serializeWellKnownContext=Er;exports.showDenyOverlay=At;exports.surfaceTools=Lt;return exports;})({});//# sourceMappingURL=index.global.js.map
17
+ //# sourceMappingURL=index.global.js.map