@xenia-martech/mcp 0.0.0-development

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +89 -0
  2. package/dist/bin.js +108 -0
  3. package/package.json +28 -0
package/README.md ADDED
@@ -0,0 +1,89 @@
1
+ # @xenia-martech/mcp
2
+
3
+ Connect your **Xenia** account to any AI coding assistant. Your assistant reads your real
4
+ journeys — trigger ids, request shapes, personalization content keys — and wires the Xenia SDK
5
+ into your project against those real values instead of guessing.
6
+
7
+ Works with Claude Code, Cursor, GitHub Copilot (VS Code), Windsurf, OpenAI Codex CLI, and Gemini CLI.
8
+
9
+ ```
10
+ you> connect my Xenia account
11
+ Open https://app.xenia.../device Code WXYZ-1234
12
+ [approve in the dashboard, pick a workspace]
13
+
14
+ you> wire the abandoned-cart journey into my checkout
15
+ → reads the journey's real trigger id, method, and fields
16
+ → detects your stack, writes .env, and edits your component
17
+ ```
18
+
19
+ ## Install
20
+
21
+ Pick your assistant — each command registers the server via the assistant's own MCP config.
22
+
23
+ ```bash
24
+ # Claude Code
25
+ claude mcp add xenia -- npx -y @xenia-martech/mcp
26
+
27
+ # Any assistant (writes the right config file for it)
28
+ npx @xenia-martech/mcp install --client cursor # or: windsurf, copilot, codex, gemini, claude-code
29
+ ```
30
+
31
+ Or add it by hand to your assistant's MCP config:
32
+
33
+ ```json
34
+ {
35
+ "mcpServers": {
36
+ "xenia": {
37
+ "command": "npx",
38
+ "args": ["-y", "@xenia-martech/mcp"]
39
+ }
40
+ }
41
+ }
42
+ ```
43
+
44
+ Restart the assistant, then ask it to **"connect my Xenia account"**.
45
+
46
+ Testing against a non-default engine (e.g. staging)? Add `--base-url https://your-engine/xenia`
47
+ to the install command, or set `XENIA_BASE_URL` in the server's env.
48
+
49
+ ## Authentication
50
+
51
+ No API keys. Running `connect my Xenia account` opens a short code + URL; you approve it in the
52
+ Xenia dashboard you are already signed in to, pick which org/tenant/environment to grant, and the
53
+ assistant is connected. Works with SSO and MFA — no credential ever passes through the chat.
54
+
55
+ Every connected assistant is listed in the dashboard under **API tokens → Connected assistants** and
56
+ can be disconnected there at any time.
57
+
58
+ ## Tools
59
+
60
+ | Tool | What it does |
61
+ |---|---|
62
+ | `xenia_login` / `xenia_login_wait` | Connect via browser approval |
63
+ | `xenia_status` | Who is connected, and the active workspace |
64
+ | `xenia_list_scopes` / `xenia_select_scope` | See and switch org / tenant / environment |
65
+ | `xenia_list_journeys` | The journeys in the active workspace |
66
+ | `xenia_get_journey` | Trigger id, method, request fields, content keys, and a stack-matched SDK snippet |
67
+ | `xenia_list_content_keys` | Every personalization key, and which journeys resolve it |
68
+ | `xenia_detect_stack` | Framework, SDK entry point, and which token type this project needs |
69
+ | `xenia_mint_sdk_token` | Mint a token and write it to your env file |
70
+ | `xenia_verify` | Read journeys, resolve a content key, optionally fire a test event |
71
+ | `xenia_logout` | Revoke the session and forget the local credential |
72
+
73
+ ## Safety
74
+
75
+ - **No token value ever appears in a tool result.** Minted SDK tokens are written straight to your
76
+ env file; session tokens stay in `~/.xenia/credentials.json` (mode `0600`).
77
+ - **The SDK token type is derived from your project, not guessed** — a server token stays
78
+ server-side; a browser token is origin-restricted.
79
+ - **Writes against a production environment require explicit confirmation.**
80
+
81
+ ## Release channels
82
+
83
+ ```bash
84
+ npx @xenia-martech/mcp # latest stable
85
+ npx @xenia-martech/mcp@rc # release candidate
86
+ npx @xenia-martech/mcp@dev # development preview
87
+ ```
88
+
89
+ Requires Node 20+. MIT licensed.
package/dist/bin.js ADDED
@@ -0,0 +1,108 @@
1
+ #!/usr/bin/env node
2
+ var p_=Object.create;var wi=Object.defineProperty;var f_=Object.getOwnPropertyDescriptor;var m_=Object.getOwnPropertyNames;var h_=Object.getPrototypeOf,g_=Object.prototype.hasOwnProperty;var S=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ki=(t,e)=>{for(var r in e)wi(t,r,{get:e[r],enumerable:!0})},y_=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of m_(e))!g_.call(t,o)&&o!==r&&wi(t,o,{get:()=>e[o],enumerable:!(n=f_(e,o))||n.enumerable});return t};var wd=(t,e,r)=>(r=t!=null?p_(h_(t)):{},y_(e||!t||!t.__esModule?wi(r,"default",{value:t,enumerable:!0}):r,t));var Yn=S(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.regexpCode=Y.getEsmExportName=Y.getProperty=Y.safeStringify=Y.stringify=Y.strConcat=Y.addCodeArg=Y.str=Y._=Y.nil=Y._Code=Y.Name=Y.IDENTIFIER=Y._CodeOrName=void 0;var Xn=class{};Y._CodeOrName=Xn;Y.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var $r=class extends Xn{constructor(e){if(super(),!Y.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Y.Name=$r;var tt=class extends Xn{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof $r&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Y._Code=tt;Y.nil=new tt("");function $m(t,...e){let r=[t[0]],n=0;for(;n<e.length;)iu(r,e[n]),r.push(t[++n]);return new tt(r)}Y._=$m;var su=new tt("+");function wm(t,...e){let r=[Wn(t[0])],n=0;for(;n<e.length;)r.push(su),iu(r,e[n]),r.push(su,Wn(t[++n]));return x0(r),new tt(r)}Y.str=wm;function iu(t,e){e instanceof tt?t.push(...e._items):e instanceof $r?t.push(e):t.push(w0(e))}Y.addCodeArg=iu;function x0(t){let e=1;for(;e<t.length-1;){if(t[e]===su){let r=b0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function b0(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof $r||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof $r))return`"${t}${e.slice(1)}`}function $0(t,e){return e.emptyStr()?t:t.emptyStr()?e:wm`${t}${e}`}Y.strConcat=$0;function w0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Wn(Array.isArray(t)?t.join(","):t)}function k0(t){return new tt(Wn(t))}Y.stringify=k0;function Wn(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Y.safeStringify=Wn;function S0(t){return typeof t=="string"&&Y.IDENTIFIER.test(t)?new tt(`.${t}`):$m`[${t}]`}Y.getProperty=S0;function z0(t){if(typeof t=="string"&&Y.IDENTIFIER.test(t))return new tt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Y.getEsmExportName=z0;function T0(t){return new tt(t.toString())}Y.regexpCode=T0});var uu=S(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.ValueScope=Fe.ValueScopeName=Fe.Scope=Fe.varKinds=Fe.UsedValueState=void 0;var Ue=Yn(),au=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},js;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(js||(Fe.UsedValueState=js={}));Fe.varKinds={const:new Ue.Name("const"),let:new Ue.Name("let"),var:new Ue.Name("var")};var Os=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ue.Name?e:this.name(e)}name(e){return new Ue.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Fe.Scope=Os;var Ns=class extends Ue.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ue._)`.${new Ue.Name(r)}[${n}]`}};Fe.ValueScopeName=Ns;var P0=(0,Ue._)`\n`,cu=class extends Os{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?P0:Ue.nil}}get(){return this._scope}name(e){return new Ns(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ue._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ue.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,js.Started);let l=r(u);if(l){let d=this.opts.es5?Fe.varKinds.var:Fe.varKinds.const;s=(0,Ue._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ue._)`${s}${l}${this.opts._n}`;else throw new au(u);c.set(u,js.Completed)})}return s}};Fe.ValueScope=cu});var U=S(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var G=Yn(),ut=uu(),Vt=Yn();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return Vt._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return Vt.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return Vt.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return Vt.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return Vt.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return Vt.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return Vt.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return Vt.Name}});var Ms=uu();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return Ms.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return Ms.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return Ms.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return Ms.varKinds}});F.operators={GT:new G._Code(">"),GTE:new G._Code(">="),LT:new G._Code("<"),LTE:new G._Code("<="),EQ:new G._Code("==="),NEQ:new G._Code("!=="),NOT:new G._Code("!"),OR:new G._Code("||"),AND:new G._Code("&&"),ADD:new G._Code("+")};var Rt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},lu=class extends Rt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ut.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=rn(this.rhs,e,r)),this}get names(){return this.rhs instanceof G._CodeOrName?this.rhs.names:{}}},Cs=class extends Rt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof G.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=rn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof G.Name?{}:{...this.lhs.names};return As(e,this.rhs)}},du=class extends Cs{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},pu=class extends Rt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},fu=class extends Rt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},mu=class extends Rt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},hu=class extends Rt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=rn(this.code,e,r),this}get names(){return this.code instanceof G._CodeOrName?this.code.names:{}}},Qn=class extends Rt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(E0(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Sr(e,r.names),{})}},It=class extends Qn{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},gu=class extends Qn{},tn=class extends It{};tn.kind="else";var wr=class t extends It{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new tn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(km(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=rn(this.condition,e,r),this}get names(){let e=super.names;return As(e,this.condition),this.else&&Sr(e,this.else.names),e}};wr.kind="if";var kr=class extends It{};kr.kind="for";var yu=class extends kr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=rn(this.iteration,e,r),this}get names(){return Sr(super.names,this.iteration.names)}},_u=class extends kr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?ut.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=As(super.names,this.from);return As(e,this.to)}},Zs=class extends kr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=rn(this.iterable,e,r),this}get names(){return Sr(super.names,this.iterable.names)}},eo=class extends It{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};eo.kind="func";var to=class extends Qn{render(e){return"return "+super.render(e)}};to.kind="return";var vu=class extends It{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Sr(e,this.catch.names),this.finally&&Sr(e,this.finally.names),e}},ro=class extends It{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};ro.kind="catch";var no=class extends It{render(e){return"finally"+super.render(e)}};no.kind="finally";var xu=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new ut.Scope({parent:e}),this._nodes=[new gu]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new lu(e,s,n)),s}const(e,r,n){return this._def(ut.varKinds.const,e,r,n)}let(e,r,n){return this._def(ut.varKinds.let,e,r,n)}var(e,r,n){return this._def(ut.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Cs(e,r,n))}add(e,r){return this._leafNode(new du(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==G.nil&&this._leafNode(new hu(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,G.addCodeArg)(r,o));return r.push("}"),new G._Code(r)}if(e,r,n){if(this._blockNode(new wr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new wr(e))}else(){return this._elseNode(new tn)}endIf(){return this._endBlockNode(wr,tn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new yu(e),r)}forRange(e,r,n,o,s=this.opts.es5?ut.varKinds.var:ut.varKinds.let){let i=this._scope.toName(e);return this._for(new _u(s,i,r,n),()=>o(i))}forOf(e,r,n,o=ut.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof G.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,G._)`${i}.length`,a=>{this.var(s,(0,G._)`${i}[${a}]`),n(s)})}return this._for(new Zs("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?ut.varKinds.var:ut.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,G._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Zs("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(kr)}label(e){return this._leafNode(new pu(e))}break(e){return this._leafNode(new fu(e))}return(e){let r=new to;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(to)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new vu;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new ro(s),r(s)}return n&&(this._currNode=o.finally=new no,this.code(n)),this._endBlockNode(ro,no)}throw(e){return this._leafNode(new mu(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=G.nil,n,o){return this._blockNode(new eo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(eo)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof wr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};F.CodeGen=xu;function Sr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function As(t,e){return e instanceof G._CodeOrName?Sr(t,e.names):t}function rn(t,e,r){if(t instanceof G.Name)return n(t);if(!o(t))return t;return new G._Code(t._items.reduce((s,i)=>(i instanceof G.Name&&(i=n(i)),i instanceof G._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof G._Code&&s._items.some(i=>i instanceof G.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function E0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function km(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,G._)`!${bu(t)}`}F.not=km;var R0=Sm(F.operators.AND);function I0(...t){return t.reduce(R0)}F.and=I0;var j0=Sm(F.operators.OR);function O0(...t){return t.reduce(j0)}F.or=O0;function Sm(t){return(e,r)=>e===G.nil?r:r===G.nil?e:(0,G._)`${bu(e)} ${t} ${bu(r)}`}function bu(t){return t instanceof G.Name?t:(0,G._)`(${t})`}});var X=S(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var re=U(),N0=Yn();function C0(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=C0;function Z0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Pm(t,e),!Em(e,t.self.RULES.all))}V.alwaysValidSchema=Z0;function Pm(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||jm(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=Pm;function Em(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=Em;function A0(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=A0;function M0({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,re._)`${r}`}return(0,re._)`${t}${e}${(0,re.getProperty)(n)}`}V.schemaRefOrVal=M0;function D0(t){return Rm(decodeURIComponent(t))}V.unescapeFragment=D0;function q0(t){return encodeURIComponent(wu(t))}V.escapeFragment=q0;function wu(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=wu;function Rm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=Rm;function L0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=L0;function zm({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof re.Name?(s instanceof re.Name?t(o,s,i):e(o,s,i),i):s instanceof re.Name?(e(o,i,s),s):r(s,i);return a===re.Name&&!(c instanceof re.Name)?n(o,c):c}}V.mergeEvaluated={props:zm({mergeNames:(t,e,r)=>t.if((0,re._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,re._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,re._)`${r} || {}`).code((0,re._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,re._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,re._)`${r} || {}`),ku(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Im}),items:zm({mergeNames:(t,e,r)=>t.if((0,re._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,re._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,re._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,re._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Im(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,re._)`{}`);return e!==void 0&&ku(t,r,e),r}V.evaluatedPropsToName=Im;function ku(t,e,r){Object.keys(r).forEach(n=>t.assign((0,re._)`${e}${(0,re.getProperty)(n)}`,!0))}V.setEvaluated=ku;var Tm={};function U0(t,e){return t.scopeValue("func",{ref:e,code:Tm[e.code]||(Tm[e.code]=new N0._Code(e.code))})}V.useFunc=U0;var $u;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})($u||(V.Type=$u={}));function F0(t,e,r){if(t instanceof re.Name){let n=e===$u.Num;return r?n?(0,re._)`"[" + ${t} + "]"`:(0,re._)`"['" + ${t} + "']"`:n?(0,re._)`"/" + ${t}`:(0,re._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,re.getProperty)(t).toString():"/"+wu(t)}V.getErrorPath=F0;function jm(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=jm});var jt=S(Su=>{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});var ze=U(),V0={data:new ze.Name("data"),valCxt:new ze.Name("valCxt"),instancePath:new ze.Name("instancePath"),parentData:new ze.Name("parentData"),parentDataProperty:new ze.Name("parentDataProperty"),rootData:new ze.Name("rootData"),dynamicAnchors:new ze.Name("dynamicAnchors"),vErrors:new ze.Name("vErrors"),errors:new ze.Name("errors"),this:new ze.Name("this"),self:new ze.Name("self"),scope:new ze.Name("scope"),json:new ze.Name("json"),jsonPos:new ze.Name("jsonPos"),jsonLen:new ze.Name("jsonLen"),jsonPart:new ze.Name("jsonPart")};Su.default=V0});var oo=S(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.extendErrors=Te.resetErrorsCount=Te.reportExtraError=Te.reportError=Te.keyword$DataError=Te.keywordError=void 0;var W=U(),Ds=X(),Ce=jt();Te.keywordError={message:({keyword:t})=>(0,W.str)`must pass "${t}" keyword validation`};Te.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,W.str)`"${t}" keyword must be ${e} ($data)`:(0,W.str)`"${t}" keyword is invalid ($data)`};function H0(t,e=Te.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Cm(t,e,r);n??(i||a)?Om(s,c):Nm(o,(0,W._)`[${c}]`)}Te.reportError=H0;function K0(t,e=Te.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Cm(t,e,r);Om(o,a),s||i||Nm(n,Ce.default.vErrors)}Te.reportExtraError=K0;function B0(t,e){t.assign(Ce.default.errors,e),t.if((0,W._)`${Ce.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,W._)`${Ce.default.vErrors}.length`,e),()=>t.assign(Ce.default.vErrors,null)))}Te.resetErrorsCount=B0;function J0({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Ce.default.errors,a=>{t.const(i,(0,W._)`${Ce.default.vErrors}[${a}]`),t.if((0,W._)`${i}.instancePath === undefined`,()=>t.assign((0,W._)`${i}.instancePath`,(0,W.strConcat)(Ce.default.instancePath,s.errorPath))),t.assign((0,W._)`${i}.schemaPath`,(0,W.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,W._)`${i}.schema`,r),t.assign((0,W._)`${i}.data`,n))})}Te.extendErrors=J0;function Om(t,e){let r=t.const("err",e);t.if((0,W._)`${Ce.default.vErrors} === null`,()=>t.assign(Ce.default.vErrors,(0,W._)`[${r}]`),(0,W._)`${Ce.default.vErrors}.push(${r})`),t.code((0,W._)`${Ce.default.errors}++`)}function Nm(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,W._)`new ${t.ValidationError}(${e})`):(r.assign((0,W._)`${n}.errors`,e),r.return(!1))}var zr={keyword:new W.Name("keyword"),schemaPath:new W.Name("schemaPath"),params:new W.Name("params"),propertyName:new W.Name("propertyName"),message:new W.Name("message"),schema:new W.Name("schema"),parentSchema:new W.Name("parentSchema")};function Cm(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,W._)`{}`:G0(t,e,r)}function G0(t,e,r={}){let{gen:n,it:o}=t,s=[X0(o,r),W0(t,r)];return Y0(t,e,s),n.object(...s)}function X0({errorPath:t},{instancePath:e}){let r=e?(0,W.str)`${t}${(0,Ds.getErrorPath)(e,Ds.Type.Str)}`:t;return[Ce.default.instancePath,(0,W.strConcat)(Ce.default.instancePath,r)]}function W0({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,W.str)`${e}/${t}`;return r&&(o=(0,W.str)`${o}${(0,Ds.getErrorPath)(r,Ds.Type.Str)}`),[zr.schemaPath,o]}function Y0(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([zr.keyword,o],[zr.params,typeof e=="function"?e(t):e||(0,W._)`{}`]),c.messages&&n.push([zr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([zr.schema,i],[zr.parentSchema,(0,W._)`${l}${d}`],[Ce.default.data,s]),u&&n.push([zr.propertyName,u])}});var Am=S(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.boolOrEmptySchema=nn.topBoolOrEmptySchema=void 0;var Q0=oo(),ew=U(),tw=jt(),rw={message:"boolean schema is false"};function nw(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Zm(t,!1):typeof r=="object"&&r.$async===!0?e.return(tw.default.data):(e.assign((0,ew._)`${n}.errors`,null),e.return(!0))}nn.topBoolOrEmptySchema=nw;function ow(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Zm(t)):r.var(e,!0)}nn.boolOrEmptySchema=ow;function Zm(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,Q0.reportError)(o,rw,void 0,e)}});var zu=S(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.getRules=on.isJSONType=void 0;var sw=["string","number","integer","boolean","null","object","array"],iw=new Set(sw);function aw(t){return typeof t=="string"&&iw.has(t)}on.isJSONType=aw;function cw(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}on.getRules=cw});var Tu=S(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.shouldUseRule=Ht.shouldUseGroup=Ht.schemaHasRulesForType=void 0;function uw({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Mm(t,n)}Ht.schemaHasRulesForType=uw;function Mm(t,e){return e.rules.some(r=>Dm(t,r))}Ht.shouldUseGroup=Mm;function Dm(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Ht.shouldUseRule=Dm});var so=S(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.reportTypeError=Pe.checkDataTypes=Pe.checkDataType=Pe.coerceAndCheckDataType=Pe.getJSONTypes=Pe.getSchemaTypes=Pe.DataType=void 0;var lw=zu(),dw=Tu(),pw=oo(),q=U(),qm=X(),sn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(sn||(Pe.DataType=sn={}));function fw(t){let e=Lm(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Pe.getSchemaTypes=fw;function Lm(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(lw.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Pe.getJSONTypes=Lm;function mw(t,e){let{gen:r,data:n,opts:o}=t,s=hw(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,dw.schemaHasRulesForType)(t,e[0]));if(i){let a=Eu(e,n,o.strictNumbers,sn.Wrong);r.if(a,()=>{s.length?gw(t,e,s):Ru(t)})}return i}Pe.coerceAndCheckDataType=mw;var Um=new Set(["string","number","integer","boolean","null"]);function hw(t,e){return e?t.filter(r=>Um.has(r)||e==="array"&&r==="array"):[]}function gw(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,q._)`typeof ${o}`),a=n.let("coerced",(0,q._)`undefined`);s.coerceTypes==="array"&&n.if((0,q._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,q._)`${o}[0]`).assign(i,(0,q._)`typeof ${o}`).if(Eu(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,q._)`${a} !== undefined`);for(let u of r)(Um.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ru(t),n.endIf(),n.if((0,q._)`${a} !== undefined`,()=>{n.assign(o,a),yw(t,a)});function c(u){switch(u){case"string":n.elseIf((0,q._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,q._)`"" + ${o}`).elseIf((0,q._)`${o} === null`).assign(a,(0,q._)`""`);return;case"number":n.elseIf((0,q._)`${i} == "boolean" || ${o} === null
4
+ || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,q._)`+${o}`);return;case"integer":n.elseIf((0,q._)`${i} === "boolean" || ${o} === null
5
+ || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,q._)`+${o}`);return;case"boolean":n.elseIf((0,q._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,q._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,q._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,q._)`${i} === "string" || ${i} === "number"
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,q._)`[${o}]`)}}}function yw({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,q._)`${e} !== undefined`,()=>t.assign((0,q._)`${e}[${r}]`,n))}function Pu(t,e,r,n=sn.Correct){let o=n===sn.Correct?q.operators.EQ:q.operators.NEQ,s;switch(t){case"null":return(0,q._)`${e} ${o} null`;case"array":s=(0,q._)`Array.isArray(${e})`;break;case"object":s=(0,q._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,q._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,q._)`typeof ${e} ${o} ${t}`}return n===sn.Correct?s:(0,q.not)(s);function i(a=q.nil){return(0,q.and)((0,q._)`typeof ${e} == "number"`,a,r?(0,q._)`isFinite(${e})`:q.nil)}}Pe.checkDataType=Pu;function Eu(t,e,r,n){if(t.length===1)return Pu(t[0],e,r,n);let o,s=(0,qm.toHash)(t);if(s.array&&s.object){let i=(0,q._)`typeof ${e} != "object"`;o=s.null?i:(0,q._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=q.nil;s.number&&delete s.integer;for(let i in s)o=(0,q.and)(o,Pu(i,e,r,n));return o}Pe.checkDataTypes=Eu;var _w={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,q._)`{type: ${t}}`:(0,q._)`{type: ${e}}`};function Ru(t){let e=vw(t);(0,pw.reportError)(e,_w)}Pe.reportTypeError=Ru;function vw(t){let{gen:e,data:r,schema:n}=t,o=(0,qm.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Vm=S(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});qs.assignDefaults=void 0;var an=U(),xw=X();function bw(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Fm(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Fm(t,s,o.default))}qs.assignDefaults=bw;function Fm(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,an._)`${s}${(0,an.getProperty)(e)}`;if(o){(0,xw.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,an._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,an._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,an._)`${a} = ${(0,an.stringify)(r)}`)}});var rt=S(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.validateUnion=te.validateArray=te.usePattern=te.callValidateCode=te.schemaProperties=te.allSchemaProperties=te.noPropertyInData=te.propertyInData=te.isOwnProperty=te.hasPropFunc=te.reportMissingProp=te.checkMissingProp=te.checkReportMissingProp=void 0;var ae=U(),Iu=X(),Kt=jt(),$w=X();function ww(t,e){let{gen:r,data:n,it:o}=t;r.if(Ou(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ae._)`${e}`},!0),t.error()})}te.checkReportMissingProp=ww;function kw({gen:t,data:e,it:{opts:r}},n,o){return(0,ae.or)(...n.map(s=>(0,ae.and)(Ou(t,e,s,r.ownProperties),(0,ae._)`${o} = ${s}`)))}te.checkMissingProp=kw;function Sw(t,e){t.setParams({missingProperty:e},!0),t.error()}te.reportMissingProp=Sw;function Hm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ae._)`Object.prototype.hasOwnProperty`})}te.hasPropFunc=Hm;function ju(t,e,r){return(0,ae._)`${Hm(t)}.call(${e}, ${r})`}te.isOwnProperty=ju;function zw(t,e,r,n){let o=(0,ae._)`${e}${(0,ae.getProperty)(r)} !== undefined`;return n?(0,ae._)`${o} && ${ju(t,e,r)}`:o}te.propertyInData=zw;function Ou(t,e,r,n){let o=(0,ae._)`${e}${(0,ae.getProperty)(r)} === undefined`;return n?(0,ae.or)(o,(0,ae.not)(ju(t,e,r))):o}te.noPropertyInData=Ou;function Km(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}te.allSchemaProperties=Km;function Tw(t,e){return Km(e).filter(r=>!(0,Iu.alwaysValidSchema)(t,e[r]))}te.schemaProperties=Tw;function Pw({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ae._)`${t}, ${e}, ${n}${o}`:e,d=[[Kt.default.instancePath,(0,ae.strConcat)(Kt.default.instancePath,s)],[Kt.default.parentData,i.parentData],[Kt.default.parentDataProperty,i.parentDataProperty],[Kt.default.rootData,Kt.default.rootData]];i.opts.dynamicRef&&d.push([Kt.default.dynamicAnchors,Kt.default.dynamicAnchors]);let h=(0,ae._)`${l}, ${r.object(...d)}`;return c!==ae.nil?(0,ae._)`${a}.call(${c}, ${h})`:(0,ae._)`${a}(${h})`}te.callValidateCode=Pw;var Ew=(0,ae._)`new RegExp`;function Rw({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,ae._)`${o.code==="new RegExp"?Ew:(0,$w.useFunc)(t,o)}(${r}, ${n})`})}te.usePattern=Rw;function Iw(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,ae._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Iu.Type.Num},s),e.if((0,ae.not)(s),a)})}}te.validateArray=Iw;function jw(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Iu.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,ae._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ae.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}te.validateUnion=jw});var Gm=S(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.validateKeywordUsage=xt.validSchemaType=xt.funcKeywordCode=xt.macroKeywordCode=void 0;var Ze=U(),Tr=jt(),Ow=rt(),Nw=oo();function Cw(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Jm(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Ze.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}xt.macroKeywordCode=Cw;function Zw(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;Mw(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Jm(n,o,u),d=n.let("valid");t.block$data(d,h),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function h(){if(e.errors===!1)m(),e.modifying&&Bm(t),g(()=>t.error());else{let x=e.async?f():p();e.modifying&&Bm(t),g(()=>Aw(t,x))}}function f(){let x=n.let("ruleErrs",null);return n.try(()=>m((0,Ze._)`await `),v=>n.assign(d,!1).if((0,Ze._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(x,(0,Ze._)`${v}.errors`),()=>n.throw(v))),x}function p(){let x=(0,Ze._)`${l}.errors`;return n.assign(x,null),m(Ze.nil),x}function m(x=e.async?(0,Ze._)`await `:Ze.nil){let v=c.opts.passContext?Tr.default.this:Tr.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Ze._)`${x}${(0,Ow.callValidateCode)(t,l,v,b)}`,e.modifying)}function g(x){var v;n.if((0,Ze.not)((v=e.valid)!==null&&v!==void 0?v:d),x)}}xt.funcKeywordCode=Zw;function Bm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Ze._)`${n.parentData}[${n.parentDataProperty}]`))}function Aw(t,e){let{gen:r}=t;r.if((0,Ze._)`Array.isArray(${e})`,()=>{r.assign(Tr.default.vErrors,(0,Ze._)`${Tr.default.vErrors} === null ? ${e} : ${Tr.default.vErrors}.concat(${e})`).assign(Tr.default.errors,(0,Ze._)`${Tr.default.vErrors}.length`),(0,Nw.extendErrors)(t)},()=>t.error())}function Mw({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Jm(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Ze.stringify)(r)})}function Dw(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}xt.validSchemaType=Dw;function qw({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}xt.validateKeywordUsage=qw});var Wm=S(Bt=>{"use strict";Object.defineProperty(Bt,"__esModule",{value:!0});Bt.extendSubschemaMode=Bt.extendSubschemaData=Bt.getSubschema=void 0;var bt=U(),Xm=X();function Lw(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,bt._)`${t.schemaPath}${(0,bt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,bt._)`${t.schemaPath}${(0,bt.getProperty)(e)}${(0,bt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Xm.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}Bt.getSubschema=Lw;function Uw(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,h=a.let("data",(0,bt._)`${e.data}${(0,bt.getProperty)(r)}`,!0);c(h),t.errorPath=(0,bt.str)`${u}${(0,Xm.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,bt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof bt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Bt.extendSubschemaData=Uw;function Fw(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}Bt.extendSubschemaMode=Fw});var Nu=S((eN,Ym)=>{"use strict";Ym.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var eh=S((tN,Qm)=>{"use strict";var Jt=Qm.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ls(e,n,o,t,"",t)};Jt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Jt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Jt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Jt.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ls(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Jt.arrayKeywords)for(var h=0;h<d.length;h++)Ls(t,e,r,d[h],o+"/"+l+"/"+h,s,o,l,n,h)}else if(l in Jt.propsKeywords){if(d&&typeof d=="object")for(var f in d)Ls(t,e,r,d[f],o+"/"+l+"/"+Vw(f),s,o,l,n,f)}else(l in Jt.keywords||t.allKeys&&!(l in Jt.skipKeywords))&&Ls(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function Vw(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var io=S(Ve=>{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.getSchemaRefs=Ve.resolveUrl=Ve.normalizeId=Ve._getFullPath=Ve.getFullPath=Ve.inlineRef=void 0;var Hw=X(),Kw=Nu(),Bw=eh(),Jw=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Gw(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Cu(t):e?th(t)<=e:!1}Ve.inlineRef=Gw;var Xw=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Cu(t){for(let e in t){if(Xw.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Cu)||typeof r=="object"&&Cu(r))return!0}return!1}function th(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Jw.has(r)&&(typeof t[r]=="object"&&(0,Hw.eachItem)(t[r],n=>e+=th(n)),e===1/0))return 1/0}return e}function rh(t,e="",r){r!==!1&&(e=cn(e));let n=t.parse(e);return nh(t,n)}Ve.getFullPath=rh;function nh(t,e){return t.serialize(e).split("#")[0]+"#"}Ve._getFullPath=nh;var Ww=/#\/?$/;function cn(t){return t?t.replace(Ww,""):""}Ve.normalizeId=cn;function Yw(t,e,r){return r=cn(r),t.resolve(e,r)}Ve.resolveUrl=Yw;var Qw=/^[a-z_][-a-z0-9._]*$/i;function ek(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=cn(t[r]||e),s={"":o},i=rh(n,o,!1),a={},c=new Set;return Bw(t,{allKeys:!0},(d,h,f,p)=>{if(p===void 0)return;let m=i+h,g=s[p];typeof d[r]=="string"&&(g=x.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[h]=g;function x(b){let P=this.opts.uriResolver.resolve;if(b=cn(g?P(g,b):b),c.has(b))throw l(b);c.add(b);let N=this.refs[b];return typeof N=="string"&&(N=this.refs[N]),typeof N=="object"?u(d,N.schema,b):b!==cn(m)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=m),b}function v(b){if(typeof b=="string"){if(!Qw.test(b))throw new Error(`invalid anchor "${b}"`);x.call(this,`#${b}`)}}}),a;function u(d,h,f){if(h!==void 0&&!Kw(d,h))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ve.getSchemaRefs=ek});var uo=S(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.getData=Gt.KeywordCxt=Gt.validateFunctionCode=void 0;var ch=Am(),oh=so(),Au=Tu(),Us=so(),tk=Vm(),co=Gm(),Zu=Wm(),j=U(),M=jt(),rk=io(),Ot=X(),ao=oo();function nk(t){if(dh(t)&&(ph(t),lh(t))){ik(t);return}uh(t,()=>(0,ch.topBoolOrEmptySchema)(t))}Gt.validateFunctionCode=nk;function uh({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,j._)`${M.default.data}, ${M.default.valCxt}`,n.$async,()=>{t.code((0,j._)`"use strict"; ${sh(r,o)}`),sk(t,o),t.code(s)}):t.func(e,(0,j._)`${M.default.data}, ${ok(o)}`,n.$async,()=>t.code(sh(r,o)).code(s))}function ok(t){return(0,j._)`{${M.default.instancePath}="", ${M.default.parentData}, ${M.default.parentDataProperty}, ${M.default.rootData}=${M.default.data}${t.dynamicRef?(0,j._)`, ${M.default.dynamicAnchors}={}`:j.nil}}={}`}function sk(t,e){t.if(M.default.valCxt,()=>{t.var(M.default.instancePath,(0,j._)`${M.default.valCxt}.${M.default.instancePath}`),t.var(M.default.parentData,(0,j._)`${M.default.valCxt}.${M.default.parentData}`),t.var(M.default.parentDataProperty,(0,j._)`${M.default.valCxt}.${M.default.parentDataProperty}`),t.var(M.default.rootData,(0,j._)`${M.default.valCxt}.${M.default.rootData}`),e.dynamicRef&&t.var(M.default.dynamicAnchors,(0,j._)`${M.default.valCxt}.${M.default.dynamicAnchors}`)},()=>{t.var(M.default.instancePath,(0,j._)`""`),t.var(M.default.parentData,(0,j._)`undefined`),t.var(M.default.parentDataProperty,(0,j._)`undefined`),t.var(M.default.rootData,M.default.data),e.dynamicRef&&t.var(M.default.dynamicAnchors,(0,j._)`{}`)})}function ik(t){let{schema:e,opts:r,gen:n}=t;uh(t,()=>{r.$comment&&e.$comment&&mh(t),dk(t),n.let(M.default.vErrors,null),n.let(M.default.errors,0),r.unevaluated&&ak(t),fh(t),mk(t)})}function ak(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,j._)`${r}.evaluated`),e.if((0,j._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,j._)`${t.evaluated}.props`,(0,j._)`undefined`)),e.if((0,j._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,j._)`${t.evaluated}.items`,(0,j._)`undefined`))}function sh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,j._)`/*# sourceURL=${r} */`:j.nil}function ck(t,e){if(dh(t)&&(ph(t),lh(t))){uk(t,e);return}(0,ch.boolOrEmptySchema)(t,e)}function lh({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function dh(t){return typeof t.schema!="boolean"}function uk(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&mh(t),pk(t),fk(t);let s=n.const("_errs",M.default.errors);fh(t,s),n.var(e,(0,j._)`${s} === ${M.default.errors}`)}function ph(t){(0,Ot.checkUnknownRules)(t),lk(t)}function fh(t,e){if(t.opts.jtd)return ih(t,[],!1,e);let r=(0,oh.getSchemaTypes)(t.schema),n=(0,oh.coerceAndCheckDataType)(t,r);ih(t,r,!n,e)}function lk(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ot.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function dk(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ot.checkStrictMode)(t,"default is ignored in the schema root")}function pk(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,rk.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function fk(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function mh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,j._)`${M.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,j.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,j._)`${M.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function mk(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,j._)`${M.default.errors} === 0`,()=>e.return(M.default.data),()=>e.throw((0,j._)`new ${o}(${M.default.vErrors})`)):(e.assign((0,j._)`${n}.errors`,M.default.vErrors),s.unevaluated&&hk(t),e.return((0,j._)`${M.default.errors} === 0`))}function hk({gen:t,evaluated:e,props:r,items:n}){r instanceof j.Name&&t.assign((0,j._)`${e}.props`,r),n instanceof j.Name&&t.assign((0,j._)`${e}.items`,n)}function ih(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Ot.schemaHasRulesButRef)(s,l))){o.block(()=>gh(t,"$ref",l.all.$ref.definition));return}c.jtd||gk(t,e),o.block(()=>{for(let h of l.rules)d(h);d(l.post)});function d(h){(0,Au.shouldUseGroup)(s,h)&&(h.type?(o.if((0,Us.checkDataType)(h.type,i,c.strictNumbers)),ah(t,h),e.length===1&&e[0]===h.type&&r&&(o.else(),(0,Us.reportTypeError)(t)),o.endIf()):ah(t,h),a||o.if((0,j._)`${M.default.errors} === ${n||0}`))}}function ah(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,tk.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Au.shouldUseRule)(n,s)&&gh(t,s.keyword,s.definition,e.type)})}function gk(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(yk(t,e),t.opts.allowUnionTypes||_k(t,e),vk(t,t.dataTypes))}function yk(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{hh(t.dataTypes,r)||Mu(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),bk(t,e)}}function _k(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Mu(t,"use allowUnionTypes to allow union type keyword")}function vk(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Au.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>xk(e,i))&&Mu(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function xk(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function hh(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function bk(t,e){let r=[];for(let n of t.dataTypes)hh(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Mu(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ot.checkStrictMode)(t,e,t.opts.strictTypes)}var Fs=class{constructor(e,r,n){if((0,co.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ot.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",yh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,co.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",M.default.errors))}result(e,r,n){this.failResult((0,j.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,j.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,j._)`${r} !== undefined && (${(0,j.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?ao.reportExtraError:ao.reportError)(this,this.def.error,r)}$dataError(){(0,ao.reportError)(this,this.def.$dataError||ao.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ao.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=j.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=j.nil,r=j.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,j.or)((0,j._)`${o} === undefined`,r)),e!==j.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==j.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,j.or)(i(),a());function i(){if(n.length){if(!(r instanceof j.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,j._)`${(0,Us.checkDataTypes)(c,r,s.opts.strictNumbers,Us.DataType.Wrong)}`}return j.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,j._)`!${c}(${r})`}return j.nil}}subschema(e,r){let n=(0,Zu.getSubschema)(this.it,e);(0,Zu.extendSubschemaData)(n,this.it,e),(0,Zu.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return ck(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ot.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ot.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,j.Name)),!0}};Gt.KeywordCxt=Fs;function gh(t,e,r,n){let o=new Fs(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,co.funcKeywordCode)(o,r):"macro"in r?(0,co.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,co.funcKeywordCode)(o,r)}var $k=/^\/(?:[^~]|~0|~1)*$/,wk=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function yh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return M.default.rootData;if(t[0]==="/"){if(!$k.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=M.default.rootData}else{let u=wk.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,j._)`${s}${(0,j.getProperty)((0,Ot.unescapeJsonPointer)(u))}`,i=(0,j._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Gt.getData=yh});var Vs=S(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});var Du=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};qu.default=Du});var lo=S(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});var Lu=io(),Uu=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Lu.resolveUrl)(e,r,n),this.missingSchema=(0,Lu.normalizeId)((0,Lu.getFullPath)(e,this.missingRef))}};Fu.default=Uu});var Ks=S(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.resolveSchema=nt.getCompilingSchema=nt.resolveRef=nt.compileSchema=nt.SchemaEnv=void 0;var lt=U(),kk=Vs(),Pr=jt(),dt=io(),_h=X(),Sk=uo(),un=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,dt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};nt.SchemaEnv=un;function Hu(t){let e=vh.call(this,t);if(e)return e;let r=(0,dt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new lt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:kk.default,code:(0,lt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Pr.default.data,parentData:Pr.default.parentData,parentDataProperty:Pr.default.parentDataProperty,dataNames:[Pr.default.data],dataPathArr:[lt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,lt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:lt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,lt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Sk.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Pr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Pr.default.self}`,`${Pr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:m}=u;f.evaluated={props:p instanceof lt.Name?void 0:p,items:m instanceof lt.Name?void 0:m,dynamicProps:p instanceof lt.Name,dynamicItems:m instanceof lt.Name},f.source&&(f.source.evaluated=(0,lt.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}nt.compileSchema=Hu;function zk(t,e,r){var n;r=(0,dt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=Ek.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new un({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=Tk.call(this,s)}nt.resolveRef=zk;function Tk(t){return(0,dt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Hu.call(this,t)}function vh(t){for(let e of this._compilations)if(Pk(e,t))return e}nt.getCompilingSchema=vh;function Pk(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Ek(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Hs.call(this,t,e)}function Hs(t,e){let r=this.opts.uriResolver.parse(e),n=(0,dt._getFullPath)(this.opts.uriResolver,r),o=(0,dt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Vu.call(this,r,t);let s=(0,dt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Hs.call(this,t,i);return typeof a?.schema!="object"?void 0:Vu.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Hu.call(this,i),s===(0,dt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,dt.resolveUrl)(this.opts.uriResolver,o,u)),new un({schema:a,schemaId:c,root:t,baseId:o})}return Vu.call(this,r,i)}}nt.resolveSchema=Hs;var Rk=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Vu(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,_h.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Rk.has(a)&&u&&(e=(0,dt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,_h.schemaHasRulesButRef)(r,this.RULES)){let a=(0,dt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Hs.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new un({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var xh=S((aN,Ik)=>{Ik.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Wu=S((cN,Th)=>{"use strict";var jk=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Bu=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),Ok=RegExp.prototype.test.bind(/^\d*$/u),Er=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Ju=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),$h=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),Gu=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),Nk=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),He=new Array(256);{let t="0123456789ABCDEF";for(let e=0;e<256;e++)He[e]="%"+t[e>>4]+t[e&15]}function Ee(t){return t<2048?He[192|t>>6]+He[128|t&63]:t<65536?He[224|t>>12]+He[128|t>>6&63]+He[128|t&63]:He[240|t>>18]+He[128|t>>12&63]+He[128|t>>6&63]+He[128|t&63]}function Ck(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var Zk=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),Ak=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),Mk=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),Dk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function qk(t){if(t.length===0)return!1;for(let e=0;e<t.length;e++)if(!Mk(t[e])){if(t[e]==="%"&&e+2<t.length&&Er(t.slice(e+1,e+3))){e+=2;continue}return!1}return!0}function bh(t){let e=-1,r=0,n=-1,o=0;for(let a=0;a<t.length;a++)t[a]==="0"?(n===-1&&(n=a),o++,o>r&&(r=o,e=n)):(n=-1,o=0);if(r<2)return t.join(":");let s=t.slice(0,e).join(":"),i=t.slice(e+r).join(":");return s+"::"+i}function Lk(t){let e=t.indexOf("::");if(e!==-1&&t.indexOf("::",e+1)!==-1)return;let r=e===-1?t.split(":"):t.slice(0,e).split(":"),n=e===-1?[]:t.slice(e+2).split(":");e!==-1&&(r.length===1&&r[0]===""&&(r.length=0),n.length===1&&n[0]===""&&(n.length=0));let o=r.concat(n),s=0;for(let a=0;a<o.length;a++){let c=o[a];if(c==="")return;if(c.indexOf(".")!==-1){if(a!==o.length-1||e!==-1&&n.length===0||!Bu(c))return;s+=2;continue}if(!Zk(c))return;o[a]=parseInt(c,16).toString(16),s++}if(e===-1)return s!==8?void 0:bh(o);if(s>=8)return;let i=o.slice(0,r.length);for(let a=s;a<8;a++)i.push("0");for(let a=r.length;a<o.length;a++)i.push(o[a]);return bh(i)}function Ku(t){let e=t[0]==="["&&t[t.length-1]==="]";if((t[0]==="["||t[t.length-1]==="]")&&!e)return{host:t,isIPV6:!1,error:!0};let n=e?t.slice(1,-1):t;if(e&&Ak(n))return n=n.toLowerCase(),{host:`[${n}]`,escapedHost:n,isIPV6:!1,isIPVFuture:!0};if(Uk(n,":")<2)return{host:t,isIPV6:!1,error:e};let o="",s=n.indexOf("%");if(s!==-1){let a=n.slice(s,s+3).toLowerCase()==="%25"?3:1;if(o=n.slice(s+a),!qk(o))return{host:t,isIPV6:!1,error:!0};n=n.slice(0,s)}let i=Lk(n);return i===void 0?{host:t,isIPV6:!1,error:!0}:{host:i+(o?"%"+o:""),escapedHost:i+(o?"%25"+o:""),isIPV6:!0}}function Uk(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function Fk(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}var Vk={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},Hk=/[@/?#:]/g,Kk=/[@/?#]/g;function wh(t,e){let r=e?Kk:Hk;return r.lastIndex=0,t.replace(r,n=>Vk[n])}function kh(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(Er(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&Ju(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function Bk(t){let e="";for(let r=0;r<t.length;r++){let n=t[r];if(n==="%"&&r+2<t.length){let o=t.slice(r+1,r+3);if(Er(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));i!=="."&&Ju(i)?e+=i:e+="%"+s,r+=2;continue}}if($h(n))e+=n;else{let o=t.charCodeAt(r);if(o<128)e+=zh(o)?n:He[o];else if(o<55296||o>57343)e+=Ee(o);else if(o<=56319&&r+1<t.length){let s=t.charCodeAt(r+1);s>=56320&&s<=57343?(e+=Ee(65536+(o-55296<<10)+(s-56320)),r++):e+=Ee(65533)}else e+=Ee(65533)}}return e}function Jk(t,e=!1){let r="",n=e&&t[0]!=="/";for(let o=0;o<t.length;o++){let s=t[o];if(s==="%"&&o+2<t.length){let i=t.slice(o+1,o+3);if(Er(i)){r+="%"+i.toUpperCase(),o+=2;continue}}if(s==="/"&&(n=!1),$h(s)&&(s!==":"||!n))r+=s;else{let i=t.charCodeAt(o);if(i<128)r+=He[i];else if(i<55296||i>57343)r+=Ee(i);else if(i<=56319&&o+1<t.length){let a=t.charCodeAt(o+1);a>=56320&&a<=57343?(r+=Ee(65536+(i-55296<<10)+(a-56320)),o++):r+=Ee(65533)}else r+=Ee(65533)}}return r}function Xu(t,e){let r="";for(let n=0;n<t.length;n++){let o=t[n];if(o==="%"&&n+2<t.length){let s=t.slice(n+1,n+3);if(Er(s)){r+="%"+s.toUpperCase(),n+=2;continue}}if(e(o))r+=o;else{let s=t.charCodeAt(n);if(s<128)r+=He[s];else if(s<55296||s>57343)r+=Ee(s);else if(s<=56319&&n+1<t.length){let i=t.charCodeAt(n+1);i>=56320&&i<=57343?(r+=Ee(65536+(s-55296<<10)+(i-56320)),n++):r+=Ee(65533)}else r+=Ee(65533)}}return r}function Sh(t){return Xu(t,Nk)}function Gk(t){return Xu(t,Gu)}function Xk(t){return Xu(t,Gu)}function zh(t){return t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===42||t===43||t===45||t===46||t===47||t===64||t===95}function Wk(t){let e="";for(let r=0;r<t.length;r++){let n=t[r];if(n==="%"&&r+2<t.length){let o=t.slice(r+1,r+3);if(Er(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));Ju(i)?e+=i:e+="%"+s,r+=2;continue}}if(Gu(n))e+=n;else{let o=t.charCodeAt(r);if(o<128)e+=zh(o)?n:He[o];else if(o<55296||o>57343)e+=Ee(o);else if(o<=56319&&r+1<t.length){let s=t.charCodeAt(r+1);s>=56320&&s<=57343?(e+=Ee(65536+(o-55296<<10)+(s-56320)),r++):e+=Ee(65533)}else e+=Ee(65533)}}return e}function Yk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(Er(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function Qk(t){let e=[];if(t.userinfo!==void 0&&(e.push(Sh(t.userinfo)),e.push("@")),t.host!==void 0){let r=t.host;if(!Bu(r)){let n=Ku(r);n.isIPV6!==!0&&n.isIPVFuture!==!0&&(r=kh(r,!0),n=Ku(r)),n.isIPV6===!0||n.isIPVFuture===!0?r=`[${n.escapedHost}]`:r=wh(r,!1)}e.push(r)}if(typeof t.port=="number"||typeof t.port=="string"){let r=String(t.port);if(!Ok(r))throw new TypeError("URI port is malformed.");e.push(":"),e.push(r)}return e.length?e.join(""):void 0}Th.exports={nonSimpleDomain:Dk,recomposeAuthority:Qk,reescapeHostDelimiters:wh,normalizePercentEncoding:kh,normalizePathEncoding:Bk,serializePathEncoding:Jk,normalizeQueryFragmentEncoding:Wk,encodeUserinfo:Sh,encodeQuery:Gk,encodeFragment:Xk,escapePreservingEscapes:Yk,removeDotSegments:Fk,isIPv4:Bu,isUUID:jk,normalizeIPv6:Ku,stringArrayToHexStripped:Ck}});var jh=S((uN,Ih)=>{"use strict";var{isUUID:eS}=Wu(),tS=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,rS=["http","https","ws","wss","urn","urn:uuid"];function nS(t){return rS.indexOf(t)!==-1}function Yu(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Ph(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Eh(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function oS(t){return t.secure=Yu(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function sS(t){if((t.port===(Yu(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let e=t.resourceName.indexOf("?"),r=e===-1?t.resourceName:t.resourceName.slice(0,e);t.path=r&&r!=="/"?r:void 0,t.query=e===-1?void 0:t.resourceName.slice(e+1),t.resourceName=void 0}return t.fragment=void 0,t}function iS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(tS);if(r&&r[0]===t.path){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=Qu(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function aS(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=Qu(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function cS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!eS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function uS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Rh={scheme:"http",domainHost:!0,parse:Ph,serialize:Eh},lS={scheme:"https",domainHost:Rh.domainHost,parse:Ph,serialize:Eh},Bs={scheme:"ws",domainHost:!0,parse:oS,serialize:sS},dS={scheme:"wss",domainHost:Bs.domainHost,parse:Bs.parse,serialize:Bs.serialize},pS={scheme:"urn",parse:iS,serialize:aS,skipNormalize:!0},fS={scheme:"urn:uuid",parse:cS,serialize:uS,skipNormalize:!0},Js={http:Rh,https:lS,ws:Bs,wss:dS,urn:pS,"urn:uuid":fS};Object.setPrototypeOf(Js,null);function Qu(t){return t&&(Js[t]||Js[t.toLowerCase()])||void 0}Ih.exports={wsIsSecure:Yu,SCHEMES:Js,isValidSchemeName:nS,getSchemeHandler:Qu}});var Kh=S((lN,Ws)=>{"use strict";var{normalizeIPv6:Ah,removeDotSegments:fo,recomposeAuthority:mS,normalizePercentEncoding:Mh,normalizePathEncoding:hS,serializePathEncoding:Oh,normalizeQueryFragmentEncoding:Nh,encodeQuery:gS,encodeFragment:yS,reescapeHostDelimiters:_S,isIPv4:Dh,nonSimpleDomain:vS}=Wu(),{SCHEMES:qh,getSchemeHandler:el}=jh(),Lh=/^[A-Za-z][A-Za-z0-9+.-]*$/u,Uh="URI scheme is malformed.";function Ch(t){let e=unescape(String(t));if(!Lh.test(e))throw new TypeError(Uh);return e}function xS(t,e){return typeof t=="string"?t=PS(t,e):typeof t=="object"&&(t=Xs(Rr(t,e),e)),t}function bS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},{parsed:o,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:a,malformedHost:c,malformedScheme:u}=Gs(t,n),{parsed:l,malformedAuthorityOrPort:d,malformedPercentEncoding:h,malformedSchemeSpecific:f,malformedHost:p,malformedScheme:m}=Gs(e,n);if(s||d||i||h||a||f||c||p||u||m)throw new Error(o.error||l.error||"URI is malformed.");let g=Fh(o,l,n,!0),x=el(r&&r.scheme||g.scheme),v=g.host,b=v!==void 0&&v!==""&&(Dh(v)||Ah(v).isIPV6);Vh(g,r||{},x,b);let P=v&&v.indexOf("%")!==-1&&!new RegExp("\\P{ASCII}","u").test(v);if(g.error&&!P)throw new Error(g.error);return n.skipEscape=!0,Rr(g,n)}function Fh(t,e,r,n){let o={};return n||(t=Xs(Rr(t,r),r),e=Xs(Rr(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=fo(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=fo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=fo(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=fo(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function $S(t,e,r){let n=Zh(t,r),o=Zh(e,r);return n!==void 0&&o!==void 0&&n===o}function Rr(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[];r.scheme&&(r.scheme=Ch(r.scheme));let s=el(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n);let i=r.userinfo!==void 0||r.host!==void 0||r.port!==void 0,a=!n.skipEscape&&r.scheme===void 0&&!i;r.path!==void 0&&(n.skipEscape?r.path=Mh(r.path):r.path=Oh(r.path,a)),n.reference!=="suffix"&&r.scheme&&(r.scheme=Ch(r.scheme),o.push(r.scheme,":"));let c=mS(r);if(c!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(c),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let u=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(u=fo(u)),a&&(u=Oh(u,!0)),c===void 0&&u[0]==="/"&&u[1]==="/"&&(u="/%2F"+u.slice(2)),o.push(u)}return r.query!==void 0&&o.push("?",gS(r.query)),r.fragment!==void 0&&o.push("#",yS(r.fragment)),o.join("")}var wS=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,kS=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,SS=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function zS(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function po(t){if(t===void 0)return!1;let e=t.indexOf("%");for(;e!==-1;){if(e+2>=t.length||!/^[\da-f]{2}$/iu.test(t.slice(e+1,e+3)))return!0;e=t.indexOf("%",e+3)}return!1}function tl(t){return t[0]==="["&&t[t.length-1]==="]"}function TS(t){let e=t[4];return po(t[3])||e!==void 0&&!tl(e)&&po(e)||po(t[6])||po(t[7])||po(t[8])}function Vh(t,e,r,n){if(!e.unicodeSupport&&(!r||!r.unicodeSupport)&&t.host&&!tl(t.host)&&(e.domainHost||r&&r.domainHost)&&n===!1&&vS(t.host))try{t.host=new URL("http://"+t.host).hostname}catch(o){return t.error=t.error||"Host's domain name can not be converted to ASCII: "+o,!0}return!1}function Gs(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1,i=!1,a=!1,c=!1,u=!1,l=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let d=t.match(kS);d!==null&&d[1].indexOf("\\")!==-1&&(n.error="URI authority must not contain a literal backslash.",o=!0);let h=t.match(SS);if(h!==null){let p=h[1],m=p.replace(/[\t\n\r]/g,"");m.length>=2&&(m.slice(0,2)!=="//"?(n.error=n.error||"URI authority must not contain a literal backslash.",o=!0):p.length!==m.length&&(n.error=n.error||"URI authority introducer must not contain whitespace.",o=!0))}let f=t.match(wS);if(f){if(n.scheme=f[1],n.userinfo=f[3],n.host=f[4],n.port=parseInt(f[5],10),n.path=f[6]||"",n.query=f[7],n.fragment=f[8],n.scheme!==void 0){let g=unescape(n.scheme);Lh.test(g)?n.scheme=g.toLowerCase():(n.error=n.error||Uh,u=!0)}s=TS(f),s&&(n.error=n.error||"URI contains malformed percent-encoding."),isNaN(n.port)&&(n.port=f[5]);let p=zS(n,f);if(p!==void 0&&(n.error=n.error||p,o=!0),n.host)if(Dh(n.host)===!1){let x=tl(n.host),v=n.host.indexOf("[")!==-1||n.host.indexOf("]")!==-1,b=Ah(n.host);l=b.isIPV6||b.isIPVFuture===!0,c=v&&(!x||b.error===!0),n.host=l?b.host:b.host.toLowerCase(),c&&(n.error=n.error||"URI host is malformed.",o=!0)}else l=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let m=el(r.scheme||n.scheme);if(c||(a=Vh(n,r,m,l)),!m||m&&!m.skipNormalize){if(t.indexOf("%")!==-1&&n.host!==void 0&&!c){let g=l?n.host:Mh(n.host,!0);n.host=_S(g,l)}n.path&&(n.path=hS(n.path)),n.query&&(n.query=Nh(n.query)),n.fragment&&(n.fragment=Nh(n.fragment))}m&&m.parse&&(m.parse(n,r),m===qh.urn&&n.nid===void 0&&(i=!0))}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:u}}function Xs(t,e){return Gs(t,e).parsed}function PS(t,e){return Hh(t,e).normalized}function Hh(t,e){let{parsed:r,malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}=Gs(t,e);return{normalized:n||o||s||i||a?t:Rr(r,e),malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}}function Zh(t,e){if(typeof t!="string"&&typeof t!="object")return;let r;try{r=typeof t=="string"?t:Rr(t,e)}catch{return}let{normalized:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:c}=Hh(r,e);return o||s||i||a||c?void 0:n}var rl={SCHEMES:qh,normalize:xS,resolve:bS,resolveComponent:Fh,equal:$S,serialize:Rr,parse:Xs};Ws.exports=rl;Ws.exports.default=rl;Ws.exports.fastUri=rl});var Jh=S(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});var Bh=Kh();Bh.code='require("ajv/dist/runtime/uri").default';nl.default=Bh});var rg=S(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.CodeGen=we.Name=we.nil=we.stringify=we.str=we._=we.KeywordCxt=void 0;var ES=uo();Object.defineProperty(we,"KeywordCxt",{enumerable:!0,get:function(){return ES.KeywordCxt}});var ln=U();Object.defineProperty(we,"_",{enumerable:!0,get:function(){return ln._}});Object.defineProperty(we,"str",{enumerable:!0,get:function(){return ln.str}});Object.defineProperty(we,"stringify",{enumerable:!0,get:function(){return ln.stringify}});Object.defineProperty(we,"nil",{enumerable:!0,get:function(){return ln.nil}});Object.defineProperty(we,"Name",{enumerable:!0,get:function(){return ln.Name}});Object.defineProperty(we,"CodeGen",{enumerable:!0,get:function(){return ln.CodeGen}});var RS=Vs(),Qh=lo(),IS=zu(),mo=Ks(),jS=U(),ho=io(),Ys=so(),sl=X(),Gh=xh(),OS=Jh(),eg=(t,e)=>new RegExp(t,e);eg.code="new RegExp";var NS=["removeAdditional","useDefaults","coerceTypes"],CS=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ZS={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},AS={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Xh=200;function MS(t){var e,r,n,o,s,i,a,c,u,l,d,h,f,p,m,g,x,v,b,P,N,Ie,Xe,Zr,bi;let bn=t.strict,$i=(e=t.code)===null||e===void 0?void 0:e.optimize,bd=$i===!0||$i===void 0?1:$i||0,$d=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:eg,d_=(o=t.uriResolver)!==null&&o!==void 0?o:OS.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:bn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:bn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:bn)!==null&&l!==void 0?l:"log",strictTuples:(h=(d=t.strictTuples)!==null&&d!==void 0?d:bn)!==null&&h!==void 0?h:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:bn)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:bd,regExp:$d}:{optimize:bd,regExp:$d},loopRequired:(m=t.loopRequired)!==null&&m!==void 0?m:Xh,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Xh,meta:(x=t.meta)!==null&&x!==void 0?x:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(P=t.schemaId)!==null&&P!==void 0?P:"$id",addUsedSchema:(N=t.addUsedSchema)!==null&&N!==void 0?N:!0,validateSchema:(Ie=t.validateSchema)!==null&&Ie!==void 0?Ie:!0,validateFormats:(Xe=t.validateFormats)!==null&&Xe!==void 0?Xe:!0,unicodeRegExp:(Zr=t.unicodeRegExp)!==null&&Zr!==void 0?Zr:!0,int32range:(bi=t.int32range)!==null&&bi!==void 0?bi:!0,uriResolver:d_}}var go=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...MS(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new jS.ValueScope({scope:{},prefixes:CS,es5:r,lines:n}),this.logger=VS(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,IS.getRules)(),Wh.call(this,ZS,e,"NOT SUPPORTED"),Wh.call(this,AS,e,"DEPRECATED","warn"),this._metaOpts=US.call(this),e.formats&&qS.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&LS.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),DS.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Gh;n==="id"&&(o={...Gh},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let h=this._addSchema(l,d);return h.validate||i.call(this,h)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Qh.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,ho.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=Yh.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new mo.SchemaEnv({schema:{},schemaId:n});if(r=mo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Yh.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,ho.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(KS.call(this,n,r),!r)return(0,sl.eachItem)(n,s=>ol.call(this,s)),this;JS.call(this,r);let o={...r,type:(0,Ys.getJSONTypes)(r.type),schemaType:(0,Ys.getJSONTypes)(r.schemaType)};return(0,sl.eachItem)(n,o.type.length===0?s=>ol.call(this,s,o):s=>o.type.forEach(i=>ol.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=tg(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,ho.normalizeId)(i||n);let u=ho.getSchemaRefs.call(this,e,n);return c=new mo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):mo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{mo.compileSchema.call(this,e)}finally{this.opts=r}}};go.ValidationError=RS.default;go.MissingRefError=Qh.default;we.default=go;function Wh(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function Yh(t){return t=(0,ho.normalizeId)(t),this.schemas[t]||this.refs[t]}function DS(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function qS(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function LS(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function US(){let t={...this.opts};for(let e of NS)delete t[e];return t}var FS={log(){},warn(){},error(){}};function VS(t){if(t===!1)return FS;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var HS=/^[a-z_$][a-z0-9_$:-]*$/i;function KS(t,e){let{RULES:r}=this;if((0,sl.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!HS.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function ol(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Ys.getJSONTypes)(e.type),schemaType:(0,Ys.getJSONTypes)(e.schemaType)}};e.before?BS.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function BS(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function JS(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=tg(e)),t.validateSchema=this.compile(e,!0))}var GS={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function tg(t){return{anyOf:[t,GS]}}});var ng=S(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});var XS={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};il.default=XS});var ag=S(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.callRef=Ir.getValidate=void 0;var WS=lo(),og=rt(),Ke=U(),dn=jt(),sg=Ks(),Qs=X(),YS={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=sg.resolveRef.call(c,u,o,r);if(l===void 0)throw new WS.default(n.opts.uriResolver,o,r);if(l instanceof sg.SchemaEnv)return h(l);return f(l);function d(){if(s===u)return ei(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return ei(t,(0,Ke._)`${p}.validate`,u,u.$async)}function h(p){let m=ig(t,p);ei(t,m,p,p.$async)}function f(p){let m=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Ke.stringify)(p)}:{ref:p}),g=e.name("valid"),x=t.subschema({schema:p,dataTypes:[],schemaPath:Ke.nil,topSchemaRef:m,errSchemaPath:r},g);t.mergeEvaluated(x),t.ok(g)}}};function ig(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ke._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Ir.getValidate=ig;function ei(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?dn.default.this:Ke.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,Ke._)`await ${(0,og.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},m=>{o.if((0,Ke._)`!(${m} instanceof ${s.ValidationError})`,()=>o.throw(m)),h(m),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,og.callValidateCode)(t,e,u),()=>f(e),()=>h(e))}function h(p){let m=(0,Ke._)`${p}.errors`;o.assign(dn.default.vErrors,(0,Ke._)`${dn.default.vErrors} === null ? ${m} : ${dn.default.vErrors}.concat(${m})`),o.assign(dn.default.errors,(0,Ke._)`${dn.default.vErrors}.length`)}function f(p){var m;if(!s.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Qs.mergeEvaluated.props(o,g.props,s.props));else{let x=o.var("props",(0,Ke._)`${p}.evaluated.props`);s.props=Qs.mergeEvaluated.props(o,x,s.props,Ke.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Qs.mergeEvaluated.items(o,g.items,s.items));else{let x=o.var("items",(0,Ke._)`${p}.evaluated.items`);s.items=Qs.mergeEvaluated.items(o,x,s.items,Ke.Name)}}}Ir.callRef=ei;Ir.default=YS});var cg=S(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});var QS=ng(),ez=ag(),tz=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",QS.default,ez.default];al.default=tz});var ug=S(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});var ti=U(),Xt=ti.operators,ri={maximum:{okStr:"<=",ok:Xt.LTE,fail:Xt.GT},minimum:{okStr:">=",ok:Xt.GTE,fail:Xt.LT},exclusiveMaximum:{okStr:"<",ok:Xt.LT,fail:Xt.GTE},exclusiveMinimum:{okStr:">",ok:Xt.GT,fail:Xt.LTE}},rz={message:({keyword:t,schemaCode:e})=>(0,ti.str)`must be ${ri[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ti._)`{comparison: ${ri[t].okStr}, limit: ${e}}`},nz={keyword:Object.keys(ri),type:"number",schemaType:"number",$data:!0,error:rz,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ti._)`${r} ${ri[e].fail} ${n} || isNaN(${r})`)}};cl.default=nz});var lg=S(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});var yo=U(),oz={message:({schemaCode:t})=>(0,yo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,yo._)`{multipleOf: ${t}}`},sz={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:oz,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,yo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,yo._)`${i} !== parseInt(${i})`;t.fail$data((0,yo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};ul.default=sz});var pg=S(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});function dg(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}ll.default=dg;dg.code='require("ajv/dist/runtime/ucs2length").default'});var fg=S(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});var jr=U(),iz=X(),az=pg(),cz={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,jr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,jr._)`{limit: ${t}}`},uz={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:cz,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?jr.operators.GT:jr.operators.LT,i=o.opts.unicode===!1?(0,jr._)`${r}.length`:(0,jr._)`${(0,iz.useFunc)(t.gen,az.default)}(${r})`;t.fail$data((0,jr._)`${i} ${s} ${n}`)}};dl.default=uz});var mg=S(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});var lz=rt(),dz=X(),pn=U(),pz={message:({schemaCode:t})=>(0,pn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,pn._)`{pattern: ${t}}`},fz={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:pz,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,pn._)`new RegExp`:(0,dz.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,pn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,pn._)`!${l}`)}else{let c=(0,lz.usePattern)(t,o);t.fail$data((0,pn._)`!${c}.test(${r})`)}}};pl.default=fz});var hg=S(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});var _o=U(),mz={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,_o.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,_o._)`{limit: ${t}}`},hz={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:mz,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?_o.operators.GT:_o.operators.LT;t.fail$data((0,_o._)`Object.keys(${r}).length ${o} ${n}`)}};fl.default=hz});var gg=S(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});var vo=rt(),xo=U(),gz=X(),yz={message:({params:{missingProperty:t}})=>(0,xo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,xo._)`{missingProperty: ${t}}`},_z={keyword:"required",type:"object",schemaType:"array",$data:!0,error:yz,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let m of r)if(f?.[m]===void 0&&!p.has(m)){let g=i.schemaEnv.baseId+i.errSchemaPath,x=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,gz.checkStrictMode)(i,x,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(xo.nil,d);else for(let f of r)(0,vo.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>h(f,p)),t.ok(p)}else e.if((0,vo.checkMissingProp)(t,r,f)),(0,vo.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,vo.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function h(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,vo.propertyInData)(e,o,f,a.ownProperties)),e.if((0,xo.not)(p),()=>{t.error(),e.break()})},xo.nil)}}};ml.default=_z});var yg=S(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});var bo=U(),vz={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,bo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,bo._)`{limit: ${t}}`},xz={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:vz,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?bo.operators.GT:bo.operators.LT;t.fail$data((0,bo._)`${r}.length ${o} ${n}`)}};hl.default=xz});var ni=S(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});var _g=Nu();_g.code='require("ajv/dist/runtime/equal").default';gl.default=_g});var vg=S(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var yl=so(),ke=U(),bz=X(),$z=ni(),wz={message:({params:{i:t,j:e}})=>(0,ke.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ke._)`{i: ${t}, j: ${e}}`},kz={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:wz,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,yl.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ke._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,ke._)`${r}.length`),m=e.let("j");t.setParams({i:p,j:m}),e.assign(c,!0),e.if((0,ke._)`${p} > 1`,()=>(d()?h:f)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function h(p,m){let g=e.name("item"),x=(0,yl.checkDataTypes)(u,g,a.opts.strictNumbers,yl.DataType.Wrong),v=e.const("indices",(0,ke._)`{}`);e.for((0,ke._)`;${p}--;`,()=>{e.let(g,(0,ke._)`${r}[${p}]`),e.if(x,(0,ke._)`continue`),u.length>1&&e.if((0,ke._)`typeof ${g} == "string"`,(0,ke._)`${g} += "_"`),e.if((0,ke._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(m,(0,ke._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ke._)`${v}[${g}] = ${p}`)})}function f(p,m){let g=(0,bz.useFunc)(e,$z.default),x=e.name("outer");e.label(x).for((0,ke._)`;${p}--;`,()=>e.for((0,ke._)`${m} = ${p}; ${m}--;`,()=>e.if((0,ke._)`${g}(${r}[${p}], ${r}[${m}])`,()=>{t.error(),e.assign(c,!1).break(x)})))}}};_l.default=kz});var xg=S(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});var vl=U(),Sz=X(),zz=ni(),Tz={message:"must be equal to constant",params:({schemaCode:t})=>(0,vl._)`{allowedValue: ${t}}`},Pz={keyword:"const",$data:!0,error:Tz,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,vl._)`!${(0,Sz.useFunc)(e,zz.default)}(${r}, ${o})`):t.fail((0,vl._)`${s} !== ${r}`)}};xl.default=Pz});var bg=S(bl=>{"use strict";Object.defineProperty(bl,"__esModule",{value:!0});var $o=U(),Ez=X(),Rz=ni(),Iz={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,$o._)`{allowedValues: ${t}}`},jz={keyword:"enum",schemaType:"array",$data:!0,error:Iz,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,Ez.useFunc)(e,Rz.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,$o.or)(...o.map((p,m)=>h(f,m)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,$o._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function h(f,p){let m=o[p];return typeof m=="object"&&m!==null?(0,$o._)`${u()}(${r}, ${f}[${p}])`:(0,$o._)`${r} === ${m}`}}};bl.default=jz});var $g=S($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});var Oz=ug(),Nz=lg(),Cz=fg(),Zz=mg(),Az=hg(),Mz=gg(),Dz=yg(),qz=vg(),Lz=xg(),Uz=bg(),Fz=[Oz.default,Nz.default,Cz.default,Zz.default,Az.default,Mz.default,Dz.default,qz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Lz.default,Uz.default];$l.default=Fz});var kl=S(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.validateAdditionalItems=void 0;var Or=U(),wl=X(),Vz={message:({params:{len:t}})=>(0,Or.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Or._)`{limit: ${t}}`},Hz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Vz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,wl.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}wg(t,n)}};function wg(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Or._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Or._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,wl.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Or._)`${a} <= ${e.length}`);r.if((0,Or.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:wl.Type.Num},u),i.allErrors||r.if((0,Or.not)(u),()=>r.break())})}}wo.validateAdditionalItems=wg;wo.default=Hz});var Sl=S(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});ko.validateTuple=void 0;var kg=U(),oi=X(),Kz=rt(),Bz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Sg(t,"additionalItems",e);r.items=!0,!(0,oi.alwaysValidSchema)(r,e)&&t.ok((0,Kz.validateArray)(t))}};function Sg(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=oi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,kg._)`${s}.length`);r.forEach((d,h)=>{(0,oi.alwaysValidSchema)(a,d)||(n.if((0,kg._)`${u} > ${h}`,()=>t.subschema({keyword:i,schemaProp:h,dataProp:h},c)),t.ok(c))});function l(d){let{opts:h,errSchemaPath:f}=a,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(h.strictTuples&&!m){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,oi.checkStrictMode)(a,g,h.strictTuples)}}}ko.validateTuple=Sg;ko.default=Bz});var zg=S(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var Jz=Sl(),Gz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Jz.validateTuple)(t,"items")};zl.default=Gz});var Pg=S(Tl=>{"use strict";Object.defineProperty(Tl,"__esModule",{value:!0});var Tg=U(),Xz=X(),Wz=rt(),Yz=kl(),Qz={message:({params:{len:t}})=>(0,Tg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Tg._)`{limit: ${t}}`},eT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Qz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,Xz.alwaysValidSchema)(n,e)&&(o?(0,Yz.validateAdditionalItems)(t,o):t.ok((0,Wz.validateArray)(t)))}};Tl.default=eT});var Eg=S(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var ot=U(),si=X(),tT={message:({params:{min:t,max:e}})=>e===void 0?(0,ot.str)`must contain at least ${t} valid item(s)`:(0,ot.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ot._)`{minContains: ${t}}`:(0,ot._)`{minContains: ${t}, maxContains: ${e}}`},rT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:tT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ot._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,si.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,si.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,si.alwaysValidSchema)(s,r)){let m=(0,ot._)`${l} >= ${i}`;a!==void 0&&(m=(0,ot._)`${m} && ${l} <= ${a}`),t.pass(m);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ot._)`${o}.length > 0`,h)):(e.let(d,!1),h()),t.result(d,()=>t.reset());function h(){let m=e.name("_valid"),g=e.let("count",0);f(m,()=>e.if(m,()=>p(g)))}function f(m,g){e.forRange("i",0,l,x=>{t.subschema({keyword:"contains",dataProp:x,dataPropType:si.Type.Num,compositeRule:!0},m),g()})}function p(m){e.code((0,ot._)`${m}++`),a===void 0?e.if((0,ot._)`${m} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ot._)`${m} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ot._)`${m} >= ${i}`,()=>e.assign(d,!0)))}}};Pl.default=rT});var jg=S($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.validateSchemaDeps=$t.validatePropertyDeps=$t.error=void 0;var El=U(),nT=X(),So=rt();$t.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,El.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,El._)`{property: ${t},
7
+ missingProperty: ${n},
8
+ depsCount: ${e},
9
+ deps: ${r}}`};var oT={keyword:"dependencies",type:"object",schemaType:"object",error:$t.error,code(t){let[e,r]=sT(t);Rg(t,e),Ig(t,r)}};function sT({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function Rg(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,So.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,So.checkReportMissingProp)(t,u)}):(r.if((0,El._)`${c} && (${(0,So.checkMissingProp)(t,a,s)})`),(0,So.reportMissingProp)(t,s),r.else())}}$t.validatePropertyDeps=Rg;function Ig(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,nT.alwaysValidSchema)(s,e[a])||(r.if((0,So.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}$t.validateSchemaDeps=Ig;$t.default=oT});var Ng=S(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var Og=U(),iT=X(),aT={message:"property name must be valid",params:({params:t})=>(0,Og._)`{propertyName: ${t.propertyName}}`},cT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:aT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,iT.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,Og.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Rl.default=cT});var jl=S(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});var ii=rt(),pt=U(),uT=jt(),ai=X(),lT={message:"must NOT have additional properties",params:({params:t})=>(0,pt._)`{additionalProperty: ${t.additionalProperty}}`},dT={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:lT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,ai.alwaysValidSchema)(i,r))return;let u=(0,ii.allSchemaProperties)(n.properties),l=(0,ii.allSchemaProperties)(n.patternProperties);d(),t.ok((0,pt._)`${s} === ${uT.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(h(g),()=>p(g))})}function h(g){let x;if(u.length>8){let v=(0,ai.schemaRefOrVal)(i,n.properties,"properties");x=(0,ii.isOwnProperty)(e,v,g)}else u.length?x=(0,pt.or)(...u.map(v=>(0,pt._)`${g} === ${v}`)):x=pt.nil;return l.length&&(x=(0,pt.or)(x,...l.map(v=>(0,pt._)`${(0,ii.usePattern)(t,v)}.test(${g})`))),(0,pt.not)(x)}function f(g){e.code((0,pt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ai.alwaysValidSchema)(i,r)){let x=e.name("valid");c.removeAdditional==="failing"?(m(g,x,!1),e.if((0,pt.not)(x),()=>{t.reset(),f(g)})):(m(g,x),a||e.if((0,pt.not)(x),()=>e.break()))}}function m(g,x,v){let b={keyword:"additionalProperties",dataProp:g,dataPropType:ai.Type.Str};v===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,x)}}};Il.default=dT});var Ag=S(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var pT=uo(),Cg=rt(),Ol=X(),Zg=jl(),fT={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Zg.default.code(new pT.KeywordCxt(s,Zg.default,"additionalProperties"));let i=(0,Cg.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Ol.mergeEvaluated.props(e,(0,Ol.toHash)(i),s.props));let a=i.filter(d=>!(0,Ol.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,Cg.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Nl.default=fT});var Lg=S(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var Mg=rt(),ci=U(),Dg=X(),qg=X(),mT={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,Mg.allSchemaProperties)(r),c=a.filter(m=>(0,Dg.alwaysValidSchema)(s,r[m]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof ci.Name)&&(s.props=(0,qg.evaluatedPropsToName)(e,s.props));let{props:d}=s;h();function h(){for(let m of a)u&&f(m),s.allErrors?p(m):(e.var(l,!0),p(m),e.if(l))}function f(m){for(let g in u)new RegExp(m).test(g)&&(0,Dg.checkStrictMode)(s,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){e.forIn("key",n,g=>{e.if((0,ci._)`${(0,Mg.usePattern)(t,m)}.test(${g})`,()=>{let x=c.includes(m);x||t.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:qg.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ci._)`${d}[${g}]`,!0):!x&&!s.allErrors&&e.if((0,ci.not)(l),()=>e.break())})})}}};Cl.default=mT});var Ug=S(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var hT=X(),gT={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,hT.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Zl.default=gT});var Fg=S(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var yT=rt(),_T={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:yT.validateUnion,error:{message:"must match a schema in anyOf"}};Al.default=_T});var Vg=S(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var ui=U(),vT=X(),xT={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ui._)`{passingSchemas: ${t.passing}}`},bT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:xT,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let h;(0,vT.alwaysValidSchema)(o,l)?e.var(c,!0):h=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ui._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ui._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),h&&t.mergeEvaluated(h,ui.Name)})})}}};Ml.default=bT});var Hg=S(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var $T=X(),wT={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,$T.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Dl.default=wT});var Jg=S(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var li=U(),Bg=X(),kT={message:({params:t})=>(0,li.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,li._)`{failingKeyword: ${t.ifClause}}`},ST={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:kT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Bg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Kg(n,"then"),s=Kg(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,li.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let h=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(h,i),d?e.assign(d,(0,li._)`${l}`):t.setParams({ifClause:l})}}}};function Kg(t,e){let r=t.schema[e];return r!==void 0&&!(0,Bg.alwaysValidSchema)(t,r)}ql.default=ST});var Gg=S(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});var zT=X(),TT={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,zT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ll.default=TT});var Xg=S(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var PT=kl(),ET=zg(),RT=Sl(),IT=Pg(),jT=Eg(),OT=jg(),NT=Ng(),CT=jl(),ZT=Ag(),AT=Lg(),MT=Ug(),DT=Fg(),qT=Vg(),LT=Hg(),UT=Jg(),FT=Gg();function VT(t=!1){let e=[MT.default,DT.default,qT.default,LT.default,UT.default,FT.default,NT.default,CT.default,OT.default,ZT.default,AT.default];return t?e.push(ET.default,IT.default):e.push(PT.default,RT.default),e.push(jT.default),e}Ul.default=VT});var Wg=S(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var me=U(),HT={message:({schemaCode:t})=>(0,me.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,me._)`{format: ${t}}`},KT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:HT,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?h():f();function h(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,me._)`${p}[${i}]`),g=r.let("fType"),x=r.let("format");r.if((0,me._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,me._)`${m}.type || "string"`).assign(x,(0,me._)`${m}.validate`),()=>r.assign(g,(0,me._)`"string"`).assign(x,m)),t.fail$data((0,me.or)(v(),b()));function v(){return c.strictSchema===!1?me.nil:(0,me._)`${i} && !${x}`}function b(){let P=l.$async?(0,me._)`(${m}.async ? await ${x}(${n}) : ${x}(${n}))`:(0,me._)`${x}(${n})`,N=(0,me._)`(typeof ${x} == "function" ? ${P} : ${x}.test(${n}))`;return(0,me._)`${x} && ${x} !== true && ${g} === ${e} && !${N}`}}function f(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[m,g,x]=b(p);m===e&&t.pass(P());function v(){if(c.strictSchema===!1){d.logger.warn(N());return}throw new Error(N());function N(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function b(N){let Ie=N instanceof RegExp?(0,me.regexpCode)(N):c.code.formats?(0,me._)`${c.code.formats}${(0,me.getProperty)(s)}`:void 0,Xe=r.scopeValue("formats",{key:s,ref:N,code:Ie});return typeof N=="object"&&!(N instanceof RegExp)?[N.type||"string",N.validate,(0,me._)`${Xe}.validate`]:["string",N,Xe]}function P(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,me._)`await ${x}(${n})`}return typeof g=="function"?(0,me._)`${x}(${n})`:(0,me._)`${x}.test(${n})`}}}};Fl.default=KT});var Yg=S(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var BT=Wg(),JT=[BT.default];Vl.default=JT});var Qg=S(fn=>{"use strict";Object.defineProperty(fn,"__esModule",{value:!0});fn.contentVocabulary=fn.metadataVocabulary=void 0;fn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];fn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var ty=S(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var GT=cg(),XT=$g(),WT=Xg(),YT=Yg(),ey=Qg(),QT=[GT.default,XT.default,(0,WT.default)(),YT.default,ey.metadataVocabulary,ey.contentVocabulary];Hl.default=QT});var ny=S(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.DiscrError=void 0;var ry;(function(t){t.Tag="tag",t.Mapping="mapping"})(ry||(di.DiscrError=ry={}))});var sy=S(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var mn=U(),Kl=ny(),oy=Ks(),eP=lo(),tP=X(),rP={message:({params:{discrError:t,tagName:e}})=>t===Kl.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,mn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},nP={keyword:"discriminator",type:"object",schemaType:"object",error:rP,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,mn._)`${r}${(0,mn.getProperty)(a)}`);e.if((0,mn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Kl.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=h();e.if(!1);for(let p in f)e.elseIf((0,mn._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:Kl.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),m=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(m,mn.Name),p}function h(){var f;let p={},m=x(o),g=!0;for(let P=0;P<i.length;P++){let N=i[P];if(N?.$ref&&!(0,tP.schemaHasRulesButRef)(N,s.self.RULES)){let Xe=N.$ref;if(N=oy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,Xe),N instanceof oy.SchemaEnv&&(N=N.schema),N===void 0)throw new eP.default(s.opts.uriResolver,s.baseId,Xe)}let Ie=(f=N?.properties)===null||f===void 0?void 0:f[a];if(typeof Ie!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(m||x(N)),v(Ie,P)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function x({required:P}){return Array.isArray(P)&&P.includes(a)}function v(P,N){if(P.const)b(P.const,N);else if(P.enum)for(let Ie of P.enum)b(Ie,N);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function b(P,N){if(typeof P!="string"||P in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[P]=N}}}};Bl.default=nP});var iy=S((YN,oP)=>{oP.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Gl=S((ce,Jl)=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.MissingRefError=ce.ValidationError=ce.CodeGen=ce.Name=ce.nil=ce.stringify=ce.str=ce._=ce.KeywordCxt=ce.Ajv=void 0;var sP=rg(),iP=ty(),aP=sy(),ay=iy(),cP=["/properties"],pi="http://json-schema.org/draft-07/schema",hn=class extends sP.default{_addVocabularies(){super._addVocabularies(),iP.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(aP.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(ay,cP):ay;this.addMetaSchema(e,pi,!1),this.refs["http://json-schema.org/schema"]=pi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(pi)?pi:void 0)}};ce.Ajv=hn;Jl.exports=ce=hn;Jl.exports.Ajv=hn;Object.defineProperty(ce,"__esModule",{value:!0});ce.default=hn;var uP=uo();Object.defineProperty(ce,"KeywordCxt",{enumerable:!0,get:function(){return uP.KeywordCxt}});var gn=U();Object.defineProperty(ce,"_",{enumerable:!0,get:function(){return gn._}});Object.defineProperty(ce,"str",{enumerable:!0,get:function(){return gn.str}});Object.defineProperty(ce,"stringify",{enumerable:!0,get:function(){return gn.stringify}});Object.defineProperty(ce,"nil",{enumerable:!0,get:function(){return gn.nil}});Object.defineProperty(ce,"Name",{enumerable:!0,get:function(){return gn.Name}});Object.defineProperty(ce,"CodeGen",{enumerable:!0,get:function(){return gn.CodeGen}});var lP=Vs();Object.defineProperty(ce,"ValidationError",{enumerable:!0,get:function(){return lP.default}});var dP=lo();Object.defineProperty(ce,"MissingRefError",{enumerable:!0,get:function(){return dP.default}})});var hy=S(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.formatNames=kt.fastFormats=kt.fullFormats=void 0;function wt(t,e){return{validate:t,compare:e}}kt.fullFormats={date:wt(dy,Ql),time:wt(Wl(!0),ed),"date-time":wt(cy(!0),fy),"iso-time":wt(Wl(),py),"iso-date-time":wt(cy(),my),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:yP,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:kP,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:_P,int32:{type:"number",validate:bP},int64:{type:"number",validate:$P},float:{type:"number",validate:ly},double:{type:"number",validate:ly},password:!0,binary:!0};kt.fastFormats={...kt.fullFormats,date:wt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Ql),time:wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ed),"date-time":wt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,fy),"iso-time":wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,py),"iso-date-time":wt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,my),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};kt.formatNames=Object.keys(kt.fullFormats);function pP(t){return t%4===0&&(t%100!==0||t%400===0)}var fP=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mP=[0,31,28,31,30,31,30,31,31,30,31,30,31];function dy(t){let e=fP.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&pP(r)?29:mP[n])}function Ql(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Xl=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Wl(t){return function(r){let n=Xl.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,h=o-u*c-(d<0?1:0);return(h===23||h===-1)&&(d===59||d===-1)&&i<61}}function ed(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function py(t,e){if(!(t&&e))return;let r=Xl.exec(t),n=Xl.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var Yl=/t|\s/i;function cy(t){let e=Wl(t);return function(n){let o=n.split(Yl);return o.length===2&&dy(o[0])&&e(o[1])}}function fy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function my(t,e){if(!(t&&e))return;let[r,n]=t.split(Yl),[o,s]=e.split(Yl),i=Ql(r,o);if(i!==void 0)return i||ed(n,s)}var hP=/\/|:/,gP=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function yP(t){return hP.test(t)&&gP.test(t)}var uy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function _P(t){return uy.lastIndex=0,uy.test(t)}var vP=-(2**31),xP=2**31-1;function bP(t){return Number.isInteger(t)&&t<=xP&&t>=vP}function $P(t){return Number.isInteger(t)}function ly(){return!0}var wP=/[^\\]\\Z/;function kP(t){if(wP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var gy=S(yn=>{"use strict";Object.defineProperty(yn,"__esModule",{value:!0});yn.formatLimitDefinition=void 0;var SP=Gl(),ft=U(),Wt=ft.operators,fi={formatMaximum:{okStr:"<=",ok:Wt.LTE,fail:Wt.GT},formatMinimum:{okStr:">=",ok:Wt.GTE,fail:Wt.LT},formatExclusiveMaximum:{okStr:"<",ok:Wt.LT,fail:Wt.GTE},formatExclusiveMinimum:{okStr:">",ok:Wt.GT,fail:Wt.LTE}},zP={message:({keyword:t,schemaCode:e})=>(0,ft.str)`should be ${fi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ft._)`{comparison: ${fi[t].okStr}, limit: ${e}}`};yn.formatLimitDefinition={keyword:Object.keys(fi),type:"string",schemaType:"string",$data:!0,error:zP,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new SP.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let h=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,ft._)`${h}[${c.schemaCode}]`);t.fail$data((0,ft.or)((0,ft._)`typeof ${f} != "object"`,(0,ft._)`${f} instanceof RegExp`,(0,ft._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let h=c.schema,f=a.formats[h];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${h}" does not define "compare" function`);let p=e.scopeValue("formats",{key:h,ref:f,code:i.code.formats?(0,ft._)`${i.code.formats}${(0,ft.getProperty)(h)}`:void 0});t.fail$data(d(p))}function d(h){return(0,ft._)`${h}.compare(${r}, ${n}) ${fi[o].fail} 0`}},dependencies:["format"]};var TP=t=>(t.addKeyword(yn.formatLimitDefinition),t);yn.default=TP});var xy=S((zo,vy)=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});var _n=hy(),PP=gy(),td=U(),yy=new td.Name("fullFormats"),EP=new td.Name("fastFormats"),rd=(t,e={keywords:!0})=>{if(Array.isArray(e))return _y(t,e,_n.fullFormats,yy),t;let[r,n]=e.mode==="fast"?[_n.fastFormats,EP]:[_n.fullFormats,yy],o=e.formats||_n.formatNames;return _y(t,o,r,n),e.keywords&&(0,PP.default)(t),t};rd.get=(t,e="full")=>{let n=(e==="fast"?_n.fastFormats:_n.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function _y(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,td._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}vy.exports=zo=rd;Object.defineProperty(zo,"__esModule",{value:!0});zo.default=rd});import Pf from"node:process";var __=Object.freeze({status:"aborted"});function _(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var v_=Symbol("zod_brand"),St=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Io={};function Be(t){return t&&Object.assign(Io,t),Io}var K={};ki(K,{BIGINT_FORMAT_RANGES:()=>Sd,Class:()=>zi,NUMBER_FORMAT_RANGES:()=>Oi,aborted:()=>er,allowsEval:()=>Ri,assert:()=>k_,assertEqual:()=>x_,assertIs:()=>$_,assertNever:()=>w_,assertNotEqual:()=>b_,assignProp:()=>Ei,cached:()=>kn,captureStackTrace:()=>Oo,cleanEnum:()=>A_,cleanRegex:()=>zn,clone:()=>Je,createTransparentProxy:()=>R_,defineLazy:()=>ne,esc:()=>Qt,escapeRegex:()=>Nt,extend:()=>O_,finalizeIssue:()=>st,floatSafeRemainder:()=>Pi,getElementAtPath:()=>S_,getEnumValues:()=>wn,getLengthableOrigin:()=>Tn,getParsedType:()=>E_,getSizableOrigin:()=>zd,isObject:()=>Ar,isPlainObject:()=>Mr,issue:()=>Ni,joinValues:()=>jo,jsonStringifyReplacer:()=>Ti,merge:()=>N_,normalizeParams:()=>C,nullish:()=>Sn,numKeys:()=>P_,omit:()=>j_,optionalKeys:()=>ji,partial:()=>C_,pick:()=>I_,prefixIssues:()=>ht,primitiveTypes:()=>kd,promiseAllObject:()=>z_,propertyKeyTypes:()=>Ii,randomString:()=>T_,required:()=>Z_,stringifyPrimitive:()=>No,unwrapMessage:()=>$n});function x_(t){return t}function b_(t){return t}function $_(t){}function w_(t){throw new Error}function k_(t){}function wn(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function jo(t,e="|"){return t.map(r=>No(r)).join(e)}function Ti(t,e){return typeof e=="bigint"?e.toString():e}function kn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Sn(t){return t==null}function zn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Pi(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ne(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ei(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function S_(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function z_(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function T_(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Qt(t){return JSON.stringify(t)}var Oo=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Ar(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ri=kn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Mr(t){if(Ar(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Ar(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function P_(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var E_=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ii=new Set(["string","number","symbol"]),kd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Nt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Je(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function C(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function R_(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function No(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function ji(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Oi={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Sd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function I_(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return Je(t,{...t._zod.def,shape:r,checks:[]})}function j_(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return Je(t,{...t._zod.def,shape:r,checks:[]})}function O_(t,e){if(!Mr(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ei(this,"shape",n),n},checks:[]};return Je(t,r)}function N_(t,e){return Je(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ei(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function C_(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return Je(e,{...e._zod.def,shape:o,checks:[]})}function Z_(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return Je(e,{...e._zod.def,shape:o,checks:[]})}function er(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ht(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function $n(t){return typeof t=="string"?t:t?.message}function st(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=$n(t.inst?._zod.def?.error?.(t))??$n(e?.error?.(t))??$n(r.customError?.(t))??$n(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function zd(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Tn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ni(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function A_(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var zi=class{constructor(...e){}};var Td=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,Ti,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Co=_("$ZodError",Td),Pn=_("$ZodError",Td,{Parent:Error});function Ci(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Zi(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Ai=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new St;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>st(c,s,Be())));throw Oo(a,o?.callee),a}return i.value},Mi=Ai(Pn),Di=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>st(c,s,Be())));throw Oo(a,o?.callee),a}return i.value},qi=Di(Pn),Li=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new St;return s.issues.length?{success:!1,error:new(t??Co)(s.issues.map(i=>st(i,o,Be())))}:{success:!0,data:s.value}},tr=Li(Pn),Ui=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>st(i,o,Be())))}:{success:!0,data:s.value}},rr=Ui(Pn);var Pd=/^[cC][^\s-]{8,}$/,Ed=/^[0-9a-z]+$/,Rd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Id=/^[0-9a-vA-V]{20}$/,jd=/^[A-Za-z0-9]{27}$/,Od=/^[a-zA-Z0-9_-]{21}$/,Nd=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Cd=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Fi=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Zd=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var D_="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Ad(){return new RegExp(D_,"u")}var Md=/^(?:(?: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])$/,Dd=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,qd=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ld=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ud=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Vi=/^[A-Za-z0-9_-]*$/,Fd=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Vd=/^\+(?:[0-9]){6,14}[0-9]$/,Hd="(?:(?:\\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])))",Kd=new RegExp(`^${Hd}$`);function Bd(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Jd(t){return new RegExp(`^${Bd(t)}$`)}function Gd(t){let e=Bd({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Hd}T(?:${n})$`)}var Xd=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Wd=/^\d+$/,Yd=/^-?\d+(?:\.\d+)?/i,Qd=/true|false/i,ep=/null/i;var tp=/^[^A-Z]*$/,rp=/^[^a-z]*$/;var ve=_("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),np={number:"number",bigint:"bigint",object:"date"},Hi=_("$ZodCheckLessThan",(t,e)=>{ve.init(t,e);let r=np[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ki=_("$ZodCheckGreaterThan",(t,e)=>{ve.init(t,e);let r=np[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),op=_("$ZodCheckMultipleOf",(t,e)=>{ve.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Pi(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),sp=_("$ZodCheckNumberFormat",(t,e)=>{ve.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Oi[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=Wd)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var ip=_("$ZodCheckMaxLength",(t,e)=>{var r;ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Sn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=Tn(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),ap=_("$ZodCheckMinLength",(t,e)=>{var r;ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Sn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=Tn(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),cp=_("$ZodCheckLengthEquals",(t,e)=>{var r;ve.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Sn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=Tn(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),En=_("$ZodCheckStringFormat",(t,e)=>{var r,n;ve.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),up=_("$ZodCheckRegex",(t,e)=>{En.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),lp=_("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=tp),En.init(t,e)}),dp=_("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=rp),En.init(t,e)}),pp=_("$ZodCheckIncludes",(t,e)=>{ve.init(t,e);let r=Nt(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),fp=_("$ZodCheckStartsWith",(t,e)=>{ve.init(t,e);let r=new RegExp(`^${Nt(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),mp=_("$ZodCheckEndsWith",(t,e)=>{ve.init(t,e);let r=new RegExp(`.*${Nt(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var hp=_("$ZodCheckOverwrite",(t,e)=>{ve.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ao=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
10
+ `).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
11
+ `))}};var yp={major:4,minor:0,patch:0};var ee=_("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=yp;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=er(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,h=l._zod.check(s);if(h instanceof Promise&&a?.async===!1)throw new St;if(u||h instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await h,s.issues.length!==d&&(c||(c=er(s,d)))});else{if(s.issues.length===d)continue;c||(c=er(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new St;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=tr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return rr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Rn=_("$ZodString",(t,e)=>{ee.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Xd(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),oe=_("$ZodStringFormat",(t,e)=>{En.init(t,e),Rn.init(t,e)}),Ji=_("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Cd),oe.init(t,e)}),Gi=_("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Fi(n))}else e.pattern??(e.pattern=Fi());oe.init(t,e)}),Xi=_("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Zd),oe.init(t,e)}),Wi=_("$ZodURL",(t,e)=>{oe.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Fd.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Yi=_("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Ad()),oe.init(t,e)}),Qi=_("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Od),oe.init(t,e)}),ea=_("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Pd),oe.init(t,e)}),ta=_("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ed),oe.init(t,e)}),ra=_("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Rd),oe.init(t,e)}),na=_("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Id),oe.init(t,e)}),oa=_("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=jd),oe.init(t,e)}),Tp=_("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Gd(e)),oe.init(t,e)}),Pp=_("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Kd),oe.init(t,e)}),Ep=_("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Jd(e)),oe.init(t,e)}),Rp=_("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Nd),oe.init(t,e)}),sa=_("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Md),oe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ia=_("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Dd),oe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),aa=_("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=qd),oe.init(t,e)}),ca=_("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Ld),oe.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Ip(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var ua=_("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Ud),oe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Ip(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function q_(t){if(!Vi.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Ip(r)}var la=_("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Vi),oe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{q_(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),da=_("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Vd),oe.init(t,e)});function L_(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var pa=_("$ZodJWT",(t,e)=>{oe.init(t,e),t._zod.check=r=>{L_(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Do=_("$ZodNumber",(t,e)=>{ee.init(t,e),t._zod.pattern=t._zod.bag.pattern??Yd,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),fa=_("$ZodNumber",(t,e)=>{sp.init(t,e),Do.init(t,e)}),ma=_("$ZodBoolean",(t,e)=>{ee.init(t,e),t._zod.pattern=Qd,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var ha=_("$ZodNull",(t,e)=>{ee.init(t,e),t._zod.pattern=ep,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var ga=_("$ZodUnknown",(t,e)=>{ee.init(t,e),t._zod.parse=r=>r}),ya=_("$ZodNever",(t,e)=>{ee.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function _p(t,e,r){t.issues.length&&e.issues.push(...ht(r,t.issues)),e.value[r]=t.value}var _a=_("$ZodArray",(t,e)=>{ee.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>_p(u,r,i))):_p(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Mo(t,e,r){t.issues.length&&e.issues.push(...ht(r,t.issues)),e.value[r]=t.value}function vp(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...ht(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var qo=_("$ZodObject",(t,e)=>{ee.init(t,e);let r=kn(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ee))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let h=ji(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(h)}});ne(t._zod,"propValues",()=>{let d=e.shape,h={};for(let f in d){let p=d[f]._zod;if(p.values){h[f]??(h[f]=new Set);for(let m of p.values)h[f].add(m)}}return h});let n=d=>{let h=new Ao(["shape","payload","ctx"]),f=r.value,p=v=>{let b=Qt(v);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};h.write("const input = payload.value;");let m=Object.create(null),g=0;for(let v of f.keys)m[v]=`key_${g++}`;h.write("const newResult = {}");for(let v of f.keys)if(f.optionalKeys.has(v)){let b=m[v];h.write(`const ${b} = ${p(v)};`);let P=Qt(v);h.write(`
12
+ if (${b}.issues.length) {
13
+ if (input[${P}] === undefined) {
14
+ if (${P} in input) {
15
+ newResult[${P}] = undefined;
16
+ }
17
+ } else {
18
+ payload.issues = payload.issues.concat(
19
+ ${b}.issues.map((iss) => ({
20
+ ...iss,
21
+ path: iss.path ? [${P}, ...iss.path] : [${P}],
22
+ }))
23
+ );
24
+ }
25
+ } else if (${b}.value === undefined) {
26
+ if (${P} in input) newResult[${P}] = undefined;
27
+ } else {
28
+ newResult[${P}] = ${b}.value;
29
+ }
30
+ `)}else{let b=m[v];h.write(`const ${b} = ${p(v)};`),h.write(`
31
+ if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({
32
+ ...iss,
33
+ path: iss.path ? [${Qt(v)}, ...iss.path] : [${Qt(v)}]
34
+ })));`),h.write(`newResult[${Qt(v)}] = ${b}.value`)}h.write("payload.value = newResult;"),h.write("return payload;");let x=h.compile();return(v,b)=>x(d,v,b)},o,s=Ar,i=!Io.jitless,c=i&&Ri.value,u=e.catchall,l;t._zod.parse=(d,h)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&h?.async===!1&&h.jitless!==!0)o||(o=n(e.shape)),d=o(d,h);else{d.value={};let b=l.shape;for(let P of l.keys){let N=b[P],Ie=N._zod.run({value:f[P],issues:[]},h),Xe=N._zod.optin==="optional"&&N._zod.optout==="optional";Ie instanceof Promise?p.push(Ie.then(Zr=>Xe?vp(Zr,d,P,f):Mo(Zr,d,P))):Xe?vp(Ie,d,P,f):Mo(Ie,d,P)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let m=[],g=l.keySet,x=u._zod,v=x.def.type;for(let b of Object.keys(f)){if(g.has(b))continue;if(v==="never"){m.push(b);continue}let P=x.run({value:f[b],issues:[]},h);P instanceof Promise?p.push(P.then(N=>Mo(N,d,b))):Mo(P,d,b)}return m.length&&d.issues.push({code:"unrecognized_keys",keys:m,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function xp(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>st(s,n,Be())))}),e}var Lo=_("$ZodUnion",(t,e)=>{ee.init(t,e),ne(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ne(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ne(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ne(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>zn(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>xp(i,r,t,n)):xp(s,r,t,n)}}),va=_("$ZodDiscriminatedUnion",(t,e)=>{Lo.init(t,e);let r=t._zod.parse;ne(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=kn(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!Ar(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),xa=_("$ZodIntersection",(t,e)=>{ee.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>bp(r,c,u)):bp(r,s,i)}});function Bi(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Mr(t)&&Mr(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=Bi(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=Bi(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function bp(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),er(t))return t;let n=Bi(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var ba=_("$ZodRecord",(t,e)=>{ee.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Mr(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...ht(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...ht(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>st(u,n,Be())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...ht(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...ht(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var $a=_("$ZodEnum",(t,e)=>{ee.init(t,e);let r=wn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ii.has(typeof n)).map(n=>typeof n=="string"?Nt(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),wa=_("$ZodLiteral",(t,e)=>{ee.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Nt(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var ka=_("$ZodTransform",(t,e)=>{ee.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new St;return r.value=o,r}}),Sa=_("$ZodOptional",(t,e)=>{ee.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ne(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ne(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${zn(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),za=_("$ZodNullable",(t,e)=>{ee.init(t,e),ne(t._zod,"optin",()=>e.innerType._zod.optin),ne(t._zod,"optout",()=>e.innerType._zod.optout),ne(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${zn(r.source)}|null)$`):void 0}),ne(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Ta=_("$ZodDefault",(t,e)=>{ee.init(t,e),t._zod.optin="optional",ne(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>$p(s,e)):$p(o,e)}});function $p(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Pa=_("$ZodPrefault",(t,e)=>{ee.init(t,e),t._zod.optin="optional",ne(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Ea=_("$ZodNonOptional",(t,e)=>{ee.init(t,e),ne(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>wp(s,t)):wp(o,t)}});function wp(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Ra=_("$ZodCatch",(t,e)=>{ee.init(t,e),t._zod.optin="optional",ne(t._zod,"optout",()=>e.innerType._zod.optout),ne(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>st(i,n,Be()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>st(s,n,Be()))},input:r.value}),r.issues=[]),r)}});var Ia=_("$ZodPipe",(t,e)=>{ee.init(t,e),ne(t._zod,"values",()=>e.in._zod.values),ne(t._zod,"optin",()=>e.in._zod.optin),ne(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>kp(s,e,n)):kp(o,e,n)}});function kp(t,e,r){return er(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var ja=_("$ZodReadonly",(t,e)=>{ee.init(t,e),ne(t._zod,"propValues",()=>e.innerType._zod.propValues),ne(t._zod,"values",()=>e.innerType._zod.values),ne(t._zod,"optin",()=>e.innerType._zod.optin),ne(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Sp):Sp(o)}});function Sp(t){return t.value=Object.freeze(t.value),t}var Oa=_("$ZodCustom",(t,e)=>{ve.init(t,e),ee.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>zp(s,r,n,t));zp(o,r,n,t)}});function zp(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Ni(o))}}var U_=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},F_=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${U_(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${No(n.values[0])}`:`Invalid option: expected one of ${jo(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${jo(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function jp(){return{localeError:F_()}}var V_=Symbol("ZodOutput"),H_=Symbol("ZodInput"),In=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Op(){return new In}var Ct=Op();function Na(t,e){return new t({type:"string",...C(e)})}function Ca(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...C(e)})}function Uo(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...C(e)})}function Za(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...C(e)})}function Aa(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...C(e)})}function Ma(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...C(e)})}function Da(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...C(e)})}function qa(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...C(e)})}function La(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...C(e)})}function Ua(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...C(e)})}function Fa(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...C(e)})}function Va(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...C(e)})}function Ha(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...C(e)})}function Ka(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...C(e)})}function Ba(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...C(e)})}function Ja(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...C(e)})}function Ga(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...C(e)})}function Xa(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...C(e)})}function Wa(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...C(e)})}function Ya(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...C(e)})}function Qa(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...C(e)})}function ec(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...C(e)})}function tc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...C(e)})}function Np(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...C(e)})}function Cp(t,e){return new t({type:"string",format:"date",check:"string_format",...C(e)})}function Zp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...C(e)})}function Ap(t,e){return new t({type:"string",format:"duration",check:"string_format",...C(e)})}function rc(t,e){return new t({type:"number",checks:[],...C(e)})}function nc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...C(e)})}function oc(t,e){return new t({type:"boolean",...C(e)})}function sc(t,e){return new t({type:"null",...C(e)})}function ic(t){return new t({type:"unknown"})}function ac(t,e){return new t({type:"never",...C(e)})}function Fo(t,e){return new Hi({check:"less_than",...C(e),value:t,inclusive:!1})}function jn(t,e){return new Hi({check:"less_than",...C(e),value:t,inclusive:!0})}function Vo(t,e){return new Ki({check:"greater_than",...C(e),value:t,inclusive:!1})}function On(t,e){return new Ki({check:"greater_than",...C(e),value:t,inclusive:!0})}function Ho(t,e){return new op({check:"multiple_of",...C(e),value:t})}function Ko(t,e){return new ip({check:"max_length",...C(e),maximum:t})}function Dr(t,e){return new ap({check:"min_length",...C(e),minimum:t})}function Bo(t,e){return new cp({check:"length_equals",...C(e),length:t})}function cc(t,e){return new up({check:"string_format",format:"regex",...C(e),pattern:t})}function uc(t){return new lp({check:"string_format",format:"lowercase",...C(t)})}function lc(t){return new dp({check:"string_format",format:"uppercase",...C(t)})}function dc(t,e){return new pp({check:"string_format",format:"includes",...C(e),includes:t})}function pc(t,e){return new fp({check:"string_format",format:"starts_with",...C(e),prefix:t})}function fc(t,e){return new mp({check:"string_format",format:"ends_with",...C(e),suffix:t})}function nr(t){return new hp({check:"overwrite",tx:t})}function mc(t){return nr(e=>e.normalize(t))}function hc(){return nr(t=>t.trim())}function gc(){return nr(t=>t.toLowerCase())}function yc(){return nr(t=>t.toUpperCase())}function Mp(t,e,r){return new t({type:"array",element:e,...C(r)})}function _c(t,e,r){let n=C(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function vc(t,e,r){return new t({type:"custom",check:"custom",fn:e,...C(r)})}var Jo=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Ct,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},h=e._zod.parent;if(h)a.ref=h,this.process(h,d),this.seen.get(h).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:m,maximum:g,format:x,patterns:v,contentEncoding:b}=e._zod.bag;if(typeof m=="number"&&(p.minLength=m),typeof g=="number"&&(p.maxLength=g),x&&(p.format=s[x]??x,p.format===""&&delete p.format),b&&(p.contentEncoding=b),v&&v.size>0){let P=[...v];P.length===1?p.pattern=P[0].source:P.length>1&&(a.schema.allOf=[...P.map(N=>({...this.target==="draft-7"?{type:"string"}:{},pattern:N.source}))])}break}case"number":{let p=f,{minimum:m,maximum:g,format:x,multipleOf:v,exclusiveMaximum:b,exclusiveMinimum:P}=e._zod.bag;typeof x=="string"&&x.includes("int")?p.type="integer":p.type="number",typeof P=="number"&&(p.exclusiveMinimum=P),typeof m=="number"&&(p.minimum=m,typeof P=="number"&&(P>=m?delete p.minimum:delete p.exclusiveMinimum)),typeof b=="number"&&(p.exclusiveMaximum=b),typeof g=="number"&&(p.maximum=g,typeof b=="number"&&(b<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof v=="number"&&(p.multipleOf=v);break}case"boolean":{let p=f;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{minimum:m,maximum:g}=e._zod.bag;typeof m=="number"&&(p.minItems=m),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=f;p.type="object",p.properties={};let m=o.shape;for(let v in m)p.properties[v]=this.process(m[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(m)),x=new Set([...g].filter(v=>{let b=o.shape[v]._zod;return this.io==="input"?b.optin===void 0:b.optout===void 0}));x.size>0&&(p.required=Array.from(x)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=f;p.anyOf=o.options.map((m,g)=>this.process(m,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,m=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),x=b=>"allOf"in b&&Object.keys(b).length===1,v=[...x(m)?m.allOf:[m],...x(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=f;p.type="array";let m=o.items.map((v,b)=>this.process(v,{...d,path:[...d.path,"prefixItems",b]}));if(this.target==="draft-2020-12"?p.prefixItems=m:p.items=m,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=v:p.additionalItems=v}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:x}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof x=="number"&&(p.maxItems=x);break}case"record":{let p=f;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=f,m=wn(o.entries);m.every(g=>typeof g=="number")&&(p.type="number"),m.every(g=>typeof g=="string")&&(p.type="string"),p.enum=m;break}case"literal":{let p=f,m=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");m.push(Number(g))}else m.push(g);if(m.length!==0)if(m.length===1){let g=m[0];p.type=g===null?"null":typeof g,p.const=g}else m.every(g=>typeof g=="number")&&(p.type="number"),m.every(g=>typeof g=="string")&&(p.type="string"),m.every(g=>typeof g=="boolean")&&(p.type="string"),m.every(g=>g===null)&&(p.type="null"),p.enum=m;break}case"file":{let p=f,m={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:x,mime:v}=e._zod.bag;g!==void 0&&(m.minLength=g),x!==void 0&&(m.maxLength=x),v?v.length===1?(m.contentMediaType=v[0],Object.assign(p,m)):p.anyOf=v.map(b=>({...m,contentMediaType:b})):Object.assign(p,m);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=f,m=e._zod.pattern;if(!m)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=m.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&ge(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let m=n.external.registry.get(l[0])?.id,g=n.external.uri??(v=>v);if(m)return{ref:g(m)};let x=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=x,{defId:x,ref:`${g("__shared")}#/${d}/${x}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:h,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let m in p)delete p[m];p.$ref=h};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
35
+
36
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let h=this.seen.get(l),f=h.def??h.schema,p={...f};if(h.ref===null)return;let m=h.ref;if(h.ref=null,m){a(m,d);let g=this.seen.get(m).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}h.isParent||this.override({zodSchema:l,jsonSchema:f,path:h.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function xc(t,e){if(t instanceof In){let n=new Jo(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Jo(e);return r.process(t),r.emit(t,e)}function ge(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return ge(o.element,r);case"object":{for(let s in o.shape)if(ge(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ge(s,r))return!0;return!1}case"intersection":return ge(o.left,r)||ge(o.right,r);case"tuple":{for(let s of o.items)if(ge(s,r))return!0;return!!(o.rest&&ge(o.rest,r))}case"record":return ge(o.keyType,r)||ge(o.valueType,r);case"map":return ge(o.keyType,r)||ge(o.valueType,r);case"set":return ge(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ge(o.innerType,r);case"lazy":return ge(o.getter(),r);case"default":return ge(o.innerType,r);case"prefault":return ge(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ge(o.in,r)||ge(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Nn={};ki(Nn,{ZodISODate:()=>Lp,ZodISODateTime:()=>qp,ZodISODuration:()=>Fp,ZodISOTime:()=>Up,date:()=>$c,datetime:()=>bc,duration:()=>kc,time:()=>wc});var qp=_("ZodISODateTime",(t,e)=>{Tp.init(t,e),ue.init(t,e)});function bc(t){return Np(qp,t)}var Lp=_("ZodISODate",(t,e)=>{Pp.init(t,e),ue.init(t,e)});function $c(t){return Cp(Lp,t)}var Up=_("ZodISOTime",(t,e)=>{Ep.init(t,e),ue.init(t,e)});function wc(t){return Zp(Up,t)}var Fp=_("ZodISODuration",(t,e)=>{Rp.init(t,e),ue.init(t,e)});function kc(t){return Ap(Fp,t)}var Vp=(t,e)=>{Co.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Zi(t,r)},flatten:{value:r=>Ci(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},wR=_("ZodError",Vp),Cn=_("ZodError",Vp,{Parent:Error});var Hp=Ai(Cn),Kp=Di(Cn),Bp=Li(Cn),Jp=Ui(Cn);var fe=_("ZodType",(t,e)=>(ee.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>Je(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Hp(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Bp(t,r,n),t.parseAsync=async(r,n)=>Kp(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Jp(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(xx(r,n)),t.superRefine=r=>t.check(bx(r)),t.overwrite=r=>t.check(nr(r)),t.optional=()=>de(t),t.nullable=()=>Wp(t),t.nullish=()=>de(Wp(t)),t.nonoptional=r=>fx(t,r),t.array=()=>B(t),t.or=r=>ie([t,r]),t.and=r=>Xo(t,r),t.transform=r=>zc(t,nf(r)),t.default=r=>lx(t,r),t.prefault=r=>px(t,r),t.catch=r=>hx(t,r),t.pipe=r=>zc(t,r),t.readonly=()=>_x(t),t.describe=r=>{let n=t.clone();return Ct.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Ct.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Ct.get(t);let n=t.clone();return Ct.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Yp=_("_ZodString",(t,e)=>{Rn.init(t,e),fe.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(cc(...n)),t.includes=(...n)=>t.check(dc(...n)),t.startsWith=(...n)=>t.check(pc(...n)),t.endsWith=(...n)=>t.check(fc(...n)),t.min=(...n)=>t.check(Dr(...n)),t.max=(...n)=>t.check(Ko(...n)),t.length=(...n)=>t.check(Bo(...n)),t.nonempty=(...n)=>t.check(Dr(1,...n)),t.lowercase=n=>t.check(uc(n)),t.uppercase=n=>t.check(lc(n)),t.trim=()=>t.check(hc()),t.normalize=(...n)=>t.check(mc(...n)),t.toLowerCase=()=>t.check(gc()),t.toUpperCase=()=>t.check(yc())}),jv=_("ZodString",(t,e)=>{Rn.init(t,e),Yp.init(t,e),t.email=r=>t.check(Ca(Ov,r)),t.url=r=>t.check(qa(Nv,r)),t.jwt=r=>t.check(tc(Gv,r)),t.emoji=r=>t.check(La(Cv,r)),t.guid=r=>t.check(Uo(Gp,r)),t.uuid=r=>t.check(Za(Go,r)),t.uuidv4=r=>t.check(Aa(Go,r)),t.uuidv6=r=>t.check(Ma(Go,r)),t.uuidv7=r=>t.check(Da(Go,r)),t.nanoid=r=>t.check(Ua(Zv,r)),t.guid=r=>t.check(Uo(Gp,r)),t.cuid=r=>t.check(Fa(Av,r)),t.cuid2=r=>t.check(Va(Mv,r)),t.ulid=r=>t.check(Ha(Dv,r)),t.base64=r=>t.check(Ya(Kv,r)),t.base64url=r=>t.check(Qa(Bv,r)),t.xid=r=>t.check(Ka(qv,r)),t.ksuid=r=>t.check(Ba(Lv,r)),t.ipv4=r=>t.check(Ja(Uv,r)),t.ipv6=r=>t.check(Ga(Fv,r)),t.cidrv4=r=>t.check(Xa(Vv,r)),t.cidrv6=r=>t.check(Wa(Hv,r)),t.e164=r=>t.check(ec(Jv,r)),t.datetime=r=>t.check(bc(r)),t.date=r=>t.check($c(r)),t.time=r=>t.check(wc(r)),t.duration=r=>t.check(kc(r))});function y(t){return Na(jv,t)}var ue=_("ZodStringFormat",(t,e)=>{oe.init(t,e),Yp.init(t,e)}),Ov=_("ZodEmail",(t,e)=>{Xi.init(t,e),ue.init(t,e)});var Gp=_("ZodGUID",(t,e)=>{Ji.init(t,e),ue.init(t,e)});var Go=_("ZodUUID",(t,e)=>{Gi.init(t,e),ue.init(t,e)});var Nv=_("ZodURL",(t,e)=>{Wi.init(t,e),ue.init(t,e)});var Cv=_("ZodEmoji",(t,e)=>{Yi.init(t,e),ue.init(t,e)});var Zv=_("ZodNanoID",(t,e)=>{Qi.init(t,e),ue.init(t,e)});var Av=_("ZodCUID",(t,e)=>{ea.init(t,e),ue.init(t,e)});var Mv=_("ZodCUID2",(t,e)=>{ta.init(t,e),ue.init(t,e)});var Dv=_("ZodULID",(t,e)=>{ra.init(t,e),ue.init(t,e)});var qv=_("ZodXID",(t,e)=>{na.init(t,e),ue.init(t,e)});var Lv=_("ZodKSUID",(t,e)=>{oa.init(t,e),ue.init(t,e)});var Uv=_("ZodIPv4",(t,e)=>{sa.init(t,e),ue.init(t,e)});var Fv=_("ZodIPv6",(t,e)=>{ia.init(t,e),ue.init(t,e)});var Vv=_("ZodCIDRv4",(t,e)=>{aa.init(t,e),ue.init(t,e)});var Hv=_("ZodCIDRv6",(t,e)=>{ca.init(t,e),ue.init(t,e)});var Kv=_("ZodBase64",(t,e)=>{ua.init(t,e),ue.init(t,e)});var Bv=_("ZodBase64URL",(t,e)=>{la.init(t,e),ue.init(t,e)});var Jv=_("ZodE164",(t,e)=>{da.init(t,e),ue.init(t,e)});var Gv=_("ZodJWT",(t,e)=>{pa.init(t,e),ue.init(t,e)});var Qp=_("ZodNumber",(t,e)=>{Do.init(t,e),fe.init(t,e),t.gt=(n,o)=>t.check(Vo(n,o)),t.gte=(n,o)=>t.check(On(n,o)),t.min=(n,o)=>t.check(On(n,o)),t.lt=(n,o)=>t.check(Fo(n,o)),t.lte=(n,o)=>t.check(jn(n,o)),t.max=(n,o)=>t.check(jn(n,o)),t.int=n=>t.check(Xp(n)),t.safe=n=>t.check(Xp(n)),t.positive=n=>t.check(Vo(0,n)),t.nonnegative=n=>t.check(On(0,n)),t.negative=n=>t.check(Fo(0,n)),t.nonpositive=n=>t.check(jn(0,n)),t.multipleOf=(n,o)=>t.check(Ho(n,o)),t.step=(n,o)=>t.check(Ho(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Q(t){return rc(Qp,t)}var Xv=_("ZodNumberFormat",(t,e)=>{fa.init(t,e),Qp.init(t,e)});function Xp(t){return nc(Xv,t)}var Wv=_("ZodBoolean",(t,e)=>{ma.init(t,e),fe.init(t,e)});function _e(t){return oc(Wv,t)}var Yv=_("ZodNull",(t,e)=>{ha.init(t,e),fe.init(t,e)});function ef(t){return sc(Yv,t)}var Qv=_("ZodUnknown",(t,e)=>{ga.init(t,e),fe.init(t,e)});function le(){return ic(Qv)}var ex=_("ZodNever",(t,e)=>{ya.init(t,e),fe.init(t,e)});function tx(t){return ac(ex,t)}var rx=_("ZodArray",(t,e)=>{_a.init(t,e),fe.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Dr(r,n)),t.nonempty=r=>t.check(Dr(1,r)),t.max=(r,n)=>t.check(Ko(r,n)),t.length=(r,n)=>t.check(Bo(r,n)),t.unwrap=()=>t.element});function B(t,e){return Mp(rx,t,e)}var tf=_("ZodObject",(t,e)=>{qo.init(t,e),fe.init(t,e),K.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Me(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:le()}),t.loose=()=>t.clone({...t._zod.def,catchall:le()}),t.strict=()=>t.clone({...t._zod.def,catchall:tx()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>K.extend(t,r),t.merge=r=>K.merge(t,r),t.pick=r=>K.pick(t,r),t.omit=r=>K.omit(t,r),t.partial=(...r)=>K.partial(of,t,r[0]),t.required=(...r)=>K.required(sf,t,r[0])});function T(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new tf(r)}function je(t,e){return new tf({type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},catchall:le(),...K.normalizeParams(e)})}var rf=_("ZodUnion",(t,e)=>{Lo.init(t,e),fe.init(t,e),t.options=e.options});function ie(t,e){return new rf({type:"union",options:t,...K.normalizeParams(e)})}var nx=_("ZodDiscriminatedUnion",(t,e)=>{rf.init(t,e),va.init(t,e)});function Tc(t,e,r){return new nx({type:"union",options:e,discriminator:t,...K.normalizeParams(r)})}var ox=_("ZodIntersection",(t,e)=>{xa.init(t,e),fe.init(t,e)});function Xo(t,e){return new ox({type:"intersection",left:t,right:e})}var sx=_("ZodRecord",(t,e)=>{ba.init(t,e),fe.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function se(t,e,r){return new sx({type:"record",keyType:t,valueType:e,...K.normalizeParams(r)})}var Sc=_("ZodEnum",(t,e)=>{$a.init(t,e),fe.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Sc({...e,checks:[],...K.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Sc({...e,checks:[],...K.normalizeParams(o),entries:s})}});function Me(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Sc({type:"enum",entries:r,...K.normalizeParams(e)})}var ix=_("ZodLiteral",(t,e)=>{wa.init(t,e),fe.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new ix({type:"literal",values:Array.isArray(t)?t:[t],...K.normalizeParams(e)})}var ax=_("ZodTransform",(t,e)=>{ka.init(t,e),fe.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(K.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(K.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function nf(t){return new ax({type:"transform",transform:t})}var of=_("ZodOptional",(t,e)=>{Sa.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function de(t){return new of({type:"optional",innerType:t})}var cx=_("ZodNullable",(t,e)=>{za.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Wp(t){return new cx({type:"nullable",innerType:t})}var ux=_("ZodDefault",(t,e)=>{Ta.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function lx(t,e){return new ux({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var dx=_("ZodPrefault",(t,e)=>{Pa.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function px(t,e){return new dx({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var sf=_("ZodNonOptional",(t,e)=>{Ea.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function fx(t,e){return new sf({type:"nonoptional",innerType:t,...K.normalizeParams(e)})}var mx=_("ZodCatch",(t,e)=>{Ra.init(t,e),fe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function hx(t,e){return new mx({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var gx=_("ZodPipe",(t,e)=>{Ia.init(t,e),fe.init(t,e),t.in=e.in,t.out=e.out});function zc(t,e){return new gx({type:"pipe",in:t,out:e})}var yx=_("ZodReadonly",(t,e)=>{ja.init(t,e),fe.init(t,e)});function _x(t){return new yx({type:"readonly",innerType:t})}var af=_("ZodCustom",(t,e)=>{Oa.init(t,e),fe.init(t,e)});function vx(t){let e=new ve({check:"custom"});return e._zod.check=t,e}function cf(t,e){return _c(af,t??(()=>!0),e)}function xx(t,e={}){return vc(af,t,e)}function bx(t){let e=vx(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(K.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(K.issue(o))}},t(r.value,r)));return e}function Pc(t,e){return zc(nf(t),e)}Be(jp());var Rc="2025-11-25";var uf=[Rc,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Zt="io.modelcontextprotocol/related-task",Yo="2.0",ye=cf(t=>t!==null&&(typeof t=="object"||typeof t=="function")),lf=ie([y(),Q().int()]),df=y(),AR=je({ttl:Q().optional(),pollInterval:Q().optional()}),$x=T({ttl:Q().optional()}),wx=T({taskId:y()}),Ic=je({progressToken:lf.optional(),[Zt]:wx.optional()}),Ge=T({_meta:Ic.optional()}),Zn=Ge.extend({task:$x.optional()}),pf=t=>Zn.safeParse(t).success,xe=T({method:y(),params:Ge.loose().optional()}),We=T({_meta:Ic.optional()}),Ye=T({method:y(),params:We.loose().optional()}),be=je({_meta:Ic.optional()}),Qo=ie([y(),Q().int()]),ff=T({jsonrpc:I(Yo),id:Qo,...xe.shape}).strict(),jc=t=>ff.safeParse(t).success,mf=T({jsonrpc:I(Yo),...Ye.shape}).strict(),hf=t=>mf.safeParse(t).success,Oc=T({jsonrpc:I(Yo),id:Qo,result:be}).strict(),An=t=>Oc.safeParse(t).success;var O;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(O||(O={}));var Nc=T({jsonrpc:I(Yo),id:Qo.optional(),error:T({code:Q().int(),message:y(),data:le().optional()})}).strict();var gf=t=>Nc.safeParse(t).success;var yf=ie([ff,mf,Oc,Nc]),MR=ie([Oc,Nc]),es=be.strict(),kx=We.extend({requestId:Qo.optional(),reason:y().optional()}),ts=Ye.extend({method:I("notifications/cancelled"),params:kx}),Sx=T({src:y(),mimeType:y().optional(),sizes:B(y()).optional(),theme:Me(["light","dark"]).optional()}),Mn=T({icons:B(Sx).optional()}),qr=T({name:y(),title:y().optional()}),_f=qr.extend({...qr.shape,...Mn.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),zx=Xo(T({applyDefaults:_e().optional()}),se(y(),le())),Tx=Pc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Xo(T({form:zx.optional(),url:ye.optional()}),se(y(),le()).optional())),Px=je({list:ye.optional(),cancel:ye.optional(),requests:je({sampling:je({createMessage:ye.optional()}).optional(),elicitation:je({create:ye.optional()}).optional()}).optional()}),Ex=je({list:ye.optional(),cancel:ye.optional(),requests:je({tools:je({call:ye.optional()}).optional()}).optional()}),Rx=T({experimental:se(y(),ye).optional(),sampling:T({context:ye.optional(),tools:ye.optional()}).optional(),elicitation:Tx.optional(),roots:T({listChanged:_e().optional()}).optional(),tasks:Px.optional(),extensions:se(y(),ye).optional()}),Ix=Ge.extend({protocolVersion:y(),capabilities:Rx,clientInfo:_f}),Cc=xe.extend({method:I("initialize"),params:Ix});var jx=T({experimental:se(y(),ye).optional(),logging:ye.optional(),completions:ye.optional(),prompts:T({listChanged:_e().optional()}).optional(),resources:T({subscribe:_e().optional(),listChanged:_e().optional()}).optional(),tools:T({listChanged:_e().optional()}).optional(),tasks:Ex.optional(),extensions:se(y(),ye).optional()}),Ox=be.extend({protocolVersion:y(),capabilities:jx,serverInfo:_f,instructions:y().optional()}),Zc=Ye.extend({method:I("notifications/initialized"),params:We.optional()});var rs=xe.extend({method:I("ping"),params:Ge.optional()}),Nx=T({progress:Q(),total:de(Q()),message:de(y())}),Cx=T({...We.shape,...Nx.shape,progressToken:lf}),ns=Ye.extend({method:I("notifications/progress"),params:Cx}),Zx=Ge.extend({cursor:df.optional()}),Dn=xe.extend({params:Zx.optional()}),qn=be.extend({nextCursor:df.optional()}),Ax=Me(["working","input_required","completed","failed","cancelled"]),Ln=T({taskId:y(),status:Ax,ttl:ie([Q(),ef()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:de(Q()),statusMessage:de(y())}),Lr=be.extend({task:Ln}),Mx=We.merge(Ln),Un=Ye.extend({method:I("notifications/tasks/status"),params:Mx}),os=xe.extend({method:I("tasks/get"),params:Ge.extend({taskId:y()})}),ss=be.merge(Ln),is=xe.extend({method:I("tasks/result"),params:Ge.extend({taskId:y()})}),DR=be.loose(),as=Dn.extend({method:I("tasks/list")}),cs=qn.extend({tasks:B(Ln)}),us=xe.extend({method:I("tasks/cancel"),params:Ge.extend({taskId:y()})}),vf=be.merge(Ln),xf=T({uri:y(),mimeType:de(y()),_meta:se(y(),le()).optional()}),bf=xf.extend({text:y()}),Ac=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),$f=xf.extend({blob:Ac}),Fn=Me(["user","assistant"]),Ur=T({audience:B(Fn).optional(),priority:Q().min(0).max(1).optional(),lastModified:Nn.datetime({offset:!0}).optional()}),wf=T({...qr.shape,...Mn.shape,uri:y(),description:de(y()),mimeType:de(y()),size:de(Q()),annotations:Ur.optional(),_meta:de(je({}))}),Dx=T({...qr.shape,...Mn.shape,uriTemplate:y(),description:de(y()),mimeType:de(y()),annotations:Ur.optional(),_meta:de(je({}))}),ls=Dn.extend({method:I("resources/list")}),qx=qn.extend({resources:B(wf)}),ds=Dn.extend({method:I("resources/templates/list")}),Lx=qn.extend({resourceTemplates:B(Dx)}),Mc=Ge.extend({uri:y()}),Ux=Mc,ps=xe.extend({method:I("resources/read"),params:Ux}),Fx=be.extend({contents:B(ie([bf,$f]))}),Vx=Ye.extend({method:I("notifications/resources/list_changed"),params:We.optional()}),Hx=Mc,Kx=xe.extend({method:I("resources/subscribe"),params:Hx}),Bx=Mc,Jx=xe.extend({method:I("resources/unsubscribe"),params:Bx}),Gx=We.extend({uri:y()}),Xx=Ye.extend({method:I("notifications/resources/updated"),params:Gx}),Wx=T({name:y(),description:de(y()),required:de(_e())}),Yx=T({...qr.shape,...Mn.shape,description:de(y()),arguments:de(B(Wx)),_meta:de(je({}))}),fs=Dn.extend({method:I("prompts/list")}),Qx=qn.extend({prompts:B(Yx)}),eb=Ge.extend({name:y(),arguments:se(y(),y()).optional()}),ms=xe.extend({method:I("prompts/get"),params:eb}),Dc=T({type:I("text"),text:y(),annotations:Ur.optional(),_meta:se(y(),le()).optional()}),qc=T({type:I("image"),data:Ac,mimeType:y(),annotations:Ur.optional(),_meta:se(y(),le()).optional()}),Lc=T({type:I("audio"),data:Ac,mimeType:y(),annotations:Ur.optional(),_meta:se(y(),le()).optional()}),tb=T({type:I("tool_use"),name:y(),id:y(),input:se(y(),le()),_meta:se(y(),le()).optional()}),rb=T({type:I("resource"),resource:ie([bf,$f]),annotations:Ur.optional(),_meta:se(y(),le()).optional()}),nb=wf.extend({type:I("resource_link")}),Uc=ie([Dc,qc,Lc,nb,rb]),ob=T({role:Fn,content:Uc}),sb=be.extend({description:y().optional(),messages:B(ob)}),ib=Ye.extend({method:I("notifications/prompts/list_changed"),params:We.optional()}),ab=T({title:y().optional(),readOnlyHint:_e().optional(),destructiveHint:_e().optional(),idempotentHint:_e().optional(),openWorldHint:_e().optional()}),cb=T({taskSupport:Me(["required","optional","forbidden"]).optional()}),kf=T({...qr.shape,...Mn.shape,description:y().optional(),inputSchema:T({type:I("object"),properties:se(y(),ye).optional(),required:B(y()).optional()}).catchall(le()),outputSchema:T({type:I("object"),properties:se(y(),ye).optional(),required:B(y()).optional()}).catchall(le()).optional(),annotations:ab.optional(),execution:cb.optional(),_meta:se(y(),le()).optional()}),hs=Dn.extend({method:I("tools/list")}),ub=qn.extend({tools:B(kf)}),gs=be.extend({content:B(Uc).default([]),structuredContent:se(y(),le()).optional(),isError:_e().optional()}),qR=gs.or(be.extend({toolResult:le()})),lb=Zn.extend({name:y(),arguments:se(y(),le()).optional()}),Fr=xe.extend({method:I("tools/call"),params:lb}),db=Ye.extend({method:I("notifications/tools/list_changed"),params:We.optional()}),LR=T({autoRefresh:_e().default(!0),debounceMs:Q().int().nonnegative().default(300)}),Vn=Me(["debug","info","notice","warning","error","critical","alert","emergency"]),pb=Ge.extend({level:Vn}),Fc=xe.extend({method:I("logging/setLevel"),params:pb}),fb=We.extend({level:Vn,logger:y().optional(),data:le()}),mb=Ye.extend({method:I("notifications/message"),params:fb}),hb=T({name:y().optional()}),gb=T({hints:B(hb).optional(),costPriority:Q().min(0).max(1).optional(),speedPriority:Q().min(0).max(1).optional(),intelligencePriority:Q().min(0).max(1).optional()}),yb=T({mode:Me(["auto","required","none"]).optional()}),_b=T({type:I("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:B(Uc).default([]),structuredContent:T({}).loose().optional(),isError:_e().optional(),_meta:se(y(),le()).optional()}),vb=Tc("type",[Dc,qc,Lc]),Wo=Tc("type",[Dc,qc,Lc,tb,_b]),xb=T({role:Fn,content:ie([Wo,B(Wo)]),_meta:se(y(),le()).optional()}),bb=Zn.extend({messages:B(xb),modelPreferences:gb.optional(),systemPrompt:y().optional(),includeContext:Me(["none","thisServer","allServers"]).optional(),temperature:Q().optional(),maxTokens:Q().int(),stopSequences:B(y()).optional(),metadata:ye.optional(),tools:B(kf).optional(),toolChoice:yb.optional()}),$b=xe.extend({method:I("sampling/createMessage"),params:bb}),Hn=be.extend({model:y(),stopReason:de(Me(["endTurn","stopSequence","maxTokens"]).or(y())),role:Fn,content:vb}),Vc=be.extend({model:y(),stopReason:de(Me(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:Fn,content:ie([Wo,B(Wo)])}),wb=T({type:I("boolean"),title:y().optional(),description:y().optional(),default:_e().optional()}),kb=T({type:I("string"),title:y().optional(),description:y().optional(),minLength:Q().optional(),maxLength:Q().optional(),format:Me(["email","uri","date","date-time"]).optional(),default:y().optional()}),Sb=T({type:Me(["number","integer"]),title:y().optional(),description:y().optional(),minimum:Q().optional(),maximum:Q().optional(),default:Q().optional()}),zb=T({type:I("string"),title:y().optional(),description:y().optional(),enum:B(y()),default:y().optional()}),Tb=T({type:I("string"),title:y().optional(),description:y().optional(),oneOf:B(T({const:y(),title:y()})),default:y().optional()}),Pb=T({type:I("string"),title:y().optional(),description:y().optional(),enum:B(y()),enumNames:B(y()).optional(),default:y().optional()}),Eb=ie([zb,Tb]),Rb=T({type:I("array"),title:y().optional(),description:y().optional(),minItems:Q().optional(),maxItems:Q().optional(),items:T({type:I("string"),enum:B(y())}),default:B(y()).optional()}),Ib=T({type:I("array"),title:y().optional(),description:y().optional(),minItems:Q().optional(),maxItems:Q().optional(),items:T({anyOf:B(T({const:y(),title:y()}))}),default:B(y()).optional()}),jb=ie([Rb,Ib]),Ob=ie([Pb,Eb,jb]),Nb=ie([Ob,wb,kb,Sb]),Cb=Zn.extend({mode:I("form").optional(),message:y(),requestedSchema:T({type:I("object"),properties:se(y(),Nb),required:B(y()).optional()})}),Zb=Zn.extend({mode:I("url"),message:y(),elicitationId:y(),url:y().url()}),Ab=ie([Cb,Zb]),Mb=xe.extend({method:I("elicitation/create"),params:Ab}),Db=We.extend({elicitationId:y()}),qb=Ye.extend({method:I("notifications/elicitation/complete"),params:Db}),Vr=be.extend({action:Me(["accept","decline","cancel"]),content:Pc(t=>t===null?void 0:t,se(y(),ie([y(),Q(),_e(),B(y())])).optional())}),Lb=T({type:I("ref/resource"),uri:y()});var Ub=T({type:I("ref/prompt"),name:y()}),Fb=Ge.extend({ref:ie([Ub,Lb]),argument:T({name:y(),value:y()}),context:T({arguments:se(y(),y()).optional()}).optional()}),ys=xe.extend({method:I("completion/complete"),params:Fb});function Sf(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function zf(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var Vb=be.extend({completion:je({values:B(y()).max(100),total:de(Q().int()),hasMore:de(_e())})}),Hb=T({uri:y().startsWith("file://"),name:y().optional(),_meta:se(y(),le()).optional()}),Kb=xe.extend({method:I("roots/list"),params:Ge.optional()}),Hc=be.extend({roots:B(Hb)}),Bb=Ye.extend({method:I("notifications/roots/list_changed"),params:We.optional()}),UR=ie([rs,Cc,ys,Fc,ms,fs,ls,ds,ps,Kx,Jx,Fr,hs,os,is,as,us]),FR=ie([ts,ns,Zc,Bb,Un]),VR=ie([es,Hn,Vc,Vr,Hc,ss,cs,Lr]),HR=ie([rs,$b,Mb,Kb,os,is,as,us]),KR=ie([ts,ns,mb,Xx,Vx,db,ib,Un,qb]),BR=ie([es,Ox,Vb,sb,Qx,qx,Lx,Fx,gs,ub,ss,cs,Lr]),R=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===O.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Ec(o.elicitations,r)}return new t(e,r,n)}},Ec=class extends R{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(O.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};var Jb=10*1024*1024,_s=class{constructor(e){this._maxBufferSize=e?.maxBufferSize??Jb}append(e){if((this._buffer?.length??0)+e.length>this._maxBufferSize)throw this.clear(),new Error(`ReadBuffer exceeded maximum size of ${this._maxBufferSize} bytes`);this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
37
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),Gb(r)}clear(){this._buffer=void 0}};function Gb(t){return yf.parse(JSON.parse(t))}function Tf(t){return JSON.stringify(t)+`
38
+ `}var vs=class{constructor(e=Pf.stdin,r=Pf.stdout,n){this._stdin=e,this._stdout=r,this._started=!1,this._ondata=o=>{try{this._readBuffer.append(o),this.processReadBuffer()}catch(s){this.onerror?.(s),this.close().catch(()=>{})}},this._onerror=o=>{this.onerror?.(o)},this._readBuffer=new _s({maxBufferSize:n?.maxBufferSize})}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=Tf(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var Oe={};ki(Oe,{BRAND:()=>b$,DIRTY:()=>sr,EMPTY_PATH:()=>Qb,INVALID:()=>Z,NEVER:()=>o0,OK:()=>Se,ParseStatus:()=>$e,Schema:()=>L,ZodAny:()=>Dt,ZodArray:()=>Et,ZodBigInt:()=>ar,ZodBoolean:()=>cr,ZodBranded:()=>Bn,ZodCatch:()=>vr,ZodDate:()=>ur,ZodDefault:()=>_r,ZodDiscriminatedUnion:()=>$s,ZodEffects:()=>et,ZodEnum:()=>gr,ZodError:()=>De,ZodFirstPartyTypeKind:()=>w,ZodFunction:()=>ks,ZodIntersection:()=>fr,ZodIssueCode:()=>$,ZodLazy:()=>mr,ZodLiteral:()=>hr,ZodMap:()=>Xr,ZodNaN:()=>Yr,ZodNativeEnum:()=>yr,ZodNever:()=>it,ZodNull:()=>dr,ZodNullable:()=>_t,ZodNumber:()=>ir,ZodObject:()=>Le,ZodOptional:()=>qe,ZodParsedType:()=>z,ZodPipeline:()=>Jn,ZodPromise:()=>qt,ZodReadonly:()=>xr,ZodRecord:()=>ws,ZodSchema:()=>L,ZodSet:()=>Wr,ZodString:()=>Mt,ZodSymbol:()=>Jr,ZodTransformer:()=>et,ZodTuple:()=>yt,ZodType:()=>L,ZodUndefined:()=>lr,ZodUnion:()=>pr,ZodUnknown:()=>Pt,ZodVoid:()=>Gr,addIssueToContext:()=>k,any:()=>R$,array:()=>N$,bigint:()=>S$,boolean:()=>Df,coerce:()=>n0,custom:()=>Zf,date:()=>z$,datetimeRegex:()=>Nf,defaultErrorMap:()=>zt,discriminatedUnion:()=>A$,effect:()=>G$,enum:()=>K$,function:()=>F$,getErrorMap:()=>Hr,getParsedType:()=>gt,instanceof:()=>w$,intersection:()=>M$,isAborted:()=>xs,isAsync:()=>Kr,isDirty:()=>bs,isValid:()=>At,late:()=>$$,lazy:()=>V$,literal:()=>H$,makeIssue:()=>Kn,map:()=>L$,nan:()=>k$,nativeEnum:()=>B$,never:()=>j$,null:()=>E$,nullable:()=>W$,number:()=>Mf,object:()=>Gc,objectUtil:()=>Kc,oboolean:()=>r0,onumber:()=>t0,optional:()=>X$,ostring:()=>e0,pipeline:()=>Q$,preprocess:()=>Y$,promise:()=>J$,quotelessJson:()=>Xb,record:()=>q$,set:()=>U$,setErrorMap:()=>Yb,strictObject:()=>C$,string:()=>Af,symbol:()=>T$,transformer:()=>G$,tuple:()=>D$,undefined:()=>P$,union:()=>Z$,unknown:()=>I$,util:()=>H,void:()=>O$});var H;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(H||(H={}));var Kc;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Kc||(Kc={}));var z=H.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),gt=t=>{switch(typeof t){case"undefined":return z.undefined;case"string":return z.string;case"number":return Number.isNaN(t)?z.nan:z.number;case"boolean":return z.boolean;case"function":return z.function;case"bigint":return z.bigint;case"symbol":return z.symbol;case"object":return Array.isArray(t)?z.array:t===null?z.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?z.promise:typeof Map<"u"&&t instanceof Map?z.map:typeof Set<"u"&&t instanceof Set?z.set:typeof Date<"u"&&t instanceof Date?z.date:z.object;default:return z.unknown}};var $=H.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"]),Xb=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),De=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,H.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};De.create=t=>new De(t);var Wb=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===z.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case $.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,H.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${H.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${H.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${H.joinValues(t.options)}, received '${t.received}'`;break;case $.invalid_arguments:r="Invalid function arguments";break;case $.invalid_return_type:r="Invalid function return type";break;case $.invalid_date:r="Invalid date";break;case $.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}"`:H.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case $.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 $.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 $.custom:r="Invalid input";break;case $.invalid_intersection_types:r="Intersection results could not be merged";break;case $.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case $.not_finite:r="Number must be finite";break;default:r=e.defaultError,H.assertNever(t)}return{message:r}},zt=Wb;var Ef=zt;function Yb(t){Ef=t}function Hr(){return Ef}var Kn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},Qb=[];function k(t,e){let r=Hr(),n=Kn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===zt?void 0:zt].filter(o=>!!o)});t.common.issues.push(n)}var $e=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return Z;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return Z;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},Z=Object.freeze({status:"aborted"}),sr=t=>({status:"dirty",value:t}),Se=t=>({status:"valid",value:t}),xs=t=>t.status==="aborted",bs=t=>t.status==="dirty",At=t=>t.status==="valid",Kr=t=>typeof Promise<"u"&&t instanceof Promise;var E;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(E||(E={}));var Qe=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Rf=(t,e)=>{if(At(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new De(t.common.issues);return this._error=r,this._error}}};function D(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var L=class{get description(){return this._def.description}_getType(e){return gt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:gt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $e,ctx:{common:e.parent.common,data:e.data,parsedType:gt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Kr(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??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:gt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Rf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:gt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return At(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>At(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:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:gt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Kr(o)?o:Promise.resolve(o));return Rf(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:$.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new et({schema:this,typeName:w.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 qe.create(this,this._def)}nullable(){return _t.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Et.create(this)}promise(){return qt.create(this,this._def)}or(e){return pr.create([this,e],this._def)}and(e){return fr.create(this,e,this._def)}transform(e){return new et({...D(this._def),schema:this,typeName:w.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new _r({...D(this._def),innerType:this,defaultValue:r,typeName:w.ZodDefault})}brand(){return new Bn({typeName:w.ZodBranded,type:this,...D(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new vr({...D(this._def),innerType:this,catchValue:r,typeName:w.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Jn.create(this,e)}readonly(){return xr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},e$=/^c[^\s-]{8,}$/i,t$=/^[0-9a-z]+$/,r$=/^[0-9A-HJKMNP-TV-Z]{26}$/i,n$=/^[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,o$=/^[a-z0-9_-]{21}$/i,s$=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,i$=/^[-+]?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)?)??$/,a$=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,c$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Bc,u$=/^(?:(?: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])$/,l$=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,d$=/^(([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]))$/,p$=/^(([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])$/,f$=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,m$=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,jf="((\\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])))",h$=new RegExp(`^${jf}$`);function Of(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 g$(t){return new RegExp(`^${Of(t)}$`)}function Nf(t){let e=`${jf}T${Of(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 y$(t,e){return!!((e==="v4"||!e)&&u$.test(t)||(e==="v6"||!e)&&d$.test(t))}function _$(t,e){if(!s$.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function v$(t,e){return!!((e==="v4"||!e)&&l$.test(t)||(e==="v6"||!e)&&p$.test(t))}var Mt=class t extends L{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==z.string){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:z.string,received:s.parsedType}),Z}let n=new $e,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")a$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Bc||(Bc=new RegExp(c$,"u")),Bc.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")n$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")o$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")e$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")t$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")r$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),k(o,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Nf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?h$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?g$(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?i$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?y$(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?_$(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?v$(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?f$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?m$.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):H.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:$.invalid_string,...E.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...E.errToObj(e)})}url(e){return this._addCheck({kind:"url",...E.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...E.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...E.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...E.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...E.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...E.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...E.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...E.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...E.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...E.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...E.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...E.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...E.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,...E.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...E.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...E.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...E.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...E.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...E.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...E.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...E.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...E.errToObj(r)})}nonempty(e){return this.min(1,E.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}};Mt.create=t=>new Mt({checks:[],typeName:w.ZodString,coerce:t?.coerce??!1,...D(t)});function x$(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var ir=class t extends L{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)!==z.number){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:z.number,received:s.parsedType}),Z}let n,o=new $e;for(let s of this._def.checks)s.kind==="int"?H.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?x$(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_finite,message:s.message}),o.dirty()):H.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:E.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:E.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.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"&&H.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!0;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)}};ir.create=t=>new ir({checks:[],typeName:w.ZodNumber,coerce:t?.coerce||!1,...D(t)});var ar=class t extends L{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)!==z.bigint)return this._getInvalidInput(e);let n,o=new $e;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):H.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:z.bigint,received:r.parsedType}),Z}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.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}};ar.create=t=>new ar({checks:[],typeName:w.ZodBigInt,coerce:t?.coerce??!1,...D(t)});var cr=class extends L{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==z.boolean){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.boolean,received:n.parsedType}),Z}return Se(e.data)}};cr.create=t=>new cr({typeName:w.ZodBoolean,coerce:t?.coerce||!1,...D(t)});var ur=class t extends L{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==z.date){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:z.date,received:s.parsedType}),Z}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_date}),Z}let n=new $e,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):H.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:E.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:E.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}};ur.create=t=>new ur({checks:[],coerce:t?.coerce||!1,typeName:w.ZodDate,...D(t)});var Jr=class extends L{_parse(e){if(this._getType(e)!==z.symbol){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.symbol,received:n.parsedType}),Z}return Se(e.data)}};Jr.create=t=>new Jr({typeName:w.ZodSymbol,...D(t)});var lr=class extends L{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.undefined,received:n.parsedType}),Z}return Se(e.data)}};lr.create=t=>new lr({typeName:w.ZodUndefined,...D(t)});var dr=class extends L{_parse(e){if(this._getType(e)!==z.null){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.null,received:n.parsedType}),Z}return Se(e.data)}};dr.create=t=>new dr({typeName:w.ZodNull,...D(t)});var Dt=class extends L{constructor(){super(...arguments),this._any=!0}_parse(e){return Se(e.data)}};Dt.create=t=>new Dt({typeName:w.ZodAny,...D(t)});var Pt=class extends L{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Se(e.data)}};Pt.create=t=>new Pt({typeName:w.ZodUnknown,...D(t)});var it=class extends L{_parse(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:z.never,received:r.parsedType}),Z}};it.create=t=>new it({typeName:w.ZodNever,...D(t)});var Gr=class extends L{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.void,received:n.parsedType}),Z}return Se(e.data)}};Gr.create=t=>new Gr({typeName:w.ZodVoid,...D(t)});var Et=class t extends L{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==z.array)return k(r,{code:$.invalid_type,expected:z.array,received:r.parsedType}),Z;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(k(r,{code:i?$.too_big:$.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(k(r,{code:$.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(k(r,{code:$.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new Qe(r,i,r.path,a)))).then(i=>$e.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Qe(r,i,r.path,a)));return $e.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:E.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:E.toString(r)}})}nonempty(e){return this.min(1,e)}};Et.create=(t,e)=>new Et({type:t,minLength:null,maxLength:null,exactLength:null,typeName:w.ZodArray,...D(e)});function Br(t){if(t instanceof Le){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=qe.create(Br(n))}return new Le({...t._def,shape:()=>e})}else return t instanceof Et?new Et({...t._def,type:Br(t.element)}):t instanceof qe?qe.create(Br(t.unwrap())):t instanceof _t?_t.create(Br(t.unwrap())):t instanceof yt?yt.create(t.items.map(e=>Br(e))):t}var Le=class t extends L{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=H.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==z.object){let u=this._getOrReturnCtx(e);return k(u,{code:$.invalid_type,expected:z.object,received:u.parsedType}),Z}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof it&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Qe(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof it){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(k(o,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Qe(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,h=await l.value;u.push({key:d,value:h,alwaysSet:l.alwaysSet})}return u}).then(u=>$e.mergeObjectSync(n,u)):$e.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return E.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:E.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:w.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 H.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 H.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Br(this)}partial(e){let r={};for(let n of H.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of H.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof qe;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Cf(H.objectKeys(this.shape))}};Le.create=(t,e)=>new Le({shape:()=>t,unknownKeys:"strip",catchall:it.create(),typeName:w.ZodObject,...D(e)});Le.strictCreate=(t,e)=>new Le({shape:()=>t,unknownKeys:"strict",catchall:it.create(),typeName:w.ZodObject,...D(e)});Le.lazycreate=(t,e)=>new Le({shape:t,unknownKeys:"strip",catchall:it.create(),typeName:w.ZodObject,...D(e)});var pr=class extends L{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new De(a.ctx.common.issues));return k(r,{code:$.invalid_union,unionErrors:i}),Z}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new De(c));return k(r,{code:$.invalid_union,unionErrors:a}),Z}}get options(){return this._def.options}};pr.create=(t,e)=>new pr({options:t,typeName:w.ZodUnion,...D(e)});var Tt=t=>t instanceof mr?Tt(t.schema):t instanceof et?Tt(t.innerType()):t instanceof hr?[t.value]:t instanceof gr?t.options:t instanceof yr?H.objectValues(t.enum):t instanceof _r?Tt(t._def.innerType):t instanceof lr?[void 0]:t instanceof dr?[null]:t instanceof qe?[void 0,...Tt(t.unwrap())]:t instanceof _t?[null,...Tt(t.unwrap())]:t instanceof Bn||t instanceof xr?Tt(t.unwrap()):t instanceof vr?Tt(t._def.innerType):[],$s=class t extends L{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==z.object)return k(r,{code:$.invalid_type,expected:z.object,received:r.parsedType}),Z;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(k(r,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Z)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Tt(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:w.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...D(n)})}};function Jc(t,e){let r=gt(t),n=gt(e);if(t===e)return{valid:!0,data:t};if(r===z.object&&n===z.object){let o=H.objectKeys(e),s=H.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Jc(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===z.array&&n===z.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=Jc(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===z.date&&n===z.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var fr=class extends L{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(xs(s)||xs(i))return Z;let a=Jc(s.value,i.value);return a.valid?((bs(s)||bs(i))&&r.dirty(),{status:r.value,value:a.data}):(k(n,{code:$.invalid_intersection_types}),Z)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};fr.create=(t,e,r)=>new fr({left:t,right:e,typeName:w.ZodIntersection,...D(r)});var yt=class t extends L{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.array)return k(n,{code:$.invalid_type,expected:z.array,received:n.parsedType}),Z;if(n.data.length<this._def.items.length)return k(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z;!this._def.rest&&n.data.length>this._def.items.length&&(k(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Qe(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>$e.mergeArray(r,i)):$e.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};yt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new yt({items:t,typeName:w.ZodTuple,rest:null,...D(e)})};var ws=class t extends L{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!==z.object)return k(n,{code:$.invalid_type,expected:z.object,received:n.parsedType}),Z;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Qe(n,a,n.path,a)),value:i._parse(new Qe(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?$e.mergeObjectAsync(r,o):$e.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof L?new t({keyType:e,valueType:r,typeName:w.ZodRecord,...D(n)}):new t({keyType:Mt.create(),valueType:e,typeName:w.ZodRecord,...D(r)})}},Xr=class extends L{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!==z.map)return k(n,{code:$.invalid_type,expected:z.map,received:n.parsedType}),Z;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Qe(n,a,n.path,[u,"key"])),value:s._parse(new Qe(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Xr.create=(t,e,r)=>new Xr({valueType:e,keyType:t,typeName:w.ZodMap,...D(r)});var Wr=class t extends L{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.set)return k(n,{code:$.invalid_type,expected:z.set,received:n.parsedType}),Z;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(k(n,{code:$.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(k(n,{code:$.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Z;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Qe(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:E.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Wr.create=(t,e)=>new Wr({valueType:t,minSize:null,maxSize:null,typeName:w.ZodSet,...D(e)});var ks=class t extends L{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==z.function)return k(r,{code:$.invalid_type,expected:z.function,received:r.parsedType}),Z;function n(a,c){return Kn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Hr(),zt].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return Kn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Hr(),zt].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof qt){let a=this;return Se(async function(...c){let u=new De([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return Se(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new De([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new De([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:yt.create(e).rest(Pt.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||yt.create([]).rest(Pt.create()),returns:r||Pt.create(),typeName:w.ZodFunction,...D(n)})}},mr=class extends L{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})}};mr.create=(t,e)=>new mr({getter:t,typeName:w.ZodLazy,...D(e)});var hr=class extends L{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return k(r,{received:r.data,code:$.invalid_literal,expected:this._def.value}),Z}return{status:"valid",value:e.data}}get value(){return this._def.value}};hr.create=(t,e)=>new hr({value:t,typeName:w.ZodLiteral,...D(e)});function Cf(t,e){return new gr({values:t,typeName:w.ZodEnum,...D(e)})}var gr=class t extends L{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return k(r,{expected:H.joinValues(n),received:r.parsedType,code:$.invalid_type}),Z}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 k(r,{received:r.data,code:$.invalid_enum_value,options:n}),Z}return Se(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})}};gr.create=Cf;var yr=class extends L{_parse(e){let r=H.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==z.string&&n.parsedType!==z.number){let o=H.objectValues(r);return k(n,{expected:H.joinValues(o),received:n.parsedType,code:$.invalid_type}),Z}if(this._cache||(this._cache=new Set(H.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=H.objectValues(r);return k(n,{received:n.data,code:$.invalid_enum_value,options:o}),Z}return Se(e.data)}get enum(){return this._def.values}};yr.create=(t,e)=>new yr({values:t,typeName:w.ZodNativeEnum,...D(e)});var qt=class extends L{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==z.promise&&r.common.async===!1)return k(r,{code:$.invalid_type,expected:z.promise,received:r.parsedType}),Z;let n=r.parsedType===z.promise?r.data:Promise.resolve(r.data);return Se(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};qt.create=(t,e)=>new qt({type:t,typeName:w.ZodPromise,...D(e)});var et=class extends L{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===w.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{k(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return Z;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Z:c.status==="dirty"?sr(c.value):r.value==="dirty"?sr(c.value):c});{if(r.value==="aborted")return Z;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?Z:a.status==="dirty"?sr(a.value):r.value==="dirty"?sr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!At(i))return Z;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>At(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):Z);H.assertNever(o)}};et.create=(t,e,r)=>new et({schema:t,typeName:w.ZodEffects,effect:e,...D(r)});et.createWithPreprocess=(t,e,r)=>new et({schema:e,effect:{type:"preprocess",transform:t},typeName:w.ZodEffects,...D(r)});var qe=class extends L{_parse(e){return this._getType(e)===z.undefined?Se(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};qe.create=(t,e)=>new qe({innerType:t,typeName:w.ZodOptional,...D(e)});var _t=class extends L{_parse(e){return this._getType(e)===z.null?Se(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};_t.create=(t,e)=>new _t({innerType:t,typeName:w.ZodNullable,...D(e)});var _r=class extends L{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===z.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};_r.create=(t,e)=>new _r({innerType:t,typeName:w.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...D(e)});var vr=class extends L{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Kr(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new De(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new De(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};vr.create=(t,e)=>new vr({innerType:t,typeName:w.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...D(e)});var Yr=class extends L{_parse(e){if(this._getType(e)!==z.nan){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:z.nan,received:n.parsedType}),Z}return{status:"valid",value:e.data}}};Yr.create=t=>new Yr({typeName:w.ZodNaN,...D(t)});var b$=Symbol("zod_brand"),Bn=class extends L{_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}},Jn=class t extends L{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Z:s.status==="dirty"?(r.dirty(),sr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Z:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:w.ZodPipeline})}},xr=class extends L{_parse(e){let r=this._def.innerType._parse(e),n=o=>(At(o)&&(o.value=Object.freeze(o.value)),o);return Kr(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};xr.create=(t,e)=>new xr({innerType:t,typeName:w.ZodReadonly,...D(e)});function If(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Zf(t,e={},r){return t?Dt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=If(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=If(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Dt.create()}var $$={object:Le.lazycreate},w;(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"})(w||(w={}));var w$=(t,e={message:`Input not instance of ${t.name}`})=>Zf(r=>r instanceof t,e),Af=Mt.create,Mf=ir.create,k$=Yr.create,S$=ar.create,Df=cr.create,z$=ur.create,T$=Jr.create,P$=lr.create,E$=dr.create,R$=Dt.create,I$=Pt.create,j$=it.create,O$=Gr.create,N$=Et.create,Gc=Le.create,C$=Le.strictCreate,Z$=pr.create,A$=$s.create,M$=fr.create,D$=yt.create,q$=ws.create,L$=Xr.create,U$=Wr.create,F$=ks.create,V$=mr.create,H$=hr.create,K$=gr.create,B$=yr.create,J$=qt.create,G$=et.create,X$=qe.create,W$=_t.create,Y$=et.createWithPreprocess,Q$=Jn.create,e0=()=>Af().optional(),t0=()=>Mf().optional(),r0=()=>Df().optional(),n0={string:t=>Mt.create({...t,coerce:!0}),number:t=>ir.create({...t,coerce:!0}),boolean:t=>cr.create({...t,coerce:!0}),bigint:t=>ar.create({...t,coerce:!0}),date:t=>ur.create({...t,coerce:!0})};var o0=Z;var i0=_("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ee.init(t,e),t.def=e,t.parse=(r,n)=>Mi(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>tr(t,r,n),t.parseAsync=async(r,n)=>qi(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>rr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>Je(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var a0=_("ZodMiniObject",(t,e)=>{qo.init(t,e),i0.init(t,e),K.defineLazy(t,"shape",()=>e.shape)});function Xc(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new a0(r)}function vt(t){return!!t._zod}function br(t){let e=Object.values(t);if(e.length===0)return Xc({});let r=e.every(vt),n=e.every(o=>!vt(o));if(r)return Xc(t);if(n)return Gc(t);throw new Error("Mixed Zod versions detected in object shape.")}function Lt(t,e){return vt(t)?tr(t,e):t.safeParse(e)}async function Ss(t,e){return vt(t)?await rr(t,e):await t.safeParseAsync(e)}function Ut(t){if(!t)return;let e;if(vt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Qr(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return br(t)}}if(vt(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function u0(t){return t.length===0?"object root":t.reduce((e,r,n)=>n===0?String(r):typeof r=="number"?`${e}[${r}]`:`${e}.${r}`,"")}function zs(t){if(t&&typeof t=="object"){if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0)return t.issues.map(e=>e.path?.length?`${e.message} at ${u0(e.path)}`:e.message).join(`
39
+ `);if("message"in t&&typeof t.message=="string")return t.message;try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function qf(t){return t.description}function Lf(t){if(vt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function en(t){if(vt(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}function Ft(t){return t==="completed"||t==="failed"||t==="cancelled"}var Ff=Symbol("Let zodToJsonSchema decide on which parser to use");var Uf={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Vf=t=>typeof t=="string"?{...Uf,name:t}:{...Uf,...t};var Hf=t=>{let e=Vf(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function Wc(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function J(t,e,r,n,o){t[e]=r,Wc(t,e,n,o)}var Ts=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function pe(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Ts(e,t.currentPath):e.join("/")}}function Kf(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==w.ZodAny&&(r.items=A(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&J(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&J(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(J(r,"minItems",t.exactLength.value,t.exactLength.message,e),J(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Bf(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?J(r,"minimum",n.value,n.message,e):J(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),J(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?J(r,"maximum",n.value,n.message,e):J(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),J(r,"maximum",n.value,n.message,e));break;case"multipleOf":J(r,"multipleOf",n.value,n.message,e);break}return r}function Jf(){return{type:"boolean"}}function Ps(t,e){return A(t.type._def,e)}var Gf=(t,e)=>A(t.innerType._def,e);function Yc(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Yc(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return l0(t,e)}}var l0=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":J(r,"minimum",n.value,n.message,e);break;case"max":J(r,"maximum",n.value,n.message,e);break}return r};function Xf(t,e){return{...A(t.innerType._def,e),default:t.defaultValue()}}function Wf(t,e){return e.effectStrategy==="input"?A(t.schema._def,e):pe(e)}function Yf(t){return{type:"string",enum:Array.from(t.values)}}var d0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Qf(t,e){let r=[A(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),A(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(d0(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function em(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var Qc,at={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(Qc===void 0&&(Qc=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Qc),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Es(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":J(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":J(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":ct(r,"email",n.message,e);break;case"format:idn-email":ct(r,"idn-email",n.message,e);break;case"pattern:zod":Ne(r,at.email,n.message,e);break}break;case"url":ct(r,"uri",n.message,e);break;case"uuid":ct(r,"uuid",n.message,e);break;case"regex":Ne(r,n.regex,n.message,e);break;case"cuid":Ne(r,at.cuid,n.message,e);break;case"cuid2":Ne(r,at.cuid2,n.message,e);break;case"startsWith":Ne(r,RegExp(`^${eu(n.value,e)}`),n.message,e);break;case"endsWith":Ne(r,RegExp(`${eu(n.value,e)}$`),n.message,e);break;case"datetime":ct(r,"date-time",n.message,e);break;case"date":ct(r,"date",n.message,e);break;case"time":ct(r,"time",n.message,e);break;case"duration":ct(r,"duration",n.message,e);break;case"length":J(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),J(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ne(r,RegExp(eu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&ct(r,"ipv4",n.message,e),n.version!=="v4"&&ct(r,"ipv6",n.message,e);break}case"base64url":Ne(r,at.base64url,n.message,e);break;case"jwt":Ne(r,at.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ne(r,at.ipv4Cidr,n.message,e),n.version!=="v4"&&Ne(r,at.ipv6Cidr,n.message,e);break}case"emoji":Ne(r,at.emoji(),n.message,e);break;case"ulid":{Ne(r,at.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{ct(r,"binary",n.message,e);break}case"contentEncoding:base64":{J(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ne(r,at.base64,n.message,e);break}}break}case"nanoid":Ne(r,at.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function eu(t,e){return e.patternStrategy==="escape"?f0(t):t}var p0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function f0(t){let e="";for(let r=0;r<t.length;r++)p0.has(t[r])||(e+="\\"),e+=t[r];return e}function ct(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):J(t,"format",e,r,n)}function Ne(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:tm(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):J(t,"pattern",tm(e,n),r,n)}function tm(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
40
+ ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
41
+ ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
42
+ `:`[${n[c]}\r
43
+ ]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function Rs(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===w.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:A(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??pe(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:A(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===w.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Es(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===w.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===w.ZodBranded&&t.keyType._def.type._def.typeName===w.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ps(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function rm(t,e){if(e.mapStrategy==="record")return Rs(t,e);let r=A(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||pe(e),n=A(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||pe(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function nm(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function om(t){return t.target==="openAi"?void 0:{not:pe({...t,currentPath:[...t.currentPath,"not"]})}}function sm(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Gn={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function am(t,e){if(e.target==="openApi3")return im(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Gn&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Gn[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return im(t,e)}var im=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>A(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function cm(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:Gn[t.innerType._def.typeName],nullable:!0}:{type:[Gn[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=A(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=A(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function um(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Wc(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?J(r,"minimum",n.value,n.message,e):J(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),J(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?J(r,"maximum",n.value,n.message,e):J(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),J(r,"maximum",n.value,n.message,e));break;case"multipleOf":J(r,"multipleOf",n.value,n.message,e);break}return r}function lm(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=h0(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=A(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=m0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function m0(t,e){if(t.catchall._def.typeName!=="ZodNever")return A(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function h0(t){try{return t.isOptional()}catch{return!0}}var dm=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return A(t.innerType._def,e);let r=A(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:pe(e)},r]}:pe(e)};var pm=(t,e)=>{if(e.pipeStrategy==="input")return A(t.in._def,e);if(e.pipeStrategy==="output")return A(t.out._def,e);let r=A(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=A(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function fm(t,e){return A(t.type._def,e)}function mm(t,e){let n={type:"array",uniqueItems:!0,items:A(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&J(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&J(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function hm(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>A(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:A(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>A(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function gm(t){return{not:pe(t)}}function ym(t){return pe(t)}var _m=(t,e)=>A(t.innerType._def,e);var vm=(t,e,r)=>{switch(e){case w.ZodString:return Es(t,r);case w.ZodNumber:return um(t,r);case w.ZodObject:return lm(t,r);case w.ZodBigInt:return Bf(t,r);case w.ZodBoolean:return Jf();case w.ZodDate:return Yc(t,r);case w.ZodUndefined:return gm(r);case w.ZodNull:return sm(r);case w.ZodArray:return Kf(t,r);case w.ZodUnion:case w.ZodDiscriminatedUnion:return am(t,r);case w.ZodIntersection:return Qf(t,r);case w.ZodTuple:return hm(t,r);case w.ZodRecord:return Rs(t,r);case w.ZodLiteral:return em(t,r);case w.ZodEnum:return Yf(t);case w.ZodNativeEnum:return nm(t);case w.ZodNullable:return cm(t,r);case w.ZodOptional:return dm(t,r);case w.ZodMap:return rm(t,r);case w.ZodSet:return mm(t,r);case w.ZodLazy:return()=>t.getter()._def;case w.ZodPromise:return fm(t,r);case w.ZodNaN:case w.ZodNever:return om(r);case w.ZodEffects:return Wf(t,r);case w.ZodAny:return pe(r);case w.ZodUnknown:return ym(r);case w.ZodDefault:return Xf(t,r);case w.ZodBranded:return Ps(t,r);case w.ZodReadonly:return _m(t,r);case w.ZodCatch:return Gf(t,r);case w.ZodPipeline:return pm(t,r);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(n=>{})(e)}};function A(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Ff)return a}if(n&&!r){let a=g0(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=vm(t,t.typeName,e),i=typeof s=="function"?A(s(),e):s;if(i&&y0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var g0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ts(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),pe(e)):e.$refStrategy==="seen"?pe(e):void 0}},y0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var tu=(t,e)=>{let r=Hf(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:A(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??pe(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=A(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??pe(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function _0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function ru(t,e){return vt(t)?xc(t,{target:_0(e?.target),io:e?.pipeStrategy??"input"}):tu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function nu(t){let r=Ut(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=en(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function ou(t,e){let r=Lt(t,e);if(!r.success)throw r.error;return r.data}var v0=6e4,Is=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ts,r=>{this._oncancel(r)}),this.setNotificationHandler(ns,r=>{this._onprogress(r)}),this.setRequestHandler(rs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(os,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new R(O.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(is,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,h=new R(d.error.code,d.error.message,d.error.data);l(h)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new R(O.InvalidParams,`Task not found: ${s}`);if(!Ft(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Ft(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Zt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(as,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new R(O.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(us,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new R(O.InvalidParams,`Task not found: ${r.params.taskId}`);if(Ft(o.status))throw new R(O.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new R(O.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof R?o:new R(O.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),R.fromError(O.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),An(s)||gf(s)?this._onresponse(s):jc(s)?this._onrequest(s,i):hf(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=R.fromError(O.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Zt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:O.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=pf(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,h)=>{if(i.signal.aborted)throw new R(O.ConnectionClosed,"Request was cancelled");let f={...h,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:O.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),An(e))n(e);else{let i=new R(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(An(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),An(e))o(e);else{let i=R.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof R?i:new R(O.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Lr,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new R(O.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Ft(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new R(O.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new R(O.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof R?i:new R(O.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let h=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:h};n?.onprogress&&(this._progressHandlers.set(h,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:h}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Zt]:c}});let p=v=>{this._responseHandlers.delete(h),this._progressHandlers.delete(h),this._cleanupTimeout(h),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:h,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(P=>this._onerror(new Error(`Failed to send cancellation: ${P}`)));let b=v instanceof R?v:new R(O.RequestTimeout,String(v));l(b)};this._responseHandlers.set(h,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let b=Lt(r,v.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let m=n?.timeout??v0,g=()=>p(R.fromError(O.RequestTimeout,"Request timed out",{timeout:m}));this._setupTimeout(h,m,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let x=c?.taskId;if(x){let v=b=>{let P=this._responseHandlers.get(h);P?P(b):this._onerror(new Error(`Response handler missing for side-channeled request ${h}`))};this._requestResolvers.set(h,v),this._enqueueTaskMessage(x,{type:"request",message:f,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(h),l(b)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(h),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ss,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},cs,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},vf,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Zt]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Zt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Zt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=nu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=ou(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=nu(e);this._notificationHandlers.set(n,o=>{let s=ou(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&jc(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new R(O.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new R(O.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new R(O.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new R(O.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Un.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Ft(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new R(O.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Ft(a.status))throw new R(O.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Un.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Ft(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function xm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function bm(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];xm(i)&&xm(s)?r[o]={...i,...s}:r[o]=s}return r}var by=wd(Gl(),1),$y=wd(xy(),1);function RP(){let t=new by.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,$y.default)(t),t}var mi=class{constructor(e){this._ajv=e??RP()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var hi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(h=>h.type==="tool_use").map(h=>h.id)),d=new Set(s.filter(h=>h.type==="tool_result").map(h=>h.toolUseId));if(l.size!==d.size||![...l].every(h=>d.has(h)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Hn,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Vr,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function wy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function ky(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var gi=class extends Is{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Vn.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new mi,this.setRequestHandler(Cc,n=>this._oninitialize(n)),this.setNotificationHandler(Zc,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Fc,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Vn.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new hi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=bm(this._capabilities,e)}setRequestHandler(e,r){let o=Ut(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s=en(o);if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Lt(Fr,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new R(O.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,h=await Promise.resolve(r(c,u));if(d.task){let p=Lt(Lr,h);if(!p.success){let m=p.error instanceof Error?p.error.message:String(p.error);throw new R(O.InvalidParams,`Invalid task creation result: ${m}`)}return p.data}let f=Lt(gs,h);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new R(O.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){ky(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&wy(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:uf.includes(r)?r:Rc,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},es)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Vc,r):this.request({method:"sampling/createMessage",params:e},Hn,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},Vr,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},Vr,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new R(O.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof R?i:new R(O.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Hc,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var zy=Symbol.for("mcp.completable");function nd(t){return!!t&&typeof t=="object"&&zy in t}function Ty(t){return t[zy]?.complete}var Sy;(function(t){t.Completable="McpCompletable"})(Sy||(Sy={}));var IP=/^[A-Za-z0-9._-]{1,128}$/;function jP(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!IP.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function OP(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function od(t){let e=jP(t);return OP(t,e.warnings),e.isValid}var yi=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var _i=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new gi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new yi(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Yt(hs)),this.server.assertCanSetRequestHandler(Yt(Fr)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(hs,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=Qr(r.inputSchema);return o?ru(o,{strictUnions:!0,pipeStrategy:"input"}):NP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Qr(r.outputSchema);o&&(n.outputSchema=ru(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Fr,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new R(O.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new R(O.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new R(O.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new R(O.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof R&&n.code===O.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Qr(e.inputSchema)??e.inputSchema,i=await Ss(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=zs(a);throw new R(O.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new R(O.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Qr(e.outputSchema),s=await Ss(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=zs(i);throw new R(O.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(h=>setTimeout(h,l));let d=await n.taskStore.getTask(c);if(!d)throw new R(O.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Yt(ys)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ys,async e=>{switch(e.params.ref.type){case"ref/prompt":return Sf(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return zf(e),this.handleResourceCompletion(e,e.params.ref);default:throw new R(O.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new R(O.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new R(O.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return To;let s=Ut(n.argsSchema)?.[e.params.argument.name];if(!nd(s))return To;let i=Ty(s);if(!i)return To;let a=await i(e.params.argument.value,e.params.context);return Ey(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return To;throw new R(O.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return To;let s=await o(e.params.argument.value,e.params.context);return Ey(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Yt(ls)),this.server.assertCanSetRequestHandler(Yt(ds)),this.server.assertCanSetRequestHandler(Yt(ps)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(ls,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(ds,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ps,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new R(O.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new R(O.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Yt(fs)),this.server.assertCanSetRequestHandler(Yt(ms)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(fs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?CP(r.argsSchema):void 0}))})),this.server.setRequestHandler(ms,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new R(O.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new R(O.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Qr(n.argsSchema),s=await Ss(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=zs(c);throw new R(O.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:br(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=br(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof qe?c._def?.innerType:c;return nd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){od(e);let l={title:r,description:n,inputSchema:Py(o),outputSchema:Py(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&od(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=br(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=br(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(sd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!sd(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var NP={type:"object",properties:{}};function Ry(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Iy(t){return"_def"in t||"_zod"in t||Ry(t)}function sd(t){return typeof t!="object"||t===null||Iy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Ry)}function Py(t){if(t){if(sd(t))return br(t);if(!Iy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function CP(t){let e=Ut(t);return e?Object.entries(e).map(([r,n])=>{let o=qf(n),s=Lf(n);return{name:r,description:o,required:!s}}):[]}function Yt(t){let r=Ut(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=en(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Ey(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var To={completion:{values:[],hasMore:!1}};var jy="https://engine.xeniamartech.com/xenia",Re=class extends Error{status;body;constructor(e,r,n){super(e),this.status=r,this.body=n,this.name="XeniaApiError"}};import{chmod as ZP,mkdir as AP,readFile as MP,rm as DP,writeFile as qP}from"node:fs/promises";import{homedir as LP}from"node:os";import{dirname as UP,join as FP}from"node:path";var Oy=384,VP=448;function id(){return process.env.XENIA_CREDENTIALS_PATH??FP(LP(),".xenia","credentials.json")}function mt(t){return(t??jy).trim().replace(/\/+$/,"")}async function vi(){try{let t=await MP(id(),"utf8"),e=JSON.parse(t);return e?.version!==1||typeof e.credentials!="object"?{version:1,credentials:{}}:e}catch(t){return t.code,{version:1,credentials:{}}}}async function ad(t){let e=id();await AP(UP(e),{recursive:!0,mode:VP}),await qP(e,`${JSON.stringify(t,null,2)}
44
+ `,{mode:Oy}),await ZP(e,Oy)}async function Ny(t){let e=mt(t);return(await vi()).credentials[e]??null}async function Cy(t,e){let r=mt(e),n={baseUrl:r,accessToken:t.accessToken,refreshToken:t.refreshToken,expiresAtEpochMs:t.expiresAtEpochMs,userId:t.userId,email:t.email,fullName:t.fullName,activeScope:{orgKey:t.orgKey,tenantKey:t.tenantKey,environmentKey:t.environmentKey},allScopes:t.allScopes??[]},o=await vi();return o.credentials[r]=n,await ad(o),n}async function xi(t){let e=await vi();e.credentials[mt(t.baseUrl)]=t,await ad(e)}async function Zy(t){let e=mt(t),r=await vi();if(delete r.credentials[e],Object.keys(r.credentials).length===0){await DP(id(),{force:!0});return}await ad(r)}var HP=6e4,Po=class{baseUrl;constructor(e){this.baseUrl=mt(e)}async credential(){return Ny(this.baseUrl)}async requireCredential(){let e=await this.credential();if(!e)throw new Re("Not connected to Xenia. Run the `xenia_login` tool to connect this account.",401);return e}async request(e,r={}){let n={Accept:"application/json"};if(!r.anonymous){let i=await this.ensureFreshCredential();n.Authorization=`Bearer ${i.accessToken}`;let a=r.scope??i.activeScope;n["X-Org-Key"]=a.orgKey,n["X-Tenant-Id"]=a.tenantKey,n["X-Environment"]=a.environmentKey}r.body!==void 0&&(n["Content-Type"]="application/json");let o=await fetch(`${this.baseUrl}${e}`,{method:r.method??"GET",headers:n,...r.body!==void 0?{body:JSON.stringify(r.body)}:{}});if(!o.ok)throw new Re(await BP(o),o.status,await KP(o.clone()));if(o.status===204)return;let s=await o.text();return s?JSON.parse(s):void 0}async ensureFreshCredential(){let e=await this.requireCredential();return e.expiresAtEpochMs-Date.now()>HP?e:this.refresh(e)}async refresh(e){let r=await fetch(`${this.baseUrl}/api/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","X-Org-Key":e.activeScope.orgKey,"X-Tenant-Id":e.activeScope.tenantKey,"X-Environment":e.activeScope.environmentKey},body:JSON.stringify({refreshToken:e.refreshToken})});if(!r.ok)throw new Re("Your Xenia session has expired. Run the `xenia_login` tool to reconnect.",r.status);let n=await r.json(),o={...e,accessToken:n.accessToken,refreshToken:n.refreshToken,expiresAtEpochMs:n.expiresAtEpochMs,...n.allScopes?.length?{allScopes:n.allScopes}:{}};return await xi(o),o}};async function KP(t){try{return await t.json()}catch{return}}async function BP(t){try{let e=await t.clone().json(),r=e.message?.trim()||e.error?.trim();if(r)return r}catch{}return`Xenia API request failed (${t.status} ${t.statusText})`}import{hostname as JP}from"node:os";async function Ay(t){let e=mt(t.baseUrl),r=await fetch(`${e}/api/auth/device/authorize`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientName:t.clientName,clientVersion:t.clientVersion??null,hostname:t.hostname??GP()})});if(!r.ok)throw new Re(`Could not start a Xenia connection (${r.status}). Check the engine URL: ${e}`,r.status);return await r.json()}async function My(t){let e=mt(t.baseUrl),r=t.sleep??XP,n=Date.now()+(t.timeoutMs??6e5),o=Math.max(t.intervalSeconds,1)*1e3,s=0;for(;Date.now()<n;){await r(o),s+=1,t.onPoll?.(s);let i=await fetch(`${e}/api/auth/device/token`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({deviceCode:t.deviceCode})});if(i.ok){let c=await i.json();return Cy(c,e)}let a=await WP(i);switch(a?.error){case"authorization_pending":continue;case"slow_down":o+=5e3;continue;case"access_denied":throw new Re("The connection request was declined in the Xenia dashboard.",403);case"expired_token":throw new Re("The connection code expired before it was approved. Run `xenia_login` again.",410);default:throw new Re(a?.errorDescription??`Unexpected response while waiting for approval (${i.status}).`,i.status)}}throw new Re("Timed out waiting for approval. Run `xenia_login` again when you are ready to approve.",408)}function GP(){try{return JP()||null}catch{return null}}function XP(t){return new Promise(e=>setTimeout(e,t))}async function WP(t){try{return await t.json()}catch{return}}import{chmod as YP,mkdir as QP,readFile as eE,rm as tE,writeFile as rE}from"node:fs/promises";import{homedir as nE}from"node:os";import{dirname as oE,join as sE}from"node:path";var Dy=384,iE=448;function cd(){return process.env.XENIA_PENDING_LOGIN_PATH??sE(nE(),".xenia","pending-login.json")}async function qy(t){let e=cd();await QP(oE(e),{recursive:!0,mode:iE}),await rE(e,`${JSON.stringify(t,null,2)}
45
+ `,{mode:Dy}),await YP(e,Dy)}async function Ly(t){let e=mt(t),r;try{r=JSON.parse(await eE(cd(),"utf8"))}catch{return null}return r.baseUrl!==e?null:Date.now()>=r.expiresAtMs?(await ud(),null):r}async function ud(){await tE(cd(),{force:!0})}var aE=/^(prod|production|live)$/i;function Uy(t){return aE.test(t.environmentKey.trim())}function ld(t){return`${t.orgKey}/${t.tenantKey}/${t.environmentKey}`}function dd(t){let e=t.orgDisplayName??t.orgKey,r=Uy(t)?" [PRODUCTION]":"";return`${ld(t)} \u2014 ${e} / ${t.tenantDisplayName} / ${t.envDisplayName}${r} (${t.roles.join(", ")})`}function Fy(t,e){let r=e.trim().toLowerCase();if(!r)return{error:"Provide a scope, e.g. `acme/storefront/production`."};let n=t.allScopes,o=n.filter(i=>{let a=ld(i).toLowerCase(),c=`${i.tenantKey}/${i.environmentKey}`.toLowerCase();return a===r||c===r||i.environmentKey.toLowerCase()===r}),s=o[0];return s?o.length>1?{error:`"${e}" matches more than one scope \u2014 use the full org/tenant/environment form:
46
+ `+o.map(i=>` ${ld(i)}`).join(`
47
+ `)}:{scope:s}:{error:`No scope matches "${e}". Available:
48
+ `+n.map(i=>` ${dd(i)}`).join(`
49
+ `)}}async function Vy(t,e){let r={...t,activeScope:{orgKey:e.orgKey,tenantKey:e.tenantKey,environmentKey:e.environmentKey}};return await xi(r),r}function pd(t,e,r){return Uy({environmentKey:t})?e?.trim().toLowerCase()===t.trim().toLowerCase()?{ok:!0}:{ok:!1,message:`This would ${r} against the PRODUCTION environment "${t}".
50
+
51
+ Ask the user to confirm, then call this tool again with confirm: "${t}".`}:{ok:!0}}async function Eo(t){return(await t.request("/api/journeys")??[]).map(r=>({id:r.id,name:r.name,status:r.status}))}async function fd(t,e){return t.request(`/api/journeys/${encodeURIComponent(e)}/contract`)}async function Hy(t){let e=await Eo(t),r=await Promise.all(e.map(async o=>{try{return await fd(t,o.id)}catch{return null}})),n=new Map;return r.forEach((o,s)=>{let i=e[s];if(!(!o||!i))for(let a of o.contentKeys){let c=n.get(a)??[];c.push({id:i.id,name:i.name}),n.set(a,c)}}),[...n.entries()].map(([o,s])=>({contentKey:o,journeys:s}))}var cE="/api/contentcloud/personalization";async function Ky(t,e){if(e.tokenType==="browser"&&!e.allowedOrigins?.length)throw new Re("A browser token needs at least one allowed origin (e.g. https://example.com). Ask which origins the site is served from, then retry.",400);return t.request(`${cE}/sdk-token`,{method:"POST",body:{name:e.name,ttlMinutes:e.ttlMinutes??null,tokenType:e.tokenType,...e.tokenType==="browser"?{allowedOrigins:e.allowedOrigins}:{}}})}import{readFile as By}from"node:fs/promises";import{join as Jy}from"node:path";async function Ro(t){let e=[],r=await uE(Jy(t,"package.json")),n={...r?.dependencies,...r?.devDependencies},o=s=>Object.prototype.hasOwnProperty.call(n,s);return r&&e.push("package.json"),o("next")?(e.push("depends on next"),vn("nextjs","Next.js","@xenia-martech/sdk-js/server",".env.local","NEXT_PUBLIC_",e)):o("nuxt")||o("nuxt3")?(e.push("depends on nuxt"),vn("nuxt","Nuxt","@xenia-martech/sdk-js/server",".env","NUXT_PUBLIC_",e)):o("@remix-run/node")||o("@remix-run/server-runtime")?(e.push("depends on @remix-run"),vn("remix","Remix","@xenia-martech/sdk-js/server",".env",null,e)):await md(t,"artisan")?(e.push("artisan present"),vn("laravel","Laravel","xenia-martech/sdk-php",".env",null,e)):await md(t,"composer.json")?(e.push("composer.json present"),vn("php","PHP","xenia-martech/sdk-php",".env",null,e)):o("@angular/core")?(e.push("depends on @angular/core"),Nr("angular","Angular","@xenia-martech/sdk-js/client",".env","NG_APP_",e)):o("@sveltejs/kit")?(e.push("depends on @sveltejs/kit (assuming static output)"),Nr("svelte-spa","SvelteKit","@xenia-martech/sdk-js/client",".env","PUBLIC_",e)):o("svelte")?(e.push("depends on svelte"),Nr("svelte-spa","Svelte","@xenia-martech/sdk-js/client",".env","VITE_",e)):o("vue")?(e.push("depends on vue"),Nr("vue-spa","Vue","@xenia-martech/sdk-js/client",".env","VITE_",e)):o("react")?(e.push("depends on react (no server framework)"),Nr("react-spa","React (SPA)","@xenia-martech/sdk-js/client/react",".env","VITE_",e)):o("express")||o("fastify")||o("koa")||o("@nestjs/core")?(e.push("depends on a Node server framework"),vn("node","Node.js","@xenia-martech/sdk-js/server",".env",null,e)):!r&&await md(t,"index.html")?(e.push("index.html with no package.json"),Nr("static-html","Static HTML","@xenia-martech/sdk-js/iife",".env",null,e)):(e.push("no recognised framework"),Nr("unknown","Unknown","@xenia-martech/sdk-js/client",".env",null,e))}function vn(t,e,r,n,o,s){return{stack:t,displayName:e,hasServerRuntime:!0,tokenType:"server",sdkEntryPoint:r,envFile:n,publicEnvPrefix:o,evidence:s}}function Nr(t,e,r,n,o,s){return{stack:t,displayName:e,hasServerRuntime:!1,tokenType:"browser",sdkEntryPoint:r,envFile:n,publicEnvPrefix:o,evidence:s}}async function uE(t){try{return JSON.parse(await By(t,"utf8"))}catch{return null}}async function md(t,e){try{return await By(Jy(t,e)),!0}catch{return!1}}import{readFile as lE,writeFile as Gy}from"node:fs/promises";import{join as Xy}from"node:path";async function Wy(t,e,r){let n=Xy(t,e),o=await Yy(n),s=o===""?[]:o.split(`
52
+ `),i={path:n,added:[],updated:[],unchanged:[]};for(let c of r){let u=s.findIndex(d=>dE(d,c.key)),l=`${c.key}=${pE(c.value)}`;if(u===-1){c.comment&&s.push(`# ${c.comment}`),s.push(l),i.added.push(c.key);continue}if(s[u]===l){i.unchanged.push(c.key);continue}s[u]=l,i.updated.push(c.key)}if(i.added.length===0&&i.updated.length===0)return i;let a=`${s.join(`
53
+ `).replace(/\n+$/,"")}
54
+ `;return await Gy(n,a,{mode:384}),i}function dE(t,e){return t.trimStart().startsWith("#")?!1:new RegExp(`^\\s*(export\\s+)?${fE(e)}\\s*=`).test(t)}function pE(t){return/[\s"'#$]/.test(t)?`"${t.replace(/(["\\$`])/g,"\\$1")}"`:t}function fE(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}async function Yy(t){try{return await lE(t,"utf8")}catch{return""}}async function Qy(t,e){let r=Xy(t,".gitignore"),n=await Yy(r),o=n.split(`
55
+ `).map(i=>i.trim());if(o.includes(e)||o.includes(`/${e}`))return"already-present";let s=n===""?`${e}
56
+ `:`${n.replace(/\n+$/,"")}
57
+ ${e}
58
+ `;return await Gy(r,s),"added"}async function e_(t,e={}){let n=(await t.requireCredential()).activeScope,o=[];try{let s=await Eo(t),i=s.filter(a=>a.status==="active").length;o.push({name:"Read journeys",status:"ok",detail:`${s.length} journey(s), ${i} active.`})}catch(s){o.push({name:"Read journeys",status:"failed",detail:hd(s)})}return e.contentKey&&e.sdkToken?o.push(await mE(t,e.contentKey,e.sdkToken)):o.push({name:"Resolve content key",status:"skipped",detail:e.contentKey?"No SDK token supplied \u2014 pass the token the app uses to check resolve.":"No content key supplied."}),e.sendTestEvent?o.push(await hE(t,n)):o.push({name:"Send test event",status:"skipped",detail:"Not requested \u2014 set sendTestEvent to write a test event into this environment."}),{scope:`${n.orgKey}/${n.tenantKey}/${n.environmentKey}`,steps:o,ok:o.every(s=>s.status!=="failed")}}async function mE(t,e,r){try{let n=await fetch(`${t.baseUrl}/api/personalization/resolve`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${r}`},body:JSON.stringify({contentKey:e})});if(!n.ok)return{name:"Resolve content key",status:"failed",detail:`resolve("${e}") returned ${n.status}. Check the token is for this tenant/environment and has not been revoked.`};let o=await n.json();return{name:"Resolve content key",status:"ok",detail:`resolve("${e}") succeeded (personalized: ${o.personalized??!1}).`}}catch(n){return{name:"Resolve content key",status:"failed",detail:hd(n)}}}async function hE(t,e){try{return await fetch(`${t.baseUrl}/api/events/v1`,{method:"POST",headers:{"Content-Type":"application/json","X-Tenant-Id":e.tenantKey,"X-Environment":e.environmentKey},body:JSON.stringify({eventName:"customEvent",properties:{source:"xenia-devtools-verify"}})}),{name:"Send test event",status:"ok",detail:"Test event accepted. Check Live executions in the dashboard to see it arrive."}}catch(r){return{name:"Send test event",status:"failed",detail:hd(r)}}}function hd(t){return t instanceof Re?`${t.message} (HTTP ${t.status})`:t instanceof Error?t.message:String(t)}function t_(t,e){return t.triggers.filter(r=>r.triggerId).map(r=>({trigger:r,language:gE(e),code:vE(r,e)}))}function gE(t){switch(t.stack){case"laravel":case"php":return"php";case"static-html":return"html";case"nextjs":case"react-spa":return"tsx";default:return"ts"}}function yE(t){let e=t.method==="GET"?t.queryParams:t.bodyData;return e.length===0?"{}":`{
59
+ ${e.map(n=>` ${n.key}: ${_E(n.type)}`).join(`,
60
+ `)}
61
+ }`}function _E(t){switch(t.toLowerCase()){case"number":case"integer":return"0";case"boolean":return"false";case"object":return"{}";case"array":return"[]";default:return'""'}}function vE(t,e){let r=t.triggerId??"",n=yE(t),o=t.label??t.nodeId;switch(e.stack){case"nextjs":case"react-spa":return['import { useWebhook } from "@xenia-martech/sdk-js/client/react";',"",`// ${o}`,"function TriggerButton() {",` const { send } = useWebhook("${r}");`," // Any xeniaActions in the response are applied to the page automatically.",` return <button onClick={() => send(${gd(n,2)})}>Go</button>;`,"}"].join(`
62
+ `);case"laravel":case"php":return["<?php",`// ${o}`,"$xenia = new XeniaMartech\\XeniaServer($config);",`$response = $xenia->request("${r}", ${xE(t)});`].join(`
63
+ `);case"static-html":return['<script src="https://cdn.jsdelivr.net/npm/@xenia-martech/sdk-js@1/dist/xenia-sdk.iife.js"></script>',"<script>",` // ${o}`,` Xenia.request("${r}", ${gd(n,2)});`,"</script>"].join(`
64
+ `);default:return[`import { createXeniaClient } from "${e.sdkEntryPoint}";`,"",`// ${o}`,"const xenia = createXeniaClient({ tenantId, environmentKey });","await xenia.init();",`const { body, actions } = await xenia.request("${r}", ${gd(n,0)});`].join(`
65
+ `)}}function xE(t){let e=t.method==="GET"?t.queryParams:t.bodyData;return e.length===0?"[]":`[
66
+ ${e.map(r=>` "${r.key}" => ""`).join(`,
67
+ `)}
68
+ ]`}function gd(t,e){if(!t.includes(`
69
+ `)||e===0)return t;let r=" ".repeat(e);return t.split(`
70
+ `).map((n,o)=>o===0?n:`${r}${n}`).join(`
71
+ `)}function yd(){let t=process.env.XENIA_BASE_URL?.trim()||void 0;return{client:new Po(t),baseUrl:new Po(t).baseUrl,projectRoot:process.env.XENIA_PROJECT_ROOT?.trim()||process.cwd(),clientName:process.env.XENIA_CLIENT_NAME?.trim()||"AI coding assistant",clientVersion:process.env.XENIA_CLIENT_VERSION?.trim()||""}}function he(t){return{content:[{type:"text",text:t}]}}function Cr(t){return{content:[{type:"text",text:t}],isError:!0}}function Ae(t){return async(...e)=>{try{return await t(...e)}catch(r){return Cr(r instanceof Error?r.message:String(r))}}}function r_(t,e){t.registerTool("xenia_login",{title:"Connect to Xenia",description:"Start connecting this coding assistant to the user's Xenia account. Returns a short code and a URL immediately \u2014 show BOTH to the user verbatim and tell them to open the URL and approve. Then call xenia_login_wait to finish (it blocks until they approve). No password or token is ever exchanged through this conversation.",inputSchema:{},annotations:{readOnlyHint:!1,openWorldHint:!0}},Ae(async()=>{let r=await e.client.credential();if(r)return he(`Already connected as ${r.email} (${r.activeScope.orgKey}/${r.activeScope.tenantKey}/${r.activeScope.environmentKey}).
72
+ Use xenia_logout first if you want to connect a different account.`);let n=await Ay({baseUrl:e.baseUrl,clientName:e.clientName,...e.clientVersion?{clientVersion:e.clientVersion}:{}});return await qy({baseUrl:e.baseUrl,deviceCode:n.deviceCode,userCode:n.userCode,intervalSeconds:n.interval,expiresAtMs:Date.now()+n.expiresIn*1e3}),he(["To connect, open this URL and approve the request:","",` ${n.verificationUri}`,` Code: ${n.userCode}`,"",`The link ${n.verificationUriComplete} has the code prefilled.`,"Once you have approved it in the browser, I'll finish connecting."].join(`
73
+ `))})),t.registerTool("xenia_login_wait",{title:"Finish connecting to Xenia",description:"Complete the connection started by xenia_login. Blocks until the user approves the request in the browser, then stores the session. Call this right after showing the user the code.",inputSchema:{},annotations:{readOnlyHint:!1,openWorldHint:!0}},Ae(async()=>{let r=await Ly(e.baseUrl);if(!r)return Cr("No login in progress (or it expired). Run xenia_login first to get a code to approve.");try{let n=await My({baseUrl:e.baseUrl,deviceCode:r.deviceCode,intervalSeconds:r.intervalSeconds,timeoutMs:Math.max(r.expiresAtMs-Date.now(),0)}),o=n.activeScope;return he([`Connected as ${n.fullName} <${n.email}>.`,`Active scope: ${o.orgKey}/${o.tenantKey}/${o.environmentKey}`,"",n.allScopes.length>1?`${n.allScopes.length} scopes available \u2014 use xenia_list_scopes to see them, xenia_select_scope to switch.`:"Next: xenia_list_journeys to see what this workspace has."].join(`
74
+ `))}finally{await ud()}})),t.registerTool("xenia_status",{title:"Xenia connection status",description:"Report whether this assistant is connected to Xenia, as whom, and which org/tenant/environment is currently active. Call this before other Xenia tools if you are unsure whether a connection exists.",inputSchema:{},annotations:{readOnlyHint:!0}},Ae(async()=>{let r=await e.client.credential();if(!r)return he(`Not connected to Xenia (${e.baseUrl}). Run xenia_login to connect.`);let n=r.activeScope,o=r.allScopes.find(s=>s.orgKey===n.orgKey&&s.tenantKey===n.tenantKey&&s.environmentKey===n.environmentKey);return he([`Connected to ${r.baseUrl}`,`User: ${r.fullName} <${r.email}>`,`Scope: ${n.orgKey}/${n.tenantKey}/${n.environmentKey}`,o?`Roles: ${o.roles.join(", ")}`:"",`Scopes available: ${r.allScopes.length}`].filter(Boolean).join(`
75
+ `))})),t.registerTool("xenia_list_scopes",{title:"List Xenia workspaces",description:"List every org/tenant/environment the connected user can act in. Production environments are marked. Use the org/tenant/environment key with xenia_select_scope to switch.",inputSchema:{},annotations:{readOnlyHint:!0}},Ae(async()=>{let r=await e.client.requireCredential(),n=`${r.activeScope.orgKey}/${r.activeScope.tenantKey}/${r.activeScope.environmentKey}`,o=r.allScopes.map(s=>`${`${s.orgKey}/${s.tenantKey}/${s.environmentKey}`===n?"* ":" "}${dd(s)}`);return he(["Scopes (* = active):",...o].join(`
76
+ `))})),t.registerTool("xenia_select_scope",{title:"Switch Xenia workspace",description:"Point this connection at a different org/tenant/environment. Accepts the full `org/tenant/environment` key, or the shorter `tenant/environment` or `environment` forms when unambiguous. Every later Xenia call uses the selected scope.",inputSchema:{scope:Oe.string().describe("Scope to switch to, e.g. `acme/storefront/production` or `staging`.")},annotations:{readOnlyHint:!1}},Ae(async({scope:r})=>{let n=await e.client.requireCredential(),o=Fy(n,r);return"error"in o?Cr(o.error):(await Vy(n,o.scope),he(`Active scope is now ${o.scope.orgKey}/${o.scope.tenantKey}/${o.scope.environmentKey} (${o.scope.tenantDisplayName} / ${o.scope.envDisplayName}).`))})),t.registerTool("xenia_logout",{title:"Disconnect from Xenia",description:"Forget the stored Xenia credentials on this machine. The connection also remains revocable from the Xenia dashboard under API tokens \u2192 Connected assistants.",inputSchema:{},annotations:{readOnlyHint:!1,destructiveHint:!0}},Ae(async()=>{let r=await e.client.credential();if(!r)return he("Not connected \u2014 nothing to do.");let n="";try{await e.client.request("/api/auth/logout",{method:"POST",body:{refreshToken:r.refreshToken}}),n=" Session revoked server-side."}catch{n=" Could not revoke the session server-side \u2014 remove it from the dashboard under API tokens \u2192 Connected assistants."}return await Zy(e.baseUrl),he(`Disconnected ${r.email}.${n}`)}))}function o_(t,e){t.registerTool("xenia_list_journeys",{title:"List Xenia journeys",description:"List the marketing journeys in the active Xenia workspace, with their status. Use xenia_get_journey on one of these ids to get what you need to wire it into the code.",inputSchema:{},annotations:{readOnlyHint:!0}},Ae(async()=>{let r=await Eo(e.client);if(r.length===0){let o=await e.client.requireCredential();return he(`No journeys in ${o.activeScope.tenantKey}/${o.activeScope.environmentKey}. If you expected some, check you are in the right workspace with xenia_list_scopes.`)}let n=r.map(o=>` ${o.id} [${o.status}] ${o.name}`);return he([`${r.length} journey(s):`,...n].join(`
77
+ `))})),t.registerTool("xenia_get_journey",{title:"Get a journey's integration contract",description:"Get exactly what is needed to call one journey from application code: the trigger id to call, the HTTP method, the request fields it expects, the personalization content keys it resolves, and an SDK snippet matched to this project's stack. Use the trigger id verbatim \u2014 it encodes the tenant and environment and cannot be reconstructed by hand.",inputSchema:{journeyId:Oe.string().describe("Journey id from xenia_list_journeys.")},annotations:{readOnlyHint:!0}},Ae(async({journeyId:r})=>{let n=await fd(e.client,r),o=await Ro(e.projectRoot),s=t_(n,o),i=[bE(n)];return s.length>0&&i.push(`
78
+ ## Wiring (${o.displayName})
79
+ `+s.map(a=>`### ${a.trigger.label??a.trigger.nodeId}
80
+ \`\`\``+a.language+`
81
+ `+a.code+"\n```").join(`
82
+
83
+ `)+`
84
+
85
+ Adapt this to the project's own components \u2014 do not paste it as a new file.`),n.source==="derived"&&i.push(`
86
+ _Note: this journey has no stored publish contract, so the above was derived from its design graph. Opening and re-saving it in the Xenia dashboard will make the contract authoritative._`),he(i.join(`
87
+ `))})),t.registerTool("xenia_list_content_keys",{title:"List personalization content keys",description:"List every personalization content key in the active workspace and which journeys resolve each one. Pass a key to the SDK's resolve() to fetch personalized content for it.",inputSchema:{},annotations:{readOnlyHint:!0}},Ae(async()=>{let r=await Hy(e.client);if(r.length===0)return he("No personalization content keys in this workspace. They are created by adding a Personalization Resolve node to a journey in the Xenia dashboard.");let n=r.map(o=>` ${o.contentKey}
88
+ used by: ${o.journeys.map(s=>s.name).join(", ")}`);return he([`${r.length} content key(s):`,...n].join(`
89
+ `))}))}function bE(t){let e=[`# ${t.journeyName}`,`id: ${t.journeyId} status: ${t.status} scope: ${t.tenantId}/${t.environmentKey}`,"","## Triggers"];t.triggers.length===0&&e.push(" (none \u2014 this journey has no entry point an application can call)");for(let r of t.triggers)e.push(`
90
+ ### ${r.label??r.nodeId} (${r.triggerType})`),r.description&&e.push(` ${r.description}`),r.triggerId?(e.push(` triggerId: ${r.triggerId}`),e.push(` method: ${r.method}`),r.authRequired&&e.push(" auth: REQUIRED \u2014 this webhook has an auth token; the call must send Authorization: Bearer <token>, or it returns 401. Ask the user for the node's token."),e.push(n_("query",r.queryParams)),e.push(n_("body",r.bodyData))):e.push(` Not callable from application code \u2014 this trigger fires from ${$E(r.triggerType)}.`);return e.push("","## Content keys"),e.push(t.contentKeys.length>0?t.contentKeys.map(r=>` ${r}`).join(`
91
+ `):" (none)"),e.filter(r=>r!=="").join(`
92
+ `)}function n_(t,e){return e.length===0?` ${t}: (none)`:` ${t}: ${e.map(r=>`${r.key}: ${r.type}`).join(", ")}`}function $E(t){switch(t){case"scheduler":return"a schedule inside Xenia";case"shopify-trigger":return"a Shopify store event";case"hubspot-trigger":return"a HubSpot event";case"event-trigger":return"a tracked analytics event \u2014 send it with the SDK's track(name, props, { trigger: true })";case"personalization-resolve":return"the SDK's resolve() call, using the content keys below";default:return"outside the application"}}function s_(t,e){t.registerTool("xenia_detect_stack",{title:"Detect this project's stack",description:"Inspect the project and report which framework it uses, which Xenia SDK entry point fits, and which kind of SDK token it needs (server vs browser). Call this before minting a token.",inputSchema:{},annotations:{readOnlyHint:!0}},Ae(async()=>{let r=await Ro(e.projectRoot);return he([`Project: ${e.projectRoot}`,`Stack: ${r.displayName}`,`Server runtime: ${r.hasServerRuntime?"yes":"no"}`,`SDK import: ${r.sdkEntryPoint}`,`Token type: ${r.tokenType}`,r.tokenType==="server"?" A server token is unrestricted \u2014 keep it server-side and never ship it to the browser.":" A browser token is origin-restricted; you must supply the origins the site is served from.",`Env file: ${r.envFile}`,`Detected from: ${r.evidence.join(", ")}`].join(`
93
+ `))})),t.registerTool("xenia_mint_sdk_token",{title:"Create a Xenia SDK token",description:"Mint an SDK token for the active workspace and write it into the project's env file. The token type is chosen from the detected stack. The token value is written to disk only \u2014 it is never returned here, so do not ask for it or try to echo it. Requires Admin, Manager, or Developer role in Xenia.",inputSchema:{name:Oe.string().describe("Label for the token in the Xenia dashboard, e.g. 'Storefront local dev'."),allowedOrigins:Oe.array(Oe.string()).optional().describe("Required for browser tokens: the origins the site is served from, e.g. ['https://example.com', 'http://localhost:3000']."),confirm:Oe.string().optional().describe("Required only when the active environment is production: pass the environment key back to confirm the user agreed.")},annotations:{readOnlyHint:!1,destructiveHint:!1}},Ae(async({name:r,allowedOrigins:n,confirm:o})=>{let i=(await e.client.requireCredential()).activeScope,a=pd(i.environmentKey,o,"create a live SDK token");if(!a.ok)return Cr(a.message);let c=await Ro(e.projectRoot),u=await Ky(e.client,{name:r,tokenType:c.tokenType,...n?.length?{allowedOrigins:n}:{}}),l=c.tokenType==="server"?"XENIA_SDK_TOKEN":wE(c.publicEnvPrefix),d=await Wy(e.projectRoot,c.envFile,[{key:l,value:u.token,comment:`Xenia ${c.tokenType} SDK token (${u.name})`},{key:"XENIA_TENANT_ID",value:u.tenantId},{key:"XENIA_ENVIRONMENT",value:u.environmentKey}]),h=await Qy(e.projectRoot,c.envFile);return he([`Created a ${c.tokenType} SDK token "${u.name}" (${u.jti}).`,`Written to ${d.path}:`,` ${[...d.added,...d.updated].join(", ")}`,h==="added"?`Added ${c.envFile} to .gitignore.`:`${c.envFile} was already gitignored.`,"","The token value is in the env file only \u2014 it is not shown here and cannot be retrieved again.",c.tokenType==="browser"?`Allowed origins: ${u.allowedOrigins.join(", ")}`:"Keep this token server-side. To use personalization in the browser, add a token route that exchanges it via POST /api/personalization/token/refresh."].join(`
94
+ `))})),t.registerTool("xenia_verify",{title:"Verify the Xenia integration",description:"Check that the active workspace is reachable and wired: reads journeys, optionally resolves a content key with a real SDK token, and optionally sends a test event. Reports each step separately so a partial failure is still informative.",inputSchema:{contentKey:Oe.string().optional().describe("Content key to resolve, from xenia_list_content_keys."),sdkToken:Oe.string().optional().describe("SDK token to test resolve with. Only pass one the user hands you directly; never read it out of their env file to put it here."),sendTestEvent:Oe.boolean().optional().describe("Send a test analytics event into the environment. Writes real data."),confirm:Oe.string().optional().describe("Required when sending a test event to production: pass the environment key.")},annotations:{readOnlyHint:!1,openWorldHint:!0}},Ae(async({contentKey:r,sdkToken:n,sendTestEvent:o,confirm:s})=>{let i=await e.client.requireCredential();if(o){let u=pd(i.activeScope.environmentKey,s,"send a test event");if(!u.ok)return Cr(u.message)}let a=await e_(e.client,{...r?{contentKey:r}:{},...n?{sdkToken:n}:{},...o?{sendTestEvent:o}:{}}),c=a.steps.map(u=>` [${u.status==="ok"?"PASS":u.status==="failed"?"FAIL":"SKIP"}] ${u.name} \u2014 ${u.detail}`);return he([`Scope: ${a.scope}`,...c].join(`
95
+ `))}))}function wE(t){return`${t??""}XENIA_SDK_TOKEN`}function i_(t=yd()){let e=new _i({name:"xenia",version:"0.1.0"},{instructions:`Xenia marketing automation. Use these tools to read the user's real journeys, trigger ids, and personalization content keys instead of guessing them, and to set up the Xenia SDK in this project.
96
+
97
+ Start with xenia_status. If not connected, run xenia_login, show the user the code and URL it prints, then call xenia_login_wait to finish once they have approved. Trigger ids from xenia_get_journey must be used verbatim \u2014 they encode the tenant and environment.
98
+
99
+ Never ask the user to paste a Xenia password or SDK token into the conversation, and never read a token out of their env file. xenia_mint_sdk_token writes tokens straight to disk.`});return r_(e,t),o_(e,t),s_(e,t),e}import{mkdir as kE,readFile as SE,writeFile as a_}from"node:fs/promises";import{homedir as _d}from"node:os";import{dirname as zE,join as xn}from"node:path";import{fileURLToPath as TE}from"node:url";var vd={"claude-code":{id:"claude-code",displayName:"Claude Code",path:t=>xn(t,".mcp.json"),scope:"project",format:"json",serverKey:["mcpServers"]},cursor:{id:"cursor",displayName:"Cursor",path:t=>xn(t,".cursor","mcp.json"),scope:"project",format:"json",serverKey:["mcpServers"]},windsurf:{id:"windsurf",displayName:"Windsurf",path:()=>xn(_d(),".codeium","windsurf","mcp_config.json"),scope:"user",format:"json",serverKey:["mcpServers"]},copilot:{id:"copilot",displayName:"GitHub Copilot (VS Code)",path:t=>xn(t,".vscode","mcp.json"),scope:"project",format:"json",serverKey:["servers"]},codex:{id:"codex",displayName:"OpenAI Codex CLI",path:()=>xn(_d(),".codex","config.toml"),scope:"user",format:"toml",serverKey:["mcp_servers"]},gemini:{id:"gemini",displayName:"Gemini CLI",path:()=>xn(_d(),".gemini","settings.json"),scope:"user",format:"json",serverKey:["mcpServers"]}};async function c_(t){let e=xd(t,"--client"),r=xd(t,"--project")??process.cwd(),n=xd(t,"--base-url"),o=t.includes("--local");if(!e||!vd[e]){process.stderr.write(`Specify a client: --client <${Object.keys(vd).join("|")}>
100
+ `),process.exit(1);return}let s=vd[e],i=s.path(r),a=PE(s,n,o);if(await kE(zE(i),{recursive:!0}),(s.format==="toml"?await RE(i,s,a):await EE(i,s,a))==="already-configured"){process.stdout.write(`Xenia is already configured for ${s.displayName} in ${i} \u2014 left unchanged.
101
+ `);return}process.stdout.write([`Configured ${s.displayName}.`,` ${i}${s.scope==="user"?" (applies to all projects)":""}`,"",`Restart ${s.displayName}, then ask it to "connect my Xenia account".`,""].join(`
102
+ `))}function PE(t,e,r){let n={XENIA_CLIENT_NAME:t.displayName};if(e&&(n.XENIA_BASE_URL=e),r){let o=TE(new URL("./bin.js",import.meta.url));return{command:process.execPath,args:[o],env:n}}return{command:"npx",args:["-y","@xenia-martech/mcp"],env:n}}async function EE(t,e,r){let n=await IE(t)??{},o=e.serverKey[0]??"mcpServers",s=u_(n[o])?n[o]:{};return s.xenia=r,n[o]=s,await a_(t,`${JSON.stringify(n,null,2)}
103
+ `),"configured"}async function RE(t,e,r){let o=`[${e.serverKey[0]??"mcp_servers"}.xenia]`,s=await l_(t);if(s.includes(o))return"already-configured";let i=Object.entries(r.env).map(([u,l])=>`${u} = ${JSON.stringify(l)}`).join(", "),a=[o,`command = ${JSON.stringify(r.command)}`,`args = ${JSON.stringify(r.args)}`,`env = { ${i} }`,""].join(`
104
+ `),c=s.trim()===""?"":`${s.replace(/\n+$/,"")}
105
+
106
+ `;return await a_(t,`${c}${a}`),"configured"}function xd(t,e){let r=t.indexOf(e);if(r!==-1)return t[r+1]}function u_(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}async function IE(t){let e=await l_(t);if(!e.trim())return null;try{let r=JSON.parse(e);return u_(r)?r:null}catch{throw new Error(`${t} is not valid JSON. Fix or move it, then run install again \u2014 refusing to overwrite it and lose your other settings.`)}}async function l_(t){try{return await SE(t,"utf8")}catch{return""}}async function jE(){let[t,...e]=process.argv.slice(2);if(t==="install"){await c_(e);return}if(t==="--help"||t==="-h"){process.stdout.write(OE());return}await i_().connect(new vs)}function OE(){return["xenia-mcp \u2014 connect your Xenia account to an AI coding assistant","","Usage:"," xenia-mcp Run the MCP server over stdio (what assistants invoke)"," xenia-mcp install --client <name>"," Write config for an assistant","","Clients: claude-code, cursor, windsurf, copilot, codex, gemini","","Install flags:"," --base-url <url> Point at a specific Xenia engine (e.g. staging), incl. /xenia"," --local Use this local build instead of the published npm package"," --project <dir> Project to configure (default: current directory)","","Environment:"," XENIA_BASE_URL Xenia engine URL (default: the hosted engine)"," XENIA_PROJECT_ROOT Project to set up (default: current directory)"," XENIA_CLIENT_NAME Assistant name shown on the approval screen",""].join(`
107
+ `)}jE().catch(t=>{process.stderr.write(`xenia-mcp: ${t instanceof Error?t.message:String(t)}
108
+ `),process.exit(1)});
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@xenia-martech/mcp",
3
+ "version": "0.0.0-development",
4
+ "description": "Connect your Xenia account to any AI coding assistant — journeys, trigger ids, content keys, and SDK setup over MCP",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "keywords": ["mcp", "xenia", "marketing-automation", "claude", "cursor", "ai"],
8
+ "bin": {
9
+ "xenia-mcp": "./dist/bin.js"
10
+ },
11
+ "files": ["dist/bin.js", "README.md"],
12
+ "publishConfig": {
13
+ "registry": "https://registry.npmjs.org/",
14
+ "access": "public"
15
+ },
16
+ "scripts": {
17
+ "build": "tsc -p tsconfig.json",
18
+ "typecheck": "tsc -p tsconfig.json --noEmit"
19
+ },
20
+ "devDependencies": {
21
+ "@modelcontextprotocol/sdk": "^1.30.0",
22
+ "@xenia-martech/devtools-core": "0.1.0",
23
+ "zod": "^3.24.1"
24
+ },
25
+ "engines": {
26
+ "node": ">=20"
27
+ }
28
+ }