@youware-labs/figma-pilot-mcp 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +103 -0
  2. package/dist/index.js +49 -0
  3. package/package.json +50 -0
package/README.md ADDED
@@ -0,0 +1,103 @@
1
+ # @youware-labs/figma-pilot-mcp
2
+
3
+ MCP server that enables AI agents (Claude, etc.) to create and modify Figma designs through natural language.
4
+
5
+ ## Quick Start
6
+
7
+ ### 1. Configure MCP
8
+
9
+ **Claude Code:**
10
+ ```bash
11
+ claude mcp add figma-pilot -- npx @youware-labs/figma-pilot-mcp
12
+ ```
13
+
14
+ **Claude Desktop / Cursor / Other MCP Clients:**
15
+
16
+ Add to your MCP config file:
17
+ ```json
18
+ {
19
+ "mcpServers": {
20
+ "figma-pilot": {
21
+ "command": "npx",
22
+ "args": ["@youware-labs/figma-pilot-mcp"]
23
+ }
24
+ }
25
+ }
26
+ ```
27
+
28
+ ### 2. Install the Figma Plugin
29
+
30
+ 1. Download `figma-pilot-plugin-vX.X.X.zip` from [GitHub Releases](https://github.com/youware-labs/figma-pilot/releases)
31
+ 2. Unzip the file
32
+ 3. In Figma Desktop: **Plugins → Development → Import plugin from manifest**
33
+ 4. Select the `manifest.json` file from the unzipped folder
34
+ 5. Run the plugin in your Figma file (Plugins → Development → figma-pilot)
35
+
36
+ ### 3. Start Using
37
+
38
+ Once the MCP is configured and the Figma plugin is running, you can ask Claude to:
39
+ - "Create a login form in Figma"
40
+ - "Add a navigation bar with logo and menu items"
41
+ - "Change the selected element's color to blue"
42
+ - "Check accessibility and fix any issues"
43
+
44
+ ## Available Tools
45
+
46
+ | Tool | Description |
47
+ |------|-------------|
48
+ | `figma_status` | Check connection to Figma plugin |
49
+ | `figma_create` | Create elements (frames, text, shapes, buttons, cards) |
50
+ | `figma_modify` | Modify existing elements |
51
+ | `figma_delete` | Delete elements |
52
+ | `figma_query` | Get element details |
53
+ | `figma_selection` | Get current selection |
54
+ | `figma_append` | Move elements into a container |
55
+ | `figma_list_components` | List available components |
56
+ | `figma_instantiate` | Create component instances |
57
+ | `figma_to_component` | Convert to component |
58
+ | `figma_create_variants` | Create component variants |
59
+ | `figma_ensure_accessibility` | Check/fix accessibility issues |
60
+ | `figma_export` | Export as PNG/SVG/PDF |
61
+
62
+ ## Example Usage
63
+
64
+ ```typescript
65
+ // Create a card with auto-layout
66
+ figma_create({
67
+ type: "card",
68
+ name: "User Card",
69
+ width: 320,
70
+ layout: { direction: "column", gap: 16, padding: 24 },
71
+ children: [
72
+ { type: "text", content: "John Doe", fontSize: 18, fontWeight: 600 },
73
+ { type: "text", content: "john@example.com", fontSize: 14, fill: "#666666" }
74
+ ]
75
+ })
76
+
77
+ // Modify selection
78
+ figma_modify({ target: "selection", fill: "#0066FF", cornerRadius: 8 })
79
+
80
+ // Check accessibility
81
+ figma_ensure_accessibility({ target: "page", level: "AA", autoFix: true })
82
+ ```
83
+
84
+ ## How It Works
85
+
86
+ ```
87
+ ┌─────────────┐ stdio ┌─────────────────┐ HTTP ┌──────────────┐
88
+ │ Claude │ ◄────────────► │ MCP Server │ ◄───────────► │ Figma Plugin │
89
+ │ (or AI) │ │ (with bridge) │ port 38451 │ │
90
+ └─────────────┘ └─────────────────┘ └──────────────┘
91
+ ```
92
+
93
+ The MCP server includes a built-in HTTP bridge that the Figma plugin connects to. No separate server process needed.
94
+
95
+ ## Requirements
96
+
97
+ - Node.js >= 18
98
+ - Figma Desktop app
99
+ - The figma-pilot Figma plugin running
100
+
101
+ ## License
102
+
103
+ MIT
package/dist/index.js ADDED
@@ -0,0 +1,49 @@
1
+ #!/usr/bin/env node
2
+ var M3=Object.create;var{getPrototypeOf:N3,defineProperty:Q6,getOwnPropertyNames:w3}=Object;var P3=Object.prototype.hasOwnProperty;var wX=(Q,X,Y)=>{Y=Q!=null?M3(N3(Q)):{};let W=X||!Q||!Q.__esModule?Q6(Y,"default",{value:Q,enumerable:!0}):Y;for(let J of w3(Q))if(!P3.call(W,J))Q6(W,J,{get:()=>Q[J],enumerable:!0});return W};var M=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var PX=(Q,X)=>{for(var Y in X)Q6(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:(W)=>X[Y]=()=>W})};var K9=M((yJ)=>{Object.defineProperty(yJ,"__esModule",{value:!0});yJ.regexpCode=yJ.getEsmExportName=yJ.getProperty=yJ.safeStringify=yJ.stringify=yJ.strConcat=yJ.addCodeArg=yJ.str=yJ._=yJ.nil=yJ._Code=yJ.Name=yJ.IDENTIFIER=yJ._CodeOrName=void 0;class FQ{}yJ._CodeOrName=FQ;yJ.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class P1 extends FQ{constructor(Q){super();if(!yJ.IDENTIFIER.test(Q))throw new Error("CodeGen: name must be a valid identifier");this.str=Q}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}yJ.Name=P1;class j0 extends FQ{constructor(Q){super();this._items=typeof Q==="string"?[Q]:Q}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let Q=this._items[0];return Q===""||Q==='""'}get str(){var Q;return(Q=this._str)!==null&&Q!==void 0?Q:this._str=this._items.reduce((X,Y)=>`${X}${Y}`,"")}get names(){var Q;return(Q=this._names)!==null&&Q!==void 0?Q:this._names=this._items.reduce((X,Y)=>{if(Y instanceof P1)X[Y.str]=(X[Y.str]||0)+1;return X},{})}}yJ._Code=j0;yJ.nil=new j0("");function xJ(Q,...X){let Y=[Q[0]],W=0;while(W<X.length)F8(Y,X[W]),Y.push(Q[++W]);return new j0(Y)}yJ._=xJ;var L8=new j0("+");function gJ(Q,...X){let Y=[$9(Q[0])],W=0;while(W<X.length)Y.push(L8),F8(Y,X[W]),Y.push(L8,$9(Q[++W]));return dB(Y),new j0(Y)}yJ.str=gJ;function F8(Q,X){if(X instanceof j0)Q.push(...X._items);else if(X instanceof P1)Q.push(X);else Q.push(nB(X))}yJ.addCodeArg=F8;function dB(Q){let X=1;while(X<Q.length-1){if(Q[X]===L8){let Y=iB(Q[X-1],Q[X+1]);if(Y!==void 0){Q.splice(X-1,3,Y);continue}Q[X++]="+"}X++}}function iB(Q,X){if(X==='""')return Q;if(Q==='""')return X;if(typeof Q=="string"){if(X instanceof P1||Q[Q.length-1]!=='"')return;if(typeof X!="string")return`${Q.slice(0,-1)}${X}"`;if(X[0]==='"')return Q.slice(0,-1)+X.slice(1);return}if(typeof X=="string"&&X[0]==='"'&&!(Q instanceof P1))return`"${Q}${X.slice(1)}`;return}function rB(Q,X){return X.emptyStr()?Q:Q.emptyStr()?X:gJ`${Q}${X}`}yJ.strConcat=rB;function nB(Q){return typeof Q=="number"||typeof Q=="boolean"||Q===null?Q:$9(Array.isArray(Q)?Q.join(","):Q)}function oB(Q){return new j0($9(Q))}yJ.stringify=oB;function $9(Q){return JSON.stringify(Q).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}yJ.safeStringify=$9;function tB(Q){return typeof Q=="string"&&yJ.IDENTIFIER.test(Q)?new j0(`.${Q}`):xJ`[${Q}]`}yJ.getProperty=tB;function aB(Q){if(typeof Q=="string"&&yJ.IDENTIFIER.test(Q))return new j0(`${Q}`);throw new Error(`CodeGen: invalid export name: ${Q}, use explicit $id name mapping`)}yJ.getEsmExportName=aB;function sB(Q){return new j0(Q.toString())}yJ.regexpCode=sB});var Z8=M((lJ)=>{Object.defineProperty(lJ,"__esModule",{value:!0});lJ.ValueScope=lJ.ValueScopeName=lJ.Scope=lJ.varKinds=lJ.UsedValueState=void 0;var L0=K9();class uJ extends Error{constructor(Q){super(`CodeGen: "code" for ${Q} not defined`);this.value=Q.value}}var DQ;(function(Q){Q[Q.Started=0]="Started",Q[Q.Completed=1]="Completed"})(DQ||(lJ.UsedValueState=DQ={}));lJ.varKinds={const:new L0.Name("const"),let:new L0.Name("let"),var:new L0.Name("var")};class D8{constructor({prefixes:Q,parent:X}={}){this._names={},this._prefixes=Q,this._parent=X}toName(Q){return Q instanceof L0.Name?Q:this.name(Q)}name(Q){return new L0.Name(this._newName(Q))}_newName(Q){let X=this._names[Q]||this._nameGroup(Q);return`${Q}${X.index++}`}_nameGroup(Q){var X,Y;if(((Y=(X=this._parent)===null||X===void 0?void 0:X._prefixes)===null||Y===void 0?void 0:Y.has(Q))||this._prefixes&&!this._prefixes.has(Q))throw new Error(`CodeGen: prefix "${Q}" is not allowed in this scope`);return this._names[Q]={prefix:Q,index:0}}}lJ.Scope=D8;class V8 extends L0.Name{constructor(Q,X){super(X);this.prefix=Q}setValue(Q,{property:X,itemIndex:Y}){this.value=Q,this.scopePath=L0._`.${new L0.Name(X)}[${Y}]`}}lJ.ValueScopeName=V8;var Az=L0._`\n`;class fJ extends D8{constructor(Q){super(Q);this._values={},this._scope=Q.scope,this.opts={...Q,_n:Q.lines?Az:L0.nil}}get(){return this._scope}name(Q){return new V8(Q,this._newName(Q))}value(Q,X){var Y;if(X.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let W=this.toName(Q),{prefix:J}=W,G=(Y=X.key)!==null&&Y!==void 0?Y:X.ref,H=this._values[J];if(H){let B=H.get(G);if(B)return B}else H=this._values[J]=new Map;H.set(G,W);let $=this._scope[J]||(this._scope[J]=[]),K=$.length;return $[K]=X.ref,W.setValue(X,{property:J,itemIndex:K}),W}getValue(Q,X){let Y=this._values[Q];if(!Y)return;return Y.get(X)}scopeRefs(Q,X=this._values){return this._reduceValues(X,(Y)=>{if(Y.scopePath===void 0)throw new Error(`CodeGen: name "${Y}" has no value`);return L0._`${Q}${Y.scopePath}`})}scopeCode(Q=this._values,X,Y){return this._reduceValues(Q,(W)=>{if(W.value===void 0)throw new Error(`CodeGen: name "${W}" has no value`);return W.value.code},X,Y)}_reduceValues(Q,X,Y={},W){let J=L0.nil;for(let G in Q){let H=Q[G];if(!H)continue;let $=Y[G]=Y[G]||new Map;H.forEach((K)=>{if($.has(K))return;$.set(K,DQ.Started);let B=X(K);if(B){let z=this.opts.es5?lJ.varKinds.var:lJ.varKinds.const;J=L0._`${J}${z} ${K} = ${B};${this.opts._n}`}else if(B=W===null||W===void 0?void 0:W(K))J=L0._`${J}${B}${this.opts._n}`;else throw new uJ(K);$.set(K,DQ.Completed)})}return J}}lJ.ValueScope=fJ});var k=M((F0)=>{Object.defineProperty(F0,"__esModule",{value:!0});F0.or=F0.and=F0.not=F0.CodeGen=F0.operators=F0.varKinds=F0.ValueScopeName=F0.ValueScope=F0.Scope=F0.Name=F0.regexpCode=F0.stringify=F0.getProperty=F0.nil=F0.strConcat=F0.str=F0._=void 0;var x=K9(),R0=Z8(),Q1=K9();Object.defineProperty(F0,"_",{enumerable:!0,get:function(){return Q1._}});Object.defineProperty(F0,"str",{enumerable:!0,get:function(){return Q1.str}});Object.defineProperty(F0,"strConcat",{enumerable:!0,get:function(){return Q1.strConcat}});Object.defineProperty(F0,"nil",{enumerable:!0,get:function(){return Q1.nil}});Object.defineProperty(F0,"getProperty",{enumerable:!0,get:function(){return Q1.getProperty}});Object.defineProperty(F0,"stringify",{enumerable:!0,get:function(){return Q1.stringify}});Object.defineProperty(F0,"regexpCode",{enumerable:!0,get:function(){return Q1.regexpCode}});Object.defineProperty(F0,"Name",{enumerable:!0,get:function(){return Q1.Name}});var NQ=Z8();Object.defineProperty(F0,"Scope",{enumerable:!0,get:function(){return NQ.Scope}});Object.defineProperty(F0,"ValueScope",{enumerable:!0,get:function(){return NQ.ValueScope}});Object.defineProperty(F0,"ValueScopeName",{enumerable:!0,get:function(){return NQ.ValueScopeName}});Object.defineProperty(F0,"varKinds",{enumerable:!0,get:function(){return NQ.varKinds}});F0.operators={GT:new x._Code(">"),GTE:new x._Code(">="),LT:new x._Code("<"),LTE:new x._Code("<="),EQ:new x._Code("==="),NEQ:new x._Code("!=="),NOT:new x._Code("!"),OR:new x._Code("||"),AND:new x._Code("&&"),ADD:new x._Code("+")};class X1{optimizeNodes(){return this}optimizeNames(Q,X){return this}}class cJ extends X1{constructor(Q,X,Y){super();this.varKind=Q,this.name=X,this.rhs=Y}render({es5:Q,_n:X}){let Y=Q?R0.varKinds.var:this.varKind,W=this.rhs===void 0?"":` = ${this.rhs}`;return`${Y} ${this.name}${W};`+X}optimizeNames(Q,X){if(!Q[this.name.str])return;if(this.rhs)this.rhs=E1(this.rhs,Q,X);return this}get names(){return this.rhs instanceof x._CodeOrName?this.rhs.names:{}}}class M8 extends X1{constructor(Q,X,Y){super();this.lhs=Q,this.rhs=X,this.sideEffects=Y}render({_n:Q}){return`${this.lhs} = ${this.rhs};`+Q}optimizeNames(Q,X){if(this.lhs instanceof x.Name&&!Q[this.lhs.str]&&!this.sideEffects)return;return this.rhs=E1(this.rhs,Q,X),this}get names(){let Q=this.lhs instanceof x.Name?{}:{...this.lhs.names};return MQ(Q,this.rhs)}}class pJ extends M8{constructor(Q,X,Y,W){super(Q,Y,W);this.op=X}render({_n:Q}){return`${this.lhs} ${this.op}= ${this.rhs};`+Q}}class dJ extends X1{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`${this.label}:`+Q}}class iJ extends X1{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`break${this.label?` ${this.label}`:""};`+Q}}class rJ extends X1{constructor(Q){super();this.error=Q}render({_n:Q}){return`throw ${this.error};`+Q}get names(){return this.error.names}}class nJ extends X1{constructor(Q){super();this.code=Q}render({_n:Q}){return`${this.code};`+Q}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(Q,X){return this.code=E1(this.code,Q,X),this}get names(){return this.code instanceof x._CodeOrName?this.code.names:{}}}class wQ extends X1{constructor(Q=[]){super();this.nodes=Q}render(Q){return this.nodes.reduce((X,Y)=>X+Y.render(Q),"")}optimizeNodes(){let{nodes:Q}=this,X=Q.length;while(X--){let Y=Q[X].optimizeNodes();if(Array.isArray(Y))Q.splice(X,1,...Y);else if(Y)Q[X]=Y;else Q.splice(X,1)}return Q.length>0?this:void 0}optimizeNames(Q,X){let{nodes:Y}=this,W=Y.length;while(W--){let J=Y[W];if(J.optimizeNames(Q,X))continue;Dz(Q,J.names),Y.splice(W,1)}return Y.length>0?this:void 0}get names(){return this.nodes.reduce((Q,X)=>B1(Q,X.names),{})}}class Y1 extends wQ{render(Q){return"{"+Q._n+super.render(Q)+"}"+Q._n}}class oJ extends wQ{}class B9 extends Y1{}B9.kind="else";class m0 extends Y1{constructor(Q,X){super(X);this.condition=Q}render(Q){let X=`if(${this.condition})`+super.render(Q);if(this.else)X+="else "+this.else.render(Q);return X}optimizeNodes(){super.optimizeNodes();let Q=this.condition;if(Q===!0)return this.nodes;let X=this.else;if(X){let Y=X.optimizeNodes();X=this.else=Array.isArray(Y)?new B9(Y):Y}if(X){if(Q===!1)return X instanceof m0?X:X.nodes;if(this.nodes.length)return this;return new m0(Q7(Q),X instanceof m0?[X]:X.nodes)}if(Q===!1||!this.nodes.length)return;return this}optimizeNames(Q,X){var Y;if(this.else=(Y=this.else)===null||Y===void 0?void 0:Y.optimizeNames(Q,X),!(super.optimizeNames(Q,X)||this.else))return;return this.condition=E1(this.condition,Q,X),this}get names(){let Q=super.names;if(MQ(Q,this.condition),this.else)B1(Q,this.else.names);return Q}}m0.kind="if";class I1 extends Y1{}I1.kind="for";class tJ extends I1{constructor(Q){super();this.iteration=Q}render(Q){return`for(${this.iteration})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iteration=E1(this.iteration,Q,X),this}get names(){return B1(super.names,this.iteration.names)}}class aJ extends I1{constructor(Q,X,Y,W){super();this.varKind=Q,this.name=X,this.from=Y,this.to=W}render(Q){let X=Q.es5?R0.varKinds.var:this.varKind,{name:Y,from:W,to:J}=this;return`for(${X} ${Y}=${W}; ${Y}<${J}; ${Y}++)`+super.render(Q)}get names(){let Q=MQ(super.names,this.from);return MQ(Q,this.to)}}class O8 extends I1{constructor(Q,X,Y,W){super();this.loop=Q,this.varKind=X,this.name=Y,this.iterable=W}render(Q){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iterable=E1(this.iterable,Q,X),this}get names(){return B1(super.names,this.iterable.names)}}class VQ extends Y1{constructor(Q,X,Y){super();this.name=Q,this.args=X,this.async=Y}render(Q){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(Q)}}VQ.kind="func";class ZQ extends wQ{render(Q){return"return "+super.render(Q)}}ZQ.kind="return";class sJ extends Y1{render(Q){let X="try"+super.render(Q);if(this.catch)X+=this.catch.render(Q);if(this.finally)X+=this.finally.render(Q);return X}optimizeNodes(){var Q,X;return super.optimizeNodes(),(Q=this.catch)===null||Q===void 0||Q.optimizeNodes(),(X=this.finally)===null||X===void 0||X.optimizeNodes(),this}optimizeNames(Q,X){var Y,W;return super.optimizeNames(Q,X),(Y=this.catch)===null||Y===void 0||Y.optimizeNames(Q,X),(W=this.finally)===null||W===void 0||W.optimizeNames(Q,X),this}get names(){let Q=super.names;if(this.catch)B1(Q,this.catch.names);if(this.finally)B1(Q,this.finally.names);return Q}}class OQ extends Y1{constructor(Q){super();this.error=Q}render(Q){return`catch(${this.error})`+super.render(Q)}}OQ.kind="catch";class qQ extends Y1{render(Q){return"finally"+super.render(Q)}}qQ.kind="finally";class eJ{constructor(Q,X={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...X,_n:X.lines?`
3
+ `:""},this._extScope=Q,this._scope=new R0.Scope({parent:Q}),this._nodes=[new oJ]}toString(){return this._root.render(this.opts)}name(Q){return this._scope.name(Q)}scopeName(Q){return this._extScope.name(Q)}scopeValue(Q,X){let Y=this._extScope.value(Q,X);return(this._values[Y.prefix]||(this._values[Y.prefix]=new Set)).add(Y),Y}getScopeValue(Q,X){return this._extScope.getValue(Q,X)}scopeRefs(Q){return this._extScope.scopeRefs(Q,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(Q,X,Y,W){let J=this._scope.toName(X);if(Y!==void 0&&W)this._constants[J.str]=Y;return this._leafNode(new cJ(Q,J,Y)),J}const(Q,X,Y){return this._def(R0.varKinds.const,Q,X,Y)}let(Q,X,Y){return this._def(R0.varKinds.let,Q,X,Y)}var(Q,X,Y){return this._def(R0.varKinds.var,Q,X,Y)}assign(Q,X,Y){return this._leafNode(new M8(Q,X,Y))}add(Q,X){return this._leafNode(new pJ(Q,F0.operators.ADD,X))}code(Q){if(typeof Q=="function")Q();else if(Q!==x.nil)this._leafNode(new nJ(Q));return this}object(...Q){let X=["{"];for(let[Y,W]of Q){if(X.length>1)X.push(",");if(X.push(Y),Y!==W||this.opts.es5)X.push(":"),x.addCodeArg(X,W)}return X.push("}"),new x._Code(X)}if(Q,X,Y){if(this._blockNode(new m0(Q)),X&&Y)this.code(X).else().code(Y).endIf();else if(X)this.code(X).endIf();else if(Y)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(Q){return this._elseNode(new m0(Q))}else(){return this._elseNode(new B9)}endIf(){return this._endBlockNode(m0,B9)}_for(Q,X){if(this._blockNode(Q),X)this.code(X).endFor();return this}for(Q,X){return this._for(new tJ(Q),X)}forRange(Q,X,Y,W,J=this.opts.es5?R0.varKinds.var:R0.varKinds.let){let G=this._scope.toName(Q);return this._for(new aJ(J,G,X,Y),()=>W(G))}forOf(Q,X,Y,W=R0.varKinds.const){let J=this._scope.toName(Q);if(this.opts.es5){let G=X instanceof x.Name?X:this.var("_arr",X);return this.forRange("_i",0,x._`${G}.length`,(H)=>{this.var(J,x._`${G}[${H}]`),Y(J)})}return this._for(new O8("of",W,J,X),()=>Y(J))}forIn(Q,X,Y,W=this.opts.es5?R0.varKinds.var:R0.varKinds.const){if(this.opts.ownProperties)return this.forOf(Q,x._`Object.keys(${X})`,Y);let J=this._scope.toName(Q);return this._for(new O8("in",W,J,X),()=>Y(J))}endFor(){return this._endBlockNode(I1)}label(Q){return this._leafNode(new dJ(Q))}break(Q){return this._leafNode(new iJ(Q))}return(Q){let X=new ZQ;if(this._blockNode(X),this.code(Q),X.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ZQ)}try(Q,X,Y){if(!X&&!Y)throw new Error('CodeGen: "try" without "catch" and "finally"');let W=new sJ;if(this._blockNode(W),this.code(Q),X){let J=this.name("e");this._currNode=W.catch=new OQ(J),X(J)}if(Y)this._currNode=W.finally=new qQ,this.code(Y);return this._endBlockNode(OQ,qQ)}throw(Q){return this._leafNode(new rJ(Q))}block(Q,X){if(this._blockStarts.push(this._nodes.length),Q)this.code(Q).endBlock(X);return this}endBlock(Q){let X=this._blockStarts.pop();if(X===void 0)throw new Error("CodeGen: not in self-balancing block");let Y=this._nodes.length-X;if(Y<0||Q!==void 0&&Y!==Q)throw new Error(`CodeGen: wrong number of nodes: ${Y} vs ${Q} expected`);return this._nodes.length=X,this}func(Q,X=x.nil,Y,W){if(this._blockNode(new VQ(Q,X,Y)),W)this.code(W).endFunc();return this}endFunc(){return this._endBlockNode(VQ)}optimize(Q=1){while(Q-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(Q){return this._currNode.nodes.push(Q),this}_blockNode(Q){this._currNode.nodes.push(Q),this._nodes.push(Q)}_endBlockNode(Q,X){let Y=this._currNode;if(Y instanceof Q||X&&Y instanceof X)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${X?`${Q.kind}/${X.kind}`:Q.kind}"`)}_elseNode(Q){let X=this._currNode;if(!(X instanceof m0))throw new Error('CodeGen: "else" without "if"');return this._currNode=X.else=Q,this}get _root(){return this._nodes[0]}get _currNode(){let Q=this._nodes;return Q[Q.length-1]}set _currNode(Q){let X=this._nodes;X[X.length-1]=Q}}F0.CodeGen=eJ;function B1(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)+(X[Y]||0);return Q}function MQ(Q,X){return X instanceof x._CodeOrName?B1(Q,X.names):Q}function E1(Q,X,Y){if(Q instanceof x.Name)return W(Q);if(!J(Q))return Q;return new x._Code(Q._items.reduce((G,H)=>{if(H instanceof x.Name)H=W(H);if(H instanceof x._Code)G.push(...H._items);else G.push(H);return G},[]));function W(G){let H=Y[G.str];if(H===void 0||X[G.str]!==1)return G;return delete X[G.str],H}function J(G){return G instanceof x._Code&&G._items.some((H)=>H instanceof x.Name&&X[H.str]===1&&Y[H.str]!==void 0)}}function Dz(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)-(X[Y]||0)}function Q7(Q){return typeof Q=="boolean"||typeof Q=="number"||Q===null?!Q:x._`!${q8(Q)}`}F0.not=Q7;var Vz=X7(F0.operators.AND);function Zz(...Q){return Q.reduce(Vz)}F0.and=Zz;var Oz=X7(F0.operators.OR);function qz(...Q){return Q.reduce(Oz)}F0.or=qz;function X7(Q){return(X,Y)=>X===x.nil?Y:Y===x.nil?X:x._`${q8(X)} ${Q} ${q8(Y)}`}function q8(Q){return Q instanceof x.Name?Q:x._`(${Q})`}});var h=M((z7)=>{Object.defineProperty(z7,"__esModule",{value:!0});z7.checkStrictMode=z7.getErrorPath=z7.Type=z7.useFunc=z7.setEvaluated=z7.evaluatedPropsToName=z7.mergeEvaluated=z7.eachItem=z7.unescapeJsonPointer=z7.escapeJsonPointer=z7.escapeFragment=z7.unescapeFragment=z7.schemaRefOrVal=z7.schemaHasRulesButRef=z7.schemaHasRules=z7.checkUnknownRules=z7.alwaysValidSchema=z7.toHash=void 0;var l=k(),Pz=K9();function Iz(Q){let X={};for(let Y of Q)X[Y]=!0;return X}z7.toHash=Iz;function Ez(Q,X){if(typeof X=="boolean")return X;if(Object.keys(X).length===0)return!0;return G7(Q,X),!H7(X,Q.self.RULES.all)}z7.alwaysValidSchema=Ez;function G7(Q,X=Q.schema){let{opts:Y,self:W}=Q;if(!Y.strictSchema)return;if(typeof X==="boolean")return;let J=W.RULES.keywords;for(let G in X)if(!J[G])B7(Q,`unknown keyword: "${G}"`)}z7.checkUnknownRules=G7;function H7(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X[Y])return!0;return!1}z7.schemaHasRules=H7;function bz(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(Y!=="$ref"&&X.all[Y])return!0;return!1}z7.schemaHasRulesButRef=bz;function Tz({topSchemaRef:Q,schemaPath:X},Y,W,J){if(!J){if(typeof Y=="number"||typeof Y=="boolean")return Y;if(typeof Y=="string")return l._`${Y}`}return l._`${Q}${X}${l.getProperty(W)}`}z7.schemaRefOrVal=Tz;function jz(Q){return $7(decodeURIComponent(Q))}z7.unescapeFragment=jz;function Rz(Q){return encodeURIComponent(w8(Q))}z7.escapeFragment=Rz;function w8(Q){if(typeof Q=="number")return`${Q}`;return Q.replace(/~/g,"~0").replace(/\//g,"~1")}z7.escapeJsonPointer=w8;function $7(Q){return Q.replace(/~1/g,"/").replace(/~0/g,"~")}z7.unescapeJsonPointer=$7;function Sz(Q,X){if(Array.isArray(Q))for(let Y of Q)X(Y);else X(Q)}z7.eachItem=Sz;function W7({mergeNames:Q,mergeToName:X,mergeValues:Y,resultToName:W}){return(J,G,H,$)=>{let K=H===void 0?G:H instanceof l.Name?(G instanceof l.Name?Q(J,G,H):X(J,G,H),H):G instanceof l.Name?(X(J,H,G),G):Y(G,H);return $===l.Name&&!(K instanceof l.Name)?W(J,K):K}}z7.mergeEvaluated={props:W7({mergeNames:(Q,X,Y)=>Q.if(l._`${Y} !== true && ${X} !== undefined`,()=>{Q.if(l._`${X} === true`,()=>Q.assign(Y,!0),()=>Q.assign(Y,l._`${Y} || {}`).code(l._`Object.assign(${Y}, ${X})`))}),mergeToName:(Q,X,Y)=>Q.if(l._`${Y} !== true`,()=>{if(X===!0)Q.assign(Y,!0);else Q.assign(Y,l._`${Y} || {}`),P8(Q,Y,X)}),mergeValues:(Q,X)=>Q===!0?!0:{...Q,...X},resultToName:K7}),items:W7({mergeNames:(Q,X,Y)=>Q.if(l._`${Y} !== true && ${X} !== undefined`,()=>Q.assign(Y,l._`${X} === true ? true : ${Y} > ${X} ? ${Y} : ${X}`)),mergeToName:(Q,X,Y)=>Q.if(l._`${Y} !== true`,()=>Q.assign(Y,X===!0?!0:l._`${Y} > ${X} ? ${Y} : ${X}`)),mergeValues:(Q,X)=>Q===!0?!0:Math.max(Q,X),resultToName:(Q,X)=>Q.var("items",X)})};function K7(Q,X){if(X===!0)return Q.var("props",!0);let Y=Q.var("props",l._`{}`);if(X!==void 0)P8(Q,Y,X);return Y}z7.evaluatedPropsToName=K7;function P8(Q,X,Y){Object.keys(Y).forEach((W)=>Q.assign(l._`${X}${l.getProperty(W)}`,!0))}z7.setEvaluated=P8;var J7={};function Cz(Q,X){return Q.scopeValue("func",{ref:X,code:J7[X.code]||(J7[X.code]=new Pz._Code(X.code))})}z7.useFunc=Cz;var N8;(function(Q){Q[Q.Num=0]="Num",Q[Q.Str=1]="Str"})(N8||(z7.Type=N8={}));function kz(Q,X,Y){if(Q instanceof l.Name){let W=X===N8.Num;return Y?W?l._`"[" + ${Q} + "]"`:l._`"['" + ${Q} + "']"`:W?l._`"/" + ${Q}`:l._`"/" + ${Q}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return Y?l.getProperty(Q).toString():"/"+w8(Q)}z7.getErrorPath=kz;function B7(Q,X,Y=Q.opts.strictSchema){if(!Y)return;if(X=`strict mode: ${X}`,Y===!0)throw new Error(X);Q.self.logger.warn(X)}z7.checkStrictMode=B7});var c0=M((L7)=>{Object.defineProperty(L7,"__esModule",{value:!0});var H0=k(),tz={data:new H0.Name("data"),valCxt:new H0.Name("valCxt"),instancePath:new H0.Name("instancePath"),parentData:new H0.Name("parentData"),parentDataProperty:new H0.Name("parentDataProperty"),rootData:new H0.Name("rootData"),dynamicAnchors:new H0.Name("dynamicAnchors"),vErrors:new H0.Name("vErrors"),errors:new H0.Name("errors"),this:new H0.Name("this"),self:new H0.Name("self"),scope:new H0.Name("scope"),json:new H0.Name("json"),jsonPos:new H0.Name("jsonPos"),jsonLen:new H0.Name("jsonLen"),jsonPart:new H0.Name("jsonPart")};L7.default=tz});var z9=M((V7)=>{Object.defineProperty(V7,"__esModule",{value:!0});V7.extendErrors=V7.resetErrorsCount=V7.reportExtraError=V7.reportError=V7.keyword$DataError=V7.keywordError=void 0;var g=k(),IQ=h(),B0=c0();V7.keywordError={message:({keyword:Q})=>g.str`must pass "${Q}" keyword validation`};V7.keyword$DataError={message:({keyword:Q,schemaType:X})=>X?g.str`"${Q}" keyword must be ${X} ($data)`:g.str`"${Q}" keyword is invalid ($data)`};function sz(Q,X=V7.keywordError,Y,W){let{it:J}=Q,{gen:G,compositeRule:H,allErrors:$}=J,K=D7(Q,X,Y);if(W!==null&&W!==void 0?W:H||$)F7(G,K);else U7(J,g._`[${K}]`)}V7.reportError=sz;function ez(Q,X=V7.keywordError,Y){let{it:W}=Q,{gen:J,compositeRule:G,allErrors:H}=W,$=D7(Q,X,Y);if(F7(J,$),!(G||H))U7(W,B0.default.vErrors)}V7.reportExtraError=ez;function QA(Q,X){Q.assign(B0.default.errors,X),Q.if(g._`${B0.default.vErrors} !== null`,()=>Q.if(X,()=>Q.assign(g._`${B0.default.vErrors}.length`,X),()=>Q.assign(B0.default.vErrors,null)))}V7.resetErrorsCount=QA;function XA({gen:Q,keyword:X,schemaValue:Y,data:W,errsCount:J,it:G}){if(J===void 0)throw new Error("ajv implementation error");let H=Q.name("err");Q.forRange("i",J,B0.default.errors,($)=>{if(Q.const(H,g._`${B0.default.vErrors}[${$}]`),Q.if(g._`${H}.instancePath === undefined`,()=>Q.assign(g._`${H}.instancePath`,g.strConcat(B0.default.instancePath,G.errorPath))),Q.assign(g._`${H}.schemaPath`,g.str`${G.errSchemaPath}/${X}`),G.opts.verbose)Q.assign(g._`${H}.schema`,Y),Q.assign(g._`${H}.data`,W)})}V7.extendErrors=XA;function F7(Q,X){let Y=Q.const("err",X);Q.if(g._`${B0.default.vErrors} === null`,()=>Q.assign(B0.default.vErrors,g._`[${Y}]`),g._`${B0.default.vErrors}.push(${Y})`),Q.code(g._`${B0.default.errors}++`)}function U7(Q,X){let{gen:Y,validateName:W,schemaEnv:J}=Q;if(J.$async)Y.throw(g._`new ${Q.ValidationError}(${X})`);else Y.assign(g._`${W}.errors`,X),Y.return(!1)}var z1={keyword:new g.Name("keyword"),schemaPath:new g.Name("schemaPath"),params:new g.Name("params"),propertyName:new g.Name("propertyName"),message:new g.Name("message"),schema:new g.Name("schema"),parentSchema:new g.Name("parentSchema")};function D7(Q,X,Y){let{createErrors:W}=Q.it;if(W===!1)return g._`{}`;return YA(Q,X,Y)}function YA(Q,X,Y={}){let{gen:W,it:J}=Q,G=[WA(J,Y),JA(Q,Y)];return GA(Q,X,G),W.object(...G)}function WA({errorPath:Q},{instancePath:X}){let Y=X?g.str`${Q}${IQ.getErrorPath(X,IQ.Type.Str)}`:Q;return[B0.default.instancePath,g.strConcat(B0.default.instancePath,Y)]}function JA({keyword:Q,it:{errSchemaPath:X}},{schemaPath:Y,parentSchema:W}){let J=W?X:g.str`${X}/${Q}`;if(Y)J=g.str`${J}${IQ.getErrorPath(Y,IQ.Type.Str)}`;return[z1.schemaPath,J]}function GA(Q,{params:X,message:Y},W){let{keyword:J,data:G,schemaValue:H,it:$}=Q,{opts:K,propertyName:B,topSchemaRef:z,schemaPath:A}=$;if(W.push([z1.keyword,J],[z1.params,typeof X=="function"?X(Q):X||g._`{}`]),K.messages)W.push([z1.message,typeof Y=="function"?Y(Q):Y]);if(K.verbose)W.push([z1.schema,H],[z1.parentSchema,g._`${z}${A}`],[B0.default.data,G]);if(B)W.push([z1.propertyName,B])}});var N7=M((q7)=>{Object.defineProperty(q7,"__esModule",{value:!0});q7.boolOrEmptySchema=q7.topBoolOrEmptySchema=void 0;var zA=z9(),AA=k(),LA=c0(),FA={message:"boolean schema is false"};function UA(Q){let{gen:X,schema:Y,validateName:W}=Q;if(Y===!1)O7(Q,!1);else if(typeof Y=="object"&&Y.$async===!0)X.return(LA.default.data);else X.assign(AA._`${W}.errors`,null),X.return(!0)}q7.topBoolOrEmptySchema=UA;function DA(Q,X){let{gen:Y,schema:W}=Q;if(W===!1)Y.var(X,!1),O7(Q);else Y.var(X,!0)}q7.boolOrEmptySchema=DA;function O7(Q,X){let{gen:Y,data:W}=Q,J={gen:Y,keyword:"false schema",data:W,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:Q};zA.reportError(J,FA,void 0,X)}});var E8=M((w7)=>{Object.defineProperty(w7,"__esModule",{value:!0});w7.getRules=w7.isJSONType=void 0;var ZA=["string","number","integer","boolean","null","object","array"],OA=new Set(ZA);function qA(Q){return typeof Q=="string"&&OA.has(Q)}w7.isJSONType=qA;function MA(){let Q={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...Q,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},Q.number,Q.string,Q.array,Q.object],post:{rules:[]},all:{},keywords:{}}}w7.getRules=MA});var b8=M((b7)=>{Object.defineProperty(b7,"__esModule",{value:!0});b7.shouldUseRule=b7.shouldUseGroup=b7.schemaHasRulesForType=void 0;function wA({schema:Q,self:X},Y){let W=X.RULES.types[Y];return W&&W!==!0&&I7(Q,W)}b7.schemaHasRulesForType=wA;function I7(Q,X){return X.rules.some((Y)=>E7(Q,Y))}b7.shouldUseGroup=I7;function E7(Q,X){var Y;return Q[X.keyword]!==void 0||((Y=X.definition.implements)===null||Y===void 0?void 0:Y.some((W)=>Q[W]!==void 0))}b7.shouldUseRule=E7});var A9=M((C7)=>{Object.defineProperty(C7,"__esModule",{value:!0});C7.reportTypeError=C7.checkDataTypes=C7.checkDataType=C7.coerceAndCheckDataType=C7.getJSONTypes=C7.getSchemaTypes=C7.DataType=void 0;var EA=E8(),bA=b8(),TA=z9(),S=k(),j7=h(),b1;(function(Q){Q[Q.Correct=0]="Correct",Q[Q.Wrong=1]="Wrong"})(b1||(C7.DataType=b1={}));function jA(Q){let X=R7(Q.type);if(X.includes("null")){if(Q.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!X.length&&Q.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');if(Q.nullable===!0)X.push("null")}return X}C7.getSchemaTypes=jA;function R7(Q){let X=Array.isArray(Q)?Q:Q?[Q]:[];if(X.every(EA.isJSONType))return X;throw new Error("type must be JSONType or JSONType[]: "+X.join(","))}C7.getJSONTypes=R7;function RA(Q,X){let{gen:Y,data:W,opts:J}=Q,G=SA(X,J.coerceTypes),H=X.length>0&&!(G.length===0&&X.length===1&&bA.schemaHasRulesForType(Q,X[0]));if(H){let $=j8(X,W,J.strictNumbers,b1.Wrong);Y.if($,()=>{if(G.length)CA(Q,X,G);else R8(Q)})}return H}C7.coerceAndCheckDataType=RA;var S7=new Set(["string","number","integer","boolean","null"]);function SA(Q,X){return X?Q.filter((Y)=>S7.has(Y)||X==="array"&&Y==="array"):[]}function CA(Q,X,Y){let{gen:W,data:J,opts:G}=Q,H=W.let("dataType",S._`typeof ${J}`),$=W.let("coerced",S._`undefined`);if(G.coerceTypes==="array")W.if(S._`${H} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>W.assign(J,S._`${J}[0]`).assign(H,S._`typeof ${J}`).if(j8(X,J,G.strictNumbers),()=>W.assign($,J)));W.if(S._`${$} !== undefined`);for(let B of Y)if(S7.has(B)||B==="array"&&G.coerceTypes==="array")K(B);W.else(),R8(Q),W.endIf(),W.if(S._`${$} !== undefined`,()=>{W.assign(J,$),kA(Q,$)});function K(B){switch(B){case"string":W.elseIf(S._`${H} == "number" || ${H} == "boolean"`).assign($,S._`"" + ${J}`).elseIf(S._`${J} === null`).assign($,S._`""`);return;case"number":W.elseIf(S._`${H} == "boolean" || ${J} === null
4
+ || (${H} == "string" && ${J} && ${J} == +${J})`).assign($,S._`+${J}`);return;case"integer":W.elseIf(S._`${H} === "boolean" || ${J} === null
5
+ || (${H} === "string" && ${J} && ${J} == +${J} && !(${J} % 1))`).assign($,S._`+${J}`);return;case"boolean":W.elseIf(S._`${J} === "false" || ${J} === 0 || ${J} === null`).assign($,!1).elseIf(S._`${J} === "true" || ${J} === 1`).assign($,!0);return;case"null":W.elseIf(S._`${J} === "" || ${J} === 0 || ${J} === false`),W.assign($,null);return;case"array":W.elseIf(S._`${H} === "string" || ${H} === "number"
6
+ || ${H} === "boolean" || ${J} === null`).assign($,S._`[${J}]`)}}}function kA({gen:Q,parentData:X,parentDataProperty:Y},W){Q.if(S._`${X} !== undefined`,()=>Q.assign(S._`${X}[${Y}]`,W))}function T8(Q,X,Y,W=b1.Correct){let J=W===b1.Correct?S.operators.EQ:S.operators.NEQ,G;switch(Q){case"null":return S._`${X} ${J} null`;case"array":G=S._`Array.isArray(${X})`;break;case"object":G=S._`${X} && typeof ${X} == "object" && !Array.isArray(${X})`;break;case"integer":G=H(S._`!(${X} % 1) && !isNaN(${X})`);break;case"number":G=H();break;default:return S._`typeof ${X} ${J} ${Q}`}return W===b1.Correct?G:S.not(G);function H($=S.nil){return S.and(S._`typeof ${X} == "number"`,$,Y?S._`isFinite(${X})`:S.nil)}}C7.checkDataType=T8;function j8(Q,X,Y,W){if(Q.length===1)return T8(Q[0],X,Y,W);let J,G=j7.toHash(Q);if(G.array&&G.object){let H=S._`typeof ${X} != "object"`;J=G.null?H:S._`!${X} || ${H}`,delete G.null,delete G.array,delete G.object}else J=S.nil;if(G.number)delete G.integer;for(let H in G)J=S.and(J,T8(H,X,Y,W));return J}C7.checkDataTypes=j8;var vA={message:({schema:Q})=>`must be ${Q}`,params:({schema:Q,schemaValue:X})=>typeof Q=="string"?S._`{type: ${Q}}`:S._`{type: ${X}}`};function R8(Q){let X=_A(Q);TA.reportError(X,vA)}C7.reportTypeError=R8;function _A(Q){let{gen:X,data:Y,schema:W}=Q,J=j7.schemaRefOrVal(Q,W,"type");return{gen:X,keyword:"type",data:Y,schema:W.type,schemaCode:J,schemaValue:J,parentSchema:W,params:{},it:Q}}});var g7=M((_7)=>{Object.defineProperty(_7,"__esModule",{value:!0});_7.assignDefaults=void 0;var T1=k(),lA=h();function mA(Q,X){let{properties:Y,items:W}=Q.schema;if(X==="object"&&Y)for(let J in Y)v7(Q,J,Y[J].default);else if(X==="array"&&Array.isArray(W))W.forEach((J,G)=>v7(Q,G,J.default))}_7.assignDefaults=mA;function v7(Q,X,Y){let{gen:W,compositeRule:J,data:G,opts:H}=Q;if(Y===void 0)return;let $=T1._`${G}${T1.getProperty(X)}`;if(J){lA.checkStrictMode(Q,`default is ignored for: ${$}`);return}let K=T1._`${$} === undefined`;if(H.useDefaults==="empty")K=T1._`${K} || ${$} === null || ${$} === ""`;W.if(K,T1._`${$} = ${T1.stringify(Y)}`)}});var N0=M((u7)=>{Object.defineProperty(u7,"__esModule",{value:!0});u7.validateUnion=u7.validateArray=u7.usePattern=u7.callValidateCode=u7.schemaProperties=u7.allSchemaProperties=u7.noPropertyInData=u7.propertyInData=u7.isOwnProperty=u7.hasPropFunc=u7.reportMissingProp=u7.checkMissingProp=u7.checkReportMissingProp=void 0;var d=k(),S8=h(),W1=c0(),cA=h();function pA(Q,X){let{gen:Y,data:W,it:J}=Q;Y.if(k8(Y,W,X,J.opts.ownProperties),()=>{Q.setParams({missingProperty:d._`${X}`},!0),Q.error()})}u7.checkReportMissingProp=pA;function dA({gen:Q,data:X,it:{opts:Y}},W,J){return d.or(...W.map((G)=>d.and(k8(Q,X,G,Y.ownProperties),d._`${J} = ${G}`)))}u7.checkMissingProp=dA;function iA(Q,X){Q.setParams({missingProperty:X},!0),Q.error()}u7.reportMissingProp=iA;function y7(Q){return Q.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:d._`Object.prototype.hasOwnProperty`})}u7.hasPropFunc=y7;function C8(Q,X,Y){return d._`${y7(Q)}.call(${X}, ${Y})`}u7.isOwnProperty=C8;function rA(Q,X,Y,W){let J=d._`${X}${d.getProperty(Y)} !== undefined`;return W?d._`${J} && ${C8(Q,X,Y)}`:J}u7.propertyInData=rA;function k8(Q,X,Y,W){let J=d._`${X}${d.getProperty(Y)} === undefined`;return W?d.or(J,d.not(C8(Q,X,Y))):J}u7.noPropertyInData=k8;function h7(Q){return Q?Object.keys(Q).filter((X)=>X!=="__proto__"):[]}u7.allSchemaProperties=h7;function nA(Q,X){return h7(X).filter((Y)=>!S8.alwaysValidSchema(Q,X[Y]))}u7.schemaProperties=nA;function oA({schemaCode:Q,data:X,it:{gen:Y,topSchemaRef:W,schemaPath:J,errorPath:G},it:H},$,K,B){let z=B?d._`${Q}, ${X}, ${W}${J}`:X,A=[[W1.default.instancePath,d.strConcat(W1.default.instancePath,G)],[W1.default.parentData,H.parentData],[W1.default.parentDataProperty,H.parentDataProperty],[W1.default.rootData,W1.default.rootData]];if(H.opts.dynamicRef)A.push([W1.default.dynamicAnchors,W1.default.dynamicAnchors]);let F=d._`${z}, ${Y.object(...A)}`;return K!==d.nil?d._`${$}.call(${K}, ${F})`:d._`${$}(${F})`}u7.callValidateCode=oA;var tA=d._`new RegExp`;function aA({gen:Q,it:{opts:X}},Y){let W=X.unicodeRegExp?"u":"",{regExp:J}=X.code,G=J(Y,W);return Q.scopeValue("pattern",{key:G.toString(),ref:G,code:d._`${J.code==="new RegExp"?tA:cA.useFunc(Q,J)}(${Y}, ${W})`})}u7.usePattern=aA;function sA(Q){let{gen:X,data:Y,keyword:W,it:J}=Q,G=X.name("valid");if(J.allErrors){let $=X.let("valid",!0);return H(()=>X.assign($,!1)),$}return X.var(G,!0),H(()=>X.break()),G;function H($){let K=X.const("len",d._`${Y}.length`);X.forRange("i",0,K,(B)=>{Q.subschema({keyword:W,dataProp:B,dataPropType:S8.Type.Num},G),X.if(d.not(G),$)})}}u7.validateArray=sA;function eA(Q){let{gen:X,schema:Y,keyword:W,it:J}=Q;if(!Array.isArray(Y))throw new Error("ajv implementation error");if(Y.some((K)=>S8.alwaysValidSchema(J,K))&&!J.opts.unevaluated)return;let H=X.let("valid",!1),$=X.name("_valid");X.block(()=>Y.forEach((K,B)=>{let z=Q.subschema({keyword:W,schemaProp:B,compositeRule:!0},$);if(X.assign(H,d._`${H} || ${$}`),!Q.mergeValidEvaluated(z,$))X.if(d.not(H))})),Q.result(H,()=>Q.reset(),()=>Q.error(!0))}u7.validateUnion=eA});var d7=M((c7)=>{Object.defineProperty(c7,"__esModule",{value:!0});c7.validateKeywordUsage=c7.validSchemaType=c7.funcKeywordCode=c7.macroKeywordCode=void 0;var z0=k(),A1=c0(),LL=N0(),FL=z9();function UL(Q,X){let{gen:Y,keyword:W,schema:J,parentSchema:G,it:H}=Q,$=X.macro.call(H.self,J,G,H),K=m7(Y,W,$);if(H.opts.validateSchema!==!1)H.self.validateSchema($,!0);let B=Y.name("valid");Q.subschema({schema:$,schemaPath:z0.nil,errSchemaPath:`${H.errSchemaPath}/${W}`,topSchemaRef:K,compositeRule:!0},B),Q.pass(B,()=>Q.error(!0))}c7.macroKeywordCode=UL;function DL(Q,X){var Y;let{gen:W,keyword:J,schema:G,parentSchema:H,$data:$,it:K}=Q;ZL(K,X);let B=!$&&X.compile?X.compile.call(K.self,G,H,K):X.validate,z=m7(W,J,B),A=W.let("valid");Q.block$data(A,F),Q.ok((Y=X.valid)!==null&&Y!==void 0?Y:A);function F(){if(X.errors===!1){if(Z(),X.modifying)l7(Q);q(()=>Q.error())}else{let O=X.async?L():V();if(X.modifying)l7(Q);q(()=>VL(Q,O))}}function L(){let O=W.let("ruleErrs",null);return W.try(()=>Z(z0._`await `),(T)=>W.assign(A,!1).if(z0._`${T} instanceof ${K.ValidationError}`,()=>W.assign(O,z0._`${T}.errors`),()=>W.throw(T))),O}function V(){let O=z0._`${z}.errors`;return W.assign(O,null),Z(z0.nil),O}function Z(O=X.async?z0._`await `:z0.nil){let T=K.opts.passContext?A1.default.this:A1.default.self,E=!(("compile"in X)&&!$||X.schema===!1);W.assign(A,z0._`${O}${LL.callValidateCode(Q,z,T,E)}`,X.modifying)}function q(O){var T;W.if(z0.not((T=X.valid)!==null&&T!==void 0?T:A),O)}}c7.funcKeywordCode=DL;function l7(Q){let{gen:X,data:Y,it:W}=Q;X.if(W.parentData,()=>X.assign(Y,z0._`${W.parentData}[${W.parentDataProperty}]`))}function VL(Q,X){let{gen:Y}=Q;Y.if(z0._`Array.isArray(${X})`,()=>{Y.assign(A1.default.vErrors,z0._`${A1.default.vErrors} === null ? ${X} : ${A1.default.vErrors}.concat(${X})`).assign(A1.default.errors,z0._`${A1.default.vErrors}.length`),FL.extendErrors(Q)},()=>Q.error())}function ZL({schemaEnv:Q},X){if(X.async&&!Q.$async)throw new Error("async keyword in sync schema")}function m7(Q,X,Y){if(Y===void 0)throw new Error(`keyword "${X}" failed to compile`);return Q.scopeValue("keyword",typeof Y=="function"?{ref:Y}:{ref:Y,code:z0.stringify(Y)})}function OL(Q,X,Y=!1){return!X.length||X.some((W)=>W==="array"?Array.isArray(Q):W==="object"?Q&&typeof Q=="object"&&!Array.isArray(Q):typeof Q==W||Y&&typeof Q=="undefined")}c7.validSchemaType=OL;function qL({schema:Q,opts:X,self:Y,errSchemaPath:W},J,G){if(Array.isArray(J.keyword)?!J.keyword.includes(G):J.keyword!==G)throw new Error("ajv implementation error");let H=J.dependencies;if(H===null||H===void 0?void 0:H.some(($)=>!Object.prototype.hasOwnProperty.call(Q,$)))throw new Error(`parent schema must have dependencies of ${G}: ${H.join(",")}`);if(J.validateSchema){if(!J.validateSchema(Q[G])){let K=`keyword "${G}" value is invalid at path "${W}": `+Y.errorsText(J.validateSchema.errors);if(X.validateSchema==="log")Y.logger.error(K);else throw new Error(K)}}}c7.validateKeywordUsage=qL});var o7=M((r7)=>{Object.defineProperty(r7,"__esModule",{value:!0});r7.extendSubschemaMode=r7.extendSubschemaData=r7.getSubschema=void 0;var _0=k(),i7=h();function PL(Q,{keyword:X,schemaProp:Y,schema:W,schemaPath:J,errSchemaPath:G,topSchemaRef:H}){if(X!==void 0&&W!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(X!==void 0){let $=Q.schema[X];return Y===void 0?{schema:$,schemaPath:_0._`${Q.schemaPath}${_0.getProperty(X)}`,errSchemaPath:`${Q.errSchemaPath}/${X}`}:{schema:$[Y],schemaPath:_0._`${Q.schemaPath}${_0.getProperty(X)}${_0.getProperty(Y)}`,errSchemaPath:`${Q.errSchemaPath}/${X}/${i7.escapeFragment(Y)}`}}if(W!==void 0){if(J===void 0||G===void 0||H===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:W,schemaPath:J,topSchemaRef:H,errSchemaPath:G}}throw new Error('either "keyword" or "schema" must be passed')}r7.getSubschema=PL;function IL(Q,X,{dataProp:Y,dataPropType:W,data:J,dataTypes:G,propertyName:H}){if(J!==void 0&&Y!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:$}=X;if(Y!==void 0){let{errorPath:B,dataPathArr:z,opts:A}=X,F=$.let("data",_0._`${X.data}${_0.getProperty(Y)}`,!0);K(F),Q.errorPath=_0.str`${B}${i7.getErrorPath(Y,W,A.jsPropertySyntax)}`,Q.parentDataProperty=_0._`${Y}`,Q.dataPathArr=[...z,Q.parentDataProperty]}if(J!==void 0){let B=J instanceof _0.Name?J:$.let("data",J,!0);if(K(B),H!==void 0)Q.propertyName=H}if(G)Q.dataTypes=G;function K(B){Q.data=B,Q.dataLevel=X.dataLevel+1,Q.dataTypes=[],X.definedProperties=new Set,Q.parentData=X.data,Q.dataNames=[...X.dataNames,B]}}r7.extendSubschemaData=IL;function EL(Q,{jtdDiscriminator:X,jtdMetadata:Y,compositeRule:W,createErrors:J,allErrors:G}){if(W!==void 0)Q.compositeRule=W;if(J!==void 0)Q.createErrors=J;if(G!==void 0)Q.allErrors=G;Q.jtdDiscriminator=X,Q.jtdMetadata=Y}r7.extendSubschemaMode=EL});var v8=M((mI,t7)=>{t7.exports=function Q(X,Y){if(X===Y)return!0;if(X&&Y&&typeof X=="object"&&typeof Y=="object"){if(X.constructor!==Y.constructor)return!1;var W,J,G;if(Array.isArray(X)){if(W=X.length,W!=Y.length)return!1;for(J=W;J--!==0;)if(!Q(X[J],Y[J]))return!1;return!0}if(X.constructor===RegExp)return X.source===Y.source&&X.flags===Y.flags;if(X.valueOf!==Object.prototype.valueOf)return X.valueOf()===Y.valueOf();if(X.toString!==Object.prototype.toString)return X.toString()===Y.toString();if(G=Object.keys(X),W=G.length,W!==Object.keys(Y).length)return!1;for(J=W;J--!==0;)if(!Object.prototype.hasOwnProperty.call(Y,G[J]))return!1;for(J=W;J--!==0;){var H=G[J];if(!Q(X[H],Y[H]))return!1}return!0}return X!==X&&Y!==Y}});var s7=M((cI,a7)=>{var J1=a7.exports=function(Q,X,Y){if(typeof X=="function")Y=X,X={};Y=X.cb||Y;var W=typeof Y=="function"?Y:Y.pre||function(){},J=Y.post||function(){};EQ(X,W,J,Q,"",Q)};J1.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};J1.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};J1.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};J1.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 EQ(Q,X,Y,W,J,G,H,$,K,B){if(W&&typeof W=="object"&&!Array.isArray(W)){X(W,J,G,H,$,K,B);for(var z in W){var A=W[z];if(Array.isArray(A)){if(z in J1.arrayKeywords)for(var F=0;F<A.length;F++)EQ(Q,X,Y,A[F],J+"/"+z+"/"+F,G,J,z,W,F)}else if(z in J1.propsKeywords){if(A&&typeof A=="object")for(var L in A)EQ(Q,X,Y,A[L],J+"/"+z+"/"+jL(L),G,J,z,W,L)}else if(z in J1.keywords||Q.allKeys&&!(z in J1.skipKeywords))EQ(Q,X,Y,A,J+"/"+z,G,J,z,W)}Y(W,J,G,H,$,K,B)}}function jL(Q){return Q.replace(/~/g,"~0").replace(/\//g,"~1")}});var L9=M((Y5)=>{Object.defineProperty(Y5,"__esModule",{value:!0});Y5.getSchemaRefs=Y5.resolveUrl=Y5.normalizeId=Y5._getFullPath=Y5.getFullPath=Y5.inlineRef=void 0;var RL=h(),SL=v8(),CL=s7(),kL=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function vL(Q,X=!0){if(typeof Q=="boolean")return!0;if(X===!0)return!_8(Q);if(!X)return!1;return e7(Q)<=X}Y5.inlineRef=vL;var _L=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function _8(Q){for(let X in Q){if(_L.has(X))return!0;let Y=Q[X];if(Array.isArray(Y)&&Y.some(_8))return!0;if(typeof Y=="object"&&_8(Y))return!0}return!1}function e7(Q){let X=0;for(let Y in Q){if(Y==="$ref")return 1/0;if(X++,kL.has(Y))continue;if(typeof Q[Y]=="object")RL.eachItem(Q[Y],(W)=>X+=e7(W));if(X===1/0)return 1/0}return X}function Q5(Q,X="",Y){if(Y!==!1)X=j1(X);let W=Q.parse(X);return X5(Q,W)}Y5.getFullPath=Q5;function X5(Q,X){return Q.serialize(X).split("#")[0]+"#"}Y5._getFullPath=X5;var xL=/#\/?$/;function j1(Q){return Q?Q.replace(xL,""):""}Y5.normalizeId=j1;function gL(Q,X,Y){return Y=j1(Y),Q.resolve(X,Y)}Y5.resolveUrl=gL;var yL=/^[a-z_][-a-z0-9._]*$/i;function hL(Q,X){if(typeof Q=="boolean")return{};let{schemaId:Y,uriResolver:W}=this.opts,J=j1(Q[Y]||X),G={"":J},H=Q5(W,J,!1),$={},K=new Set;return CL(Q,{allKeys:!0},(A,F,L,V)=>{if(V===void 0)return;let Z=H+F,q=G[V];if(typeof A[Y]=="string")q=O.call(this,A[Y]);T.call(this,A.$anchor),T.call(this,A.$dynamicAnchor),G[F]=q;function O(E){let R=this.opts.uriResolver.resolve;if(E=j1(q?R(q,E):E),K.has(E))throw z(E);K.add(E);let I=this.refs[E];if(typeof I=="string")I=this.refs[I];if(typeof I=="object")B(A,I.schema,E);else if(E!==j1(Z))if(E[0]==="#")B(A,$[E],E),$[E]=A;else this.refs[E]=Z;return E}function T(E){if(typeof E=="string"){if(!yL.test(E))throw new Error(`invalid anchor "${E}"`);O.call(this,`#${E}`)}}}),$;function B(A,F,L){if(F!==void 0&&!SL(A,F))throw z(L)}function z(A){return new Error(`reference "${A}" resolves to more than one schema`)}}Y5.getSchemaRefs=hL});var D9=M((O5)=>{Object.defineProperty(O5,"__esModule",{value:!0});O5.getData=O5.KeywordCxt=O5.validateFunctionCode=void 0;var K5=N7(),J5=A9(),g8=b8(),bQ=A9(),pL=g7(),U9=d7(),x8=o7(),P=k(),j=c0(),dL=L9(),p0=h(),F9=z9();function iL(Q){if(A5(Q)){if(L5(Q),z5(Q)){oL(Q);return}}B5(Q,()=>K5.topBoolOrEmptySchema(Q))}O5.validateFunctionCode=iL;function B5({gen:Q,validateName:X,schema:Y,schemaEnv:W,opts:J},G){if(J.code.es5)Q.func(X,P._`${j.default.data}, ${j.default.valCxt}`,W.$async,()=>{Q.code(P._`"use strict"; ${G5(Y,J)}`),nL(Q,J),Q.code(G)});else Q.func(X,P._`${j.default.data}, ${rL(J)}`,W.$async,()=>Q.code(G5(Y,J)).code(G))}function rL(Q){return P._`{${j.default.instancePath}="", ${j.default.parentData}, ${j.default.parentDataProperty}, ${j.default.rootData}=${j.default.data}${Q.dynamicRef?P._`, ${j.default.dynamicAnchors}={}`:P.nil}}={}`}function nL(Q,X){Q.if(j.default.valCxt,()=>{if(Q.var(j.default.instancePath,P._`${j.default.valCxt}.${j.default.instancePath}`),Q.var(j.default.parentData,P._`${j.default.valCxt}.${j.default.parentData}`),Q.var(j.default.parentDataProperty,P._`${j.default.valCxt}.${j.default.parentDataProperty}`),Q.var(j.default.rootData,P._`${j.default.valCxt}.${j.default.rootData}`),X.dynamicRef)Q.var(j.default.dynamicAnchors,P._`${j.default.valCxt}.${j.default.dynamicAnchors}`)},()=>{if(Q.var(j.default.instancePath,P._`""`),Q.var(j.default.parentData,P._`undefined`),Q.var(j.default.parentDataProperty,P._`undefined`),Q.var(j.default.rootData,j.default.data),X.dynamicRef)Q.var(j.default.dynamicAnchors,P._`{}`)})}function oL(Q){let{schema:X,opts:Y,gen:W}=Q;B5(Q,()=>{if(Y.$comment&&X.$comment)U5(Q);if(QF(Q),W.let(j.default.vErrors,null),W.let(j.default.errors,0),Y.unevaluated)tL(Q);F5(Q),WF(Q)});return}function tL(Q){let{gen:X,validateName:Y}=Q;Q.evaluated=X.const("evaluated",P._`${Y}.evaluated`),X.if(P._`${Q.evaluated}.dynamicProps`,()=>X.assign(P._`${Q.evaluated}.props`,P._`undefined`)),X.if(P._`${Q.evaluated}.dynamicItems`,()=>X.assign(P._`${Q.evaluated}.items`,P._`undefined`))}function G5(Q,X){let Y=typeof Q=="object"&&Q[X.schemaId];return Y&&(X.code.source||X.code.process)?P._`/*# sourceURL=${Y} */`:P.nil}function aL(Q,X){if(A5(Q)){if(L5(Q),z5(Q)){sL(Q,X);return}}K5.boolOrEmptySchema(Q,X)}function z5({schema:Q,self:X}){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X.RULES.all[Y])return!0;return!1}function A5(Q){return typeof Q.schema!="boolean"}function sL(Q,X){let{schema:Y,gen:W,opts:J}=Q;if(J.$comment&&Y.$comment)U5(Q);XF(Q),YF(Q);let G=W.const("_errs",j.default.errors);F5(Q,G),W.var(X,P._`${G} === ${j.default.errors}`)}function L5(Q){p0.checkUnknownRules(Q),eL(Q)}function F5(Q,X){if(Q.opts.jtd)return H5(Q,[],!1,X);let Y=J5.getSchemaTypes(Q.schema),W=J5.coerceAndCheckDataType(Q,Y);H5(Q,Y,!W,X)}function eL(Q){let{schema:X,errSchemaPath:Y,opts:W,self:J}=Q;if(X.$ref&&W.ignoreKeywordsWithRef&&p0.schemaHasRulesButRef(X,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${Y}"`)}function QF(Q){let{schema:X,opts:Y}=Q;if(X.default!==void 0&&Y.useDefaults&&Y.strictSchema)p0.checkStrictMode(Q,"default is ignored in the schema root")}function XF(Q){let X=Q.schema[Q.opts.schemaId];if(X)Q.baseId=dL.resolveUrl(Q.opts.uriResolver,Q.baseId,X)}function YF(Q){if(Q.schema.$async&&!Q.schemaEnv.$async)throw new Error("async schema in sync schema")}function U5({gen:Q,schemaEnv:X,schema:Y,errSchemaPath:W,opts:J}){let G=Y.$comment;if(J.$comment===!0)Q.code(P._`${j.default.self}.logger.log(${G})`);else if(typeof J.$comment=="function"){let H=P.str`${W}/$comment`,$=Q.scopeValue("root",{ref:X.root});Q.code(P._`${j.default.self}.opts.$comment(${G}, ${H}, ${$}.schema)`)}}function WF(Q){let{gen:X,schemaEnv:Y,validateName:W,ValidationError:J,opts:G}=Q;if(Y.$async)X.if(P._`${j.default.errors} === 0`,()=>X.return(j.default.data),()=>X.throw(P._`new ${J}(${j.default.vErrors})`));else{if(X.assign(P._`${W}.errors`,j.default.vErrors),G.unevaluated)JF(Q);X.return(P._`${j.default.errors} === 0`)}}function JF({gen:Q,evaluated:X,props:Y,items:W}){if(Y instanceof P.Name)Q.assign(P._`${X}.props`,Y);if(W instanceof P.Name)Q.assign(P._`${X}.items`,W)}function H5(Q,X,Y,W){let{gen:J,schema:G,data:H,allErrors:$,opts:K,self:B}=Q,{RULES:z}=B;if(G.$ref&&(K.ignoreKeywordsWithRef||!p0.schemaHasRulesButRef(G,z))){J.block(()=>V5(Q,"$ref",z.all.$ref.definition));return}if(!K.jtd)GF(Q,X);J.block(()=>{for(let F of z.rules)A(F);A(z.post)});function A(F){if(!g8.shouldUseGroup(G,F))return;if(F.type){if(J.if(bQ.checkDataType(F.type,H,K.strictNumbers)),$5(Q,F),X.length===1&&X[0]===F.type&&Y)J.else(),bQ.reportTypeError(Q);J.endIf()}else $5(Q,F);if(!$)J.if(P._`${j.default.errors} === ${W||0}`)}}function $5(Q,X){let{gen:Y,schema:W,opts:{useDefaults:J}}=Q;if(J)pL.assignDefaults(Q,X.type);Y.block(()=>{for(let G of X.rules)if(g8.shouldUseRule(W,G))V5(Q,G.keyword,G.definition,X.type)})}function GF(Q,X){if(Q.schemaEnv.meta||!Q.opts.strictTypes)return;if(HF(Q,X),!Q.opts.allowUnionTypes)$F(Q,X);KF(Q,Q.dataTypes)}function HF(Q,X){if(!X.length)return;if(!Q.dataTypes.length){Q.dataTypes=X;return}X.forEach((Y)=>{if(!D5(Q.dataTypes,Y))y8(Q,`type "${Y}" not allowed by context "${Q.dataTypes.join(",")}"`)}),zF(Q,X)}function $F(Q,X){if(X.length>1&&!(X.length===2&&X.includes("null")))y8(Q,"use allowUnionTypes to allow union type keyword")}function KF(Q,X){let Y=Q.self.RULES.all;for(let W in Y){let J=Y[W];if(typeof J=="object"&&g8.shouldUseRule(Q.schema,J)){let{type:G}=J.definition;if(G.length&&!G.some((H)=>BF(X,H)))y8(Q,`missing type "${G.join(",")}" for keyword "${W}"`)}}}function BF(Q,X){return Q.includes(X)||X==="number"&&Q.includes("integer")}function D5(Q,X){return Q.includes(X)||X==="integer"&&Q.includes("number")}function zF(Q,X){let Y=[];for(let W of Q.dataTypes)if(D5(X,W))Y.push(W);else if(X.includes("integer")&&W==="number")Y.push("integer");Q.dataTypes=Y}function y8(Q,X){let Y=Q.schemaEnv.baseId+Q.errSchemaPath;X+=` at "${Y}" (strictTypes)`,p0.checkStrictMode(Q,X,Q.opts.strictTypes)}class h8{constructor(Q,X,Y){if(U9.validateKeywordUsage(Q,X,Y),this.gen=Q.gen,this.allErrors=Q.allErrors,this.keyword=Y,this.data=Q.data,this.schema=Q.schema[Y],this.$data=X.$data&&Q.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=p0.schemaRefOrVal(Q,this.schema,Y,this.$data),this.schemaType=X.schemaType,this.parentSchema=Q.schema,this.params={},this.it=Q,this.def=X,this.$data)this.schemaCode=Q.gen.const("vSchema",Z5(this.$data,Q));else if(this.schemaCode=this.schemaValue,!U9.validSchemaType(this.schema,X.schemaType,X.allowUndefined))throw new Error(`${Y} value must be ${JSON.stringify(X.schemaType)}`);if("code"in X?X.trackErrors:X.errors!==!1)this.errsCount=Q.gen.const("_errs",j.default.errors)}result(Q,X,Y){this.failResult(P.not(Q),X,Y)}failResult(Q,X,Y){if(this.gen.if(Q),Y)Y();else this.error();if(X){if(this.gen.else(),X(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(Q,X){this.failResult(P.not(Q),void 0,X)}fail(Q){if(Q===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(Q),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(Q){if(!this.$data)return this.fail(Q);let{schemaCode:X}=this;this.fail(P._`${X} !== undefined && (${P.or(this.invalid$data(),Q)})`)}error(Q,X,Y){if(X){this.setParams(X),this._error(Q,Y),this.setParams({});return}this._error(Q,Y)}_error(Q,X){(Q?F9.reportExtraError:F9.reportError)(this,this.def.error,X)}$dataError(){F9.reportError(this,this.def.$dataError||F9.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');F9.resetErrorsCount(this.gen,this.errsCount)}ok(Q){if(!this.allErrors)this.gen.if(Q)}setParams(Q,X){if(X)Object.assign(this.params,Q);else this.params=Q}block$data(Q,X,Y=P.nil){this.gen.block(()=>{this.check$data(Q,Y),X()})}check$data(Q=P.nil,X=P.nil){if(!this.$data)return;let{gen:Y,schemaCode:W,schemaType:J,def:G}=this;if(Y.if(P.or(P._`${W} === undefined`,X)),Q!==P.nil)Y.assign(Q,!0);if(J.length||G.validateSchema){if(Y.elseIf(this.invalid$data()),this.$dataError(),Q!==P.nil)Y.assign(Q,!1)}Y.else()}invalid$data(){let{gen:Q,schemaCode:X,schemaType:Y,def:W,it:J}=this;return P.or(G(),H());function G(){if(Y.length){if(!(X instanceof P.Name))throw new Error("ajv implementation error");let $=Array.isArray(Y)?Y:[Y];return P._`${bQ.checkDataTypes($,X,J.opts.strictNumbers,bQ.DataType.Wrong)}`}return P.nil}function H(){if(W.validateSchema){let $=Q.scopeValue("validate$data",{ref:W.validateSchema});return P._`!${$}(${X})`}return P.nil}}subschema(Q,X){let Y=x8.getSubschema(this.it,Q);x8.extendSubschemaData(Y,this.it,Q),x8.extendSubschemaMode(Y,Q);let W={...this.it,...Y,items:void 0,props:void 0};return aL(W,X),W}mergeEvaluated(Q,X){let{it:Y,gen:W}=this;if(!Y.opts.unevaluated)return;if(Y.props!==!0&&Q.props!==void 0)Y.props=p0.mergeEvaluated.props(W,Q.props,Y.props,X);if(Y.items!==!0&&Q.items!==void 0)Y.items=p0.mergeEvaluated.items(W,Q.items,Y.items,X)}mergeValidEvaluated(Q,X){let{it:Y,gen:W}=this;if(Y.opts.unevaluated&&(Y.props!==!0||Y.items!==!0))return W.if(X,()=>this.mergeEvaluated(Q,P.Name)),!0}}O5.KeywordCxt=h8;function V5(Q,X,Y,W){let J=new h8(Q,Y,X);if("code"in Y)Y.code(J,W);else if(J.$data&&Y.validate)U9.funcKeywordCode(J,Y);else if("macro"in Y)U9.macroKeywordCode(J,Y);else if(Y.compile||Y.validate)U9.funcKeywordCode(J,Y)}var AF=/^\/(?:[^~]|~0|~1)*$/,LF=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Z5(Q,{dataLevel:X,dataNames:Y,dataPathArr:W}){let J,G;if(Q==="")return j.default.rootData;if(Q[0]==="/"){if(!AF.test(Q))throw new Error(`Invalid JSON-pointer: ${Q}`);J=Q,G=j.default.rootData}else{let B=LF.exec(Q);if(!B)throw new Error(`Invalid JSON-pointer: ${Q}`);let z=+B[1];if(J=B[2],J==="#"){if(z>=X)throw new Error(K("property/index",z));return W[X-z]}if(z>X)throw new Error(K("data",z));if(G=Y[X-z],!J)return G}let H=G,$=J.split("/");for(let B of $)if(B)G=P._`${G}${P.getProperty(p0.unescapeJsonPointer(B))}`,H=P._`${H} && ${G}`;return H;function K(B,z){return`Cannot access ${B} ${z} levels up, current level is ${X}`}}O5.getData=Z5});var TQ=M((N5)=>{Object.defineProperty(N5,"__esModule",{value:!0});class M5 extends Error{constructor(Q){super("validation failed");this.errors=Q,this.ajv=this.validation=!0}}N5.default=M5});var V9=M((P5)=>{Object.defineProperty(P5,"__esModule",{value:!0});var u8=L9();class w5 extends Error{constructor(Q,X,Y,W){super(W||`can't resolve reference ${Y} from id ${X}`);this.missingRef=u8.resolveUrl(Q,X,Y),this.missingSchema=u8.normalizeId(u8.getFullPath(Q,this.missingRef))}}P5.default=w5});var RQ=M((b5)=>{Object.defineProperty(b5,"__esModule",{value:!0});b5.resolveSchema=b5.getCompilingSchema=b5.resolveRef=b5.compileSchema=b5.SchemaEnv=void 0;var S0=k(),ZF=TQ(),L1=c0(),C0=L9(),I5=h(),OF=D9();class Z9{constructor(Q){var X;this.refs={},this.dynamicAnchors={};let Y;if(typeof Q.schema=="object")Y=Q.schema;this.schema=Q.schema,this.schemaId=Q.schemaId,this.root=Q.root||this,this.baseId=(X=Q.baseId)!==null&&X!==void 0?X:C0.normalizeId(Y===null||Y===void 0?void 0:Y[Q.schemaId||"$id"]),this.schemaPath=Q.schemaPath,this.localRefs=Q.localRefs,this.meta=Q.meta,this.$async=Y===null||Y===void 0?void 0:Y.$async,this.refs={}}}b5.SchemaEnv=Z9;function l8(Q){let X=E5.call(this,Q);if(X)return X;let Y=C0.getFullPath(this.opts.uriResolver,Q.root.baseId),{es5:W,lines:J}=this.opts.code,{ownProperties:G}=this.opts,H=new S0.CodeGen(this.scope,{es5:W,lines:J,ownProperties:G}),$;if(Q.$async)$=H.scopeValue("Error",{ref:ZF.default,code:S0._`require("ajv/dist/runtime/validation_error").default`});let K=H.scopeName("validate");Q.validateName=K;let B={gen:H,allErrors:this.opts.allErrors,data:L1.default.data,parentData:L1.default.parentData,parentDataProperty:L1.default.parentDataProperty,dataNames:[L1.default.data],dataPathArr:[S0.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:H.scopeValue("schema",this.opts.code.source===!0?{ref:Q.schema,code:S0.stringify(Q.schema)}:{ref:Q.schema}),validateName:K,ValidationError:$,schema:Q.schema,schemaEnv:Q,rootId:Y,baseId:Q.baseId||Y,schemaPath:S0.nil,errSchemaPath:Q.schemaPath||(this.opts.jtd?"":"#"),errorPath:S0._`""`,opts:this.opts,self:this},z;try{this._compilations.add(Q),OF.validateFunctionCode(B),H.optimize(this.opts.code.optimize);let A=H.toString();if(z=`${H.scopeRefs(L1.default.scope)}return ${A}`,this.opts.code.process)z=this.opts.code.process(z,Q);let L=new Function(`${L1.default.self}`,`${L1.default.scope}`,z)(this,this.scope.get());if(this.scope.value(K,{ref:L}),L.errors=null,L.schema=Q.schema,L.schemaEnv=Q,Q.$async)L.$async=!0;if(this.opts.code.source===!0)L.source={validateName:K,validateCode:A,scopeValues:H._values};if(this.opts.unevaluated){let{props:V,items:Z}=B;if(L.evaluated={props:V instanceof S0.Name?void 0:V,items:Z instanceof S0.Name?void 0:Z,dynamicProps:V instanceof S0.Name,dynamicItems:Z instanceof S0.Name},L.source)L.source.evaluated=S0.stringify(L.evaluated)}return Q.validate=L,Q}catch(A){if(delete Q.validate,delete Q.validateName,z)this.logger.error("Error compiling schema, function code:",z);throw A}finally{this._compilations.delete(Q)}}b5.compileSchema=l8;function qF(Q,X,Y){var W;Y=C0.resolveUrl(this.opts.uriResolver,X,Y);let J=Q.refs[Y];if(J)return J;let G=wF.call(this,Q,Y);if(G===void 0){let H=(W=Q.localRefs)===null||W===void 0?void 0:W[Y],{schemaId:$}=this.opts;if(H)G=new Z9({schema:H,schemaId:$,root:Q,baseId:X})}if(G===void 0)return;return Q.refs[Y]=MF.call(this,G)}b5.resolveRef=qF;function MF(Q){if(C0.inlineRef(Q.schema,this.opts.inlineRefs))return Q.schema;return Q.validate?Q:l8.call(this,Q)}function E5(Q){for(let X of this._compilations)if(NF(X,Q))return X}b5.getCompilingSchema=E5;function NF(Q,X){return Q.schema===X.schema&&Q.root===X.root&&Q.baseId===X.baseId}function wF(Q,X){let Y;while(typeof(Y=this.refs[X])=="string")X=Y;return Y||this.schemas[X]||jQ.call(this,Q,X)}function jQ(Q,X){let Y=this.opts.uriResolver.parse(X),W=C0._getFullPath(this.opts.uriResolver,Y),J=C0.getFullPath(this.opts.uriResolver,Q.baseId,void 0);if(Object.keys(Q.schema).length>0&&W===J)return f8.call(this,Y,Q);let G=C0.normalizeId(W),H=this.refs[G]||this.schemas[G];if(typeof H=="string"){let $=jQ.call(this,Q,H);if(typeof($===null||$===void 0?void 0:$.schema)!=="object")return;return f8.call(this,Y,$)}if(typeof(H===null||H===void 0?void 0:H.schema)!=="object")return;if(!H.validate)l8.call(this,H);if(G===C0.normalizeId(X)){let{schema:$}=H,{schemaId:K}=this.opts,B=$[K];if(B)J=C0.resolveUrl(this.opts.uriResolver,J,B);return new Z9({schema:$,schemaId:K,root:Q,baseId:J})}return f8.call(this,Y,H)}b5.resolveSchema=jQ;var PF=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function f8(Q,{baseId:X,schema:Y,root:W}){var J;if(((J=Q.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let $ of Q.fragment.slice(1).split("/")){if(typeof Y==="boolean")return;let K=Y[I5.unescapeFragment($)];if(K===void 0)return;Y=K;let B=typeof Y==="object"&&Y[this.opts.schemaId];if(!PF.has($)&&B)X=C0.resolveUrl(this.opts.uriResolver,X,B)}let G;if(typeof Y!="boolean"&&Y.$ref&&!I5.schemaHasRulesButRef(Y,this.RULES)){let $=C0.resolveUrl(this.opts.uriResolver,X,Y.$ref);G=jQ.call(this,W,$)}let{schemaId:H}=this.opts;if(G=G||new Z9({schema:Y,schemaId:H,root:W,baseId:X}),G.schema!==G.root.schema)return G;return}});var j5=M((oI,jF)=>{jF.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 c8=M((tI,k5)=>{var RF=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),S5=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);function m8(Q){let X="",Y=0,W=0;for(W=0;W<Q.length;W++){if(Y=Q[W].charCodeAt(0),Y===48)continue;if(!(Y>=48&&Y<=57||Y>=65&&Y<=70||Y>=97&&Y<=102))return"";X+=Q[W];break}for(W+=1;W<Q.length;W++){if(Y=Q[W].charCodeAt(0),!(Y>=48&&Y<=57||Y>=65&&Y<=70||Y>=97&&Y<=102))return"";X+=Q[W]}return X}var SF=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function R5(Q){return Q.length=0,!0}function CF(Q,X,Y){if(Q.length){let W=m8(Q);if(W!=="")X.push(W);else return Y.error=!0,!1;Q.length=0}return!0}function kF(Q){let X=0,Y={error:!1,address:"",zone:""},W=[],J=[],G=!1,H=!1,$=CF;for(let K=0;K<Q.length;K++){let B=Q[K];if(B==="["||B==="]")continue;if(B===":"){if(G===!0)H=!0;if(!$(J,W,Y))break;if(++X>7){Y.error=!0;break}if(K>0&&Q[K-1]===":")G=!0;W.push(":");continue}else if(B==="%"){if(!$(J,W,Y))break;$=R5}else{J.push(B);continue}}if(J.length)if($===R5)Y.zone=J.join("");else if(H)W.push(J.join(""));else W.push(m8(J));return Y.address=W.join(""),Y}function C5(Q){if(vF(Q,":")<2)return{host:Q,isIPV6:!1};let X=kF(Q);if(!X.error){let{address:Y,address:W}=X;if(X.zone)Y+="%"+X.zone,W+="%25"+X.zone;return{host:Y,isIPV6:!0,escapedHost:W}}else return{host:Q,isIPV6:!1}}function vF(Q,X){let Y=0;for(let W=0;W<Q.length;W++)if(Q[W]===X)Y++;return Y}function _F(Q){let X=Q,Y=[],W=-1,J=0;while(J=X.length){if(J===1)if(X===".")break;else if(X==="/"){Y.push("/");break}else{Y.push(X);break}else if(J===2){if(X[0]==="."){if(X[1]===".")break;else if(X[1]==="/"){X=X.slice(2);continue}}else if(X[0]==="/"){if(X[1]==="."||X[1]==="/"){Y.push("/");break}}}else if(J===3){if(X==="/.."){if(Y.length!==0)Y.pop();Y.push("/");break}}if(X[0]==="."){if(X[1]==="."){if(X[2]==="/"){X=X.slice(3);continue}}else if(X[1]==="/"){X=X.slice(2);continue}}else if(X[0]==="/"){if(X[1]==="."){if(X[2]==="/"){X=X.slice(2);continue}else if(X[2]==="."){if(X[3]==="/"){if(X=X.slice(3),Y.length!==0)Y.pop();continue}}}}if((W=X.indexOf("/",1))===-1){Y.push(X);break}else Y.push(X.slice(0,W)),X=X.slice(W)}return Y.join("")}function xF(Q,X){let Y=X!==!0?escape:unescape;if(Q.scheme!==void 0)Q.scheme=Y(Q.scheme);if(Q.userinfo!==void 0)Q.userinfo=Y(Q.userinfo);if(Q.host!==void 0)Q.host=Y(Q.host);if(Q.path!==void 0)Q.path=Y(Q.path);if(Q.query!==void 0)Q.query=Y(Q.query);if(Q.fragment!==void 0)Q.fragment=Y(Q.fragment);return Q}function gF(Q){let X=[];if(Q.userinfo!==void 0)X.push(Q.userinfo),X.push("@");if(Q.host!==void 0){let Y=unescape(Q.host);if(!S5(Y)){let W=C5(Y);if(W.isIPV6===!0)Y=`[${W.escapedHost}]`;else Y=Q.host}X.push(Y)}if(typeof Q.port==="number"||typeof Q.port==="string")X.push(":"),X.push(String(Q.port));return X.length?X.join(""):void 0}k5.exports={nonSimpleDomain:SF,recomposeAuthority:gF,normalizeComponentEncoding:xF,removeDotSegments:_F,isIPv4:S5,isUUID:RF,normalizeIPv6:C5,stringArrayToHexStripped:m8}});var y5=M((aI,g5)=>{var{isUUID:yF}=c8(),hF=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,uF=["http","https","ws","wss","urn","urn:uuid"];function fF(Q){return uF.indexOf(Q)!==-1}function p8(Q){if(Q.secure===!0)return!0;else if(Q.secure===!1)return!1;else if(Q.scheme)return Q.scheme.length===3&&(Q.scheme[0]==="w"||Q.scheme[0]==="W")&&(Q.scheme[1]==="s"||Q.scheme[1]==="S")&&(Q.scheme[2]==="s"||Q.scheme[2]==="S");else return!1}function v5(Q){if(!Q.host)Q.error=Q.error||"HTTP URIs must have a host.";return Q}function _5(Q){let X=String(Q.scheme).toLowerCase()==="https";if(Q.port===(X?443:80)||Q.port==="")Q.port=void 0;if(!Q.path)Q.path="/";return Q}function lF(Q){return Q.secure=p8(Q),Q.resourceName=(Q.path||"/")+(Q.query?"?"+Q.query:""),Q.path=void 0,Q.query=void 0,Q}function mF(Q){if(Q.port===(p8(Q)?443:80)||Q.port==="")Q.port=void 0;if(typeof Q.secure==="boolean")Q.scheme=Q.secure?"wss":"ws",Q.secure=void 0;if(Q.resourceName){let[X,Y]=Q.resourceName.split("?");Q.path=X&&X!=="/"?X:void 0,Q.query=Y,Q.resourceName=void 0}return Q.fragment=void 0,Q}function cF(Q,X){if(!Q.path)return Q.error="URN can not be parsed",Q;let Y=Q.path.match(hF);if(Y){let W=X.scheme||Q.scheme||"urn";Q.nid=Y[1].toLowerCase(),Q.nss=Y[2];let J=`${W}:${X.nid||Q.nid}`,G=d8(J);if(Q.path=void 0,G)Q=G.parse(Q,X)}else Q.error=Q.error||"URN can not be parsed.";return Q}function pF(Q,X){if(Q.nid===void 0)throw new Error("URN without nid cannot be serialized");let Y=X.scheme||Q.scheme||"urn",W=Q.nid.toLowerCase(),J=`${Y}:${X.nid||W}`,G=d8(J);if(G)Q=G.serialize(Q,X);let H=Q,$=Q.nss;return H.path=`${W||X.nid}:${$}`,X.skipEscape=!0,H}function dF(Q,X){let Y=Q;if(Y.uuid=Y.nss,Y.nss=void 0,!X.tolerant&&(!Y.uuid||!yF(Y.uuid)))Y.error=Y.error||"UUID is not valid.";return Y}function iF(Q){let X=Q;return X.nss=(Q.uuid||"").toLowerCase(),X}var x5={scheme:"http",domainHost:!0,parse:v5,serialize:_5},rF={scheme:"https",domainHost:x5.domainHost,parse:v5,serialize:_5},SQ={scheme:"ws",domainHost:!0,parse:lF,serialize:mF},nF={scheme:"wss",domainHost:SQ.domainHost,parse:SQ.parse,serialize:SQ.serialize},oF={scheme:"urn",parse:cF,serialize:pF,skipNormalize:!0},tF={scheme:"urn:uuid",parse:dF,serialize:iF,skipNormalize:!0},CQ={http:x5,https:rF,ws:SQ,wss:nF,urn:oF,"urn:uuid":tF};Object.setPrototypeOf(CQ,null);function d8(Q){return Q&&(CQ[Q]||CQ[Q.toLowerCase()])||void 0}g5.exports={wsIsSecure:p8,SCHEMES:CQ,isValidSchemeName:fF,getSchemeHandler:d8}});var f5=M((sI,vQ)=>{var{normalizeIPv6:aF,removeDotSegments:O9,recomposeAuthority:sF,normalizeComponentEncoding:kQ,isIPv4:eF,nonSimpleDomain:QU}=c8(),{SCHEMES:XU,getSchemeHandler:h5}=y5();function YU(Q,X){if(typeof Q==="string")Q=x0(d0(Q,X),X);else if(typeof Q==="object")Q=d0(x0(Q,X),X);return Q}function WU(Q,X,Y){let W=Y?Object.assign({scheme:"null"},Y):{scheme:"null"},J=u5(d0(Q,W),d0(X,W),W,!0);return W.skipEscape=!0,x0(J,W)}function u5(Q,X,Y,W){let J={};if(!W)Q=d0(x0(Q,Y),Y),X=d0(x0(X,Y),Y);if(Y=Y||{},!Y.tolerant&&X.scheme)J.scheme=X.scheme,J.userinfo=X.userinfo,J.host=X.host,J.port=X.port,J.path=O9(X.path||""),J.query=X.query;else{if(X.userinfo!==void 0||X.host!==void 0||X.port!==void 0)J.userinfo=X.userinfo,J.host=X.host,J.port=X.port,J.path=O9(X.path||""),J.query=X.query;else{if(!X.path)if(J.path=Q.path,X.query!==void 0)J.query=X.query;else J.query=Q.query;else{if(X.path[0]==="/")J.path=O9(X.path);else{if((Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)&&!Q.path)J.path="/"+X.path;else if(!Q.path)J.path=X.path;else J.path=Q.path.slice(0,Q.path.lastIndexOf("/")+1)+X.path;J.path=O9(J.path)}J.query=X.query}J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port}J.scheme=Q.scheme}return J.fragment=X.fragment,J}function JU(Q,X,Y){if(typeof Q==="string")Q=unescape(Q),Q=x0(kQ(d0(Q,Y),!0),{...Y,skipEscape:!0});else if(typeof Q==="object")Q=x0(kQ(Q,!0),{...Y,skipEscape:!0});if(typeof X==="string")X=unescape(X),X=x0(kQ(d0(X,Y),!0),{...Y,skipEscape:!0});else if(typeof X==="object")X=x0(kQ(X,!0),{...Y,skipEscape:!0});return Q.toLowerCase()===X.toLowerCase()}function x0(Q,X){let Y={host:Q.host,scheme:Q.scheme,userinfo:Q.userinfo,port:Q.port,path:Q.path,query:Q.query,nid:Q.nid,nss:Q.nss,uuid:Q.uuid,fragment:Q.fragment,reference:Q.reference,resourceName:Q.resourceName,secure:Q.secure,error:""},W=Object.assign({},X),J=[],G=h5(W.scheme||Y.scheme);if(G&&G.serialize)G.serialize(Y,W);if(Y.path!==void 0)if(!W.skipEscape){if(Y.path=escape(Y.path),Y.scheme!==void 0)Y.path=Y.path.split("%3A").join(":")}else Y.path=unescape(Y.path);if(W.reference!=="suffix"&&Y.scheme)J.push(Y.scheme,":");let H=sF(Y);if(H!==void 0){if(W.reference!=="suffix")J.push("//");if(J.push(H),Y.path&&Y.path[0]!=="/")J.push("/")}if(Y.path!==void 0){let $=Y.path;if(!W.absolutePath&&(!G||!G.absolutePath))$=O9($);if(H===void 0&&$[0]==="/"&&$[1]==="/")$="/%2F"+$.slice(2);J.push($)}if(Y.query!==void 0)J.push("?",Y.query);if(Y.fragment!==void 0)J.push("#",Y.fragment);return J.join("")}var GU=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function d0(Q,X){let Y=Object.assign({},X),W={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=!1;if(Y.reference==="suffix")if(Y.scheme)Q=Y.scheme+":"+Q;else Q="//"+Q;let G=Q.match(GU);if(G){if(W.scheme=G[1],W.userinfo=G[3],W.host=G[4],W.port=parseInt(G[5],10),W.path=G[6]||"",W.query=G[7],W.fragment=G[8],isNaN(W.port))W.port=G[5];if(W.host)if(eF(W.host)===!1){let K=aF(W.host);W.host=K.host.toLowerCase(),J=K.isIPV6}else J=!0;if(W.scheme===void 0&&W.userinfo===void 0&&W.host===void 0&&W.port===void 0&&W.query===void 0&&!W.path)W.reference="same-document";else if(W.scheme===void 0)W.reference="relative";else if(W.fragment===void 0)W.reference="absolute";else W.reference="uri";if(Y.reference&&Y.reference!=="suffix"&&Y.reference!==W.reference)W.error=W.error||"URI is not a "+Y.reference+" reference.";let H=h5(Y.scheme||W.scheme);if(!Y.unicodeSupport&&(!H||!H.unicodeSupport)){if(W.host&&(Y.domainHost||H&&H.domainHost)&&J===!1&&QU(W.host))try{W.host=URL.domainToASCII(W.host.toLowerCase())}catch($){W.error=W.error||"Host's domain name can not be converted to ASCII: "+$}}if(!H||H&&!H.skipNormalize){if(Q.indexOf("%")!==-1){if(W.scheme!==void 0)W.scheme=unescape(W.scheme);if(W.host!==void 0)W.host=unescape(W.host)}if(W.path)W.path=escape(unescape(W.path));if(W.fragment)W.fragment=encodeURI(decodeURIComponent(W.fragment))}if(H&&H.parse)H.parse(W,Y)}else W.error=W.error||"URI can not be parsed.";return W}var i8={SCHEMES:XU,normalize:YU,resolve:WU,resolveComponent:u5,equal:JU,serialize:x0,parse:d0};vQ.exports=i8;vQ.exports.default=i8;vQ.exports.fastUri=i8});var c5=M((m5)=>{Object.defineProperty(m5,"__esModule",{value:!0});var l5=f5();l5.code='require("ajv/dist/runtime/uri").default';m5.default=l5});var a5=M((i0)=>{Object.defineProperty(i0,"__esModule",{value:!0});i0.CodeGen=i0.Name=i0.nil=i0.stringify=i0.str=i0._=i0.KeywordCxt=void 0;var $U=D9();Object.defineProperty(i0,"KeywordCxt",{enumerable:!0,get:function(){return $U.KeywordCxt}});var R1=k();Object.defineProperty(i0,"_",{enumerable:!0,get:function(){return R1._}});Object.defineProperty(i0,"str",{enumerable:!0,get:function(){return R1.str}});Object.defineProperty(i0,"stringify",{enumerable:!0,get:function(){return R1.stringify}});Object.defineProperty(i0,"nil",{enumerable:!0,get:function(){return R1.nil}});Object.defineProperty(i0,"Name",{enumerable:!0,get:function(){return R1.Name}});Object.defineProperty(i0,"CodeGen",{enumerable:!0,get:function(){return R1.CodeGen}});var KU=TQ(),n5=V9(),BU=E8(),q9=RQ(),zU=k(),M9=L9(),_Q=A9(),n8=h(),p5=j5(),AU=c5(),o5=(Q,X)=>new RegExp(Q,X);o5.code="new RegExp";var LU=["removeAdditional","useDefaults","coerceTypes"],FU=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),UU={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."},DU={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},d5=200;function VU(Q){var X,Y,W,J,G,H,$,K,B,z,A,F,L,V,Z,q,O,T,E,R,I,I0,E0,aQ,sQ;let _1=Q.strict,eQ=(X=Q.code)===null||X===void 0?void 0:X.optimize,MX=eQ===!0||eQ===void 0?1:eQ||0,NX=(W=(Y=Q.code)===null||Y===void 0?void 0:Y.regExp)!==null&&W!==void 0?W:o5,q3=(J=Q.uriResolver)!==null&&J!==void 0?J:AU.default;return{strictSchema:(H=(G=Q.strictSchema)!==null&&G!==void 0?G:_1)!==null&&H!==void 0?H:!0,strictNumbers:(K=($=Q.strictNumbers)!==null&&$!==void 0?$:_1)!==null&&K!==void 0?K:!0,strictTypes:(z=(B=Q.strictTypes)!==null&&B!==void 0?B:_1)!==null&&z!==void 0?z:"log",strictTuples:(F=(A=Q.strictTuples)!==null&&A!==void 0?A:_1)!==null&&F!==void 0?F:"log",strictRequired:(V=(L=Q.strictRequired)!==null&&L!==void 0?L:_1)!==null&&V!==void 0?V:!1,code:Q.code?{...Q.code,optimize:MX,regExp:NX}:{optimize:MX,regExp:NX},loopRequired:(Z=Q.loopRequired)!==null&&Z!==void 0?Z:d5,loopEnum:(q=Q.loopEnum)!==null&&q!==void 0?q:d5,meta:(O=Q.meta)!==null&&O!==void 0?O:!0,messages:(T=Q.messages)!==null&&T!==void 0?T:!0,inlineRefs:(E=Q.inlineRefs)!==null&&E!==void 0?E:!0,schemaId:(R=Q.schemaId)!==null&&R!==void 0?R:"$id",addUsedSchema:(I=Q.addUsedSchema)!==null&&I!==void 0?I:!0,validateSchema:(I0=Q.validateSchema)!==null&&I0!==void 0?I0:!0,validateFormats:(E0=Q.validateFormats)!==null&&E0!==void 0?E0:!0,unicodeRegExp:(aQ=Q.unicodeRegExp)!==null&&aQ!==void 0?aQ:!0,int32range:(sQ=Q.int32range)!==null&&sQ!==void 0?sQ:!0,uriResolver:q3}}class xQ{constructor(Q={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,Q=this.opts={...Q,...VU(Q)};let{es5:X,lines:Y}=this.opts.code;this.scope=new zU.ValueScope({scope:{},prefixes:FU,es5:X,lines:Y}),this.logger=wU(Q.logger);let W=Q.validateFormats;if(Q.validateFormats=!1,this.RULES=BU.getRules(),i5.call(this,UU,Q,"NOT SUPPORTED"),i5.call(this,DU,Q,"DEPRECATED","warn"),this._metaOpts=MU.call(this),Q.formats)OU.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),Q.keywords)qU.call(this,Q.keywords);if(typeof Q.meta=="object")this.addMetaSchema(Q.meta);ZU.call(this),Q.validateFormats=W}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:Q,meta:X,schemaId:Y}=this.opts,W=p5;if(Y==="id")W={...p5},W.id=W.$id,delete W.$id;if(X&&Q)this.addMetaSchema(W,W[Y],!1)}defaultMeta(){let{meta:Q,schemaId:X}=this.opts;return this.opts.defaultMeta=typeof Q=="object"?Q[X]||Q:void 0}validate(Q,X){let Y;if(typeof Q=="string"){if(Y=this.getSchema(Q),!Y)throw new Error(`no schema with key or ref "${Q}"`)}else Y=this.compile(Q);let W=Y(X);if(!("$async"in Y))this.errors=Y.errors;return W}compile(Q,X){let Y=this._addSchema(Q,X);return Y.validate||this._compileSchemaEnv(Y)}compileAsync(Q,X){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:Y}=this.opts;return W.call(this,Q,X);async function W(B,z){await J.call(this,B.$schema);let A=this._addSchema(B,z);return A.validate||G.call(this,A)}async function J(B){if(B&&!this.getSchema(B))await W.call(this,{$ref:B},!0)}async function G(B){try{return this._compileSchemaEnv(B)}catch(z){if(!(z instanceof n5.default))throw z;return H.call(this,z),await $.call(this,z.missingSchema),G.call(this,B)}}function H({missingSchema:B,missingRef:z}){if(this.refs[B])throw new Error(`AnySchema ${B} is loaded but ${z} cannot be resolved`)}async function $(B){let z=await K.call(this,B);if(!this.refs[B])await J.call(this,z.$schema);if(!this.refs[B])this.addSchema(z,B,X)}async function K(B){let z=this._loading[B];if(z)return z;try{return await(this._loading[B]=Y(B))}finally{delete this._loading[B]}}}addSchema(Q,X,Y,W=this.opts.validateSchema){if(Array.isArray(Q)){for(let G of Q)this.addSchema(G,void 0,Y,W);return this}let J;if(typeof Q==="object"){let{schemaId:G}=this.opts;if(J=Q[G],J!==void 0&&typeof J!="string")throw new Error(`schema ${G} must be string`)}return X=M9.normalizeId(X||J),this._checkUnique(X),this.schemas[X]=this._addSchema(Q,Y,X,W,!0),this}addMetaSchema(Q,X,Y=this.opts.validateSchema){return this.addSchema(Q,X,!0,Y),this}validateSchema(Q,X){if(typeof Q=="boolean")return!0;let Y;if(Y=Q.$schema,Y!==void 0&&typeof Y!="string")throw new Error("$schema must be a string");if(Y=Y||this.opts.defaultMeta||this.defaultMeta(),!Y)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let W=this.validate(Y,Q);if(!W&&X){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw new Error(J)}return W}getSchema(Q){let X;while(typeof(X=r5.call(this,Q))=="string")Q=X;if(X===void 0){let{schemaId:Y}=this.opts,W=new q9.SchemaEnv({schema:{},schemaId:Y});if(X=q9.resolveSchema.call(this,W,Q),!X)return;this.refs[Q]=X}return X.validate||this._compileSchemaEnv(X)}removeSchema(Q){if(Q instanceof RegExp)return this._removeAllSchemas(this.schemas,Q),this._removeAllSchemas(this.refs,Q),this;switch(typeof Q){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let X=r5.call(this,Q);if(typeof X=="object")this._cache.delete(X.schema);return delete this.schemas[Q],delete this.refs[Q],this}case"object":{let X=Q;this._cache.delete(X);let Y=Q[this.opts.schemaId];if(Y)Y=M9.normalizeId(Y),delete this.schemas[Y],delete this.refs[Y];return this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(Q){for(let X of Q)this.addKeyword(X);return this}addKeyword(Q,X){let Y;if(typeof Q=="string"){if(Y=Q,typeof X=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),X.keyword=Y}else if(typeof Q=="object"&&X===void 0){if(X=Q,Y=X.keyword,Array.isArray(Y)&&!Y.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(IU.call(this,Y,X),!X)return n8.eachItem(Y,(J)=>r8.call(this,J)),this;bU.call(this,X);let W={...X,type:_Q.getJSONTypes(X.type),schemaType:_Q.getJSONTypes(X.schemaType)};return n8.eachItem(Y,W.type.length===0?(J)=>r8.call(this,J,W):(J)=>W.type.forEach((G)=>r8.call(this,J,W,G))),this}getKeyword(Q){let X=this.RULES.all[Q];return typeof X=="object"?X.definition:!!X}removeKeyword(Q){let{RULES:X}=this;delete X.keywords[Q],delete X.all[Q];for(let Y of X.rules){let W=Y.rules.findIndex((J)=>J.keyword===Q);if(W>=0)Y.rules.splice(W,1)}return this}addFormat(Q,X){if(typeof X=="string")X=new RegExp(X);return this.formats[Q]=X,this}errorsText(Q=this.errors,{separator:X=", ",dataVar:Y="data"}={}){if(!Q||Q.length===0)return"No errors";return Q.map((W)=>`${Y}${W.instancePath} ${W.message}`).reduce((W,J)=>W+X+J)}$dataMetaSchema(Q,X){let Y=this.RULES.all;Q=JSON.parse(JSON.stringify(Q));for(let W of X){let J=W.split("/").slice(1),G=Q;for(let H of J)G=G[H];for(let H in Y){let $=Y[H];if(typeof $!="object")continue;let{$data:K}=$.definition,B=G[H];if(K&&B)G[H]=t5(B)}}return Q}_removeAllSchemas(Q,X){for(let Y in Q){let W=Q[Y];if(!X||X.test(Y)){if(typeof W=="string")delete Q[Y];else if(W&&!W.meta)this._cache.delete(W.schema),delete Q[Y]}}}_addSchema(Q,X,Y,W=this.opts.validateSchema,J=this.opts.addUsedSchema){let G,{schemaId:H}=this.opts;if(typeof Q=="object")G=Q[H];else if(this.opts.jtd)throw new Error("schema must be object");else if(typeof Q!="boolean")throw new Error("schema must be object or boolean");let $=this._cache.get(Q);if($!==void 0)return $;Y=M9.normalizeId(G||Y);let K=M9.getSchemaRefs.call(this,Q,Y);if($=new q9.SchemaEnv({schema:Q,schemaId:H,meta:X,baseId:Y,localRefs:K}),this._cache.set($.schema,$),J&&!Y.startsWith("#")){if(Y)this._checkUnique(Y);this.refs[Y]=$}if(W)this.validateSchema(Q,!0);return $}_checkUnique(Q){if(this.schemas[Q]||this.refs[Q])throw new Error(`schema with key or id "${Q}" already exists`)}_compileSchemaEnv(Q){if(Q.meta)this._compileMetaSchema(Q);else q9.compileSchema.call(this,Q);if(!Q.validate)throw new Error("ajv implementation error");return Q.validate}_compileMetaSchema(Q){let X=this.opts;this.opts=this._metaOpts;try{q9.compileSchema.call(this,Q)}finally{this.opts=X}}}xQ.ValidationError=KU.default;xQ.MissingRefError=n5.default;i0.default=xQ;function i5(Q,X,Y,W="error"){for(let J in Q){let G=J;if(G in X)this.logger[W](`${Y}: option ${J}. ${Q[G]}`)}}function r5(Q){return Q=M9.normalizeId(Q),this.schemas[Q]||this.refs[Q]}function ZU(){let Q=this.opts.schemas;if(!Q)return;if(Array.isArray(Q))this.addSchema(Q);else for(let X in Q)this.addSchema(Q[X],X)}function OU(){for(let Q in this.opts.formats){let X=this.opts.formats[Q];if(X)this.addFormat(Q,X)}}function qU(Q){if(Array.isArray(Q)){this.addVocabulary(Q);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let X in Q){let Y=Q[X];if(!Y.keyword)Y.keyword=X;this.addKeyword(Y)}}function MU(){let Q={...this.opts};for(let X of LU)delete Q[X];return Q}var NU={log(){},warn(){},error(){}};function wU(Q){if(Q===!1)return NU;if(Q===void 0)return console;if(Q.log&&Q.warn&&Q.error)return Q;throw new Error("logger must implement log, warn and error methods")}var PU=/^[a-z_$][a-z0-9_$:-]*$/i;function IU(Q,X){let{RULES:Y}=this;if(n8.eachItem(Q,(W)=>{if(Y.keywords[W])throw new Error(`Keyword ${W} is already defined`);if(!PU.test(W))throw new Error(`Keyword ${W} has invalid name`)}),!X)return;if(X.$data&&!(("code"in X)||("validate"in X)))throw new Error('$data keyword must have "code" or "validate" function')}function r8(Q,X,Y){var W;let J=X===null||X===void 0?void 0:X.post;if(Y&&J)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:G}=this,H=J?G.post:G.rules.find(({type:K})=>K===Y);if(!H)H={type:Y,rules:[]},G.rules.push(H);if(G.keywords[Q]=!0,!X)return;let $={keyword:Q,definition:{...X,type:_Q.getJSONTypes(X.type),schemaType:_Q.getJSONTypes(X.schemaType)}};if(X.before)EU.call(this,H,$,X.before);else H.rules.push($);G.all[Q]=$,(W=X.implements)===null||W===void 0||W.forEach((K)=>this.addKeyword(K))}function EU(Q,X,Y){let W=Q.rules.findIndex((J)=>J.keyword===Y);if(W>=0)Q.rules.splice(W,0,X);else Q.rules.push(X),this.logger.warn(`rule ${Y} is not defined`)}function bU(Q){let{metaSchema:X}=Q;if(X===void 0)return;if(Q.$data&&this.opts.$data)X=t5(X);Q.validateSchema=this.compile(X,!0)}var TU={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function t5(Q){return{anyOf:[Q,TU]}}});var e5=M((s5)=>{Object.defineProperty(s5,"__esModule",{value:!0});var SU={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};s5.default=SU});var GG=M((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.callRef=WG.getValidate=void 0;var kU=V9(),QG=N0(),U0=k(),S1=c0(),XG=RQ(),gQ=h(),vU={keyword:"$ref",schemaType:"string",code(Q){let{gen:X,schema:Y,it:W}=Q,{baseId:J,schemaEnv:G,validateName:H,opts:$,self:K}=W,{root:B}=G;if((Y==="#"||Y==="#/")&&J===B.baseId)return A();let z=XG.resolveRef.call(K,B,J,Y);if(z===void 0)throw new kU.default(W.opts.uriResolver,J,Y);if(z instanceof XG.SchemaEnv)return F(z);return L(z);function A(){if(G===B)return yQ(Q,H,G,G.$async);let V=X.scopeValue("root",{ref:B});return yQ(Q,U0._`${V}.validate`,B,B.$async)}function F(V){let Z=YG(Q,V);yQ(Q,Z,V,V.$async)}function L(V){let Z=X.scopeValue("schema",$.code.source===!0?{ref:V,code:U0.stringify(V)}:{ref:V}),q=X.name("valid"),O=Q.subschema({schema:V,dataTypes:[],schemaPath:U0.nil,topSchemaRef:Z,errSchemaPath:Y},q);Q.mergeEvaluated(O),Q.ok(q)}}};function YG(Q,X){let{gen:Y}=Q;return X.validate?Y.scopeValue("validate",{ref:X.validate}):U0._`${Y.scopeValue("wrapper",{ref:X})}.validate`}WG.getValidate=YG;function yQ(Q,X,Y,W){let{gen:J,it:G}=Q,{allErrors:H,schemaEnv:$,opts:K}=G,B=K.passContext?S1.default.this:U0.nil;if(W)z();else A();function z(){if(!$.$async)throw new Error("async schema referenced by sync schema");let V=J.let("valid");J.try(()=>{if(J.code(U0._`await ${QG.callValidateCode(Q,X,B)}`),L(X),!H)J.assign(V,!0)},(Z)=>{if(J.if(U0._`!(${Z} instanceof ${G.ValidationError})`,()=>J.throw(Z)),F(Z),!H)J.assign(V,!1)}),Q.ok(V)}function A(){Q.result(QG.callValidateCode(Q,X,B),()=>L(X),()=>F(X))}function F(V){let Z=U0._`${V}.errors`;J.assign(S1.default.vErrors,U0._`${S1.default.vErrors} === null ? ${Z} : ${S1.default.vErrors}.concat(${Z})`),J.assign(S1.default.errors,U0._`${S1.default.vErrors}.length`)}function L(V){var Z;if(!G.opts.unevaluated)return;let q=(Z=Y===null||Y===void 0?void 0:Y.validate)===null||Z===void 0?void 0:Z.evaluated;if(G.props!==!0)if(q&&!q.dynamicProps){if(q.props!==void 0)G.props=gQ.mergeEvaluated.props(J,q.props,G.props)}else{let O=J.var("props",U0._`${V}.evaluated.props`);G.props=gQ.mergeEvaluated.props(J,O,G.props,U0.Name)}if(G.items!==!0)if(q&&!q.dynamicItems){if(q.items!==void 0)G.items=gQ.mergeEvaluated.items(J,q.items,G.items)}else{let O=J.var("items",U0._`${V}.evaluated.items`);G.items=gQ.mergeEvaluated.items(J,O,G.items,U0.Name)}}}WG.callRef=yQ;WG.default=vU});var $G=M((HG)=>{Object.defineProperty(HG,"__esModule",{value:!0});var gU=e5(),yU=GG(),hU=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",gU.default,yU.default];HG.default=hU});var BG=M((KG)=>{Object.defineProperty(KG,"__esModule",{value:!0});var hQ=k(),G1=hQ.operators,uQ={maximum:{okStr:"<=",ok:G1.LTE,fail:G1.GT},minimum:{okStr:">=",ok:G1.GTE,fail:G1.LT},exclusiveMaximum:{okStr:"<",ok:G1.LT,fail:G1.GTE},exclusiveMinimum:{okStr:">",ok:G1.GT,fail:G1.LTE}},fU={message:({keyword:Q,schemaCode:X})=>hQ.str`must be ${uQ[Q].okStr} ${X}`,params:({keyword:Q,schemaCode:X})=>hQ._`{comparison: ${uQ[Q].okStr}, limit: ${X}}`},lU={keyword:Object.keys(uQ),type:"number",schemaType:"number",$data:!0,error:fU,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q;Q.fail$data(hQ._`${Y} ${uQ[X].fail} ${W} || isNaN(${Y})`)}};KG.default=lU});var AG=M((zG)=>{Object.defineProperty(zG,"__esModule",{value:!0});var N9=k(),cU={message:({schemaCode:Q})=>N9.str`must be multiple of ${Q}`,params:({schemaCode:Q})=>N9._`{multipleOf: ${Q}}`},pU={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:cU,code(Q){let{gen:X,data:Y,schemaCode:W,it:J}=Q,G=J.opts.multipleOfPrecision,H=X.let("res"),$=G?N9._`Math.abs(Math.round(${H}) - ${H}) > 1e-${G}`:N9._`${H} !== parseInt(${H})`;Q.fail$data(N9._`(${W} === 0 || (${H} = ${Y}/${W}, ${$}))`)}};zG.default=pU});var UG=M((FG)=>{Object.defineProperty(FG,"__esModule",{value:!0});function LG(Q){let X=Q.length,Y=0,W=0,J;while(W<X)if(Y++,J=Q.charCodeAt(W++),J>=55296&&J<=56319&&W<X){if(J=Q.charCodeAt(W),(J&64512)===56320)W++}return Y}FG.default=LG;LG.code='require("ajv/dist/runtime/ucs2length").default'});var VG=M((DG)=>{Object.defineProperty(DG,"__esModule",{value:!0});var F1=k(),rU=h(),nU=UG(),oU={message({keyword:Q,schemaCode:X}){let Y=Q==="maxLength"?"more":"fewer";return F1.str`must NOT have ${Y} than ${X} characters`},params:({schemaCode:Q})=>F1._`{limit: ${Q}}`},tU={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:oU,code(Q){let{keyword:X,data:Y,schemaCode:W,it:J}=Q,G=X==="maxLength"?F1.operators.GT:F1.operators.LT,H=J.opts.unicode===!1?F1._`${Y}.length`:F1._`${rU.useFunc(Q.gen,nU.default)}(${Y})`;Q.fail$data(F1._`${H} ${G} ${W}`)}};DG.default=tU});var OG=M((ZG)=>{Object.defineProperty(ZG,"__esModule",{value:!0});var sU=N0(),fQ=k(),eU={message:({schemaCode:Q})=>fQ.str`must match pattern "${Q}"`,params:({schemaCode:Q})=>fQ._`{pattern: ${Q}}`},QD={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:eU,code(Q){let{data:X,$data:Y,schema:W,schemaCode:J,it:G}=Q,H=G.opts.unicodeRegExp?"u":"",$=Y?fQ._`(new RegExp(${J}, ${H}))`:sU.usePattern(Q,W);Q.fail$data(fQ._`!${$}.test(${X})`)}};ZG.default=QD});var MG=M((qG)=>{Object.defineProperty(qG,"__esModule",{value:!0});var w9=k(),YD={message({keyword:Q,schemaCode:X}){let Y=Q==="maxProperties"?"more":"fewer";return w9.str`must NOT have ${Y} than ${X} properties`},params:({schemaCode:Q})=>w9._`{limit: ${Q}}`},WD={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:YD,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,J=X==="maxProperties"?w9.operators.GT:w9.operators.LT;Q.fail$data(w9._`Object.keys(${Y}).length ${J} ${W}`)}};qG.default=WD});var wG=M((NG)=>{Object.defineProperty(NG,"__esModule",{value:!0});var P9=N0(),I9=k(),GD=h(),HD={message:({params:{missingProperty:Q}})=>I9.str`must have required property '${Q}'`,params:({params:{missingProperty:Q}})=>I9._`{missingProperty: ${Q}}`},$D={keyword:"required",type:"object",schemaType:"array",$data:!0,error:HD,code(Q){let{gen:X,schema:Y,schemaCode:W,data:J,$data:G,it:H}=Q,{opts:$}=H;if(!G&&Y.length===0)return;let K=Y.length>=$.loopRequired;if(H.allErrors)B();else z();if($.strictRequired){let L=Q.parentSchema.properties,{definedProperties:V}=Q.it;for(let Z of Y)if((L===null||L===void 0?void 0:L[Z])===void 0&&!V.has(Z)){let q=H.schemaEnv.baseId+H.errSchemaPath,O=`required property "${Z}" is not defined at "${q}" (strictRequired)`;GD.checkStrictMode(H,O,H.opts.strictRequired)}}function B(){if(K||G)Q.block$data(I9.nil,A);else for(let L of Y)P9.checkReportMissingProp(Q,L)}function z(){let L=X.let("missing");if(K||G){let V=X.let("valid",!0);Q.block$data(V,()=>F(L,V)),Q.ok(V)}else X.if(P9.checkMissingProp(Q,Y,L)),P9.reportMissingProp(Q,L),X.else()}function A(){X.forOf("prop",W,(L)=>{Q.setParams({missingProperty:L}),X.if(P9.noPropertyInData(X,J,L,$.ownProperties),()=>Q.error())})}function F(L,V){Q.setParams({missingProperty:L}),X.forOf(L,W,()=>{X.assign(V,P9.propertyInData(X,J,L,$.ownProperties)),X.if(I9.not(V),()=>{Q.error(),X.break()})},I9.nil)}}};NG.default=$D});var IG=M((PG)=>{Object.defineProperty(PG,"__esModule",{value:!0});var E9=k(),BD={message({keyword:Q,schemaCode:X}){let Y=Q==="maxItems"?"more":"fewer";return E9.str`must NOT have ${Y} than ${X} items`},params:({schemaCode:Q})=>E9._`{limit: ${Q}}`},zD={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:BD,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,J=X==="maxItems"?E9.operators.GT:E9.operators.LT;Q.fail$data(E9._`${Y}.length ${J} ${W}`)}};PG.default=zD});var lQ=M((bG)=>{Object.defineProperty(bG,"__esModule",{value:!0});var EG=v8();EG.code='require("ajv/dist/runtime/equal").default';bG.default=EG});var jG=M((TG)=>{Object.defineProperty(TG,"__esModule",{value:!0});var o8=A9(),G0=k(),FD=h(),UD=lQ(),DD={message:({params:{i:Q,j:X}})=>G0.str`must NOT have duplicate items (items ## ${X} and ${Q} are identical)`,params:({params:{i:Q,j:X}})=>G0._`{i: ${Q}, j: ${X}}`},VD={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:DD,code(Q){let{gen:X,data:Y,$data:W,schema:J,parentSchema:G,schemaCode:H,it:$}=Q;if(!W&&!J)return;let K=X.let("valid"),B=G.items?o8.getSchemaTypes(G.items):[];Q.block$data(K,z,G0._`${H} === false`),Q.ok(K);function z(){let V=X.let("i",G0._`${Y}.length`),Z=X.let("j");Q.setParams({i:V,j:Z}),X.assign(K,!0),X.if(G0._`${V} > 1`,()=>(A()?F:L)(V,Z))}function A(){return B.length>0&&!B.some((V)=>V==="object"||V==="array")}function F(V,Z){let q=X.name("item"),O=o8.checkDataTypes(B,q,$.opts.strictNumbers,o8.DataType.Wrong),T=X.const("indices",G0._`{}`);X.for(G0._`;${V}--;`,()=>{if(X.let(q,G0._`${Y}[${V}]`),X.if(O,G0._`continue`),B.length>1)X.if(G0._`typeof ${q} == "string"`,G0._`${q} += "_"`);X.if(G0._`typeof ${T}[${q}] == "number"`,()=>{X.assign(Z,G0._`${T}[${q}]`),Q.error(),X.assign(K,!1).break()}).code(G0._`${T}[${q}] = ${V}`)})}function L(V,Z){let q=FD.useFunc(X,UD.default),O=X.name("outer");X.label(O).for(G0._`;${V}--;`,()=>X.for(G0._`${Z} = ${V}; ${Z}--;`,()=>X.if(G0._`${q}(${Y}[${V}], ${Y}[${Z}])`,()=>{Q.error(),X.assign(K,!1).break(O)})))}}};TG.default=VD});var SG=M((RG)=>{Object.defineProperty(RG,"__esModule",{value:!0});var t8=k(),OD=h(),qD=lQ(),MD={message:"must be equal to constant",params:({schemaCode:Q})=>t8._`{allowedValue: ${Q}}`},ND={keyword:"const",$data:!0,error:MD,code(Q){let{gen:X,data:Y,$data:W,schemaCode:J,schema:G}=Q;if(W||G&&typeof G=="object")Q.fail$data(t8._`!${OD.useFunc(X,qD.default)}(${Y}, ${J})`);else Q.fail(t8._`${G} !== ${Y}`)}};RG.default=ND});var kG=M((CG)=>{Object.defineProperty(CG,"__esModule",{value:!0});var b9=k(),PD=h(),ID=lQ(),ED={message:"must be equal to one of the allowed values",params:({schemaCode:Q})=>b9._`{allowedValues: ${Q}}`},bD={keyword:"enum",schemaType:"array",$data:!0,error:ED,code(Q){let{gen:X,data:Y,$data:W,schema:J,schemaCode:G,it:H}=Q;if(!W&&J.length===0)throw new Error("enum must have non-empty array");let $=J.length>=H.opts.loopEnum,K,B=()=>K!==null&&K!==void 0?K:K=PD.useFunc(X,ID.default),z;if($||W)z=X.let("valid"),Q.block$data(z,A);else{if(!Array.isArray(J))throw new Error("ajv implementation error");let L=X.const("vSchema",G);z=b9.or(...J.map((V,Z)=>F(L,Z)))}Q.pass(z);function A(){X.assign(z,!1),X.forOf("v",G,(L)=>X.if(b9._`${B()}(${Y}, ${L})`,()=>X.assign(z,!0).break()))}function F(L,V){let Z=J[V];return typeof Z==="object"&&Z!==null?b9._`${B()}(${Y}, ${L}[${V}])`:b9._`${Y} === ${Z}`}}};CG.default=bD});var _G=M((vG)=>{Object.defineProperty(vG,"__esModule",{value:!0});var jD=BG(),RD=AG(),SD=VG(),CD=OG(),kD=MG(),vD=wG(),_D=IG(),xD=jG(),gD=SG(),yD=kG(),hD=[jD.default,RD.default,SD.default,CD.default,kD.default,vD.default,_D.default,xD.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},gD.default,yD.default];vG.default=hD});var s8=M((gG)=>{Object.defineProperty(gG,"__esModule",{value:!0});gG.validateAdditionalItems=void 0;var U1=k(),a8=h(),fD={message:({params:{len:Q}})=>U1.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>U1._`{limit: ${Q}}`},lD={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:fD,code(Q){let{parentSchema:X,it:Y}=Q,{items:W}=X;if(!Array.isArray(W)){a8.checkStrictMode(Y,'"additionalItems" is ignored when "items" is not an array of schemas');return}xG(Q,W)}};function xG(Q,X){let{gen:Y,schema:W,data:J,keyword:G,it:H}=Q;H.items=!0;let $=Y.const("len",U1._`${J}.length`);if(W===!1)Q.setParams({len:X.length}),Q.pass(U1._`${$} <= ${X.length}`);else if(typeof W=="object"&&!a8.alwaysValidSchema(H,W)){let B=Y.var("valid",U1._`${$} <= ${X.length}`);Y.if(U1.not(B),()=>K(B)),Q.ok(B)}function K(B){Y.forRange("i",X.length,$,(z)=>{if(Q.subschema({keyword:G,dataProp:z,dataPropType:a8.Type.Num},B),!H.allErrors)Y.if(U1.not(B),()=>Y.break())})}}gG.validateAdditionalItems=xG;gG.default=lD});var e8=M((fG)=>{Object.defineProperty(fG,"__esModule",{value:!0});fG.validateTuple=void 0;var hG=k(),mQ=h(),cD=N0(),pD={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(Q){let{schema:X,it:Y}=Q;if(Array.isArray(X))return uG(Q,"additionalItems",X);if(Y.items=!0,mQ.alwaysValidSchema(Y,X))return;Q.ok(cD.validateArray(Q))}};function uG(Q,X,Y=Q.schema){let{gen:W,parentSchema:J,data:G,keyword:H,it:$}=Q;if(z(J),$.opts.unevaluated&&Y.length&&$.items!==!0)$.items=mQ.mergeEvaluated.items(W,Y.length,$.items);let K=W.name("valid"),B=W.const("len",hG._`${G}.length`);Y.forEach((A,F)=>{if(mQ.alwaysValidSchema($,A))return;W.if(hG._`${B} > ${F}`,()=>Q.subschema({keyword:H,schemaProp:F,dataProp:F},K)),Q.ok(K)});function z(A){let{opts:F,errSchemaPath:L}=$,V=Y.length,Z=V===A.minItems&&(V===A.maxItems||A[X]===!1);if(F.strictTuples&&!Z){let q=`"${H}" is ${V}-tuple, but minItems or maxItems/${X} are not specified or different at path "${L}"`;mQ.checkStrictMode($,q,F.strictTuples)}}}fG.validateTuple=uG;fG.default=pD});var cG=M((mG)=>{Object.defineProperty(mG,"__esModule",{value:!0});var iD=e8(),rD={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(Q)=>iD.validateTuple(Q,"items")};mG.default=rD});var iG=M((dG)=>{Object.defineProperty(dG,"__esModule",{value:!0});var pG=k(),oD=h(),tD=N0(),aD=s8(),sD={message:({params:{len:Q}})=>pG.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>pG._`{limit: ${Q}}`},eD={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:sD,code(Q){let{schema:X,parentSchema:Y,it:W}=Q,{prefixItems:J}=Y;if(W.items=!0,oD.alwaysValidSchema(W,X))return;if(J)aD.validateAdditionalItems(Q,J);else Q.ok(tD.validateArray(Q))}};dG.default=eD});var nG=M((rG)=>{Object.defineProperty(rG,"__esModule",{value:!0});var w0=k(),cQ=h(),XV={message:({params:{min:Q,max:X}})=>X===void 0?w0.str`must contain at least ${Q} valid item(s)`:w0.str`must contain at least ${Q} and no more than ${X} valid item(s)`,params:({params:{min:Q,max:X}})=>X===void 0?w0._`{minContains: ${Q}}`:w0._`{minContains: ${Q}, maxContains: ${X}}`},YV={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:XV,code(Q){let{gen:X,schema:Y,parentSchema:W,data:J,it:G}=Q,H,$,{minContains:K,maxContains:B}=W;if(G.opts.next)H=K===void 0?1:K,$=B;else H=1;let z=X.const("len",w0._`${J}.length`);if(Q.setParams({min:H,max:$}),$===void 0&&H===0){cQ.checkStrictMode(G,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if($!==void 0&&H>$){cQ.checkStrictMode(G,'"minContains" > "maxContains" is always invalid'),Q.fail();return}if(cQ.alwaysValidSchema(G,Y)){let Z=w0._`${z} >= ${H}`;if($!==void 0)Z=w0._`${Z} && ${z} <= ${$}`;Q.pass(Z);return}G.items=!0;let A=X.name("valid");if($===void 0&&H===1)L(A,()=>X.if(A,()=>X.break()));else if(H===0){if(X.let(A,!0),$!==void 0)X.if(w0._`${J}.length > 0`,F)}else X.let(A,!1),F();Q.result(A,()=>Q.reset());function F(){let Z=X.name("_valid"),q=X.let("count",0);L(Z,()=>X.if(Z,()=>V(q)))}function L(Z,q){X.forRange("i",0,z,(O)=>{Q.subschema({keyword:"contains",dataProp:O,dataPropType:cQ.Type.Num,compositeRule:!0},Z),q()})}function V(Z){if(X.code(w0._`${Z}++`),$===void 0)X.if(w0._`${Z} >= ${H}`,()=>X.assign(A,!0).break());else if(X.if(w0._`${Z} > ${$}`,()=>X.assign(A,!1).break()),H===1)X.assign(A,!0);else X.if(w0._`${Z} >= ${H}`,()=>X.assign(A,!0))}}};rG.default=YV});var QH=M((aG)=>{Object.defineProperty(aG,"__esModule",{value:!0});aG.validateSchemaDeps=aG.validatePropertyDeps=aG.error=void 0;var QX=k(),JV=h(),T9=N0();aG.error={message:({params:{property:Q,depsCount:X,deps:Y}})=>{let W=X===1?"property":"properties";return QX.str`must have ${W} ${Y} when property ${Q} is present`},params:({params:{property:Q,depsCount:X,deps:Y,missingProperty:W}})=>QX._`{property: ${Q},
7
+ missingProperty: ${W},
8
+ depsCount: ${X},
9
+ deps: ${Y}}`};var GV={keyword:"dependencies",type:"object",schemaType:"object",error:aG.error,code(Q){let[X,Y]=HV(Q);oG(Q,X),tG(Q,Y)}};function HV({schema:Q}){let X={},Y={};for(let W in Q){if(W==="__proto__")continue;let J=Array.isArray(Q[W])?X:Y;J[W]=Q[W]}return[X,Y]}function oG(Q,X=Q.schema){let{gen:Y,data:W,it:J}=Q;if(Object.keys(X).length===0)return;let G=Y.let("missing");for(let H in X){let $=X[H];if($.length===0)continue;let K=T9.propertyInData(Y,W,H,J.opts.ownProperties);if(Q.setParams({property:H,depsCount:$.length,deps:$.join(", ")}),J.allErrors)Y.if(K,()=>{for(let B of $)T9.checkReportMissingProp(Q,B)});else Y.if(QX._`${K} && (${T9.checkMissingProp(Q,$,G)})`),T9.reportMissingProp(Q,G),Y.else()}}aG.validatePropertyDeps=oG;function tG(Q,X=Q.schema){let{gen:Y,data:W,keyword:J,it:G}=Q,H=Y.name("valid");for(let $ in X){if(JV.alwaysValidSchema(G,X[$]))continue;Y.if(T9.propertyInData(Y,W,$,G.opts.ownProperties),()=>{let K=Q.subschema({keyword:J,schemaProp:$},H);Q.mergeValidEvaluated(K,H)},()=>Y.var(H,!0)),Q.ok(H)}}aG.validateSchemaDeps=tG;aG.default=GV});var WH=M((YH)=>{Object.defineProperty(YH,"__esModule",{value:!0});var XH=k(),BV=h(),zV={message:"property name must be valid",params:({params:Q})=>XH._`{propertyName: ${Q.propertyName}}`},AV={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:zV,code(Q){let{gen:X,schema:Y,data:W,it:J}=Q;if(BV.alwaysValidSchema(J,Y))return;let G=X.name("valid");X.forIn("key",W,(H)=>{Q.setParams({propertyName:H}),Q.subschema({keyword:"propertyNames",data:H,dataTypes:["string"],propertyName:H,compositeRule:!0},G),X.if(XH.not(G),()=>{if(Q.error(!0),!J.allErrors)X.break()})}),Q.ok(G)}};YH.default=AV});var XX=M((JH)=>{Object.defineProperty(JH,"__esModule",{value:!0});var pQ=N0(),k0=k(),FV=c0(),dQ=h(),UV={message:"must NOT have additional properties",params:({params:Q})=>k0._`{additionalProperty: ${Q.additionalProperty}}`},DV={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:UV,code(Q){let{gen:X,schema:Y,parentSchema:W,data:J,errsCount:G,it:H}=Q;if(!G)throw new Error("ajv implementation error");let{allErrors:$,opts:K}=H;if(H.props=!0,K.removeAdditional!=="all"&&dQ.alwaysValidSchema(H,Y))return;let B=pQ.allSchemaProperties(W.properties),z=pQ.allSchemaProperties(W.patternProperties);A(),Q.ok(k0._`${G} === ${FV.default.errors}`);function A(){X.forIn("key",J,(q)=>{if(!B.length&&!z.length)V(q);else X.if(F(q),()=>V(q))})}function F(q){let O;if(B.length>8){let T=dQ.schemaRefOrVal(H,W.properties,"properties");O=pQ.isOwnProperty(X,T,q)}else if(B.length)O=k0.or(...B.map((T)=>k0._`${q} === ${T}`));else O=k0.nil;if(z.length)O=k0.or(O,...z.map((T)=>k0._`${pQ.usePattern(Q,T)}.test(${q})`));return k0.not(O)}function L(q){X.code(k0._`delete ${J}[${q}]`)}function V(q){if(K.removeAdditional==="all"||K.removeAdditional&&Y===!1){L(q);return}if(Y===!1){if(Q.setParams({additionalProperty:q}),Q.error(),!$)X.break();return}if(typeof Y=="object"&&!dQ.alwaysValidSchema(H,Y)){let O=X.name("valid");if(K.removeAdditional==="failing")Z(q,O,!1),X.if(k0.not(O),()=>{Q.reset(),L(q)});else if(Z(q,O),!$)X.if(k0.not(O),()=>X.break())}}function Z(q,O,T){let E={keyword:"additionalProperties",dataProp:q,dataPropType:dQ.Type.Str};if(T===!1)Object.assign(E,{compositeRule:!0,createErrors:!1,allErrors:!1});Q.subschema(E,O)}}};JH.default=DV});var KH=M(($H)=>{Object.defineProperty($H,"__esModule",{value:!0});var ZV=D9(),GH=N0(),YX=h(),HH=XX(),OV={keyword:"properties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,parentSchema:W,data:J,it:G}=Q;if(G.opts.removeAdditional==="all"&&W.additionalProperties===void 0)HH.default.code(new ZV.KeywordCxt(G,HH.default,"additionalProperties"));let H=GH.allSchemaProperties(Y);for(let A of H)G.definedProperties.add(A);if(G.opts.unevaluated&&H.length&&G.props!==!0)G.props=YX.mergeEvaluated.props(X,YX.toHash(H),G.props);let $=H.filter((A)=>!YX.alwaysValidSchema(G,Y[A]));if($.length===0)return;let K=X.name("valid");for(let A of $){if(B(A))z(A);else{if(X.if(GH.propertyInData(X,J,A,G.opts.ownProperties)),z(A),!G.allErrors)X.else().var(K,!0);X.endIf()}Q.it.definedProperties.add(A),Q.ok(K)}function B(A){return G.opts.useDefaults&&!G.compositeRule&&Y[A].default!==void 0}function z(A){Q.subschema({keyword:"properties",schemaProp:A,dataProp:A},K)}}};$H.default=OV});var FH=M((LH)=>{Object.defineProperty(LH,"__esModule",{value:!0});var BH=N0(),iQ=k(),zH=h(),AH=h(),MV={keyword:"patternProperties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,data:W,parentSchema:J,it:G}=Q,{opts:H}=G,$=BH.allSchemaProperties(Y),K=$.filter((Z)=>zH.alwaysValidSchema(G,Y[Z]));if($.length===0||K.length===$.length&&(!G.opts.unevaluated||G.props===!0))return;let B=H.strictSchema&&!H.allowMatchingProperties&&J.properties,z=X.name("valid");if(G.props!==!0&&!(G.props instanceof iQ.Name))G.props=AH.evaluatedPropsToName(X,G.props);let{props:A}=G;F();function F(){for(let Z of $){if(B)L(Z);if(G.allErrors)V(Z);else X.var(z,!0),V(Z),X.if(z)}}function L(Z){for(let q in B)if(new RegExp(Z).test(q))zH.checkStrictMode(G,`property ${q} matches pattern ${Z} (use allowMatchingProperties)`)}function V(Z){X.forIn("key",W,(q)=>{X.if(iQ._`${BH.usePattern(Q,Z)}.test(${q})`,()=>{let O=K.includes(Z);if(!O)Q.subschema({keyword:"patternProperties",schemaProp:Z,dataProp:q,dataPropType:AH.Type.Str},z);if(G.opts.unevaluated&&A!==!0)X.assign(iQ._`${A}[${q}]`,!0);else if(!O&&!G.allErrors)X.if(iQ.not(z),()=>X.break())})})}}};LH.default=MV});var DH=M((UH)=>{Object.defineProperty(UH,"__esModule",{value:!0});var wV=h(),PV={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(Q){let{gen:X,schema:Y,it:W}=Q;if(wV.alwaysValidSchema(W,Y)){Q.fail();return}let J=X.name("valid");Q.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),Q.failResult(J,()=>Q.reset(),()=>Q.error())},error:{message:"must NOT be valid"}};UH.default=PV});var ZH=M((VH)=>{Object.defineProperty(VH,"__esModule",{value:!0});var EV=N0(),bV={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:EV.validateUnion,error:{message:"must match a schema in anyOf"}};VH.default=bV});var qH=M((OH)=>{Object.defineProperty(OH,"__esModule",{value:!0});var rQ=k(),jV=h(),RV={message:"must match exactly one schema in oneOf",params:({params:Q})=>rQ._`{passingSchemas: ${Q.passing}}`},SV={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:RV,code(Q){let{gen:X,schema:Y,parentSchema:W,it:J}=Q;if(!Array.isArray(Y))throw new Error("ajv implementation error");if(J.opts.discriminator&&W.discriminator)return;let G=Y,H=X.let("valid",!1),$=X.let("passing",null),K=X.name("_valid");Q.setParams({passing:$}),X.block(B),Q.result(H,()=>Q.reset(),()=>Q.error(!0));function B(){G.forEach((z,A)=>{let F;if(jV.alwaysValidSchema(J,z))X.var(K,!0);else F=Q.subschema({keyword:"oneOf",schemaProp:A,compositeRule:!0},K);if(A>0)X.if(rQ._`${K} && ${H}`).assign(H,!1).assign($,rQ._`[${$}, ${A}]`).else();X.if(K,()=>{if(X.assign(H,!0),X.assign($,A),F)Q.mergeEvaluated(F,rQ.Name)})})}}};OH.default=SV});var NH=M((MH)=>{Object.defineProperty(MH,"__esModule",{value:!0});var kV=h(),vV={keyword:"allOf",schemaType:"array",code(Q){let{gen:X,schema:Y,it:W}=Q;if(!Array.isArray(Y))throw new Error("ajv implementation error");let J=X.name("valid");Y.forEach((G,H)=>{if(kV.alwaysValidSchema(W,G))return;let $=Q.subschema({keyword:"allOf",schemaProp:H},J);Q.ok(J),Q.mergeEvaluated($)})}};MH.default=vV});var EH=M((IH)=>{Object.defineProperty(IH,"__esModule",{value:!0});var nQ=k(),PH=h(),xV={message:({params:Q})=>nQ.str`must match "${Q.ifClause}" schema`,params:({params:Q})=>nQ._`{failingKeyword: ${Q.ifClause}}`},gV={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:xV,code(Q){let{gen:X,parentSchema:Y,it:W}=Q;if(Y.then===void 0&&Y.else===void 0)PH.checkStrictMode(W,'"if" without "then" and "else" is ignored');let J=wH(W,"then"),G=wH(W,"else");if(!J&&!G)return;let H=X.let("valid",!0),$=X.name("_valid");if(K(),Q.reset(),J&&G){let z=X.let("ifClause");Q.setParams({ifClause:z}),X.if($,B("then",z),B("else",z))}else if(J)X.if($,B("then"));else X.if(nQ.not($),B("else"));Q.pass(H,()=>Q.error(!0));function K(){let z=Q.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},$);Q.mergeEvaluated(z)}function B(z,A){return()=>{let F=Q.subschema({keyword:z},$);if(X.assign(H,$),Q.mergeValidEvaluated(F,H),A)X.assign(A,nQ._`${z}`);else Q.setParams({ifClause:z})}}}};function wH(Q,X){let Y=Q.schema[X];return Y!==void 0&&!PH.alwaysValidSchema(Q,Y)}IH.default=gV});var TH=M((bH)=>{Object.defineProperty(bH,"__esModule",{value:!0});var hV=h(),uV={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:Q,parentSchema:X,it:Y}){if(X.if===void 0)hV.checkStrictMode(Y,`"${Q}" without "if" is ignored`)}};bH.default=uV});var RH=M((jH)=>{Object.defineProperty(jH,"__esModule",{value:!0});var lV=s8(),mV=cG(),cV=e8(),pV=iG(),dV=nG(),iV=QH(),rV=WH(),nV=XX(),oV=KH(),tV=FH(),aV=DH(),sV=ZH(),eV=qH(),QZ=NH(),XZ=EH(),YZ=TH();function WZ(Q=!1){let X=[aV.default,sV.default,eV.default,QZ.default,XZ.default,YZ.default,rV.default,nV.default,iV.default,oV.default,tV.default];if(Q)X.push(mV.default,pV.default);else X.push(lV.default,cV.default);return X.push(dV.default),X}jH.default=WZ});var CH=M((SH)=>{Object.defineProperty(SH,"__esModule",{value:!0});var s=k(),GZ={message:({schemaCode:Q})=>s.str`must match format "${Q}"`,params:({schemaCode:Q})=>s._`{format: ${Q}}`},HZ={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:GZ,code(Q,X){let{gen:Y,data:W,$data:J,schema:G,schemaCode:H,it:$}=Q,{opts:K,errSchemaPath:B,schemaEnv:z,self:A}=$;if(!K.validateFormats)return;if(J)F();else L();function F(){let V=Y.scopeValue("formats",{ref:A.formats,code:K.code.formats}),Z=Y.const("fDef",s._`${V}[${H}]`),q=Y.let("fType"),O=Y.let("format");Y.if(s._`typeof ${Z} == "object" && !(${Z} instanceof RegExp)`,()=>Y.assign(q,s._`${Z}.type || "string"`).assign(O,s._`${Z}.validate`),()=>Y.assign(q,s._`"string"`).assign(O,Z)),Q.fail$data(s.or(T(),E()));function T(){if(K.strictSchema===!1)return s.nil;return s._`${H} && !${O}`}function E(){let R=z.$async?s._`(${Z}.async ? await ${O}(${W}) : ${O}(${W}))`:s._`${O}(${W})`,I=s._`(typeof ${O} == "function" ? ${R} : ${O}.test(${W}))`;return s._`${O} && ${O} !== true && ${q} === ${X} && !${I}`}}function L(){let V=A.formats[G];if(!V){T();return}if(V===!0)return;let[Z,q,O]=E(V);if(Z===X)Q.pass(R());function T(){if(K.strictSchema===!1){A.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${G}" ignored in schema at path "${B}"`}}function E(I){let I0=I instanceof RegExp?s.regexpCode(I):K.code.formats?s._`${K.code.formats}${s.getProperty(G)}`:void 0,E0=Y.scopeValue("formats",{key:G,ref:I,code:I0});if(typeof I=="object"&&!(I instanceof RegExp))return[I.type||"string",I.validate,s._`${E0}.validate`];return["string",I,E0]}function R(){if(typeof V=="object"&&!(V instanceof RegExp)&&V.async){if(!z.$async)throw new Error("async format in sync schema");return s._`await ${O}(${W})`}return typeof q=="function"?s._`${O}(${W})`:s._`${O}.test(${W})`}}}};SH.default=HZ});var vH=M((kH)=>{Object.defineProperty(kH,"__esModule",{value:!0});var KZ=CH(),BZ=[KZ.default];kH.default=BZ});var gH=M((_H)=>{Object.defineProperty(_H,"__esModule",{value:!0});_H.contentVocabulary=_H.metadataVocabulary=void 0;_H.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];_H.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var uH=M((hH)=>{Object.defineProperty(hH,"__esModule",{value:!0});var LZ=$G(),FZ=_G(),UZ=RH(),DZ=vH(),yH=gH(),VZ=[LZ.default,FZ.default,UZ.default(),DZ.default,yH.metadataVocabulary,yH.contentVocabulary];hH.default=VZ});var cH=M((lH)=>{Object.defineProperty(lH,"__esModule",{value:!0});lH.DiscrError=void 0;var fH;(function(Q){Q.Tag="tag",Q.Mapping="mapping"})(fH||(lH.DiscrError=fH={}))});var iH=M((dH)=>{Object.defineProperty(dH,"__esModule",{value:!0});var C1=k(),WX=cH(),pH=RQ(),OZ=V9(),qZ=h(),MZ={message:({params:{discrError:Q,tagName:X}})=>Q===WX.DiscrError.Tag?`tag "${X}" must be string`:`value of tag "${X}" must be in oneOf`,params:({params:{discrError:Q,tag:X,tagName:Y}})=>C1._`{error: ${Q}, tag: ${Y}, tagValue: ${X}}`},NZ={keyword:"discriminator",type:"object",schemaType:"object",error:MZ,code(Q){let{gen:X,data:Y,schema:W,parentSchema:J,it:G}=Q,{oneOf:H}=J;if(!G.opts.discriminator)throw new Error("discriminator: requires discriminator option");let $=W.propertyName;if(typeof $!="string")throw new Error("discriminator: requires propertyName");if(W.mapping)throw new Error("discriminator: mapping is not supported");if(!H)throw new Error("discriminator: requires oneOf keyword");let K=X.let("valid",!1),B=X.const("tag",C1._`${Y}${C1.getProperty($)}`);X.if(C1._`typeof ${B} == "string"`,()=>z(),()=>Q.error(!1,{discrError:WX.DiscrError.Tag,tag:B,tagName:$})),Q.ok(K);function z(){let L=F();X.if(!1);for(let V in L)X.elseIf(C1._`${B} === ${V}`),X.assign(K,A(L[V]));X.else(),Q.error(!1,{discrError:WX.DiscrError.Mapping,tag:B,tagName:$}),X.endIf()}function A(L){let V=X.name("valid"),Z=Q.subschema({keyword:"oneOf",schemaProp:L},V);return Q.mergeEvaluated(Z,C1.Name),V}function F(){var L;let V={},Z=O(J),q=!0;for(let R=0;R<H.length;R++){let I=H[R];if((I===null||I===void 0?void 0:I.$ref)&&!qZ.schemaHasRulesButRef(I,G.self.RULES)){let E0=I.$ref;if(I=pH.resolveRef.call(G.self,G.schemaEnv.root,G.baseId,E0),I instanceof pH.SchemaEnv)I=I.schema;if(I===void 0)throw new OZ.default(G.opts.uriResolver,G.baseId,E0)}let I0=(L=I===null||I===void 0?void 0:I.properties)===null||L===void 0?void 0:L[$];if(typeof I0!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${$}"`);q=q&&(Z||O(I)),T(I0,R)}if(!q)throw new Error(`discriminator: "${$}" must be required`);return V;function O({required:R}){return Array.isArray(R)&&R.includes($)}function T(R,I){if(R.const)E(R.const,I);else if(R.enum)for(let I0 of R.enum)E(I0,I);else throw new Error(`discriminator: "properties/${$}" must have "const" or "enum"`)}function E(R,I){if(typeof R!="string"||R in V)throw new Error(`discriminator: "${$}" values must be unique strings`);V[R]=I}}}};dH.default=NZ});var rH=M((iE,PZ)=>{PZ.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 GX=M((D0,JX)=>{Object.defineProperty(D0,"__esModule",{value:!0});D0.MissingRefError=D0.ValidationError=D0.CodeGen=D0.Name=D0.nil=D0.stringify=D0.str=D0._=D0.KeywordCxt=D0.Ajv=void 0;var IZ=a5(),EZ=uH(),bZ=iH(),nH=rH(),TZ=["/properties"],oQ="http://json-schema.org/draft-07/schema";class j9 extends IZ.default{_addVocabularies(){if(super._addVocabularies(),EZ.default.forEach((Q)=>this.addVocabulary(Q)),this.opts.discriminator)this.addKeyword(bZ.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let Q=this.opts.$data?this.$dataMetaSchema(nH,TZ):nH;this.addMetaSchema(Q,oQ,!1),this.refs["http://json-schema.org/schema"]=oQ}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(oQ)?oQ:void 0)}}D0.Ajv=j9;JX.exports=D0=j9;JX.exports.Ajv=j9;Object.defineProperty(D0,"__esModule",{value:!0});D0.default=j9;var jZ=D9();Object.defineProperty(D0,"KeywordCxt",{enumerable:!0,get:function(){return jZ.KeywordCxt}});var k1=k();Object.defineProperty(D0,"_",{enumerable:!0,get:function(){return k1._}});Object.defineProperty(D0,"str",{enumerable:!0,get:function(){return k1.str}});Object.defineProperty(D0,"stringify",{enumerable:!0,get:function(){return k1.stringify}});Object.defineProperty(D0,"nil",{enumerable:!0,get:function(){return k1.nil}});Object.defineProperty(D0,"Name",{enumerable:!0,get:function(){return k1.Name}});Object.defineProperty(D0,"CodeGen",{enumerable:!0,get:function(){return k1.CodeGen}});var RZ=TQ();Object.defineProperty(D0,"ValidationError",{enumerable:!0,get:function(){return RZ.default}});var SZ=V9();Object.defineProperty(D0,"MissingRefError",{enumerable:!0,get:function(){return SZ.default}})});var J3=M((Y3)=>{Object.defineProperty(Y3,"__esModule",{value:!0});Y3.formatNames=Y3.fastFormats=Y3.fullFormats=void 0;function g0(Q,X){return{validate:Q,compare:X}}Y3.fullFormats={date:g0(sH,BX),time:g0($X(!0),zX),"date-time":g0(oH(!0),Q3),"iso-time":g0($X(),eH),"iso-date-time":g0(oH(),X3),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:hZ,"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:dZ,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:uZ,int32:{type:"number",validate:mZ},int64:{type:"number",validate:cZ},float:{type:"number",validate:aH},double:{type:"number",validate:aH},password:!0,binary:!0};Y3.fastFormats={...Y3.fullFormats,date:g0(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,BX),time:g0(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,zX),"date-time":g0(/^\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,Q3),"iso-time":g0(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,eH),"iso-date-time":g0(/^\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,X3),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};Y3.formatNames=Object.keys(Y3.fullFormats);function vZ(Q){return Q%4===0&&(Q%100!==0||Q%400===0)}var _Z=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xZ=[0,31,28,31,30,31,30,31,31,30,31,30,31];function sH(Q){let X=_Z.exec(Q);if(!X)return!1;let Y=+X[1],W=+X[2],J=+X[3];return W>=1&&W<=12&&J>=1&&J<=(W===2&&vZ(Y)?29:xZ[W])}function BX(Q,X){if(!(Q&&X))return;if(Q>X)return 1;if(Q<X)return-1;return 0}var HX=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function $X(Q){return function X(Y){let W=HX.exec(Y);if(!W)return!1;let J=+W[1],G=+W[2],H=+W[3],$=W[4],K=W[5]==="-"?-1:1,B=+(W[6]||0),z=+(W[7]||0);if(B>23||z>59||Q&&!$)return!1;if(J<=23&&G<=59&&H<60)return!0;let A=G-z*K,F=J-B*K-(A<0?1:0);return(F===23||F===-1)&&(A===59||A===-1)&&H<61}}function zX(Q,X){if(!(Q&&X))return;let Y=new Date("2020-01-01T"+Q).valueOf(),W=new Date("2020-01-01T"+X).valueOf();if(!(Y&&W))return;return Y-W}function eH(Q,X){if(!(Q&&X))return;let Y=HX.exec(Q),W=HX.exec(X);if(!(Y&&W))return;if(Q=Y[1]+Y[2]+Y[3],X=W[1]+W[2]+W[3],Q>X)return 1;if(Q<X)return-1;return 0}var KX=/t|\s/i;function oH(Q){let X=$X(Q);return function Y(W){let J=W.split(KX);return J.length===2&&sH(J[0])&&X(J[1])}}function Q3(Q,X){if(!(Q&&X))return;let Y=new Date(Q).valueOf(),W=new Date(X).valueOf();if(!(Y&&W))return;return Y-W}function X3(Q,X){if(!(Q&&X))return;let[Y,W]=Q.split(KX),[J,G]=X.split(KX),H=BX(Y,J);if(H===void 0)return;return H||zX(W,G)}var gZ=/\/|:/,yZ=/^(?:[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 hZ(Q){return gZ.test(Q)&&yZ.test(Q)}var tH=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function uZ(Q){return tH.lastIndex=0,tH.test(Q)}var fZ=-2147483648,lZ=2147483647;function mZ(Q){return Number.isInteger(Q)&&Q<=lZ&&Q>=fZ}function cZ(Q){return Number.isInteger(Q)}function aH(){return!0}var pZ=/[^\\]\\Z/;function dZ(Q){if(pZ.test(Q))return!1;try{return new RegExp(Q),!0}catch(X){return!1}}});var H3=M((G3)=>{Object.defineProperty(G3,"__esModule",{value:!0});G3.formatLimitDefinition=void 0;var rZ=GX(),v0=k(),H1=v0.operators,tQ={formatMaximum:{okStr:"<=",ok:H1.LTE,fail:H1.GT},formatMinimum:{okStr:">=",ok:H1.GTE,fail:H1.LT},formatExclusiveMaximum:{okStr:"<",ok:H1.LT,fail:H1.GTE},formatExclusiveMinimum:{okStr:">",ok:H1.GT,fail:H1.LTE}},nZ={message:({keyword:Q,schemaCode:X})=>v0.str`should be ${tQ[Q].okStr} ${X}`,params:({keyword:Q,schemaCode:X})=>v0._`{comparison: ${tQ[Q].okStr}, limit: ${X}}`};G3.formatLimitDefinition={keyword:Object.keys(tQ),type:"string",schemaType:"string",$data:!0,error:nZ,code(Q){let{gen:X,data:Y,schemaCode:W,keyword:J,it:G}=Q,{opts:H,self:$}=G;if(!H.validateFormats)return;let K=new rZ.KeywordCxt(G,$.RULES.all.format.definition,"format");if(K.$data)B();else z();function B(){let F=X.scopeValue("formats",{ref:$.formats,code:H.code.formats}),L=X.const("fmt",v0._`${F}[${K.schemaCode}]`);Q.fail$data(v0.or(v0._`typeof ${L} != "object"`,v0._`${L} instanceof RegExp`,v0._`typeof ${L}.compare != "function"`,A(L)))}function z(){let F=K.schema,L=$.formats[F];if(!L||L===!0)return;if(typeof L!="object"||L instanceof RegExp||typeof L.compare!="function")throw new Error(`"${J}": format "${F}" does not define "compare" function`);let V=X.scopeValue("formats",{key:F,ref:L,code:H.code.formats?v0._`${H.code.formats}${v0.getProperty(F)}`:void 0});Q.fail$data(A(V))}function A(F){return v0._`${F}.compare(${Y}, ${W}) ${tQ[J].fail} 0`}},dependencies:["format"]};var oZ=(Q)=>{return Q.addKeyword(G3.formatLimitDefinition),Q};G3.default=oZ});var z3=M((R9,B3)=>{Object.defineProperty(R9,"__esModule",{value:!0});var v1=J3(),aZ=H3(),FX=k(),$3=new FX.Name("fullFormats"),sZ=new FX.Name("fastFormats"),UX=(Q,X={keywords:!0})=>{if(Array.isArray(X))return K3(Q,X,v1.fullFormats,$3),Q;let[Y,W]=X.mode==="fast"?[v1.fastFormats,sZ]:[v1.fullFormats,$3],J=X.formats||v1.formatNames;if(K3(Q,J,Y,W),X.keywords)aZ.default(Q);return Q};UX.get=(Q,X="full")=>{let W=(X==="fast"?v1.fastFormats:v1.fullFormats)[Q];if(!W)throw new Error(`Unknown format "${Q}"`);return W};function K3(Q,X,Y,W){var J,G;(J=(G=Q.opts.code).formats)!==null&&J!==void 0||(G.formats=FX._`require("ajv-formats/dist/formats").${W}`);for(let H of X)Q.addFormat(H,Y[H])}B3.exports=R9=UX;Object.defineProperty(R9,"__esModule",{value:!0});R9.default=UX});var HO=Object.freeze({status:"aborted"});function D(Q,X,Y){function W($,K){if(!$._zod)Object.defineProperty($,"_zod",{value:{def:K,constr:H,traits:new Set},enumerable:!1});if($._zod.traits.has(Q))return;$._zod.traits.add(Q),X($,K);let B=H.prototype,z=Object.keys(B);for(let A=0;A<z.length;A++){let F=z[A];if(!(F in $))$[F]=B[F].bind($)}}let J=Y?.Parent??Object;class G extends J{}Object.defineProperty(G,"name",{value:Q});function H($){var K;let B=Y?.Parent?new G:this;W(B,$),(K=B._zod).deferred??(K.deferred=[]);for(let z of B._zod.deferred)z();return B}return Object.defineProperty(H,"init",{value:W}),Object.defineProperty(H,Symbol.hasInstance,{value:($)=>{if(Y?.Parent&&$ instanceof Y.Parent)return!0;return $?._zod?.traits?.has(Q)}}),Object.defineProperty(H,"name",{value:Q}),H}var $O=Symbol("zod_brand");class y0 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class x1 extends Error{constructor(Q){super(`Encountered unidirectional transform during encode: ${Q}`);this.name="ZodEncodeError"}}var S9={};function O0(Q){if(Q)Object.assign(S9,Q);return S9}var y={};PX(y,{unwrapMessage:()=>g1,uint8ArrayToHex:()=>n3,uint8ArrayToBase64url:()=>i3,uint8ArrayToBase64:()=>SX,stringifyPrimitive:()=>_9,slugify:()=>W6,shallowClone:()=>EX,safeExtend:()=>f3,required:()=>c3,randomString:()=>v3,propertyKeyTypes:()=>G6,promiseAllObject:()=>k3,primitiveTypes:()=>bX,prefixIssues:()=>f0,pick:()=>y3,partial:()=>m3,parsedType:()=>K6,optionalKeys:()=>H6,omit:()=>h3,objectClone:()=>R3,numKeys:()=>_3,nullish:()=>h1,normalizeParams:()=>b,mergeDefs:()=>h0,merge:()=>l3,jsonStringifyReplacer:()=>D1,joinValues:()=>C9,issue:()=>Z1,isPlainObject:()=>n0,isObject:()=>$1,hexToUint8Array:()=>r3,getSizableOrigin:()=>jX,getParsedType:()=>x3,getLengthableOrigin:()=>f1,getEnumValues:()=>y1,getElementAtPath:()=>C3,floatSafeRemainder:()=>Y6,finalizeIssue:()=>T0,extend:()=>u3,escapeRegex:()=>u0,esc:()=>k9,defineLazy:()=>u,createTransparentProxy:()=>g3,cloneDef:()=>S3,clone:()=>b0,cleanRegex:()=>u1,cleanEnum:()=>p3,captureStackTrace:()=>v9,cached:()=>V1,base64urlToUint8Array:()=>d3,base64ToUint8Array:()=>RX,assignProp:()=>r0,assertNotEqual:()=>E3,assertNever:()=>T3,assertIs:()=>b3,assertEqual:()=>I3,assert:()=>j3,allowsEval:()=>J6,aborted:()=>o0,NUMBER_FORMAT_RANGES:()=>$6,Class:()=>CX,BIGINT_FORMAT_RANGES:()=>TX});function I3(Q){return Q}function E3(Q){return Q}function b3(Q){}function T3(Q){throw new Error("Unexpected value in exhaustive check")}function j3(Q){}function y1(Q){let X=Object.values(Q).filter((W)=>typeof W==="number");return Object.entries(Q).filter(([W,J])=>X.indexOf(+W)===-1).map(([W,J])=>J)}function C9(Q,X="|"){return Q.map((Y)=>_9(Y)).join(X)}function D1(Q,X){if(typeof X==="bigint")return X.toString();return X}function V1(Q){return{get value(){{let Y=Q();return Object.defineProperty(this,"value",{value:Y}),Y}throw new Error("cached value already set")}}}function h1(Q){return Q===null||Q===void 0}function u1(Q){let X=Q.startsWith("^")?1:0,Y=Q.endsWith("$")?Q.length-1:Q.length;return Q.slice(X,Y)}function Y6(Q,X){let Y=(Q.toString().split(".")[1]||"").length,W=X.toString(),J=(W.split(".")[1]||"").length;if(J===0&&/\d?e-\d?/.test(W)){let K=W.match(/\d?e-(\d?)/);if(K?.[1])J=Number.parseInt(K[1])}let G=Y>J?Y:J,H=Number.parseInt(Q.toFixed(G).replace(".","")),$=Number.parseInt(X.toFixed(G).replace(".",""));return H%$/10**G}var IX=Symbol("evaluating");function u(Q,X,Y){let W=void 0;Object.defineProperty(Q,X,{get(){if(W===IX)return;if(W===void 0)W=IX,W=Y();return W},set(J){Object.defineProperty(Q,X,{value:J})},configurable:!0})}function R3(Q){return Object.create(Object.getPrototypeOf(Q),Object.getOwnPropertyDescriptors(Q))}function r0(Q,X,Y){Object.defineProperty(Q,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function h0(...Q){let X={};for(let Y of Q){let W=Object.getOwnPropertyDescriptors(Y);Object.assign(X,W)}return Object.defineProperties({},X)}function S3(Q){return h0(Q._zod.def)}function C3(Q,X){if(!X)return Q;return X.reduce((Y,W)=>Y?.[W],Q)}function k3(Q){let X=Object.keys(Q),Y=X.map((W)=>Q[W]);return Promise.all(Y).then((W)=>{let J={};for(let G=0;G<X.length;G++)J[X[G]]=W[G];return J})}function v3(Q=10){let Y="";for(let W=0;W<Q;W++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function k9(Q){return JSON.stringify(Q)}function W6(Q){return Q.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var v9="captureStackTrace"in Error?Error.captureStackTrace:(...Q)=>{};function $1(Q){return typeof Q==="object"&&Q!==null&&!Array.isArray(Q)}var J6=V1(()=>{if(typeof navigator!=="undefined"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(Q){return!1}});function n0(Q){if($1(Q)===!1)return!1;let X=Q.constructor;if(X===void 0)return!0;if(typeof X!=="function")return!0;let Y=X.prototype;if($1(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function EX(Q){if(n0(Q))return{...Q};if(Array.isArray(Q))return[...Q];return Q}function _3(Q){let X=0;for(let Y in Q)if(Object.prototype.hasOwnProperty.call(Q,Y))X++;return X}var x3=(Q)=>{let X=typeof Q;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(Q)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(Q))return"array";if(Q===null)return"null";if(Q.then&&typeof Q.then==="function"&&Q.catch&&typeof Q.catch==="function")return"promise";if(typeof Map!=="undefined"&&Q instanceof Map)return"map";if(typeof Set!=="undefined"&&Q instanceof Set)return"set";if(typeof Date!=="undefined"&&Q instanceof Date)return"date";if(typeof File!=="undefined"&&Q instanceof File)return"file";return"object";default:throw new Error(`Unknown data type: ${X}`)}},G6=new Set(["string","number","symbol"]),bX=new Set(["string","number","bigint","boolean","symbol","undefined"]);function u0(Q){return Q.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function b0(Q,X,Y){let W=new Q._zod.constr(X??Q._zod.def);if(!X||Y?.parent)W._zod.parent=Q;return W}function b(Q){let X=Q;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function g3(Q){let X;return new Proxy({},{get(Y,W,J){return X??(X=Q()),Reflect.get(X,W,J)},set(Y,W,J,G){return X??(X=Q()),Reflect.set(X,W,J,G)},has(Y,W){return X??(X=Q()),Reflect.has(X,W)},deleteProperty(Y,W){return X??(X=Q()),Reflect.deleteProperty(X,W)},ownKeys(Y){return X??(X=Q()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,W){return X??(X=Q()),Reflect.getOwnPropertyDescriptor(X,W)},defineProperty(Y,W,J){return X??(X=Q()),Reflect.defineProperty(X,W,J)}})}function _9(Q){if(typeof Q==="bigint")return Q.toString()+"n";if(typeof Q==="string")return`"${Q}"`;return`${Q}`}function H6(Q){return Object.keys(Q).filter((X)=>{return Q[X]._zod.optin==="optional"&&Q[X]._zod.optout==="optional"})}var $6={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},TX={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function y3(Q,X){let Y=Q._zod.def,W=Y.checks;if(W&&W.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let G=h0(Q._zod.def,{get shape(){let H={};for(let $ in X){if(!($ in Y.shape))throw new Error(`Unrecognized key: "${$}"`);if(!X[$])continue;H[$]=Y.shape[$]}return r0(this,"shape",H),H},checks:[]});return b0(Q,G)}function h3(Q,X){let Y=Q._zod.def,W=Y.checks;if(W&&W.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let G=h0(Q._zod.def,{get shape(){let H={...Q._zod.def.shape};for(let $ in X){if(!($ in Y.shape))throw new Error(`Unrecognized key: "${$}"`);if(!X[$])continue;delete H[$]}return r0(this,"shape",H),H},checks:[]});return b0(Q,G)}function u3(Q,X){if(!n0(X))throw new Error("Invalid input to extend: expected a plain object");let Y=Q._zod.def.checks;if(Y&&Y.length>0){let G=Q._zod.def.shape;for(let H in X)if(Object.getOwnPropertyDescriptor(G,H)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let J=h0(Q._zod.def,{get shape(){let G={...Q._zod.def.shape,...X};return r0(this,"shape",G),G}});return b0(Q,J)}function f3(Q,X){if(!n0(X))throw new Error("Invalid input to safeExtend: expected a plain object");let Y=h0(Q._zod.def,{get shape(){let W={...Q._zod.def.shape,...X};return r0(this,"shape",W),W}});return b0(Q,Y)}function l3(Q,X){let Y=h0(Q._zod.def,{get shape(){let W={...Q._zod.def.shape,...X._zod.def.shape};return r0(this,"shape",W),W},get catchall(){return X._zod.def.catchall},checks:[]});return b0(Q,Y)}function m3(Q,X,Y){let J=X._zod.def.checks;if(J&&J.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let H=h0(X._zod.def,{get shape(){let $=X._zod.def.shape,K={...$};if(Y)for(let B in Y){if(!(B in $))throw new Error(`Unrecognized key: "${B}"`);if(!Y[B])continue;K[B]=Q?new Q({type:"optional",innerType:$[B]}):$[B]}else for(let B in $)K[B]=Q?new Q({type:"optional",innerType:$[B]}):$[B];return r0(this,"shape",K),K},checks:[]});return b0(X,H)}function c3(Q,X,Y){let W=h0(X._zod.def,{get shape(){let J=X._zod.def.shape,G={...J};if(Y)for(let H in Y){if(!(H in G))throw new Error(`Unrecognized key: "${H}"`);if(!Y[H])continue;G[H]=new Q({type:"nonoptional",innerType:J[H]})}else for(let H in J)G[H]=new Q({type:"nonoptional",innerType:J[H]});return r0(this,"shape",G),G}});return b0(X,W)}function o0(Q,X=0){if(Q.aborted===!0)return!0;for(let Y=X;Y<Q.issues.length;Y++)if(Q.issues[Y]?.continue!==!0)return!0;return!1}function f0(Q,X){return X.map((Y)=>{var W;return(W=Y).path??(W.path=[]),Y.path.unshift(Q),Y})}function g1(Q){return typeof Q==="string"?Q:Q?.message}function T0(Q,X,Y){let W={...Q,path:Q.path??[]};if(!Q.message){let J=g1(Q.inst?._zod.def?.error?.(Q))??g1(X?.error?.(Q))??g1(Y.customError?.(Q))??g1(Y.localeError?.(Q))??"Invalid input";W.message=J}if(delete W.inst,delete W.continue,!X?.reportInput)delete W.input;return W}function jX(Q){if(Q instanceof Set)return"set";if(Q instanceof Map)return"map";if(Q instanceof File)return"file";return"unknown"}function f1(Q){if(Array.isArray(Q))return"array";if(typeof Q==="string")return"string";return"unknown"}function K6(Q){let X=typeof Q;switch(X){case"number":return Number.isNaN(Q)?"nan":"number";case"object":{if(Q===null)return"null";if(Array.isArray(Q))return"array";let Y=Q;if(Y&&Object.getPrototypeOf(Y)!==Object.prototype&&"constructor"in Y&&Y.constructor)return Y.constructor.name}}return X}function Z1(...Q){let[X,Y,W]=Q;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:W};return{...X}}function p3(Q){return Object.entries(Q).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}function RX(Q){let X=atob(Q),Y=new Uint8Array(X.length);for(let W=0;W<X.length;W++)Y[W]=X.charCodeAt(W);return Y}function SX(Q){let X="";for(let Y=0;Y<Q.length;Y++)X+=String.fromCharCode(Q[Y]);return btoa(X)}function d3(Q){let X=Q.replace(/-/g,"+").replace(/_/g,"/"),Y="=".repeat((4-X.length%4)%4);return RX(X+Y)}function i3(Q){return SX(Q).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function r3(Q){let X=Q.replace(/^0x/,"");if(X.length%2!==0)throw new Error("Invalid hex string length");let Y=new Uint8Array(X.length/2);for(let W=0;W<X.length;W+=2)Y[W/2]=Number.parseInt(X.slice(W,W+2),16);return Y}function n3(Q){return Array.from(Q).map((X)=>X.toString(16).padStart(2,"0")).join("")}class CX{constructor(...Q){}}var kX=(Q,X)=>{Q.name="$ZodError",Object.defineProperty(Q,"_zod",{value:Q._zod,enumerable:!1}),Object.defineProperty(Q,"issues",{value:X,enumerable:!1}),Q.message=JSON.stringify(X,D1,2),Object.defineProperty(Q,"toString",{value:()=>Q.message,enumerable:!1})},x9=D("$ZodError",kX),B6=D("$ZodError",kX,{Parent:Error});function vX(Q,X=(Y)=>Y.message){let Y={},W=[];for(let J of Q.issues)if(J.path.length>0)Y[J.path[0]]=Y[J.path[0]]||[],Y[J.path[0]].push(X(J));else W.push(X(J));return{formErrors:W,fieldErrors:Y}}function _X(Q,X=(Y)=>Y.message){let Y={_errors:[]},W=(J)=>{for(let G of J.issues)if(G.code==="invalid_union"&&G.errors.length)G.errors.map((H)=>W({issues:H}));else if(G.code==="invalid_key")W({issues:G.issues});else if(G.code==="invalid_element")W({issues:G.issues});else if(G.path.length===0)Y._errors.push(X(G));else{let H=Y,$=0;while($<G.path.length){let K=G.path[$];if($!==G.path.length-1)H[K]=H[K]||{_errors:[]};else H[K]=H[K]||{_errors:[]},H[K]._errors.push(X(G));H=H[K],$++}}};return W(Q),Y}var g9=(Q)=>(X,Y,W,J)=>{let G=W?Object.assign(W,{async:!1}):{async:!1},H=X._zod.run({value:Y,issues:[]},G);if(H instanceof Promise)throw new y0;if(H.issues.length){let $=new(J?.Err??Q)(H.issues.map((K)=>T0(K,G,O0())));throw v9($,J?.callee),$}return H.value};var y9=(Q)=>async(X,Y,W,J)=>{let G=W?Object.assign(W,{async:!0}):{async:!0},H=X._zod.run({value:Y,issues:[]},G);if(H instanceof Promise)H=await H;if(H.issues.length){let $=new(J?.Err??Q)(H.issues.map((K)=>T0(K,G,O0())));throw v9($,J?.callee),$}return H.value};var l1=(Q)=>(X,Y,W)=>{let J=W?{...W,async:!1}:{async:!1},G=X._zod.run({value:Y,issues:[]},J);if(G instanceof Promise)throw new y0;return G.issues.length?{success:!1,error:new(Q??x9)(G.issues.map((H)=>T0(H,J,O0())))}:{success:!0,data:G.value}},m1=l1(B6),c1=(Q)=>async(X,Y,W)=>{let J=W?Object.assign(W,{async:!0}):{async:!0},G=X._zod.run({value:Y,issues:[]},J);if(G instanceof Promise)G=await G;return G.issues.length?{success:!1,error:new Q(G.issues.map((H)=>T0(H,J,O0())))}:{success:!0,data:G.value}},h9=c1(B6),xX=(Q)=>(X,Y,W)=>{let J=W?Object.assign(W,{direction:"backward"}):{direction:"backward"};return g9(Q)(X,Y,J)};var gX=(Q)=>(X,Y,W)=>{return g9(Q)(X,Y,W)};var yX=(Q)=>async(X,Y,W)=>{let J=W?Object.assign(W,{direction:"backward"}):{direction:"backward"};return y9(Q)(X,Y,J)};var hX=(Q)=>async(X,Y,W)=>{return y9(Q)(X,Y,W)};var uX=(Q)=>(X,Y,W)=>{let J=W?Object.assign(W,{direction:"backward"}):{direction:"backward"};return l1(Q)(X,Y,J)};var fX=(Q)=>(X,Y,W)=>{return l1(Q)(X,Y,W)};var lX=(Q)=>async(X,Y,W)=>{let J=W?Object.assign(W,{direction:"backward"}):{direction:"backward"};return c1(Q)(X,Y,J)};var mX=(Q)=>async(X,Y,W)=>{return c1(Q)(X,Y,W)};var cX=/^[cC][^\s-]{8,}$/,pX=/^[0-9a-z]+$/,dX=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,iX=/^[0-9a-vA-V]{20}$/,rX=/^[A-Za-z0-9]{27}$/,nX=/^[a-zA-Z0-9_-]{21}$/,oX=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var tX=/^([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})$/,z6=(Q)=>{if(!Q)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${Q}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var aX=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var t3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function sX(){return new RegExp(t3,"u")}var eX=/^(?:(?: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])$/,Q4=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var X4=/^((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])$/,Y4=/^(([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])$/,W4=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,A6=/^[A-Za-z0-9_-]*$/;var J4=/^\+[1-9]\d{6,14}$/,G4="(?:(?:\\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])))",H4=new RegExp(`^${G4}$`);function $4(Q){return typeof Q.precision==="number"?Q.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":Q.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${Q.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function K4(Q){return new RegExp(`^${$4(Q)}$`)}function B4(Q){let X=$4({precision:Q.precision}),Y=["Z"];if(Q.local)Y.push("");if(Q.offset)Y.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let W=`${X}(?:${Y.join("|")})`;return new RegExp(`^${G4}T(?:${W})$`)}var z4=(Q)=>{let X=Q?`[\\s\\S]{${Q?.minimum??0},${Q?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${X}$`)};var A4=/^-?\d+$/,u9=/^-?\d+(?:\.\d+)?$/,L4=/^(?:true|false)$/i,F4=/^null$/i;var U4=/^[^A-Z]*$/,D4=/^[^a-z]*$/;var Q0=D("$ZodCheck",(Q,X)=>{var Y;Q._zod??(Q._zod={}),Q._zod.def=X,(Y=Q._zod).onattach??(Y.onattach=[])}),V4={number:"number",bigint:"bigint",object:"date"},L6=D("$ZodCheckLessThan",(Q,X)=>{Q0.init(Q,X);let Y=V4[typeof X.value];Q._zod.onattach.push((W)=>{let J=W._zod.bag,G=(X.inclusive?J.maximum:J.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(X.value<G)if(X.inclusive)J.maximum=X.value;else J.exclusiveMaximum=X.value}),Q._zod.check=(W)=>{if(X.inclusive?W.value<=X.value:W.value<X.value)return;W.issues.push({origin:Y,code:"too_big",maximum:typeof X.value==="object"?X.value.getTime():X.value,input:W.value,inclusive:X.inclusive,inst:Q,continue:!X.abort})}}),F6=D("$ZodCheckGreaterThan",(Q,X)=>{Q0.init(Q,X);let Y=V4[typeof X.value];Q._zod.onattach.push((W)=>{let J=W._zod.bag,G=(X.inclusive?J.minimum:J.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(X.value>G)if(X.inclusive)J.minimum=X.value;else J.exclusiveMinimum=X.value}),Q._zod.check=(W)=>{if(X.inclusive?W.value>=X.value:W.value>X.value)return;W.issues.push({origin:Y,code:"too_small",minimum:typeof X.value==="object"?X.value.getTime():X.value,input:W.value,inclusive:X.inclusive,inst:Q,continue:!X.abort})}}),Z4=D("$ZodCheckMultipleOf",(Q,X)=>{Q0.init(Q,X),Q._zod.onattach.push((Y)=>{var W;(W=Y._zod.bag).multipleOf??(W.multipleOf=X.value)}),Q._zod.check=(Y)=>{if(typeof Y.value!==typeof X.value)throw new Error("Cannot mix number and bigint in multiple_of check.");if(typeof Y.value==="bigint"?Y.value%X.value===BigInt(0):Y6(Y.value,X.value)===0)return;Y.issues.push({origin:typeof Y.value,code:"not_multiple_of",divisor:X.value,input:Y.value,inst:Q,continue:!X.abort})}}),O4=D("$ZodCheckNumberFormat",(Q,X)=>{Q0.init(Q,X),X.format=X.format||"float64";let Y=X.format?.includes("int"),W=Y?"int":"number",[J,G]=$6[X.format];Q._zod.onattach.push((H)=>{let $=H._zod.bag;if($.format=X.format,$.minimum=J,$.maximum=G,Y)$.pattern=A4}),Q._zod.check=(H)=>{let $=H.value;if(Y){if(!Number.isInteger($)){H.issues.push({expected:W,format:X.format,code:"invalid_type",continue:!1,input:$,inst:Q});return}if(!Number.isSafeInteger($)){if($>0)H.issues.push({input:$,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:Q,origin:W,inclusive:!0,continue:!X.abort});else H.issues.push({input:$,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:Q,origin:W,inclusive:!0,continue:!X.abort});return}}if($<J)H.issues.push({origin:"number",input:$,code:"too_small",minimum:J,inclusive:!0,inst:Q,continue:!X.abort});if($>G)H.issues.push({origin:"number",input:$,code:"too_big",maximum:G,inclusive:!0,inst:Q,continue:!X.abort})}});var q4=D("$ZodCheckMaxLength",(Q,X)=>{var Y;Q0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let J=W.value;return!h1(J)&&J.length!==void 0}),Q._zod.onattach.push((W)=>{let J=W._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<J)W._zod.bag.maximum=X.maximum}),Q._zod.check=(W)=>{let J=W.value;if(J.length<=X.maximum)return;let H=f1(J);W.issues.push({origin:H,code:"too_big",maximum:X.maximum,inclusive:!0,input:J,inst:Q,continue:!X.abort})}}),M4=D("$ZodCheckMinLength",(Q,X)=>{var Y;Q0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let J=W.value;return!h1(J)&&J.length!==void 0}),Q._zod.onattach.push((W)=>{let J=W._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>J)W._zod.bag.minimum=X.minimum}),Q._zod.check=(W)=>{let J=W.value;if(J.length>=X.minimum)return;let H=f1(J);W.issues.push({origin:H,code:"too_small",minimum:X.minimum,inclusive:!0,input:J,inst:Q,continue:!X.abort})}}),N4=D("$ZodCheckLengthEquals",(Q,X)=>{var Y;Q0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let J=W.value;return!h1(J)&&J.length!==void 0}),Q._zod.onattach.push((W)=>{let J=W._zod.bag;J.minimum=X.length,J.maximum=X.length,J.length=X.length}),Q._zod.check=(W)=>{let J=W.value,G=J.length;if(G===X.length)return;let H=f1(J),$=G>X.length;W.issues.push({origin:H,...$?{code:"too_big",maximum:X.length}:{code:"too_small",minimum:X.length},inclusive:!0,exact:!0,input:W.value,inst:Q,continue:!X.abort})}}),p1=D("$ZodCheckStringFormat",(Q,X)=>{var Y,W;if(Q0.init(Q,X),Q._zod.onattach.push((J)=>{let G=J._zod.bag;if(G.format=X.format,X.pattern)G.patterns??(G.patterns=new Set),G.patterns.add(X.pattern)}),X.pattern)(Y=Q._zod).check??(Y.check=(J)=>{if(X.pattern.lastIndex=0,X.pattern.test(J.value))return;J.issues.push({origin:"string",code:"invalid_format",format:X.format,input:J.value,...X.pattern?{pattern:X.pattern.toString()}:{},inst:Q,continue:!X.abort})});else(W=Q._zod).check??(W.check=()=>{})}),w4=D("$ZodCheckRegex",(Q,X)=>{p1.init(Q,X),Q._zod.check=(Y)=>{if(X.pattern.lastIndex=0,X.pattern.test(Y.value))return;Y.issues.push({origin:"string",code:"invalid_format",format:"regex",input:Y.value,pattern:X.pattern.toString(),inst:Q,continue:!X.abort})}}),P4=D("$ZodCheckLowerCase",(Q,X)=>{X.pattern??(X.pattern=U4),p1.init(Q,X)}),I4=D("$ZodCheckUpperCase",(Q,X)=>{X.pattern??(X.pattern=D4),p1.init(Q,X)}),E4=D("$ZodCheckIncludes",(Q,X)=>{Q0.init(Q,X);let Y=u0(X.includes),W=new RegExp(typeof X.position==="number"?`^.{${X.position}}${Y}`:Y);X.pattern=W,Q._zod.onattach.push((J)=>{let G=J._zod.bag;G.patterns??(G.patterns=new Set),G.patterns.add(W)}),Q._zod.check=(J)=>{if(J.value.includes(X.includes,X.position))return;J.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:X.includes,input:J.value,inst:Q,continue:!X.abort})}}),b4=D("$ZodCheckStartsWith",(Q,X)=>{Q0.init(Q,X);let Y=new RegExp(`^${u0(X.prefix)}.*`);X.pattern??(X.pattern=Y),Q._zod.onattach.push((W)=>{let J=W._zod.bag;J.patterns??(J.patterns=new Set),J.patterns.add(Y)}),Q._zod.check=(W)=>{if(W.value.startsWith(X.prefix))return;W.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:X.prefix,input:W.value,inst:Q,continue:!X.abort})}}),T4=D("$ZodCheckEndsWith",(Q,X)=>{Q0.init(Q,X);let Y=new RegExp(`.*${u0(X.suffix)}$`);X.pattern??(X.pattern=Y),Q._zod.onattach.push((W)=>{let J=W._zod.bag;J.patterns??(J.patterns=new Set),J.patterns.add(Y)}),Q._zod.check=(W)=>{if(W.value.endsWith(X.suffix))return;W.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:X.suffix,input:W.value,inst:Q,continue:!X.abort})}});var j4=D("$ZodCheckOverwrite",(Q,X)=>{Q0.init(Q,X),Q._zod.check=(Y)=>{Y.value=X.tx(Y.value)}});class U6{constructor(Q=[]){if(this.content=[],this.indent=0,this)this.args=Q}indented(Q){this.indent+=1,Q(this),this.indent-=1}write(Q){if(typeof Q==="function"){Q(this,{execution:"sync"}),Q(this,{execution:"async"});return}let Y=Q.split(`
10
+ `).filter((G)=>G),W=Math.min(...Y.map((G)=>G.length-G.trimStart().length)),J=Y.map((G)=>G.slice(W)).map((G)=>" ".repeat(this.indent*2)+G);for(let G of J)this.content.push(G)}compile(){let Q=Function,X=this?.args,W=[...(this?.content??[""]).map((J)=>` ${J}`)];return new Q(...X,W.join(`
11
+ `))}}var S4={major:4,minor:3,patch:5};var c=D("$ZodType",(Q,X)=>{var Y;Q??(Q={}),Q._zod.def=X,Q._zod.bag=Q._zod.bag||{},Q._zod.version=S4;let W=[...Q._zod.def.checks??[]];if(Q._zod.traits.has("$ZodCheck"))W.unshift(Q);for(let J of W)for(let G of J._zod.onattach)G(Q);if(W.length===0)(Y=Q._zod).deferred??(Y.deferred=[]),Q._zod.deferred?.push(()=>{Q._zod.run=Q._zod.parse});else{let J=(H,$,K)=>{let B=o0(H),z;for(let A of $){if(A._zod.def.when){if(!A._zod.def.when(H))continue}else if(B)continue;let F=H.issues.length,L=A._zod.check(H);if(L instanceof Promise&&K?.async===!1)throw new y0;if(z||L instanceof Promise)z=(z??Promise.resolve()).then(async()=>{if(await L,H.issues.length===F)return;if(!B)B=o0(H,F)});else{if(H.issues.length===F)continue;if(!B)B=o0(H,F)}}if(z)return z.then(()=>{return H});return H},G=(H,$,K)=>{if(o0(H))return H.aborted=!0,H;let B=J($,W,K);if(B instanceof Promise){if(K.async===!1)throw new y0;return B.then((z)=>Q._zod.parse(z,K))}return Q._zod.parse(B,K)};Q._zod.run=(H,$)=>{if($.skipChecks)return Q._zod.parse(H,$);if($.direction==="backward"){let B=Q._zod.parse({value:H.value,issues:[]},{...$,skipChecks:!0});if(B instanceof Promise)return B.then((z)=>{return G(z,H,$)});return G(B,H,$)}let K=Q._zod.parse(H,$);if(K instanceof Promise){if($.async===!1)throw new y0;return K.then((B)=>J(B,W,$))}return J(K,W,$)}}u(Q,"~standard",()=>({validate:(J)=>{try{let G=m1(Q,J);return G.success?{value:G.data}:{issues:G.error?.issues}}catch(G){return h9(Q,J).then((H)=>H.success?{value:H.data}:{issues:H.error?.issues})}},vendor:"zod",version:1}))}),c9=D("$ZodString",(Q,X)=>{c.init(Q,X),Q._zod.pattern=[...Q?._zod.bag?.patterns??[]].pop()??z4(Q._zod.bag),Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=String(Y.value)}catch(J){}if(typeof Y.value==="string")return Y;return Y.issues.push({expected:"string",code:"invalid_type",input:Y.value,inst:Q}),Y}}),p=D("$ZodStringFormat",(Q,X)=>{p1.init(Q,X),c9.init(Q,X)}),u4=D("$ZodGUID",(Q,X)=>{X.pattern??(X.pattern=tX),p.init(Q,X)}),f4=D("$ZodUUID",(Q,X)=>{if(X.version){let W={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[X.version];if(W===void 0)throw new Error(`Invalid UUID version: "${X.version}"`);X.pattern??(X.pattern=z6(W))}else X.pattern??(X.pattern=z6());p.init(Q,X)}),l4=D("$ZodEmail",(Q,X)=>{X.pattern??(X.pattern=aX),p.init(Q,X)}),m4=D("$ZodURL",(Q,X)=>{p.init(Q,X),Q._zod.check=(Y)=>{try{let W=Y.value.trim(),J=new URL(W);if(X.hostname){if(X.hostname.lastIndex=0,!X.hostname.test(J.hostname))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:X.hostname.source,input:Y.value,inst:Q,continue:!X.abort})}if(X.protocol){if(X.protocol.lastIndex=0,!X.protocol.test(J.protocol.endsWith(":")?J.protocol.slice(0,-1):J.protocol))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:X.protocol.source,input:Y.value,inst:Q,continue:!X.abort})}if(X.normalize)Y.value=J.href;else Y.value=W;return}catch(W){Y.issues.push({code:"invalid_format",format:"url",input:Y.value,inst:Q,continue:!X.abort})}}}),c4=D("$ZodEmoji",(Q,X)=>{X.pattern??(X.pattern=sX()),p.init(Q,X)}),p4=D("$ZodNanoID",(Q,X)=>{X.pattern??(X.pattern=nX),p.init(Q,X)}),d4=D("$ZodCUID",(Q,X)=>{X.pattern??(X.pattern=cX),p.init(Q,X)}),i4=D("$ZodCUID2",(Q,X)=>{X.pattern??(X.pattern=pX),p.init(Q,X)}),r4=D("$ZodULID",(Q,X)=>{X.pattern??(X.pattern=dX),p.init(Q,X)}),n4=D("$ZodXID",(Q,X)=>{X.pattern??(X.pattern=iX),p.init(Q,X)}),o4=D("$ZodKSUID",(Q,X)=>{X.pattern??(X.pattern=rX),p.init(Q,X)}),t4=D("$ZodISODateTime",(Q,X)=>{X.pattern??(X.pattern=B4(X)),p.init(Q,X)}),a4=D("$ZodISODate",(Q,X)=>{X.pattern??(X.pattern=H4),p.init(Q,X)}),s4=D("$ZodISOTime",(Q,X)=>{X.pattern??(X.pattern=K4(X)),p.init(Q,X)}),e4=D("$ZodISODuration",(Q,X)=>{X.pattern??(X.pattern=oX),p.init(Q,X)}),QY=D("$ZodIPv4",(Q,X)=>{X.pattern??(X.pattern=eX),p.init(Q,X),Q._zod.bag.format="ipv4"}),XY=D("$ZodIPv6",(Q,X)=>{X.pattern??(X.pattern=Q4),p.init(Q,X),Q._zod.bag.format="ipv6",Q._zod.check=(Y)=>{try{new URL(`http://[${Y.value}]`)}catch{Y.issues.push({code:"invalid_format",format:"ipv6",input:Y.value,inst:Q,continue:!X.abort})}}});var YY=D("$ZodCIDRv4",(Q,X)=>{X.pattern??(X.pattern=X4),p.init(Q,X)}),WY=D("$ZodCIDRv6",(Q,X)=>{X.pattern??(X.pattern=Y4),p.init(Q,X),Q._zod.check=(Y)=>{let W=Y.value.split("/");try{if(W.length!==2)throw new Error;let[J,G]=W;if(!G)throw new Error;let H=Number(G);if(`${H}`!==G)throw new Error;if(H<0||H>128)throw new Error;new URL(`http://[${J}]`)}catch{Y.issues.push({code:"invalid_format",format:"cidrv6",input:Y.value,inst:Q,continue:!X.abort})}}});function JY(Q){if(Q==="")return!0;if(Q.length%4!==0)return!1;try{return atob(Q),!0}catch{return!1}}var GY=D("$ZodBase64",(Q,X)=>{X.pattern??(X.pattern=W4),p.init(Q,X),Q._zod.bag.contentEncoding="base64",Q._zod.check=(Y)=>{if(JY(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64",input:Y.value,inst:Q,continue:!X.abort})}});function e3(Q){if(!A6.test(Q))return!1;let X=Q.replace(/[-_]/g,(W)=>W==="-"?"+":"/"),Y=X.padEnd(Math.ceil(X.length/4)*4,"=");return JY(Y)}var HY=D("$ZodBase64URL",(Q,X)=>{X.pattern??(X.pattern=A6),p.init(Q,X),Q._zod.bag.contentEncoding="base64url",Q._zod.check=(Y)=>{if(e3(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64url",input:Y.value,inst:Q,continue:!X.abort})}}),$Y=D("$ZodE164",(Q,X)=>{X.pattern??(X.pattern=J4),p.init(Q,X)});function Q$(Q,X=null){try{let Y=Q.split(".");if(Y.length!==3)return!1;let[W]=Y;if(!W)return!1;let J=JSON.parse(atob(W));if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(X&&(!("alg"in J)||J.alg!==X))return!1;return!0}catch{return!1}}var KY=D("$ZodJWT",(Q,X)=>{p.init(Q,X),Q._zod.check=(Y)=>{if(Q$(Y.value,X.alg))return;Y.issues.push({code:"invalid_format",format:"jwt",input:Y.value,inst:Q,continue:!X.abort})}});var V6=D("$ZodNumber",(Q,X)=>{c.init(Q,X),Q._zod.pattern=Q._zod.bag.pattern??u9,Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=Number(Y.value)}catch(H){}let J=Y.value;if(typeof J==="number"&&!Number.isNaN(J)&&Number.isFinite(J))return Y;let G=typeof J==="number"?Number.isNaN(J)?"NaN":!Number.isFinite(J)?"Infinity":void 0:void 0;return Y.issues.push({expected:"number",code:"invalid_type",input:J,inst:Q,...G?{received:G}:{}}),Y}}),BY=D("$ZodNumberFormat",(Q,X)=>{O4.init(Q,X),V6.init(Q,X)}),zY=D("$ZodBoolean",(Q,X)=>{c.init(Q,X),Q._zod.pattern=L4,Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=Boolean(Y.value)}catch(G){}let J=Y.value;if(typeof J==="boolean")return Y;return Y.issues.push({expected:"boolean",code:"invalid_type",input:J,inst:Q}),Y}});var AY=D("$ZodNull",(Q,X)=>{c.init(Q,X),Q._zod.pattern=F4,Q._zod.values=new Set([null]),Q._zod.parse=(Y,W)=>{let J=Y.value;if(J===null)return Y;return Y.issues.push({expected:"null",code:"invalid_type",input:J,inst:Q}),Y}});var LY=D("$ZodUnknown",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y)=>Y}),FY=D("$ZodNever",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y,W)=>{return Y.issues.push({expected:"never",code:"invalid_type",input:Y.value,inst:Q}),Y}});function C4(Q,X,Y){if(Q.issues.length)X.issues.push(...f0(Y,Q.issues));X.value[Y]=Q.value}var UY=D("$ZodArray",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y,W)=>{let J=Y.value;if(!Array.isArray(J))return Y.issues.push({expected:"array",code:"invalid_type",input:J,inst:Q}),Y;Y.value=Array(J.length);let G=[];for(let H=0;H<J.length;H++){let $=J[H],K=X.element._zod.run({value:$,issues:[]},W);if(K instanceof Promise)G.push(K.then((B)=>C4(B,Y,H)));else C4(K,Y,H)}if(G.length)return Promise.all(G).then(()=>Y);return Y}});function m9(Q,X,Y,W,J){if(Q.issues.length){if(J&&!(Y in W))return;X.issues.push(...f0(Y,Q.issues))}if(Q.value===void 0){if(Y in W)X.value[Y]=void 0}else X.value[Y]=Q.value}function DY(Q){let X=Object.keys(Q.shape);for(let W of X)if(!Q.shape?.[W]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${W}": expected a Zod schema`);let Y=H6(Q.shape);return{...Q,keys:X,keySet:new Set(X),numKeys:X.length,optionalKeys:new Set(Y)}}function VY(Q,X,Y,W,J,G){let H=[],$=J.keySet,K=J.catchall._zod,B=K.def.type,z=K.optout==="optional";for(let A in X){if($.has(A))continue;if(B==="never"){H.push(A);continue}let F=K.run({value:X[A],issues:[]},W);if(F instanceof Promise)Q.push(F.then((L)=>m9(L,Y,A,X,z)));else m9(F,Y,A,X,z)}if(H.length)Y.issues.push({code:"unrecognized_keys",keys:H,input:X,inst:G});if(!Q.length)return Y;return Promise.all(Q).then(()=>{return Y})}var X$=D("$ZodObject",(Q,X)=>{if(c.init(Q,X),!Object.getOwnPropertyDescriptor(X,"shape")?.get){let $=X.shape;Object.defineProperty(X,"shape",{get:()=>{let K={...$};return Object.defineProperty(X,"shape",{value:K}),K}})}let W=V1(()=>DY(X));u(Q._zod,"propValues",()=>{let $=X.shape,K={};for(let B in $){let z=$[B]._zod;if(z.values){K[B]??(K[B]=new Set);for(let A of z.values)K[B].add(A)}}return K});let J=$1,G=X.catchall,H;Q._zod.parse=($,K)=>{H??(H=W.value);let B=$.value;if(!J(B))return $.issues.push({expected:"object",code:"invalid_type",input:B,inst:Q}),$;$.value={};let z=[],A=H.shape;for(let F of H.keys){let L=A[F],V=L._zod.optout==="optional",Z=L._zod.run({value:B[F],issues:[]},K);if(Z instanceof Promise)z.push(Z.then((q)=>m9(q,$,F,B,V)));else m9(Z,$,F,B,V)}if(!G)return z.length?Promise.all(z).then(()=>$):$;return VY(z,B,$,K,W.value,Q)}}),ZY=D("$ZodObjectJIT",(Q,X)=>{X$.init(Q,X);let Y=Q._zod.parse,W=V1(()=>DY(X)),J=(F)=>{let L=new U6(["shape","payload","ctx"]),V=W.value,Z=(E)=>{let R=k9(E);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};L.write("const input = payload.value;");let q=Object.create(null),O=0;for(let E of V.keys)q[E]=`key_${O++}`;L.write("const newResult = {};");for(let E of V.keys){let R=q[E],I=k9(E),E0=F[E]?._zod?.optout==="optional";if(L.write(`const ${R} = ${Z(E)};`),E0)L.write(`
12
+ if (${R}.issues.length) {
13
+ if (${I} in input) {
14
+ payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
15
+ ...iss,
16
+ path: iss.path ? [${I}, ...iss.path] : [${I}]
17
+ })));
18
+ }
19
+ }
20
+
21
+ if (${R}.value === undefined) {
22
+ if (${I} in input) {
23
+ newResult[${I}] = undefined;
24
+ }
25
+ } else {
26
+ newResult[${I}] = ${R}.value;
27
+ }
28
+
29
+ `);else L.write(`
30
+ if (${R}.issues.length) {
31
+ payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
32
+ ...iss,
33
+ path: iss.path ? [${I}, ...iss.path] : [${I}]
34
+ })));
35
+ }
36
+
37
+ if (${R}.value === undefined) {
38
+ if (${I} in input) {
39
+ newResult[${I}] = undefined;
40
+ }
41
+ } else {
42
+ newResult[${I}] = ${R}.value;
43
+ }
44
+
45
+ `)}L.write("payload.value = newResult;"),L.write("return payload;");let T=L.compile();return(E,R)=>T(F,E,R)},G,H=$1,$=!S9.jitless,B=$&&J6.value,z=X.catchall,A;Q._zod.parse=(F,L)=>{A??(A=W.value);let V=F.value;if(!H(V))return F.issues.push({expected:"object",code:"invalid_type",input:V,inst:Q}),F;if($&&B&&L?.async===!1&&L.jitless!==!0){if(!G)G=J(X.shape);if(F=G(F,L),!z)return F;return VY([],V,F,L,A,Q)}return Y(F,L)}});function k4(Q,X,Y,W){for(let G of Q)if(G.issues.length===0)return X.value=G.value,X;let J=Q.filter((G)=>!o0(G));if(J.length===1)return X.value=J[0].value,J[0];return X.issues.push({code:"invalid_union",input:X.value,inst:Y,errors:Q.map((G)=>G.issues.map((H)=>T0(H,W,O0())))}),X}var Z6=D("$ZodUnion",(Q,X)=>{c.init(Q,X),u(Q._zod,"optin",()=>X.options.some((J)=>J._zod.optin==="optional")?"optional":void 0),u(Q._zod,"optout",()=>X.options.some((J)=>J._zod.optout==="optional")?"optional":void 0),u(Q._zod,"values",()=>{if(X.options.every((J)=>J._zod.values))return new Set(X.options.flatMap((J)=>Array.from(J._zod.values)));return}),u(Q._zod,"pattern",()=>{if(X.options.every((J)=>J._zod.pattern)){let J=X.options.map((G)=>G._zod.pattern);return new RegExp(`^(${J.map((G)=>u1(G.source)).join("|")})$`)}return});let Y=X.options.length===1,W=X.options[0]._zod.run;Q._zod.parse=(J,G)=>{if(Y)return W(J,G);let H=!1,$=[];for(let K of X.options){let B=K._zod.run({value:J.value,issues:[]},G);if(B instanceof Promise)$.push(B),H=!0;else{if(B.issues.length===0)return B;$.push(B)}}if(!H)return k4($,J,Q,G);return Promise.all($).then((K)=>{return k4(K,J,Q,G)})}});var OY=D("$ZodDiscriminatedUnion",(Q,X)=>{X.inclusive=!1,Z6.init(Q,X);let Y=Q._zod.parse;u(Q._zod,"propValues",()=>{let J={};for(let G of X.options){let H=G._zod.propValues;if(!H||Object.keys(H).length===0)throw new Error(`Invalid discriminated union option at index "${X.options.indexOf(G)}"`);for(let[$,K]of Object.entries(H)){if(!J[$])J[$]=new Set;for(let B of K)J[$].add(B)}}return J});let W=V1(()=>{let J=X.options,G=new Map;for(let H of J){let $=H._zod.propValues?.[X.discriminator];if(!$||$.size===0)throw new Error(`Invalid discriminated union option at index "${X.options.indexOf(H)}"`);for(let K of $){if(G.has(K))throw new Error(`Duplicate discriminator value "${String(K)}"`);G.set(K,H)}}return G});Q._zod.parse=(J,G)=>{let H=J.value;if(!$1(H))return J.issues.push({code:"invalid_type",expected:"object",input:H,inst:Q}),J;let $=W.value.get(H?.[X.discriminator]);if($)return $._zod.run(J,G);if(X.unionFallback)return Y(J,G);return J.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:X.discriminator,input:H,path:[X.discriminator],inst:Q}),J}}),qY=D("$ZodIntersection",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y,W)=>{let J=Y.value,G=X.left._zod.run({value:J,issues:[]},W),H=X.right._zod.run({value:J,issues:[]},W);if(G instanceof Promise||H instanceof Promise)return Promise.all([G,H]).then(([K,B])=>{return v4(Y,K,B)});return v4(Y,G,H)}});function D6(Q,X){if(Q===X)return{valid:!0,data:Q};if(Q instanceof Date&&X instanceof Date&&+Q===+X)return{valid:!0,data:Q};if(n0(Q)&&n0(X)){let Y=Object.keys(X),W=Object.keys(Q).filter((G)=>Y.indexOf(G)!==-1),J={...Q,...X};for(let G of W){let H=D6(Q[G],X[G]);if(!H.valid)return{valid:!1,mergeErrorPath:[G,...H.mergeErrorPath]};J[G]=H.data}return{valid:!0,data:J}}if(Array.isArray(Q)&&Array.isArray(X)){if(Q.length!==X.length)return{valid:!1,mergeErrorPath:[]};let Y=[];for(let W=0;W<Q.length;W++){let J=Q[W],G=X[W],H=D6(J,G);if(!H.valid)return{valid:!1,mergeErrorPath:[W,...H.mergeErrorPath]};Y.push(H.data)}return{valid:!0,data:Y}}return{valid:!1,mergeErrorPath:[]}}function v4(Q,X,Y){let W=new Map,J;for(let $ of X.issues)if($.code==="unrecognized_keys"){J??(J=$);for(let K of $.keys){if(!W.has(K))W.set(K,{});W.get(K).l=!0}}else Q.issues.push($);for(let $ of Y.issues)if($.code==="unrecognized_keys")for(let K of $.keys){if(!W.has(K))W.set(K,{});W.get(K).r=!0}else Q.issues.push($);let G=[...W].filter(([,$])=>$.l&&$.r).map(([$])=>$);if(G.length&&J)Q.issues.push({...J,keys:G});if(o0(Q))return Q;let H=D6(X.value,Y.value);if(!H.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(H.mergeErrorPath)}`);return Q.value=H.data,Q}var MY=D("$ZodRecord",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y,W)=>{let J=Y.value;if(!n0(J))return Y.issues.push({expected:"record",code:"invalid_type",input:J,inst:Q}),Y;let G=[],H=X.keyType._zod.values;if(H){Y.value={};let $=new Set;for(let B of H)if(typeof B==="string"||typeof B==="number"||typeof B==="symbol"){$.add(typeof B==="number"?B.toString():B);let z=X.valueType._zod.run({value:J[B],issues:[]},W);if(z instanceof Promise)G.push(z.then((A)=>{if(A.issues.length)Y.issues.push(...f0(B,A.issues));Y.value[B]=A.value}));else{if(z.issues.length)Y.issues.push(...f0(B,z.issues));Y.value[B]=z.value}}let K;for(let B in J)if(!$.has(B))K=K??[],K.push(B);if(K&&K.length>0)Y.issues.push({code:"unrecognized_keys",input:J,inst:Q,keys:K})}else{Y.value={};for(let $ of Reflect.ownKeys(J)){if($==="__proto__")continue;let K=X.keyType._zod.run({value:$,issues:[]},W);if(K instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof $==="string"&&u9.test($)&&K.issues.length&&K.issues.some((A)=>A.code==="invalid_type"&&A.expected==="number")){let A=X.keyType._zod.run({value:Number($),issues:[]},W);if(A instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(A.issues.length===0)K=A}if(K.issues.length){if(X.mode==="loose")Y.value[$]=J[$];else Y.issues.push({code:"invalid_key",origin:"record",issues:K.issues.map((A)=>T0(A,W,O0())),input:$,path:[$],inst:Q});continue}let z=X.valueType._zod.run({value:J[$],issues:[]},W);if(z instanceof Promise)G.push(z.then((A)=>{if(A.issues.length)Y.issues.push(...f0($,A.issues));Y.value[K.value]=A.value}));else{if(z.issues.length)Y.issues.push(...f0($,z.issues));Y.value[K.value]=z.value}}}if(G.length)return Promise.all(G).then(()=>Y);return Y}});var NY=D("$ZodEnum",(Q,X)=>{c.init(Q,X);let Y=y1(X.entries),W=new Set(Y);Q._zod.values=W,Q._zod.pattern=new RegExp(`^(${Y.filter((J)=>G6.has(typeof J)).map((J)=>typeof J==="string"?u0(J):J.toString()).join("|")})$`),Q._zod.parse=(J,G)=>{let H=J.value;if(W.has(H))return J;return J.issues.push({code:"invalid_value",values:Y,input:H,inst:Q}),J}}),wY=D("$ZodLiteral",(Q,X)=>{if(c.init(Q,X),X.values.length===0)throw new Error("Cannot create literal schema with no valid values");let Y=new Set(X.values);Q._zod.values=Y,Q._zod.pattern=new RegExp(`^(${X.values.map((W)=>typeof W==="string"?u0(W):W?u0(W.toString()):String(W)).join("|")})$`),Q._zod.parse=(W,J)=>{let G=W.value;if(Y.has(G))return W;return W.issues.push({code:"invalid_value",values:X.values,input:G,inst:Q}),W}});var PY=D("$ZodTransform",(Q,X)=>{c.init(Q,X),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")throw new x1(Q.constructor.name);let J=X.transform(Y.value,Y);if(W.async)return(J instanceof Promise?J:Promise.resolve(J)).then((H)=>{return Y.value=H,Y});if(J instanceof Promise)throw new y0;return Y.value=J,Y}});function _4(Q,X){if(Q.issues.length&&X===void 0)return{issues:[],value:void 0};return Q}var O6=D("$ZodOptional",(Q,X)=>{c.init(Q,X),Q._zod.optin="optional",Q._zod.optout="optional",u(Q._zod,"values",()=>{return X.innerType._zod.values?new Set([...X.innerType._zod.values,void 0]):void 0}),u(Q._zod,"pattern",()=>{let Y=X.innerType._zod.pattern;return Y?new RegExp(`^(${u1(Y.source)})?$`):void 0}),Q._zod.parse=(Y,W)=>{if(X.innerType._zod.optin==="optional"){let J=X.innerType._zod.run(Y,W);if(J instanceof Promise)return J.then((G)=>_4(G,Y.value));return _4(J,Y.value)}if(Y.value===void 0)return Y;return X.innerType._zod.run(Y,W)}}),IY=D("$ZodExactOptional",(Q,X)=>{O6.init(Q,X),u(Q._zod,"values",()=>X.innerType._zod.values),u(Q._zod,"pattern",()=>X.innerType._zod.pattern),Q._zod.parse=(Y,W)=>{return X.innerType._zod.run(Y,W)}}),EY=D("$ZodNullable",(Q,X)=>{c.init(Q,X),u(Q._zod,"optin",()=>X.innerType._zod.optin),u(Q._zod,"optout",()=>X.innerType._zod.optout),u(Q._zod,"pattern",()=>{let Y=X.innerType._zod.pattern;return Y?new RegExp(`^(${u1(Y.source)}|null)$`):void 0}),u(Q._zod,"values",()=>{return X.innerType._zod.values?new Set([...X.innerType._zod.values,null]):void 0}),Q._zod.parse=(Y,W)=>{if(Y.value===null)return Y;return X.innerType._zod.run(Y,W)}}),bY=D("$ZodDefault",(Q,X)=>{c.init(Q,X),Q._zod.optin="optional",u(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")return X.innerType._zod.run(Y,W);if(Y.value===void 0)return Y.value=X.defaultValue,Y;let J=X.innerType._zod.run(Y,W);if(J instanceof Promise)return J.then((G)=>x4(G,X));return x4(J,X)}});function x4(Q,X){if(Q.value===void 0)Q.value=X.defaultValue;return Q}var TY=D("$ZodPrefault",(Q,X)=>{c.init(Q,X),Q._zod.optin="optional",u(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")return X.innerType._zod.run(Y,W);if(Y.value===void 0)Y.value=X.defaultValue;return X.innerType._zod.run(Y,W)}}),jY=D("$ZodNonOptional",(Q,X)=>{c.init(Q,X),u(Q._zod,"values",()=>{let Y=X.innerType._zod.values;return Y?new Set([...Y].filter((W)=>W!==void 0)):void 0}),Q._zod.parse=(Y,W)=>{let J=X.innerType._zod.run(Y,W);if(J instanceof Promise)return J.then((G)=>g4(G,Q));return g4(J,Q)}});function g4(Q,X){if(!Q.issues.length&&Q.value===void 0)Q.issues.push({code:"invalid_type",expected:"nonoptional",input:Q.value,inst:X});return Q}var RY=D("$ZodCatch",(Q,X)=>{c.init(Q,X),u(Q._zod,"optin",()=>X.innerType._zod.optin),u(Q._zod,"optout",()=>X.innerType._zod.optout),u(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")return X.innerType._zod.run(Y,W);let J=X.innerType._zod.run(Y,W);if(J instanceof Promise)return J.then((G)=>{if(Y.value=G.value,G.issues.length)Y.value=X.catchValue({...Y,error:{issues:G.issues.map((H)=>T0(H,W,O0()))},input:Y.value}),Y.issues=[];return Y});if(Y.value=J.value,J.issues.length)Y.value=X.catchValue({...Y,error:{issues:J.issues.map((G)=>T0(G,W,O0()))},input:Y.value}),Y.issues=[];return Y}});var SY=D("$ZodPipe",(Q,X)=>{c.init(Q,X),u(Q._zod,"values",()=>X.in._zod.values),u(Q._zod,"optin",()=>X.in._zod.optin),u(Q._zod,"optout",()=>X.out._zod.optout),u(Q._zod,"propValues",()=>X.in._zod.propValues),Q._zod.parse=(Y,W)=>{if(W.direction==="backward"){let G=X.out._zod.run(Y,W);if(G instanceof Promise)return G.then((H)=>l9(H,X.in,W));return l9(G,X.in,W)}let J=X.in._zod.run(Y,W);if(J instanceof Promise)return J.then((G)=>l9(G,X.out,W));return l9(J,X.out,W)}});function l9(Q,X,Y){if(Q.issues.length)return Q.aborted=!0,Q;return X._zod.run({value:Q.value,issues:Q.issues},Y)}var CY=D("$ZodReadonly",(Q,X)=>{c.init(Q,X),u(Q._zod,"propValues",()=>X.innerType._zod.propValues),u(Q._zod,"values",()=>X.innerType._zod.values),u(Q._zod,"optin",()=>X.innerType?._zod?.optin),u(Q._zod,"optout",()=>X.innerType?._zod?.optout),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")return X.innerType._zod.run(Y,W);let J=X.innerType._zod.run(Y,W);if(J instanceof Promise)return J.then(y4);return y4(J)}});function y4(Q){return Q.value=Object.freeze(Q.value),Q}var kY=D("$ZodCustom",(Q,X)=>{Q0.init(Q,X),c.init(Q,X),Q._zod.parse=(Y,W)=>{return Y},Q._zod.check=(Y)=>{let W=Y.value,J=X.fn(W);if(J instanceof Promise)return J.then((G)=>h4(G,Y,W,Q));h4(J,Y,W,Q);return}});function h4(Q,X,Y,W){if(!Q){let J={code:"custom",input:Y,inst:W,path:[...W._zod.def.path??[]],continue:!W._zod.def.abort};if(W._zod.def.params)J.params=W._zod.def.params;X.issues.push(Z1(J))}}var Y$=()=>{let Q={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function X(J){return Q[J]??null}let Y={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",mac:"MAC 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"},W={nan:"NaN"};return(J)=>{switch(J.code){case"invalid_type":{let G=W[J.expected]??J.expected,H=K6(J.input),$=W[H]??H;return`Invalid input: expected ${G}, received ${$}`}case"invalid_value":if(J.values.length===1)return`Invalid input: expected ${_9(J.values[0])}`;return`Invalid option: expected one of ${C9(J.values,"|")}`;case"too_big":{let G=J.inclusive?"<=":"<",H=X(J.origin);if(H)return`Too big: expected ${J.origin??"value"} to have ${G}${J.maximum.toString()} ${H.unit??"elements"}`;return`Too big: expected ${J.origin??"value"} to be ${G}${J.maximum.toString()}`}case"too_small":{let G=J.inclusive?">=":">",H=X(J.origin);if(H)return`Too small: expected ${J.origin} to have ${G}${J.minimum.toString()} ${H.unit}`;return`Too small: expected ${J.origin} to be ${G}${J.minimum.toString()}`}case"invalid_format":{let G=J;if(G.format==="starts_with")return`Invalid string: must start with "${G.prefix}"`;if(G.format==="ends_with")return`Invalid string: must end with "${G.suffix}"`;if(G.format==="includes")return`Invalid string: must include "${G.includes}"`;if(G.format==="regex")return`Invalid string: must match pattern ${G.pattern}`;return`Invalid ${Y[G.format]??J.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${J.divisor}`;case"unrecognized_keys":return`Unrecognized key${J.keys.length>1?"s":""}: ${C9(J.keys,", ")}`;case"invalid_key":return`Invalid key in ${J.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${J.origin}`;default:return"Invalid input"}}};function q6(){return{localeError:Y$()}}var vY,wO=Symbol("ZodOutput"),PO=Symbol("ZodInput");class _Y{constructor(){this._map=new WeakMap,this._idmap=new Map}add(Q,...X){let Y=X[0];if(this._map.set(Q,Y),Y&&typeof Y==="object"&&"id"in Y)this._idmap.set(Y.id,Q);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(Q){let X=this._map.get(Q);if(X&&typeof X==="object"&&"id"in X)this._idmap.delete(X.id);return this._map.delete(Q),this}get(Q){let X=Q._zod.parent;if(X){let Y={...this.get(X)??{}};delete Y.id;let W={...Y,...this._map.get(Q)};return Object.keys(W).length?W:void 0}return this._map.get(Q)}has(Q){return this._map.has(Q)}}function W$(){return new _Y}(vY=globalThis).__zod_globalRegistry??(vY.__zod_globalRegistry=W$());var K1=globalThis.__zod_globalRegistry;function xY(Q,X){return new Q({type:"string",...b(X)})}function gY(Q,X){return new Q({type:"string",format:"email",check:"string_format",abort:!1,...b(X)})}function M6(Q,X){return new Q({type:"string",format:"guid",check:"string_format",abort:!1,...b(X)})}function yY(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,...b(X)})}function hY(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...b(X)})}function uY(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...b(X)})}function fY(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...b(X)})}function lY(Q,X){return new Q({type:"string",format:"url",check:"string_format",abort:!1,...b(X)})}function mY(Q,X){return new Q({type:"string",format:"emoji",check:"string_format",abort:!1,...b(X)})}function cY(Q,X){return new Q({type:"string",format:"nanoid",check:"string_format",abort:!1,...b(X)})}function pY(Q,X){return new Q({type:"string",format:"cuid",check:"string_format",abort:!1,...b(X)})}function dY(Q,X){return new Q({type:"string",format:"cuid2",check:"string_format",abort:!1,...b(X)})}function iY(Q,X){return new Q({type:"string",format:"ulid",check:"string_format",abort:!1,...b(X)})}function rY(Q,X){return new Q({type:"string",format:"xid",check:"string_format",abort:!1,...b(X)})}function nY(Q,X){return new Q({type:"string",format:"ksuid",check:"string_format",abort:!1,...b(X)})}function oY(Q,X){return new Q({type:"string",format:"ipv4",check:"string_format",abort:!1,...b(X)})}function tY(Q,X){return new Q({type:"string",format:"ipv6",check:"string_format",abort:!1,...b(X)})}function aY(Q,X){return new Q({type:"string",format:"cidrv4",check:"string_format",abort:!1,...b(X)})}function sY(Q,X){return new Q({type:"string",format:"cidrv6",check:"string_format",abort:!1,...b(X)})}function eY(Q,X){return new Q({type:"string",format:"base64",check:"string_format",abort:!1,...b(X)})}function QW(Q,X){return new Q({type:"string",format:"base64url",check:"string_format",abort:!1,...b(X)})}function XW(Q,X){return new Q({type:"string",format:"e164",check:"string_format",abort:!1,...b(X)})}function YW(Q,X){return new Q({type:"string",format:"jwt",check:"string_format",abort:!1,...b(X)})}function WW(Q,X){return new Q({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...b(X)})}function JW(Q,X){return new Q({type:"string",format:"date",check:"string_format",...b(X)})}function GW(Q,X){return new Q({type:"string",format:"time",check:"string_format",precision:null,...b(X)})}function HW(Q,X){return new Q({type:"string",format:"duration",check:"string_format",...b(X)})}function $W(Q,X){return new Q({type:"number",checks:[],...b(X)})}function KW(Q,X){return new Q({type:"number",check:"number_format",abort:!1,format:"safeint",...b(X)})}function BW(Q,X){return new Q({type:"boolean",...b(X)})}function zW(Q,X){return new Q({type:"null",...b(X)})}function AW(Q){return new Q({type:"unknown"})}function LW(Q,X){return new Q({type:"never",...b(X)})}function p9(Q,X){return new L6({check:"less_than",...b(X),value:Q,inclusive:!1})}function d1(Q,X){return new L6({check:"less_than",...b(X),value:Q,inclusive:!0})}function d9(Q,X){return new F6({check:"greater_than",...b(X),value:Q,inclusive:!1})}function i1(Q,X){return new F6({check:"greater_than",...b(X),value:Q,inclusive:!0})}function i9(Q,X){return new Z4({check:"multiple_of",...b(X),value:Q})}function r9(Q,X){return new q4({check:"max_length",...b(X),maximum:Q})}function O1(Q,X){return new M4({check:"min_length",...b(X),minimum:Q})}function n9(Q,X){return new N4({check:"length_equals",...b(X),length:Q})}function N6(Q,X){return new w4({check:"string_format",format:"regex",...b(X),pattern:Q})}function w6(Q){return new P4({check:"string_format",format:"lowercase",...b(Q)})}function P6(Q){return new I4({check:"string_format",format:"uppercase",...b(Q)})}function I6(Q,X){return new E4({check:"string_format",format:"includes",...b(X),includes:Q})}function E6(Q,X){return new b4({check:"string_format",format:"starts_with",...b(X),prefix:Q})}function b6(Q,X){return new T4({check:"string_format",format:"ends_with",...b(X),suffix:Q})}function t0(Q){return new j4({check:"overwrite",tx:Q})}function T6(Q){return t0((X)=>X.normalize(Q))}function j6(){return t0((Q)=>Q.trim())}function R6(){return t0((Q)=>Q.toLowerCase())}function S6(){return t0((Q)=>Q.toUpperCase())}function C6(){return t0((Q)=>W6(Q))}function FW(Q,X,Y){return new Q({type:"array",element:X,...b(Y)})}function UW(Q,X,Y){let W=b(Y);return W.abort??(W.abort=!0),new Q({type:"custom",check:"custom",fn:X,...W})}function DW(Q,X,Y){return new Q({type:"custom",check:"custom",fn:X,...b(Y)})}function VW(Q){let X=J$((Y)=>{return Y.addIssue=(W)=>{if(typeof W==="string")Y.issues.push(Z1(W,Y.value,X._zod.def));else{let J=W;if(J.fatal)J.continue=!1;J.code??(J.code="custom"),J.input??(J.input=Y.value),J.inst??(J.inst=X),J.continue??(J.continue=!X._zod.def.abort),Y.issues.push(Z1(J))}},Q(Y.value,Y)});return X}function J$(Q,X){let Y=new Q0({check:"custom",...b(X)});return Y._zod.check=Q,Y}function k6(Q){let X=Q?.target??"draft-2020-12";if(X==="draft-4")X="draft-04";if(X==="draft-7")X="draft-07";return{processors:Q.processors??{},metadataRegistry:Q?.metadata??K1,target:X,unrepresentable:Q?.unrepresentable??"throw",override:Q?.override??(()=>{}),io:Q?.io??"output",counter:0,seen:new Map,cycles:Q?.cycles??"ref",reused:Q?.reused??"inline",external:Q?.external??void 0}}function a(Q,X,Y={path:[],schemaPath:[]}){var W;let J=Q._zod.def,G=X.seen.get(Q);if(G){if(G.count++,Y.schemaPath.includes(Q))G.cycle=Y.path;return G.schema}let H={schema:{},count:1,cycle:void 0,path:Y.path};X.seen.set(Q,H);let $=Q._zod.toJSONSchema?.();if($)H.schema=$;else{let z={...Y,schemaPath:[...Y.schemaPath,Q],path:Y.path};if(Q._zod.processJSONSchema)Q._zod.processJSONSchema(X,H.schema,z);else{let F=H.schema,L=X.processors[J.type];if(!L)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${J.type}`);L(Q,X,F,z)}let A=Q._zod.parent;if(A){if(!H.ref)H.ref=A;a(A,X,z),X.seen.get(A).isParent=!0}}let K=X.metadataRegistry.get(Q);if(K)Object.assign(H.schema,K);if(X.io==="input"&&$0(Q))delete H.schema.examples,delete H.schema.default;if(X.io==="input"&&H.schema._prefault)(W=H.schema).default??(W.default=H.schema._prefault);return delete H.schema._prefault,X.seen.get(Q).schema}function v6(Q,X){let Y=Q.seen.get(X);if(!Y)throw new Error("Unprocessed schema. This is a bug in Zod.");let W=new Map;for(let H of Q.seen.entries()){let $=Q.metadataRegistry.get(H[0])?.id;if($){let K=W.get($);if(K&&K!==H[0])throw new Error(`Duplicate schema id "${$}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);W.set($,H[0])}}let J=(H)=>{let $=Q.target==="draft-2020-12"?"$defs":"definitions";if(Q.external){let A=Q.external.registry.get(H[0])?.id,F=Q.external.uri??((V)=>V);if(A)return{ref:F(A)};let L=H[1].defId??H[1].schema.id??`schema${Q.counter++}`;return H[1].defId=L,{defId:L,ref:`${F("__shared")}#/${$}/${L}`}}if(H[1]===Y)return{ref:"#"};let B=`${"#"}/${$}/`,z=H[1].schema.id??`__schema${Q.counter++}`;return{defId:z,ref:B+z}},G=(H)=>{if(H[1].schema.$ref)return;let $=H[1],{ref:K,defId:B}=J(H);if($.def={...$.schema},B)$.defId=B;let z=$.schema;for(let A in z)delete z[A];z.$ref=K};if(Q.cycles==="throw")for(let H of Q.seen.entries()){let $=H[1];if($.cycle)throw new Error(`Cycle detected: #/${$.cycle?.join("/")}/<root>
46
+
47
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let H of Q.seen.entries()){let $=H[1];if(X===H[0]){G(H);continue}if(Q.external){let B=Q.external.registry.get(H[0])?.id;if(X!==H[0]&&B){G(H);continue}}if(Q.metadataRegistry.get(H[0])?.id){G(H);continue}if($.cycle){G(H);continue}if($.count>1){if(Q.reused==="ref"){G(H);continue}}}}function _6(Q,X){let Y=Q.seen.get(X);if(!Y)throw new Error("Unprocessed schema. This is a bug in Zod.");let W=(H)=>{let $=Q.seen.get(H);if($.ref===null)return;let K=$.def??$.schema,B={...K},z=$.ref;if($.ref=null,z){W(z);let F=Q.seen.get(z),L=F.schema;if(L.$ref&&(Q.target==="draft-07"||Q.target==="draft-04"||Q.target==="openapi-3.0"))K.allOf=K.allOf??[],K.allOf.push(L);else Object.assign(K,L);if(Object.assign(K,B),H._zod.parent===z)for(let Z in K){if(Z==="$ref"||Z==="allOf")continue;if(!(Z in B))delete K[Z]}if(L.$ref)for(let Z in K){if(Z==="$ref"||Z==="allOf")continue;if(Z in F.def&&JSON.stringify(K[Z])===JSON.stringify(F.def[Z]))delete K[Z]}}let A=H._zod.parent;if(A&&A!==z){W(A);let F=Q.seen.get(A);if(F?.schema.$ref){if(K.$ref=F.schema.$ref,F.def)for(let L in K){if(L==="$ref"||L==="allOf")continue;if(L in F.def&&JSON.stringify(K[L])===JSON.stringify(F.def[L]))delete K[L]}}}Q.override({zodSchema:H,jsonSchema:K,path:$.path??[]})};for(let H of[...Q.seen.entries()].reverse())W(H[0]);let J={};if(Q.target==="draft-2020-12")J.$schema="https://json-schema.org/draft/2020-12/schema";else if(Q.target==="draft-07")J.$schema="http://json-schema.org/draft-07/schema#";else if(Q.target==="draft-04")J.$schema="http://json-schema.org/draft-04/schema#";else if(Q.target==="openapi-3.0");if(Q.external?.uri){let H=Q.external.registry.get(X)?.id;if(!H)throw new Error("Schema is missing an `id` property");J.$id=Q.external.uri(H)}Object.assign(J,Y.def??Y.schema);let G=Q.external?.defs??{};for(let H of Q.seen.entries()){let $=H[1];if($.def&&$.defId)G[$.defId]=$.def}if(Q.external);else if(Object.keys(G).length>0)if(Q.target==="draft-2020-12")J.$defs=G;else J.definitions=G;try{let H=JSON.parse(JSON.stringify(J));return Object.defineProperty(H,"~standard",{value:{...X["~standard"],jsonSchema:{input:r1(X,"input",Q.processors),output:r1(X,"output",Q.processors)}},enumerable:!1,writable:!1}),H}catch(H){throw new Error("Error converting schema to JSON.")}}function $0(Q,X){let Y=X??{seen:new Set};if(Y.seen.has(Q))return!1;Y.seen.add(Q);let W=Q._zod.def;if(W.type==="transform")return!0;if(W.type==="array")return $0(W.element,Y);if(W.type==="set")return $0(W.valueType,Y);if(W.type==="lazy")return $0(W.getter(),Y);if(W.type==="promise"||W.type==="optional"||W.type==="nonoptional"||W.type==="nullable"||W.type==="readonly"||W.type==="default"||W.type==="prefault")return $0(W.innerType,Y);if(W.type==="intersection")return $0(W.left,Y)||$0(W.right,Y);if(W.type==="record"||W.type==="map")return $0(W.keyType,Y)||$0(W.valueType,Y);if(W.type==="pipe")return $0(W.in,Y)||$0(W.out,Y);if(W.type==="object"){for(let J in W.shape)if($0(W.shape[J],Y))return!0;return!1}if(W.type==="union"){for(let J of W.options)if($0(J,Y))return!0;return!1}if(W.type==="tuple"){for(let J of W.items)if($0(J,Y))return!0;if(W.rest&&$0(W.rest,Y))return!0;return!1}return!1}var ZW=(Q,X={})=>(Y)=>{let W=k6({...Y,processors:X});return a(Q,W),v6(W,Q),_6(W,Q)},r1=(Q,X,Y={})=>(W)=>{let{libraryOptions:J,target:G}=W??{},H=k6({...J??{},target:G,io:X,processors:Y});return a(Q,H),v6(H,Q),_6(H,Q)};var G$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},OW=(Q,X,Y,W)=>{let J=Y;J.type="string";let{minimum:G,maximum:H,format:$,patterns:K,contentEncoding:B}=Q._zod.bag;if(typeof G==="number")J.minLength=G;if(typeof H==="number")J.maxLength=H;if($){if(J.format=G$[$]??$,J.format==="")delete J.format;if($==="time")delete J.format}if(B)J.contentEncoding=B;if(K&&K.size>0){let z=[...K];if(z.length===1)J.pattern=z[0].source;else if(z.length>1)J.allOf=[...z.map((A)=>({...X.target==="draft-07"||X.target==="draft-04"||X.target==="openapi-3.0"?{type:"string"}:{},pattern:A.source}))]}},qW=(Q,X,Y,W)=>{let J=Y,{minimum:G,maximum:H,format:$,multipleOf:K,exclusiveMaximum:B,exclusiveMinimum:z}=Q._zod.bag;if(typeof $==="string"&&$.includes("int"))J.type="integer";else J.type="number";if(typeof z==="number")if(X.target==="draft-04"||X.target==="openapi-3.0")J.minimum=z,J.exclusiveMinimum=!0;else J.exclusiveMinimum=z;if(typeof G==="number"){if(J.minimum=G,typeof z==="number"&&X.target!=="draft-04")if(z>=G)delete J.minimum;else delete J.exclusiveMinimum}if(typeof B==="number")if(X.target==="draft-04"||X.target==="openapi-3.0")J.maximum=B,J.exclusiveMaximum=!0;else J.exclusiveMaximum=B;if(typeof H==="number"){if(J.maximum=H,typeof B==="number"&&X.target!=="draft-04")if(B<=H)delete J.maximum;else delete J.exclusiveMaximum}if(typeof K==="number")J.multipleOf=K},MW=(Q,X,Y,W)=>{Y.type="boolean"};var NW=(Q,X,Y,W)=>{if(X.target==="openapi-3.0")Y.type="string",Y.nullable=!0,Y.enum=[null];else Y.type="null"};var wW=(Q,X,Y,W)=>{Y.not={}};var PW=(Q,X,Y,W)=>{};var IW=(Q,X,Y,W)=>{let J=Q._zod.def,G=y1(J.entries);if(G.every((H)=>typeof H==="number"))Y.type="number";if(G.every((H)=>typeof H==="string"))Y.type="string";Y.enum=G},EW=(Q,X,Y,W)=>{let J=Q._zod.def,G=[];for(let H of J.values)if(H===void 0){if(X.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof H==="bigint")if(X.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");else G.push(Number(H));else G.push(H);if(G.length===0);else if(G.length===1){let H=G[0];if(Y.type=H===null?"null":typeof H,X.target==="draft-04"||X.target==="openapi-3.0")Y.enum=[H];else Y.const=H}else{if(G.every((H)=>typeof H==="number"))Y.type="number";if(G.every((H)=>typeof H==="string"))Y.type="string";if(G.every((H)=>typeof H==="boolean"))Y.type="boolean";if(G.every((H)=>H===null))Y.type="null";Y.enum=G}};var bW=(Q,X,Y,W)=>{if(X.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")};var TW=(Q,X,Y,W)=>{if(X.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")};var jW=(Q,X,Y,W)=>{let J=Y,G=Q._zod.def,{minimum:H,maximum:$}=Q._zod.bag;if(typeof H==="number")J.minItems=H;if(typeof $==="number")J.maxItems=$;J.type="array",J.items=a(G.element,X,{...W,path:[...W.path,"items"]})},RW=(Q,X,Y,W)=>{let J=Y,G=Q._zod.def;J.type="object",J.properties={};let H=G.shape;for(let B in H)J.properties[B]=a(H[B],X,{...W,path:[...W.path,"properties",B]});let $=new Set(Object.keys(H)),K=new Set([...$].filter((B)=>{let z=G.shape[B]._zod;if(X.io==="input")return z.optin===void 0;else return z.optout===void 0}));if(K.size>0)J.required=Array.from(K);if(G.catchall?._zod.def.type==="never")J.additionalProperties=!1;else if(!G.catchall){if(X.io==="output")J.additionalProperties=!1}else if(G.catchall)J.additionalProperties=a(G.catchall,X,{...W,path:[...W.path,"additionalProperties"]})},SW=(Q,X,Y,W)=>{let J=Q._zod.def,G=J.inclusive===!1,H=J.options.map(($,K)=>a($,X,{...W,path:[...W.path,G?"oneOf":"anyOf",K]}));if(G)Y.oneOf=H;else Y.anyOf=H},CW=(Q,X,Y,W)=>{let J=Q._zod.def,G=a(J.left,X,{...W,path:[...W.path,"allOf",0]}),H=a(J.right,X,{...W,path:[...W.path,"allOf",1]}),$=(B)=>("allOf"in B)&&Object.keys(B).length===1,K=[...$(G)?G.allOf:[G],...$(H)?H.allOf:[H]];Y.allOf=K};var kW=(Q,X,Y,W)=>{let J=Y,G=Q._zod.def;J.type="object";let H=G.keyType,K=H._zod.bag?.patterns;if(G.mode==="loose"&&K&&K.size>0){let z=a(G.valueType,X,{...W,path:[...W.path,"patternProperties","*"]});J.patternProperties={};for(let A of K)J.patternProperties[A.source]=z}else{if(X.target==="draft-07"||X.target==="draft-2020-12")J.propertyNames=a(G.keyType,X,{...W,path:[...W.path,"propertyNames"]});J.additionalProperties=a(G.valueType,X,{...W,path:[...W.path,"additionalProperties"]})}let B=H._zod.values;if(B){let z=[...B].filter((A)=>typeof A==="string"||typeof A==="number");if(z.length>0)J.required=z}},vW=(Q,X,Y,W)=>{let J=Q._zod.def,G=a(J.innerType,X,W),H=X.seen.get(Q);if(X.target==="openapi-3.0")H.ref=J.innerType,Y.nullable=!0;else Y.anyOf=[G,{type:"null"}]},_W=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);G.ref=J.innerType},xW=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);G.ref=J.innerType,Y.default=JSON.parse(JSON.stringify(J.defaultValue))},gW=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);if(G.ref=J.innerType,X.io==="input")Y._prefault=JSON.parse(JSON.stringify(J.defaultValue))},yW=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);G.ref=J.innerType;let H;try{H=J.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}Y.default=H},hW=(Q,X,Y,W)=>{let J=Q._zod.def,G=X.io==="input"?J.in._zod.def.type==="transform"?J.out:J.in:J.out;a(G,X,W);let H=X.seen.get(Q);H.ref=G},uW=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);G.ref=J.innerType,Y.readOnly=!0};var x6=(Q,X,Y,W)=>{let J=Q._zod.def;a(J.innerType,X,W);let G=X.seen.get(Q);G.ref=J.innerType};function q1(Q){return!!Q._zod}function a0(Q,X){if(q1(Q))return m1(Q,X);return Q.safeParse(X)}function o9(Q){if(!Q)return;let X;if(q1(Q))X=Q._zod?.def?.shape;else X=Q.shape;if(!X)return;if(typeof X==="function")try{return X()}catch{return}return X}function fW(Q){if(q1(Q)){let G=Q._zod?.def;if(G){if(G.value!==void 0)return G.value;if(Array.isArray(G.values)&&G.values.length>0)return G.values[0]}}let Y=Q._def;if(Y){if(Y.value!==void 0)return Y.value;if(Array.isArray(Y.values)&&Y.values.length>0)return Y.values[0]}let W=Q.value;if(W!==void 0)return W;return}var o1={};PX(o1,{time:()=>h6,duration:()=>u6,datetime:()=>g6,date:()=>y6,ZodISOTime:()=>cW,ZodISODuration:()=>pW,ZodISODateTime:()=>lW,ZodISODate:()=>mW});var lW=D("ZodISODateTime",(Q,X)=>{t4.init(Q,X),i.init(Q,X)});function g6(Q){return WW(lW,Q)}var mW=D("ZodISODate",(Q,X)=>{a4.init(Q,X),i.init(Q,X)});function y6(Q){return JW(mW,Q)}var cW=D("ZodISOTime",(Q,X)=>{s4.init(Q,X),i.init(Q,X)});function h6(Q){return GW(cW,Q)}var pW=D("ZodISODuration",(Q,X)=>{e4.init(Q,X),i.init(Q,X)});function u6(Q){return HW(pW,Q)}var dW=(Q,X)=>{x9.init(Q,X),Q.name="ZodError",Object.defineProperties(Q,{format:{value:(Y)=>_X(Q,Y)},flatten:{value:(Y)=>vX(Q,Y)},addIssue:{value:(Y)=>{Q.issues.push(Y),Q.message=JSON.stringify(Q.issues,D1,2)}},addIssues:{value:(Y)=>{Q.issues.push(...Y),Q.message=JSON.stringify(Q.issues,D1,2)}},isEmpty:{get(){return Q.issues.length===0}}})},Lq=D("ZodError",dW),V0=D("ZodError",dW,{Parent:Error});var iW=g9(V0),rW=y9(V0),nW=l1(V0),oW=c1(V0),tW=xX(V0),aW=gX(V0),sW=yX(V0),eW=hX(V0),QJ=uX(V0),XJ=fX(V0),YJ=lX(V0),WJ=mX(V0);var n=D("ZodType",(Q,X)=>{return c.init(Q,X),Object.assign(Q["~standard"],{jsonSchema:{input:r1(Q,"input"),output:r1(Q,"output")}}),Q.toJSONSchema=ZW(Q,{}),Q.def=X,Q.type=X.type,Object.defineProperty(Q,"_def",{value:X}),Q.check=(...Y)=>{return Q.clone(y.mergeDefs(X,{checks:[...X.checks??[],...Y.map((W)=>typeof W==="function"?{_zod:{check:W,def:{check:"custom"},onattach:[]}}:W)]}),{parent:!0})},Q.with=Q.check,Q.clone=(Y,W)=>b0(Q,Y,W),Q.brand=()=>Q,Q.register=(Y,W)=>{return Y.add(Q,W),Q},Q.parse=(Y,W)=>iW(Q,Y,W,{callee:Q.parse}),Q.safeParse=(Y,W)=>nW(Q,Y,W),Q.parseAsync=async(Y,W)=>rW(Q,Y,W,{callee:Q.parseAsync}),Q.safeParseAsync=async(Y,W)=>oW(Q,Y,W),Q.spa=Q.safeParseAsync,Q.encode=(Y,W)=>tW(Q,Y,W),Q.decode=(Y,W)=>aW(Q,Y,W),Q.encodeAsync=async(Y,W)=>sW(Q,Y,W),Q.decodeAsync=async(Y,W)=>eW(Q,Y,W),Q.safeEncode=(Y,W)=>QJ(Q,Y,W),Q.safeDecode=(Y,W)=>XJ(Q,Y,W),Q.safeEncodeAsync=async(Y,W)=>YJ(Q,Y,W),Q.safeDecodeAsync=async(Y,W)=>WJ(Q,Y,W),Q.refine=(Y,W)=>Q.check(JK(Y,W)),Q.superRefine=(Y)=>Q.check(GK(Y)),Q.overwrite=(Y)=>Q.check(t0(Y)),Q.optional=()=>t(Q),Q.exactOptional=()=>i$(Q),Q.nullable=()=>HJ(Q),Q.nullish=()=>t(HJ(Q)),Q.nonoptional=(Y)=>s$(Q,Y),Q.array=()=>v(Q),Q.or=(Y)=>m([Q,Y]),Q.and=(Y)=>a9(Q,Y),Q.transform=(Y)=>l6(Q,AJ(Y)),Q.default=(Y)=>o$(Q,Y),Q.prefault=(Y)=>a$(Q,Y),Q.catch=(Y)=>QK(Q,Y),Q.pipe=(Y)=>l6(Q,Y),Q.readonly=()=>WK(Q),Q.describe=(Y)=>{let W=Q.clone();return K1.add(W,{description:Y}),W},Object.defineProperty(Q,"description",{get(){return K1.get(Q)?.description},configurable:!0}),Q.meta=(...Y)=>{if(Y.length===0)return K1.get(Q);let W=Q.clone();return K1.add(W,Y[0]),W},Q.isOptional=()=>Q.safeParse(void 0).success,Q.isNullable=()=>Q.safeParse(null).success,Q.apply=(Y)=>Y(Q),Q}),$J=D("_ZodString",(Q,X)=>{c9.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(W,J,G)=>OW(Q,W,J,G);let Y=Q._zod.bag;Q.format=Y.format??null,Q.minLength=Y.minimum??null,Q.maxLength=Y.maximum??null,Q.regex=(...W)=>Q.check(N6(...W)),Q.includes=(...W)=>Q.check(I6(...W)),Q.startsWith=(...W)=>Q.check(E6(...W)),Q.endsWith=(...W)=>Q.check(b6(...W)),Q.min=(...W)=>Q.check(O1(...W)),Q.max=(...W)=>Q.check(r9(...W)),Q.length=(...W)=>Q.check(n9(...W)),Q.nonempty=(...W)=>Q.check(O1(1,...W)),Q.lowercase=(W)=>Q.check(w6(W)),Q.uppercase=(W)=>Q.check(P6(W)),Q.trim=()=>Q.check(j6()),Q.normalize=(...W)=>Q.check(T6(...W)),Q.toLowerCase=()=>Q.check(R6()),Q.toUpperCase=()=>Q.check(S6()),Q.slugify=()=>Q.check(C6())}),D$=D("ZodString",(Q,X)=>{c9.init(Q,X),$J.init(Q,X),Q.email=(Y)=>Q.check(gY(V$,Y)),Q.url=(Y)=>Q.check(lY(Z$,Y)),Q.jwt=(Y)=>Q.check(YW(k$,Y)),Q.emoji=(Y)=>Q.check(mY(O$,Y)),Q.guid=(Y)=>Q.check(M6(JJ,Y)),Q.uuid=(Y)=>Q.check(yY(t9,Y)),Q.uuidv4=(Y)=>Q.check(hY(t9,Y)),Q.uuidv6=(Y)=>Q.check(uY(t9,Y)),Q.uuidv7=(Y)=>Q.check(fY(t9,Y)),Q.nanoid=(Y)=>Q.check(cY(q$,Y)),Q.guid=(Y)=>Q.check(M6(JJ,Y)),Q.cuid=(Y)=>Q.check(pY(M$,Y)),Q.cuid2=(Y)=>Q.check(dY(N$,Y)),Q.ulid=(Y)=>Q.check(iY(w$,Y)),Q.base64=(Y)=>Q.check(eY(R$,Y)),Q.base64url=(Y)=>Q.check(QW(S$,Y)),Q.xid=(Y)=>Q.check(rY(P$,Y)),Q.ksuid=(Y)=>Q.check(nY(I$,Y)),Q.ipv4=(Y)=>Q.check(oY(E$,Y)),Q.ipv6=(Y)=>Q.check(tY(b$,Y)),Q.cidrv4=(Y)=>Q.check(aY(T$,Y)),Q.cidrv6=(Y)=>Q.check(sY(j$,Y)),Q.e164=(Y)=>Q.check(XW(C$,Y)),Q.datetime=(Y)=>Q.check(g6(Y)),Q.date=(Y)=>Q.check(y6(Y)),Q.time=(Y)=>Q.check(h6(Y)),Q.duration=(Y)=>Q.check(u6(Y))});function U(Q){return xY(D$,Q)}var i=D("ZodStringFormat",(Q,X)=>{p.init(Q,X),$J.init(Q,X)}),V$=D("ZodEmail",(Q,X)=>{l4.init(Q,X),i.init(Q,X)});var JJ=D("ZodGUID",(Q,X)=>{u4.init(Q,X),i.init(Q,X)});var t9=D("ZodUUID",(Q,X)=>{f4.init(Q,X),i.init(Q,X)});var Z$=D("ZodURL",(Q,X)=>{m4.init(Q,X),i.init(Q,X)});var O$=D("ZodEmoji",(Q,X)=>{c4.init(Q,X),i.init(Q,X)});var q$=D("ZodNanoID",(Q,X)=>{p4.init(Q,X),i.init(Q,X)});var M$=D("ZodCUID",(Q,X)=>{d4.init(Q,X),i.init(Q,X)});var N$=D("ZodCUID2",(Q,X)=>{i4.init(Q,X),i.init(Q,X)});var w$=D("ZodULID",(Q,X)=>{r4.init(Q,X),i.init(Q,X)});var P$=D("ZodXID",(Q,X)=>{n4.init(Q,X),i.init(Q,X)});var I$=D("ZodKSUID",(Q,X)=>{o4.init(Q,X),i.init(Q,X)});var E$=D("ZodIPv4",(Q,X)=>{QY.init(Q,X),i.init(Q,X)});var b$=D("ZodIPv6",(Q,X)=>{XY.init(Q,X),i.init(Q,X)});var T$=D("ZodCIDRv4",(Q,X)=>{YY.init(Q,X),i.init(Q,X)});var j$=D("ZodCIDRv6",(Q,X)=>{WY.init(Q,X),i.init(Q,X)});var R$=D("ZodBase64",(Q,X)=>{GY.init(Q,X),i.init(Q,X)});var S$=D("ZodBase64URL",(Q,X)=>{HY.init(Q,X),i.init(Q,X)});var C$=D("ZodE164",(Q,X)=>{$Y.init(Q,X),i.init(Q,X)});var k$=D("ZodJWT",(Q,X)=>{KY.init(Q,X),i.init(Q,X)});var KJ=D("ZodNumber",(Q,X)=>{V6.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(W,J,G)=>qW(Q,W,J,G),Q.gt=(W,J)=>Q.check(d9(W,J)),Q.gte=(W,J)=>Q.check(i1(W,J)),Q.min=(W,J)=>Q.check(i1(W,J)),Q.lt=(W,J)=>Q.check(p9(W,J)),Q.lte=(W,J)=>Q.check(d1(W,J)),Q.max=(W,J)=>Q.check(d1(W,J)),Q.int=(W)=>Q.check(GJ(W)),Q.safe=(W)=>Q.check(GJ(W)),Q.positive=(W)=>Q.check(d9(0,W)),Q.nonnegative=(W)=>Q.check(i1(0,W)),Q.negative=(W)=>Q.check(p9(0,W)),Q.nonpositive=(W)=>Q.check(d1(0,W)),Q.multipleOf=(W,J)=>Q.check(i9(W,J)),Q.step=(W,J)=>Q.check(i9(W,J)),Q.finite=()=>Q;let Y=Q._zod.bag;Q.minValue=Math.max(Y.minimum??Number.NEGATIVE_INFINITY,Y.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,Q.maxValue=Math.min(Y.maximum??Number.POSITIVE_INFINITY,Y.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,Q.isInt=(Y.format??"").includes("int")||Number.isSafeInteger(Y.multipleOf??0.5),Q.isFinite=!0,Q.format=Y.format??null});function f(Q){return $W(KJ,Q)}var v$=D("ZodNumberFormat",(Q,X)=>{BY.init(Q,X),KJ.init(Q,X)});function GJ(Q){return KW(v$,Q)}var _$=D("ZodBoolean",(Q,X)=>{zY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>MW(Q,Y,W,J)});function e(Q){return BW(_$,Q)}var x$=D("ZodNull",(Q,X)=>{AY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>NW(Q,Y,W,J)});function m6(Q){return zW(x$,Q)}var g$=D("ZodUnknown",(Q,X)=>{LY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>PW(Q,Y,W,J)});function r(){return AW(g$)}var y$=D("ZodNever",(Q,X)=>{FY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>wW(Q,Y,W,J)});function h$(Q){return LW(y$,Q)}var u$=D("ZodArray",(Q,X)=>{UY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>jW(Q,Y,W,J),Q.element=X.element,Q.min=(Y,W)=>Q.check(O1(Y,W)),Q.nonempty=(Y)=>Q.check(O1(1,Y)),Q.max=(Y,W)=>Q.check(r9(Y,W)),Q.length=(Y,W)=>Q.check(n9(Y,W)),Q.unwrap=()=>Q.element});function v(Q,X){return FW(u$,Q,X)}var BJ=D("ZodObject",(Q,X)=>{ZY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>RW(Q,Y,W,J),y.defineLazy(Q,"shape",()=>{return X.shape}),Q.keyof=()=>A0(Object.keys(Q._zod.def.shape)),Q.catchall=(Y)=>Q.clone({...Q._zod.def,catchall:Y}),Q.passthrough=()=>Q.clone({...Q._zod.def,catchall:r()}),Q.loose=()=>Q.clone({...Q._zod.def,catchall:r()}),Q.strict=()=>Q.clone({...Q._zod.def,catchall:h$()}),Q.strip=()=>Q.clone({...Q._zod.def,catchall:void 0}),Q.extend=(Y)=>{return y.extend(Q,Y)},Q.safeExtend=(Y)=>{return y.safeExtend(Q,Y)},Q.merge=(Y)=>y.merge(Q,Y),Q.pick=(Y)=>y.pick(Q,Y),Q.omit=(Y)=>y.omit(Q,Y),Q.partial=(...Y)=>y.partial(LJ,Q,Y[0]),Q.required=(...Y)=>y.required(FJ,Q,Y[0])});function N(Q,X){let Y={type:"object",shape:Q??{},...y.normalizeParams(X)};return new BJ(Y)}function K0(Q,X){return new BJ({type:"object",shape:Q,catchall:r(),...y.normalizeParams(X)})}var zJ=D("ZodUnion",(Q,X)=>{Z6.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>SW(Q,Y,W,J),Q.options=X.options});function m(Q,X){return new zJ({type:"union",options:Q,...y.normalizeParams(X)})}var f$=D("ZodDiscriminatedUnion",(Q,X)=>{zJ.init(Q,X),OY.init(Q,X)});function c6(Q,X,Y){return new f$({type:"union",options:X,discriminator:Q,...y.normalizeParams(Y)})}var l$=D("ZodIntersection",(Q,X)=>{qY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>CW(Q,Y,W,J)});function a9(Q,X){return new l$({type:"intersection",left:Q,right:X})}var m$=D("ZodRecord",(Q,X)=>{MY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>kW(Q,Y,W,J),Q.keyType=X.keyType,Q.valueType=X.valueType});function o(Q,X,Y){return new m$({type:"record",keyType:Q,valueType:X,...y.normalizeParams(Y)})}var f6=D("ZodEnum",(Q,X)=>{NY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(W,J,G)=>IW(Q,W,J,G),Q.enum=X.entries,Q.options=Object.values(X.entries);let Y=new Set(Object.keys(X.entries));Q.extract=(W,J)=>{let G={};for(let H of W)if(Y.has(H))G[H]=X.entries[H];else throw new Error(`Key ${H} not found in enum`);return new f6({...X,checks:[],...y.normalizeParams(J),entries:G})},Q.exclude=(W,J)=>{let G={...X.entries};for(let H of W)if(Y.has(H))delete G[H];else throw new Error(`Key ${H} not found in enum`);return new f6({...X,checks:[],...y.normalizeParams(J),entries:G})}});function A0(Q,X){let Y=Array.isArray(Q)?Object.fromEntries(Q.map((W)=>[W,W])):Q;return new f6({type:"enum",entries:Y,...y.normalizeParams(X)})}var c$=D("ZodLiteral",(Q,X)=>{wY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>EW(Q,Y,W,J),Q.values=new Set(X.values),Object.defineProperty(Q,"value",{get(){if(X.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return X.values[0]}})});function w(Q,X){return new c$({type:"literal",values:Array.isArray(Q)?Q:[Q],...y.normalizeParams(X)})}var p$=D("ZodTransform",(Q,X)=>{PY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>TW(Q,Y,W,J),Q._zod.parse=(Y,W)=>{if(W.direction==="backward")throw new x1(Q.constructor.name);Y.addIssue=(G)=>{if(typeof G==="string")Y.issues.push(y.issue(G,Y.value,X));else{let H=G;if(H.fatal)H.continue=!1;H.code??(H.code="custom"),H.input??(H.input=Y.value),H.inst??(H.inst=Q),Y.issues.push(y.issue(H))}};let J=X.transform(Y.value,Y);if(J instanceof Promise)return J.then((G)=>{return Y.value=G,Y});return Y.value=J,Y}});function AJ(Q){return new p$({type:"transform",transform:Q})}var LJ=D("ZodOptional",(Q,X)=>{O6.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>x6(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function t(Q){return new LJ({type:"optional",innerType:Q})}var d$=D("ZodExactOptional",(Q,X)=>{IY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>x6(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function i$(Q){return new d$({type:"optional",innerType:Q})}var r$=D("ZodNullable",(Q,X)=>{EY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>vW(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function HJ(Q){return new r$({type:"nullable",innerType:Q})}var n$=D("ZodDefault",(Q,X)=>{bY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>xW(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType,Q.removeDefault=Q.unwrap});function o$(Q,X){return new n$({type:"default",innerType:Q,get defaultValue(){return typeof X==="function"?X():y.shallowClone(X)}})}var t$=D("ZodPrefault",(Q,X)=>{TY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>gW(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function a$(Q,X){return new t$({type:"prefault",innerType:Q,get defaultValue(){return typeof X==="function"?X():y.shallowClone(X)}})}var FJ=D("ZodNonOptional",(Q,X)=>{jY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>_W(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function s$(Q,X){return new FJ({type:"nonoptional",innerType:Q,...y.normalizeParams(X)})}var e$=D("ZodCatch",(Q,X)=>{RY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>yW(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType,Q.removeCatch=Q.unwrap});function QK(Q,X){return new e$({type:"catch",innerType:Q,catchValue:typeof X==="function"?X:()=>X})}var XK=D("ZodPipe",(Q,X)=>{SY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>hW(Q,Y,W,J),Q.in=X.in,Q.out=X.out});function l6(Q,X){return new XK({type:"pipe",in:Q,out:X})}var YK=D("ZodReadonly",(Q,X)=>{CY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>uW(Q,Y,W,J),Q.unwrap=()=>Q._zod.def.innerType});function WK(Q){return new YK({type:"readonly",innerType:Q})}var UJ=D("ZodCustom",(Q,X)=>{kY.init(Q,X),n.init(Q,X),Q._zod.processJSONSchema=(Y,W,J)=>bW(Q,Y,W,J)});function DJ(Q,X){return UW(UJ,Q??(()=>!0),X)}function JK(Q,X={}){return DW(UJ,Q,X)}function GK(Q){return VW(Q)}function p6(Q,X){return l6(AJ(Q),X)}O0(q6());var d6="2025-11-25";var VJ=[d6,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],s0="io.modelcontextprotocol/related-task",e9="2.0",X0=DJ((Q)=>Q!==null&&(typeof Q==="object"||typeof Q==="function")),ZJ=m([U(),f().int()]),OJ=U(),RM=K0({ttl:m([f(),m6()]).optional(),pollInterval:f().optional()}),HK=N({ttl:f().optional()}),$K=N({taskId:U()}),i6=K0({progressToken:ZJ.optional(),[s0]:$K.optional()}),Z0=N({_meta:i6.optional()}),t1=Z0.extend({task:HK.optional()}),qJ=(Q)=>t1.safeParse(Q).success,Y0=N({method:U(),params:Z0.loose().optional()}),q0=N({_meta:i6.optional()}),M0=N({method:U(),params:q0.loose().optional()}),W0=K0({_meta:i6.optional()}),QQ=m([U(),f().int()]),MJ=N({jsonrpc:w(e9),id:QQ,...Y0.shape}).strict(),r6=(Q)=>MJ.safeParse(Q).success,NJ=N({jsonrpc:w(e9),...M0.shape}).strict(),wJ=(Q)=>NJ.safeParse(Q).success,n6=N({jsonrpc:w(e9),id:QQ,result:W0}).strict(),a1=(Q)=>n6.safeParse(Q).success;var _;(function(Q){Q[Q.ConnectionClosed=-32000]="ConnectionClosed",Q[Q.RequestTimeout=-32001]="RequestTimeout",Q[Q.ParseError=-32700]="ParseError",Q[Q.InvalidRequest=-32600]="InvalidRequest",Q[Q.MethodNotFound=-32601]="MethodNotFound",Q[Q.InvalidParams=-32602]="InvalidParams",Q[Q.InternalError=-32603]="InternalError",Q[Q.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(_||(_={}));var o6=N({jsonrpc:w(e9),id:QQ.optional(),error:N({code:f().int(),message:U(),data:r().optional()})}).strict();var PJ=(Q)=>o6.safeParse(Q).success;var IJ=m([MJ,NJ,n6,o6]),SM=m([n6,o6]),XQ=W0.strict(),KK=q0.extend({requestId:QQ.optional(),reason:U().optional()}),YQ=M0.extend({method:w("notifications/cancelled"),params:KK}),BK=N({src:U(),mimeType:U().optional(),sizes:v(U()).optional(),theme:A0(["light","dark"]).optional()}),s1=N({icons:v(BK).optional()}),M1=N({name:U(),title:U().optional()}),EJ=M1.extend({...M1.shape,...s1.shape,version:U(),websiteUrl:U().optional(),description:U().optional()}),zK=a9(N({applyDefaults:e().optional()}),o(U(),r())),AK=p6((Q)=>{if(Q&&typeof Q==="object"&&!Array.isArray(Q)){if(Object.keys(Q).length===0)return{form:{}}}return Q},a9(N({form:zK.optional(),url:X0.optional()}),o(U(),r()).optional())),LK=K0({list:X0.optional(),cancel:X0.optional(),requests:K0({sampling:K0({createMessage:X0.optional()}).optional(),elicitation:K0({create:X0.optional()}).optional()}).optional()}),FK=K0({list:X0.optional(),cancel:X0.optional(),requests:K0({tools:K0({call:X0.optional()}).optional()}).optional()}),UK=N({experimental:o(U(),X0).optional(),sampling:N({context:X0.optional(),tools:X0.optional()}).optional(),elicitation:AK.optional(),roots:N({listChanged:e().optional()}).optional(),tasks:LK.optional()}),DK=Z0.extend({protocolVersion:U(),capabilities:UK,clientInfo:EJ}),t6=Y0.extend({method:w("initialize"),params:DK});var VK=N({experimental:o(U(),X0).optional(),logging:X0.optional(),completions:X0.optional(),prompts:N({listChanged:e().optional()}).optional(),resources:N({subscribe:e().optional(),listChanged:e().optional()}).optional(),tools:N({listChanged:e().optional()}).optional(),tasks:FK.optional()}),ZK=W0.extend({protocolVersion:U(),capabilities:VK,serverInfo:EJ,instructions:U().optional()}),a6=M0.extend({method:w("notifications/initialized"),params:q0.optional()});var WQ=Y0.extend({method:w("ping"),params:Z0.optional()}),OK=N({progress:f(),total:t(f()),message:t(U())}),qK=N({...q0.shape,...OK.shape,progressToken:ZJ}),JQ=M0.extend({method:w("notifications/progress"),params:qK}),MK=Z0.extend({cursor:OJ.optional()}),e1=Y0.extend({params:MK.optional()}),Q9=W0.extend({nextCursor:OJ.optional()}),NK=A0(["working","input_required","completed","failed","cancelled"]),X9=N({taskId:U(),status:NK,ttl:m([f(),m6()]),createdAt:U(),lastUpdatedAt:U(),pollInterval:t(f()),statusMessage:t(U())}),N1=W0.extend({task:X9}),wK=q0.merge(X9),Y9=M0.extend({method:w("notifications/tasks/status"),params:wK}),GQ=Y0.extend({method:w("tasks/get"),params:Z0.extend({taskId:U()})}),HQ=W0.merge(X9),$Q=Y0.extend({method:w("tasks/result"),params:Z0.extend({taskId:U()})}),CM=W0.loose(),KQ=e1.extend({method:w("tasks/list")}),BQ=Q9.extend({tasks:v(X9)}),zQ=Y0.extend({method:w("tasks/cancel"),params:Z0.extend({taskId:U()})}),bJ=W0.merge(X9),TJ=N({uri:U(),mimeType:t(U()),_meta:o(U(),r()).optional()}),jJ=TJ.extend({text:U()}),s6=U().refine((Q)=>{try{return atob(Q),!0}catch{return!1}},{message:"Invalid Base64 string"}),RJ=TJ.extend({blob:s6}),W9=A0(["user","assistant"]),w1=N({audience:v(W9).optional(),priority:f().min(0).max(1).optional(),lastModified:o1.datetime({offset:!0}).optional()}),SJ=N({...M1.shape,...s1.shape,uri:U(),description:t(U()),mimeType:t(U()),annotations:w1.optional(),_meta:t(K0({}))}),PK=N({...M1.shape,...s1.shape,uriTemplate:U(),description:t(U()),mimeType:t(U()),annotations:w1.optional(),_meta:t(K0({}))}),IK=e1.extend({method:w("resources/list")}),EK=Q9.extend({resources:v(SJ)}),bK=e1.extend({method:w("resources/templates/list")}),TK=Q9.extend({resourceTemplates:v(PK)}),e6=Z0.extend({uri:U()}),jK=e6,RK=Y0.extend({method:w("resources/read"),params:jK}),SK=W0.extend({contents:v(m([jJ,RJ]))}),CK=M0.extend({method:w("notifications/resources/list_changed"),params:q0.optional()}),kK=e6,vK=Y0.extend({method:w("resources/subscribe"),params:kK}),_K=e6,xK=Y0.extend({method:w("resources/unsubscribe"),params:_K}),gK=q0.extend({uri:U()}),yK=M0.extend({method:w("notifications/resources/updated"),params:gK}),hK=N({name:U(),description:t(U()),required:t(e())}),uK=N({...M1.shape,...s1.shape,description:t(U()),arguments:t(v(hK)),_meta:t(K0({}))}),fK=e1.extend({method:w("prompts/list")}),lK=Q9.extend({prompts:v(uK)}),mK=Z0.extend({name:U(),arguments:o(U(),U()).optional()}),cK=Y0.extend({method:w("prompts/get"),params:mK}),Q8=N({type:w("text"),text:U(),annotations:w1.optional(),_meta:o(U(),r()).optional()}),X8=N({type:w("image"),data:s6,mimeType:U(),annotations:w1.optional(),_meta:o(U(),r()).optional()}),Y8=N({type:w("audio"),data:s6,mimeType:U(),annotations:w1.optional(),_meta:o(U(),r()).optional()}),pK=N({type:w("tool_use"),name:U(),id:U(),input:o(U(),r()),_meta:o(U(),r()).optional()}),dK=N({type:w("resource"),resource:m([jJ,RJ]),annotations:w1.optional(),_meta:o(U(),r()).optional()}),iK=SJ.extend({type:w("resource_link")}),W8=m([Q8,X8,Y8,iK,dK]),rK=N({role:W9,content:W8}),nK=W0.extend({description:U().optional(),messages:v(rK)}),oK=M0.extend({method:w("notifications/prompts/list_changed"),params:q0.optional()}),tK=N({title:U().optional(),readOnlyHint:e().optional(),destructiveHint:e().optional(),idempotentHint:e().optional(),openWorldHint:e().optional()}),aK=N({taskSupport:A0(["required","optional","forbidden"]).optional()}),CJ=N({...M1.shape,...s1.shape,description:U().optional(),inputSchema:N({type:w("object"),properties:o(U(),X0).optional(),required:v(U()).optional()}).catchall(r()),outputSchema:N({type:w("object"),properties:o(U(),X0).optional(),required:v(U()).optional()}).catchall(r()).optional(),annotations:tK.optional(),execution:aK.optional(),_meta:o(U(),r()).optional()}),J8=e1.extend({method:w("tools/list")}),sK=Q9.extend({tools:v(CJ)}),AQ=W0.extend({content:v(W8).default([]),structuredContent:o(U(),r()).optional(),isError:e().optional()}),kM=AQ.or(W0.extend({toolResult:r()})),eK=t1.extend({name:U(),arguments:o(U(),r()).optional()}),J9=Y0.extend({method:w("tools/call"),params:eK}),QB=M0.extend({method:w("notifications/tools/list_changed"),params:q0.optional()}),vM=N({autoRefresh:e().default(!0),debounceMs:f().int().nonnegative().default(300)}),G9=A0(["debug","info","notice","warning","error","critical","alert","emergency"]),XB=Z0.extend({level:G9}),G8=Y0.extend({method:w("logging/setLevel"),params:XB}),YB=q0.extend({level:G9,logger:U().optional(),data:r()}),WB=M0.extend({method:w("notifications/message"),params:YB}),JB=N({name:U().optional()}),GB=N({hints:v(JB).optional(),costPriority:f().min(0).max(1).optional(),speedPriority:f().min(0).max(1).optional(),intelligencePriority:f().min(0).max(1).optional()}),HB=N({mode:A0(["auto","required","none"]).optional()}),$B=N({type:w("tool_result"),toolUseId:U().describe("The unique identifier for the corresponding tool call."),content:v(W8).default([]),structuredContent:N({}).loose().optional(),isError:e().optional(),_meta:o(U(),r()).optional()}),KB=c6("type",[Q8,X8,Y8]),s9=c6("type",[Q8,X8,Y8,pK,$B]),BB=N({role:W9,content:m([s9,v(s9)]),_meta:o(U(),r()).optional()}),zB=t1.extend({messages:v(BB),modelPreferences:GB.optional(),systemPrompt:U().optional(),includeContext:A0(["none","thisServer","allServers"]).optional(),temperature:f().optional(),maxTokens:f().int(),stopSequences:v(U()).optional(),metadata:X0.optional(),tools:v(CJ).optional(),toolChoice:HB.optional()}),AB=Y0.extend({method:w("sampling/createMessage"),params:zB}),H8=W0.extend({model:U(),stopReason:t(A0(["endTurn","stopSequence","maxTokens"]).or(U())),role:W9,content:KB}),$8=W0.extend({model:U(),stopReason:t(A0(["endTurn","stopSequence","maxTokens","toolUse"]).or(U())),role:W9,content:m([s9,v(s9)])}),LB=N({type:w("boolean"),title:U().optional(),description:U().optional(),default:e().optional()}),FB=N({type:w("string"),title:U().optional(),description:U().optional(),minLength:f().optional(),maxLength:f().optional(),format:A0(["email","uri","date","date-time"]).optional(),default:U().optional()}),UB=N({type:A0(["number","integer"]),title:U().optional(),description:U().optional(),minimum:f().optional(),maximum:f().optional(),default:f().optional()}),DB=N({type:w("string"),title:U().optional(),description:U().optional(),enum:v(U()),default:U().optional()}),VB=N({type:w("string"),title:U().optional(),description:U().optional(),oneOf:v(N({const:U(),title:U()})),default:U().optional()}),ZB=N({type:w("string"),title:U().optional(),description:U().optional(),enum:v(U()),enumNames:v(U()).optional(),default:U().optional()}),OB=m([DB,VB]),qB=N({type:w("array"),title:U().optional(),description:U().optional(),minItems:f().optional(),maxItems:f().optional(),items:N({type:w("string"),enum:v(U())}),default:v(U()).optional()}),MB=N({type:w("array"),title:U().optional(),description:U().optional(),minItems:f().optional(),maxItems:f().optional(),items:N({anyOf:v(N({const:U(),title:U()}))}),default:v(U()).optional()}),NB=m([qB,MB]),wB=m([ZB,OB,NB]),PB=m([wB,LB,FB,UB]),IB=t1.extend({mode:w("form").optional(),message:U(),requestedSchema:N({type:w("object"),properties:o(U(),PB),required:v(U()).optional()})}),EB=t1.extend({mode:w("url"),message:U(),elicitationId:U(),url:U().url()}),bB=m([IB,EB]),TB=Y0.extend({method:w("elicitation/create"),params:bB}),jB=q0.extend({elicitationId:U()}),RB=M0.extend({method:w("notifications/elicitation/complete"),params:jB}),LQ=W0.extend({action:A0(["accept","decline","cancel"]),content:p6((Q)=>Q===null?void 0:Q,o(U(),m([U(),f(),e(),v(U())])).optional())}),SB=N({type:w("ref/resource"),uri:U()});var CB=N({type:w("ref/prompt"),name:U()}),kB=Z0.extend({ref:m([CB,SB]),argument:N({name:U(),value:U()}),context:N({arguments:o(U(),U()).optional()}).optional()}),vB=Y0.extend({method:w("completion/complete"),params:kB});var _B=W0.extend({completion:K0({values:v(U()).max(100),total:t(f().int()),hasMore:t(e())})}),xB=N({uri:U().startsWith("file://"),name:U().optional(),_meta:o(U(),r()).optional()}),gB=Y0.extend({method:w("roots/list"),params:Z0.optional()}),K8=W0.extend({roots:v(xB)}),yB=M0.extend({method:w("notifications/roots/list_changed"),params:q0.optional()}),_M=m([WQ,t6,vB,G8,cK,fK,IK,bK,RK,vK,xK,J9,J8,GQ,$Q,KQ,zQ]),xM=m([YQ,JQ,a6,yB,Y9]),gM=m([XQ,H8,$8,LQ,K8,HQ,BQ,N1]),yM=m([WQ,AB,TB,gB,GQ,$Q,KQ,zQ]),hM=m([YQ,JQ,WB,yK,CK,QB,oK,Y9,RB]),uM=m([XQ,ZK,_B,nK,lK,EK,TK,SK,AQ,sK,HQ,BQ,N1]);class C extends Error{constructor(Q,X,Y){super(`MCP error ${Q}: ${X}`);this.code=Q,this.data=Y,this.name="McpError"}static fromError(Q,X,Y){if(Q===_.UrlElicitationRequired&&Y){let W=Y;if(W.elicitations)return new kJ(W.elicitations,X)}return new C(Q,X,Y)}}class kJ extends C{constructor(Q,X=`URL elicitation${Q.length>1?"s":""} required`){super(_.UrlElicitationRequired,X,{elicitations:Q})}get elicitations(){return this.data?.elicitations??[]}}function e0(Q){return Q==="completed"||Q==="failed"||Q==="cancelled"}var hB=Symbol("Let zodToJsonSchema decide on which parser to use");var ON=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function B8(Q){let Y=o9(Q)?.method;if(!Y)throw new Error("Schema is missing a method literal");let W=fW(Y);if(typeof W!=="string")throw new Error("Schema method literal must be a string");return W}function z8(Q,X){let Y=a0(Q,X);if(!Y.success)throw Y.error;return Y.data}var pB=60000;class A8{constructor(Q){if(this._options=Q,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(YQ,(X)=>{this._oncancel(X)}),this.setNotificationHandler(JQ,(X)=>{this._onprogress(X)}),this.setRequestHandler(WQ,(X)=>({})),this._taskStore=Q?.taskStore,this._taskMessageQueue=Q?.taskMessageQueue,this._taskStore)this.setRequestHandler(GQ,async(X,Y)=>{let W=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!W)throw new C(_.InvalidParams,"Failed to retrieve task: Task not found");return{...W}}),this.setRequestHandler($Q,async(X,Y)=>{let W=async()=>{let J=X.params.taskId;if(this._taskMessageQueue){let H;while(H=await this._taskMessageQueue.dequeue(J,Y.sessionId)){if(H.type==="response"||H.type==="error"){let $=H.message,K=$.id,B=this._requestResolvers.get(K);if(B)if(this._requestResolvers.delete(K),H.type==="response")B($);else{let z=$,A=new C(z.error.code,z.error.message,z.error.data);B(A)}else{let z=H.type==="response"?"Response":"Error";this._onerror(new Error(`${z} handler missing for request ${K}`))}continue}await this._transport?.send(H.message,{relatedRequestId:Y.requestId})}}let G=await this._taskStore.getTask(J,Y.sessionId);if(!G)throw new C(_.InvalidParams,`Task not found: ${J}`);if(!e0(G.status))return await this._waitForTaskUpdate(J,Y.signal),await W();if(e0(G.status)){let H=await this._taskStore.getTaskResult(J,Y.sessionId);return this._clearTaskQueue(J),{...H,_meta:{...H._meta,[s0]:{taskId:J}}}}return await W()};return await W()}),this.setRequestHandler(KQ,async(X,Y)=>{try{let{tasks:W,nextCursor:J}=await this._taskStore.listTasks(X.params?.cursor,Y.sessionId);return{tasks:W,nextCursor:J,_meta:{}}}catch(W){throw new C(_.InvalidParams,`Failed to list tasks: ${W instanceof Error?W.message:String(W)}`)}}),this.setRequestHandler(zQ,async(X,Y)=>{try{let W=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!W)throw new C(_.InvalidParams,`Task not found: ${X.params.taskId}`);if(e0(W.status))throw new C(_.InvalidParams,`Cannot cancel task in terminal status: ${W.status}`);await this._taskStore.updateTaskStatus(X.params.taskId,"cancelled","Client cancelled task execution.",Y.sessionId),this._clearTaskQueue(X.params.taskId);let J=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!J)throw new C(_.InvalidParams,`Task not found after cancellation: ${X.params.taskId}`);return{_meta:{},...J}}catch(W){if(W instanceof C)throw W;throw new C(_.InvalidRequest,`Failed to cancel task: ${W instanceof Error?W.message:String(W)}`)}})}async _oncancel(Q){if(!Q.params.requestId)return;this._requestHandlerAbortControllers.get(Q.params.requestId)?.abort(Q.params.reason)}_setupTimeout(Q,X,Y,W,J=!1){this._timeoutInfo.set(Q,{timeoutId:setTimeout(W,X),startTime:Date.now(),timeout:X,maxTotalTimeout:Y,resetTimeoutOnProgress:J,onTimeout:W})}_resetTimeout(Q){let X=this._timeoutInfo.get(Q);if(!X)return!1;let Y=Date.now()-X.startTime;if(X.maxTotalTimeout&&Y>=X.maxTotalTimeout)throw this._timeoutInfo.delete(Q),C.fromError(_.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:X.maxTotalTimeout,totalElapsed:Y});return clearTimeout(X.timeoutId),X.timeoutId=setTimeout(X.onTimeout,X.timeout),!0}_cleanupTimeout(Q){let X=this._timeoutInfo.get(Q);if(X)clearTimeout(X.timeoutId),this._timeoutInfo.delete(Q)}async connect(Q){this._transport=Q;let X=this.transport?.onclose;this._transport.onclose=()=>{X?.(),this._onclose()};let Y=this.transport?.onerror;this._transport.onerror=(J)=>{Y?.(J),this._onerror(J)};let W=this._transport?.onmessage;this._transport.onmessage=(J,G)=>{if(W?.(J,G),a1(J)||PJ(J))this._onresponse(J);else if(r6(J))this._onrequest(J,G);else if(wJ(J))this._onnotification(J);else this._onerror(new Error(`Unknown message type: ${JSON.stringify(J)}`))},await this._transport.start()}_onclose(){let Q=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let X=C.fromError(_.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let Y of Q.values())Y(X)}_onerror(Q){this.onerror?.(Q)}_onnotification(Q){let X=this._notificationHandlers.get(Q.method)??this.fallbackNotificationHandler;if(X===void 0)return;Promise.resolve().then(()=>X(Q)).catch((Y)=>this._onerror(new Error(`Uncaught error in notification handler: ${Y}`)))}_onrequest(Q,X){let Y=this._requestHandlers.get(Q.method)??this.fallbackRequestHandler,W=this._transport,J=Q.params?._meta?.[s0]?.taskId;if(Y===void 0){let B={jsonrpc:"2.0",id:Q.id,error:{code:_.MethodNotFound,message:"Method not found"}};if(J&&this._taskMessageQueue)this._enqueueTaskMessage(J,{type:"error",message:B,timestamp:Date.now()},W?.sessionId).catch((z)=>this._onerror(new Error(`Failed to enqueue error response: ${z}`)));else W?.send(B).catch((z)=>this._onerror(new Error(`Failed to send an error response: ${z}`)));return}let G=new AbortController;this._requestHandlerAbortControllers.set(Q.id,G);let H=qJ(Q.params)?Q.params.task:void 0,$=this._taskStore?this.requestTaskStore(Q,W?.sessionId):void 0,K={signal:G.signal,sessionId:W?.sessionId,_meta:Q.params?._meta,sendNotification:async(B)=>{let z={relatedRequestId:Q.id};if(J)z.relatedTask={taskId:J};await this.notification(B,z)},sendRequest:async(B,z,A)=>{let F={...A,relatedRequestId:Q.id};if(J&&!F.relatedTask)F.relatedTask={taskId:J};let L=F.relatedTask?.taskId??J;if(L&&$)await $.updateTaskStatus(L,"input_required");return await this.request(B,z,F)},authInfo:X?.authInfo,requestId:Q.id,requestInfo:X?.requestInfo,taskId:J,taskStore:$,taskRequestedTtl:H?.ttl,closeSSEStream:X?.closeSSEStream,closeStandaloneSSEStream:X?.closeStandaloneSSEStream};Promise.resolve().then(()=>{if(H)this.assertTaskHandlerCapability(Q.method)}).then(()=>Y(Q,K)).then(async(B)=>{if(G.signal.aborted)return;let z={result:B,jsonrpc:"2.0",id:Q.id};if(J&&this._taskMessageQueue)await this._enqueueTaskMessage(J,{type:"response",message:z,timestamp:Date.now()},W?.sessionId);else await W?.send(z)},async(B)=>{if(G.signal.aborted)return;let z={jsonrpc:"2.0",id:Q.id,error:{code:Number.isSafeInteger(B.code)?B.code:_.InternalError,message:B.message??"Internal error",...B.data!==void 0&&{data:B.data}}};if(J&&this._taskMessageQueue)await this._enqueueTaskMessage(J,{type:"error",message:z,timestamp:Date.now()},W?.sessionId);else await W?.send(z)}).catch((B)=>this._onerror(new Error(`Failed to send response: ${B}`))).finally(()=>{this._requestHandlerAbortControllers.delete(Q.id)})}_onprogress(Q){let{progressToken:X,...Y}=Q.params,W=Number(X),J=this._progressHandlers.get(W);if(!J){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(Q)}`));return}let G=this._responseHandlers.get(W),H=this._timeoutInfo.get(W);if(H&&G&&H.resetTimeoutOnProgress)try{this._resetTimeout(W)}catch($){this._responseHandlers.delete(W),this._progressHandlers.delete(W),this._cleanupTimeout(W),G($);return}J(Y)}_onresponse(Q){let X=Number(Q.id),Y=this._requestResolvers.get(X);if(Y){if(this._requestResolvers.delete(X),a1(Q))Y(Q);else{let G=new C(Q.error.code,Q.error.message,Q.error.data);Y(G)}return}let W=this._responseHandlers.get(X);if(W===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(Q)}`));return}this._responseHandlers.delete(X),this._cleanupTimeout(X);let J=!1;if(a1(Q)&&Q.result&&typeof Q.result==="object"){let G=Q.result;if(G.task&&typeof G.task==="object"){let H=G.task;if(typeof H.taskId==="string")J=!0,this._taskProgressTokens.set(H.taskId,X)}}if(!J)this._progressHandlers.delete(X);if(a1(Q))W(Q);else{let G=C.fromError(Q.error.code,Q.error.message,Q.error.data);W(G)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(Q,X,Y){let{task:W}=Y??{};if(!W){try{yield{type:"result",result:await this.request(Q,X,Y)}}catch(G){yield{type:"error",error:G instanceof C?G:new C(_.InternalError,String(G))}}return}let J;try{let G=await this.request(Q,N1,Y);if(G.task)J=G.task.taskId,yield{type:"taskCreated",task:G.task};else throw new C(_.InternalError,"Task creation did not return a task");while(!0){let H=await this.getTask({taskId:J},Y);if(yield{type:"taskStatus",task:H},e0(H.status)){if(H.status==="completed")yield{type:"result",result:await this.getTaskResult({taskId:J},X,Y)};else if(H.status==="failed")yield{type:"error",error:new C(_.InternalError,`Task ${J} failed`)};else if(H.status==="cancelled")yield{type:"error",error:new C(_.InternalError,`Task ${J} was cancelled`)};return}if(H.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:J},X,Y)};return}let $=H.pollInterval??this._options?.defaultTaskPollInterval??1000;await new Promise((K)=>setTimeout(K,$)),Y?.signal?.throwIfAborted()}}catch(G){yield{type:"error",error:G instanceof C?G:new C(_.InternalError,String(G))}}}request(Q,X,Y){let{relatedRequestId:W,resumptionToken:J,onresumptiontoken:G,task:H,relatedTask:$}=Y??{};return new Promise((K,B)=>{let z=(O)=>{B(O)};if(!this._transport){z(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{if(this.assertCapabilityForMethod(Q.method),H)this.assertTaskCapability(Q.method)}catch(O){z(O);return}Y?.signal?.throwIfAborted();let A=this._requestMessageId++,F={...Q,jsonrpc:"2.0",id:A};if(Y?.onprogress)this._progressHandlers.set(A,Y.onprogress),F.params={...Q.params,_meta:{...Q.params?._meta||{},progressToken:A}};if(H)F.params={...F.params,task:H};if($)F.params={...F.params,_meta:{...F.params?._meta||{},[s0]:$}};let L=(O)=>{this._responseHandlers.delete(A),this._progressHandlers.delete(A),this._cleanupTimeout(A),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:A,reason:String(O)}},{relatedRequestId:W,resumptionToken:J,onresumptiontoken:G}).catch((E)=>this._onerror(new Error(`Failed to send cancellation: ${E}`)));let T=O instanceof C?O:new C(_.RequestTimeout,String(O));B(T)};this._responseHandlers.set(A,(O)=>{if(Y?.signal?.aborted)return;if(O instanceof Error)return B(O);try{let T=a0(X,O.result);if(!T.success)B(T.error);else K(T.data)}catch(T){B(T)}}),Y?.signal?.addEventListener("abort",()=>{L(Y?.signal?.reason)});let V=Y?.timeout??pB,Z=()=>L(C.fromError(_.RequestTimeout,"Request timed out",{timeout:V}));this._setupTimeout(A,V,Y?.maxTotalTimeout,Z,Y?.resetTimeoutOnProgress??!1);let q=$?.taskId;if(q){let O=(T)=>{let E=this._responseHandlers.get(A);if(E)E(T);else this._onerror(new Error(`Response handler missing for side-channeled request ${A}`))};this._requestResolvers.set(A,O),this._enqueueTaskMessage(q,{type:"request",message:F,timestamp:Date.now()}).catch((T)=>{this._cleanupTimeout(A),B(T)})}else this._transport.send(F,{relatedRequestId:W,resumptionToken:J,onresumptiontoken:G}).catch((O)=>{this._cleanupTimeout(A),B(O)})})}async getTask(Q,X){return this.request({method:"tasks/get",params:Q},HQ,X)}async getTaskResult(Q,X,Y){return this.request({method:"tasks/result",params:Q},X,Y)}async listTasks(Q,X){return this.request({method:"tasks/list",params:Q},BQ,X)}async cancelTask(Q,X){return this.request({method:"tasks/cancel",params:Q},bJ,X)}async notification(Q,X){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(Q.method);let Y=X?.relatedTask?.taskId;if(Y){let H={...Q,jsonrpc:"2.0",params:{...Q.params,_meta:{...Q.params?._meta||{},[s0]:X.relatedTask}}};await this._enqueueTaskMessage(Y,{type:"notification",message:H,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(Q.method)&&!Q.params&&!X?.relatedRequestId&&!X?.relatedTask){if(this._pendingDebouncedNotifications.has(Q.method))return;this._pendingDebouncedNotifications.add(Q.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(Q.method),!this._transport)return;let H={...Q,jsonrpc:"2.0"};if(X?.relatedTask)H={...H,params:{...H.params,_meta:{...H.params?._meta||{},[s0]:X.relatedTask}}};this._transport?.send(H,X).catch(($)=>this._onerror($))});return}let G={...Q,jsonrpc:"2.0"};if(X?.relatedTask)G={...G,params:{...G.params,_meta:{...G.params?._meta||{},[s0]:X.relatedTask}}};await this._transport.send(G,X)}setRequestHandler(Q,X){let Y=B8(Q);this.assertRequestHandlerCapability(Y),this._requestHandlers.set(Y,(W,J)=>{let G=z8(Q,W);return Promise.resolve(X(G,J))})}removeRequestHandler(Q){this._requestHandlers.delete(Q)}assertCanSetRequestHandler(Q){if(this._requestHandlers.has(Q))throw new Error(`A request handler for ${Q} already exists, which would be overridden`)}setNotificationHandler(Q,X){let Y=B8(Q);this._notificationHandlers.set(Y,(W)=>{let J=z8(Q,W);return Promise.resolve(X(J))})}removeNotificationHandler(Q){this._notificationHandlers.delete(Q)}_cleanupTaskProgressHandler(Q){let X=this._taskProgressTokens.get(Q);if(X!==void 0)this._progressHandlers.delete(X),this._taskProgressTokens.delete(Q)}async _enqueueTaskMessage(Q,X,Y){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let W=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(Q,X,Y,W)}async _clearTaskQueue(Q,X){if(this._taskMessageQueue){let Y=await this._taskMessageQueue.dequeueAll(Q,X);for(let W of Y)if(W.type==="request"&&r6(W.message)){let J=W.message.id,G=this._requestResolvers.get(J);if(G)G(new C(_.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(J);else this._onerror(new Error(`Resolver missing for request ${J} during task ${Q} cleanup`))}}}async _waitForTaskUpdate(Q,X){let Y=this._options?.defaultTaskPollInterval??1000;try{let W=await this._taskStore?.getTask(Q);if(W?.pollInterval)Y=W.pollInterval}catch{}return new Promise((W,J)=>{if(X.aborted){J(new C(_.InvalidRequest,"Request cancelled"));return}let G=setTimeout(W,Y);X.addEventListener("abort",()=>{clearTimeout(G),J(new C(_.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(Q,X){let Y=this._taskStore;if(!Y)throw new Error("No task store configured");return{createTask:async(W)=>{if(!Q)throw new Error("No request provided");return await Y.createTask(W,Q.id,{method:Q.method,params:Q.params},X)},getTask:async(W)=>{let J=await Y.getTask(W,X);if(!J)throw new C(_.InvalidParams,"Failed to retrieve task: Task not found");return J},storeTaskResult:async(W,J,G)=>{await Y.storeTaskResult(W,J,G,X);let H=await Y.getTask(W,X);if(H){let $=Y9.parse({method:"notifications/tasks/status",params:H});if(await this.notification($),e0(H.status))this._cleanupTaskProgressHandler(W)}},getTaskResult:(W)=>{return Y.getTaskResult(W,X)},updateTaskStatus:async(W,J,G)=>{let H=await Y.getTask(W,X);if(!H)throw new C(_.InvalidParams,`Task "${W}" not found - it may have been cleaned up`);if(e0(H.status))throw new C(_.InvalidParams,`Cannot update task "${W}" from terminal status "${H.status}" to "${J}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await Y.updateTaskStatus(W,J,G,X);let $=await Y.getTask(W,X);if($){let K=Y9.parse({method:"notifications/tasks/status",params:$});if(await this.notification(K),e0($.status))this._cleanupTaskProgressHandler(W)}},listTasks:(W)=>{return Y.listTasks(W,X)}}}}function vJ(Q){return Q!==null&&typeof Q==="object"&&!Array.isArray(Q)}function _J(Q,X){let Y={...Q};for(let W in X){let J=W,G=X[J];if(G===void 0)continue;let H=Y[J];if(vJ(H)&&vJ(G))Y[J]={...H,...G};else Y[J]=G}return Y}var A3=wX(GX(),1),L3=wX(z3(),1);function eZ(){let Q=new A3.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return L3.default(Q),Q}class DX{constructor(Q){this._ajv=Q??eZ()}getValidator(Q){let X="$id"in Q&&typeof Q.$id==="string"?this._ajv.getSchema(Q.$id)??this._ajv.compile(Q):this._ajv.compile(Q);return(Y)=>{if(X(Y))return{valid:!0,data:Y,errorMessage:void 0};else return{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(X.errors)}}}}class VX{constructor(Q){this._server=Q}requestStream(Q,X,Y){return this._server.requestStream(Q,X,Y)}async getTask(Q,X){return this._server.getTask({taskId:Q},X)}async getTaskResult(Q,X,Y){return this._server.getTaskResult({taskId:Q},X,Y)}async listTasks(Q,X){return this._server.listTasks(Q?{cursor:Q}:void 0,X)}async cancelTask(Q,X){return this._server.cancelTask({taskId:Q},X)}}function F3(Q,X,Y){if(!Q)throw new Error(`${Y} does not support task creation (required for ${X})`);switch(X){case"tools/call":if(!Q.tools?.call)throw new Error(`${Y} does not support task creation for tools/call (required for ${X})`);break;default:break}}function U3(Q,X,Y){if(!Q)throw new Error(`${Y} does not support task creation (required for ${X})`);switch(X){case"sampling/createMessage":if(!Q.sampling?.createMessage)throw new Error(`${Y} does not support task creation for sampling/createMessage (required for ${X})`);break;case"elicitation/create":if(!Q.elicitation?.create)throw new Error(`${Y} does not support task creation for elicitation/create (required for ${X})`);break;default:break}}class ZX extends A8{constructor(Q,X){super(X);if(this._serverInfo=Q,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(G9.options.map((Y,W)=>[Y,W])),this.isMessageIgnored=(Y,W)=>{let J=this._loggingLevels.get(W);return J?this.LOG_LEVEL_SEVERITY.get(Y)<this.LOG_LEVEL_SEVERITY.get(J):!1},this._capabilities=X?.capabilities??{},this._instructions=X?.instructions,this._jsonSchemaValidator=X?.jsonSchemaValidator??new DX,this.setRequestHandler(t6,(Y)=>this._oninitialize(Y)),this.setNotificationHandler(a6,()=>this.oninitialized?.()),this._capabilities.logging)this.setRequestHandler(G8,async(Y,W)=>{let J=W.sessionId||W.requestInfo?.headers["mcp-session-id"]||void 0,{level:G}=Y.params,H=G9.safeParse(G);if(H.success)this._loggingLevels.set(J,H.data);return{}})}get experimental(){if(!this._experimental)this._experimental={tasks:new VX(this)};return this._experimental}registerCapabilities(Q){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=_J(this._capabilities,Q)}setRequestHandler(Q,X){let W=o9(Q)?.method;if(!W)throw new Error("Schema is missing a method literal");let J;if(q1(W)){let H=W;J=H._zod?.def?.value??H.value}else{let H=W;J=H._def?.value??H.value}if(typeof J!=="string")throw new Error("Schema method literal must be a string");if(J==="tools/call"){let H=async($,K)=>{let B=a0(J9,$);if(!B.success){let L=B.error instanceof Error?B.error.message:String(B.error);throw new C(_.InvalidParams,`Invalid tools/call request: ${L}`)}let{params:z}=B.data,A=await Promise.resolve(X($,K));if(z.task){let L=a0(N1,A);if(!L.success){let V=L.error instanceof Error?L.error.message:String(L.error);throw new C(_.InvalidParams,`Invalid task creation result: ${V}`)}return L.data}let F=a0(AQ,A);if(!F.success){let L=F.error instanceof Error?F.error.message:String(F.error);throw new C(_.InvalidParams,`Invalid tools/call result: ${L}`)}return F.data};return super.setRequestHandler(Q,H)}return super.setRequestHandler(Q,X)}assertCapabilityForMethod(Q){switch(Q){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${Q})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${Q})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${Q})`);break;case"ping":break}}assertNotificationCapability(Q){switch(Q){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${Q})`);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 ${Q})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${Q})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${Q})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${Q})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(Q){if(!this._capabilities)return;switch(Q){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${Q})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${Q})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${Q})`);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 ${Q})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${Q})`);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 ${Q})`);break;case"ping":case"initialize":break}}assertTaskCapability(Q){U3(this._clientCapabilities?.tasks?.requests,Q,"Client")}assertTaskHandlerCapability(Q){if(!this._capabilities)return;F3(this._capabilities.tasks?.requests,Q,"Server")}async _oninitialize(Q){let X=Q.params.protocolVersion;return this._clientCapabilities=Q.params.capabilities,this._clientVersion=Q.params.clientInfo,{protocolVersion:VJ.includes(X)?X:d6,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"},XQ)}async createMessage(Q,X){if(Q.tools||Q.toolChoice){if(!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.")}if(Q.messages.length>0){let Y=Q.messages[Q.messages.length-1],W=Array.isArray(Y.content)?Y.content:[Y.content],J=W.some((K)=>K.type==="tool_result"),G=Q.messages.length>1?Q.messages[Q.messages.length-2]:void 0,H=G?Array.isArray(G.content)?G.content:[G.content]:[],$=H.some((K)=>K.type==="tool_use");if(J){if(W.some((K)=>K.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!$)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if($){let K=new Set(H.filter((z)=>z.type==="tool_use").map((z)=>z.id)),B=new Set(W.filter((z)=>z.type==="tool_result").map((z)=>z.toolUseId));if(K.size!==B.size||![...K].every((z)=>B.has(z)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}if(Q.tools)return this.request({method:"sampling/createMessage",params:Q},$8,X);return this.request({method:"sampling/createMessage",params:Q},H8,X)}async elicitInput(Q,X){switch(Q.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let W=Q;return this.request({method:"elicitation/create",params:W},LQ,X)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let W=Q.mode==="form"?Q:{...Q,mode:"form"},J=await this.request({method:"elicitation/create",params:W},LQ,X);if(J.action==="accept"&&J.content&&W.requestedSchema)try{let H=this._jsonSchemaValidator.getValidator(W.requestedSchema)(J.content);if(!H.valid)throw new C(_.InvalidParams,`Elicitation response content does not match requested schema: ${H.errorMessage}`)}catch(G){if(G instanceof C)throw G;throw new C(_.InternalError,`Error validating elicitation response: ${G instanceof Error?G.message:String(G)}`)}return J}}}createElicitationCompletionNotifier(Q,X){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:Q}},X)}async listRoots(Q,X){return this.request({method:"roots/list",params:Q},K8,X)}async sendLoggingMessage(Q,X){if(this._capabilities.logging){if(!this.isMessageIgnored(Q.level,X))return this.notification({method:"notifications/message",params:Q})}}async sendResourceUpdated(Q){return this.notification({method:"notifications/resources/updated",params:Q})}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"})}}import V3 from"node:process";class OX{append(Q){this._buffer=this._buffer?Buffer.concat([this._buffer,Q]):Q}readMessage(){if(!this._buffer)return null;let Q=this._buffer.indexOf(`
48
+ `);if(Q===-1)return null;let X=this._buffer.toString("utf8",0,Q).replace(/\r$/,"");return this._buffer=this._buffer.subarray(Q+1),QO(X)}clear(){this._buffer=void 0}}function QO(Q){return IJ.parse(JSON.parse(Q))}function D3(Q){return JSON.stringify(Q)+`
49
+ `}class qX{constructor(Q=V3.stdin,X=V3.stdout){this._stdin=Q,this._stdout=X,this._readBuffer=new OX,this._started=!1,this._ondata=(Y)=>{this._readBuffer.append(Y),this.processReadBuffer()},this._onerror=(Y)=>{this.onerror?.(Y)}}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(){while(!0)try{let Q=this._readBuffer.readMessage();if(Q===null)break;this.onmessage?.(Q)}catch(Q){this.onerror?.(Q)}}async close(){if(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(Q){return new Promise((X)=>{let Y=D3(Q);if(this._stdout.write(Y))X();else this._stdout.once("drain",X)})}}var P0={DEFAULT_PORT:38451,DEFAULT_HOST:"localhost",TIMEOUT_MS:1e4,PING_INTERVAL_MS:5000};function Z3(){return`req_${Date.now()}_${Math.random().toString(36).slice(2,9)}`}import{createServer as XO}from"http";class O3{server=null;pendingRequests=new Map;requestQueue=[];isRunning=!1;async start(){if(this.isRunning)return;return new Promise((Q,X)=>{this.server=XO((Y,W)=>this.handleRequest(Y,W)),this.server.on("error",(Y)=>{if(Y.code==="EADDRINUSE")console.error(`Bridge port ${P0.DEFAULT_PORT} already in use - connecting to existing bridge`),this.isRunning=!1,Q();else X(Y)}),this.server.listen(P0.DEFAULT_PORT,P0.DEFAULT_HOST,()=>{this.isRunning=!0,console.error(`Bridge server started on http://${P0.DEFAULT_HOST}:${P0.DEFAULT_PORT}`),Q()})})}async stop(){if(this.server)this.server.close(),this.server=null;this.isRunning=!1;for(let[,Q]of this.pendingRequests)clearTimeout(Q.timeout),Q.reject(new Error("Bridge stopped"));this.pendingRequests.clear(),this.requestQueue=[]}handleRequest(Q,X){let Y={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type","Content-Type":"application/json"};for(let[J,G]of Object.entries(Y))X.setHeader(J,G);if(Q.method==="OPTIONS"){X.writeHead(204),X.end();return}let W=new URL(Q.url||"/",`http://${Q.headers.host}`);if(W.pathname==="/poll"&&Q.method==="GET"){let J=[...this.requestQueue];this.requestQueue=[],X.writeHead(200),X.end(JSON.stringify({requests:J}));return}if(W.pathname==="/response"&&Q.method==="POST"){let J="";Q.on("data",(G)=>J+=G),Q.on("end",()=>{try{let G=JSON.parse(J);this.handleResponse(G),X.writeHead(200),X.end(JSON.stringify({success:!0}))}catch{X.writeHead(400),X.end(JSON.stringify({error:"Invalid response"}))}});return}if(W.pathname==="/health"){X.writeHead(200),X.end(JSON.stringify({status:"ok",pendingRequests:this.pendingRequests.size,queuedRequests:this.requestQueue.length}));return}X.writeHead(404),X.end(JSON.stringify({error:"Not found"}))}handleResponse(Q){let X=this.pendingRequests.get(Q.id);if(!X){console.error(`No pending request for response: ${Q.id}`);return}clearTimeout(X.timeout),this.pendingRequests.delete(Q.id),X.resolve(Q)}async sendRequest(Q,X){if(!this.isRunning)return this.sendToExternalBridge(Q,X);let Y={id:Z3(),operation:Q,params:X};return new Promise((W,J)=>{let G=setTimeout(()=>{this.pendingRequests.delete(Y.id),J(new Error(`Request timeout: ${Q}`))},P0.TIMEOUT_MS);this.pendingRequests.set(Y.id,{resolve:(H)=>{if(H.success)W(H.data);else J(new Error(H.error||"Unknown error"))},reject:J,timeout:G}),this.requestQueue.push(Y)})}async sendToExternalBridge(Q,X){let Y=`http://${P0.DEFAULT_HOST}:${P0.DEFAULT_PORT}`,W=await fetch(`${Y}/queue`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({operation:Q,params:X,timeout:P0.TIMEOUT_MS})});if(!W.ok)throw new Error(`Bridge request failed: ${W.statusText}`);let J=await W.json();if(!J.success)throw new Error(J.error||"Unknown error");return J.data}async checkHealth(){if(this.isRunning)return!0;try{return(await fetch(`http://${P0.DEFAULT_HOST}:${P0.DEFAULT_PORT}/health`)).ok}catch{return!1}}getIsRunning(){return this.isRunning}}var YO=[{name:"figma_status",description:"Check connection status to Figma plugin. Call this first to verify the plugin is running.",inputSchema:{type:"object",properties:{},required:[]}},{name:"figma_list_components",description:"List all available components in the Figma file. Use this to discover reusable components before creating instances.",inputSchema:{type:"object",properties:{filter:{type:"string",description:"Optional filter to search components by name (case-insensitive)"}},required:[]}},{name:"figma_create",description:"Create a new element in Figma. Supports frames, text, rectangles, ellipses, and semantic types like card, button, nav.",inputSchema:{type:"object",properties:{type:{type:"string",enum:["frame","text","rect","ellipse","line","card","button","form","nav","input"],description:"Element type to create"},name:{type:"string",description:"Name for the element"},width:{type:"number",description:"Width in pixels"},height:{type:"number",description:"Height in pixels"},x:{type:"number",description:"X position"},y:{type:"number",description:"Y position"},parent:{type:"string",description:"Parent element (ID, 'selection', or 'name:ElementName')"},fill:{type:"string",description:"Fill color (hex, e.g., '#FF0000')"},stroke:{type:"string",description:"Stroke color (hex)"},strokeWidth:{type:"number",description:"Stroke width"},cornerRadius:{type:"number",description:"Corner radius"},content:{type:"string",description:"Text content (for text elements)"},fontSize:{type:"number",description:"Font size (for text elements)"},fontWeight:{type:"number",description:"Font weight (for text elements)"},textColor:{type:"string",description:"Text color (hex). For text elements, preferred over 'fill' for clarity."},layout:{type:"object",description:"Auto-layout configuration",properties:{direction:{type:"string",enum:["row","column"]},gap:{type:"number"},padding:{type:"number"},alignItems:{type:"string",enum:["start","center","end","baseline"]},justifyContent:{type:"string",enum:["start","center","end","space-between"]}}},children:{type:"array",description:"Nested child elements to create",items:{type:"object"}}},required:["type"]}},{name:"figma_modify",description:"Modify existing elements in Figma. Target by ID, name, or selection.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to modify (ID, 'selection', or 'name:ElementName')"},name:{type:"string",description:"New name"},width:{type:"number",description:"New width"},height:{type:"number",description:"New height"},x:{type:"number",description:"New X position"},y:{type:"number",description:"New Y position"},fill:{type:"string",description:"New fill color (hex)"},stroke:{type:"string",description:"New stroke color (hex)"},cornerRadius:{type:"number",description:"New corner radius"},opacity:{type:"number",description:"Opacity (0-1)"},visible:{type:"boolean",description:"Visibility"},content:{type:"string",description:"New text content"},fontSize:{type:"number",description:"New font size"},layout:{type:"object",description:"Layout updates"}},required:["target"]}},{name:"figma_delete",description:"Delete elements from Figma.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to delete (ID, 'selection', or 'name:ElementName')"}},required:["target"]}},{name:"figma_append",description:"Move element(s) into a container frame.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to move (ID, 'selection', or 'name:ElementName')"},parent:{type:"string",description:"Container to move into (ID, 'selection', or 'name:ContainerName')"}},required:["target","parent"]}},{name:"figma_instantiate",description:"Create an instance of a component. Use list_components first to discover available components.",inputSchema:{type:"object",properties:{component:{type:"string",description:"Component ID or 'name:ComponentName'"},x:{type:"number",description:"X position"},y:{type:"number",description:"Y position"},parent:{type:"string",description:"Parent element to add instance to"}},required:["component"]}},{name:"figma_selection",description:"Get information about the current selection in Figma.",inputSchema:{type:"object",properties:{},required:[]}},{name:"figma_query",description:"Get detailed information about a specific element.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to query (ID, 'selection', or 'name:ElementName')"}},required:["target"]}},{name:"figma_to_component",description:"Convert an element to a reusable component.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to convert (ID, 'selection', or 'name:ElementName')"},name:{type:"string",description:"Component name (e.g., 'Button/Primary')"}},required:["target"]}},{name:"figma_create_variants",description:"Create component variants with different property values.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Component to create variants from"},property:{type:"string",description:"Variant property name (e.g., 'state', 'size')"},values:{type:"array",items:{type:"string"},description:"Variant values (e.g., ['default', 'hover', 'pressed'])"}},required:["target","property","values"]}},{name:"figma_ensure_accessibility",description:"Check and optionally fix accessibility issues.",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to check (ID, 'selection', 'page', or 'name:ElementName')"},level:{type:"string",enum:["AA","AAA"],description:"WCAG conformance level"},autoFix:{type:"boolean",description:"Automatically fix issues"}},required:["target","level"]}},{name:"figma_export",description:"Export elements as images (PNG, SVG, PDF).",inputSchema:{type:"object",properties:{target:{type:"string",description:"Element to export"},format:{type:"string",enum:["png","svg","pdf","jpg"],description:"Export format"},scale:{type:"number",description:"Scale factor (default: 1)"}},required:["target","format"]}}],WO={figma_status:"status",figma_list_components:"list-components",figma_create:"create",figma_modify:"modify",figma_delete:"delete",figma_append:"append",figma_instantiate:"instantiate",figma_selection:"selection",figma_query:"query",figma_to_component:"to-component",figma_create_variants:"create-variants",figma_ensure_accessibility:"ensure-accessibility",figma_export:"export"};async function JO(){let Q=new O3;await Q.start();let X=new ZX({name:"figma-pilot",version:"0.1.0"},{capabilities:{tools:{}}});X.setRequestHandler(J8,async()=>({tools:YO})),X.setRequestHandler(J9,async(W)=>{let{name:J,arguments:G}=W.params;if(!await Q.checkHealth())return{content:[{type:"text",text:JSON.stringify({error:"Figma plugin not connected. Please open Figma Desktop and run the figma-pilot plugin."})}],isError:!0};let $=WO[J];if(!$)return{content:[{type:"text",text:JSON.stringify({error:`Unknown tool: ${J}`})}],isError:!0};try{let K=G||{},B=await Q.sendRequest($,K);return{content:[{type:"text",text:JSON.stringify(B,null,2)}]}}catch(K){return{content:[{type:"text",text:JSON.stringify({error:K instanceof Error?K.message:"Unknown error"})}],isError:!0}}}),process.on("SIGINT",async()=>{await Q.stop(),process.exit(0)}),process.on("SIGTERM",async()=>{await Q.stop(),process.exit(0)});let Y=new qX;await X.connect(Y),console.error("figma-pilot MCP server running (bridge included)")}JO().catch(console.error);
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@youware-labs/figma-pilot-mcp",
3
+ "version": "0.1.0",
4
+ "description": "MCP server for AI agents to create and modify Figma designs via natural language",
5
+ "type": "module",
6
+ "bin": {
7
+ "figma-pilot-mcp": "./dist/index.js"
8
+ },
9
+ "main": "./dist/index.js",
10
+ "files": [
11
+ "dist",
12
+ "README.md"
13
+ ],
14
+ "scripts": {
15
+ "build": "bun build src/index.ts --outfile=dist/index.js --target=node --minify && chmod +x dist/index.js",
16
+ "dev": "bun run src/index.ts",
17
+ "prepublishOnly": "npm run build"
18
+ },
19
+ "keywords": [
20
+ "mcp",
21
+ "figma",
22
+ "ai",
23
+ "design",
24
+ "model-context-protocol",
25
+ "claude",
26
+ "llm"
27
+ ],
28
+ "author": "YouWare Labs",
29
+ "license": "MIT",
30
+ "repository": {
31
+ "type": "git",
32
+ "url": "https://github.com/anthropics/figma-pilot"
33
+ },
34
+ "homepage": "https://github.com/anthropics/figma-pilot#readme",
35
+ "bugs": {
36
+ "url": "https://github.com/anthropics/figma-pilot/issues"
37
+ },
38
+ "engines": {
39
+ "node": ">=18.0.0"
40
+ },
41
+ "dependencies": {
42
+ "@modelcontextprotocol/sdk": "^1.0.0"
43
+ },
44
+ "devDependencies": {
45
+ "@figma-pilot/shared": "workspace:*",
46
+ "@types/bun": "^1.1.14",
47
+ "@types/node": "^22.10.5",
48
+ "typescript": "^5.7.2"
49
+ }
50
+ }