372854948c
- Added WorkerService to handle long-running HTTP service with session management. - Implemented endpoints for initializing, observing, finalizing, checking status, and deleting sessions. - Integrated with Claude SDK for processing observations and generating responses. - Added port allocator utility to dynamically find available ports for the service. - Configured TypeScript settings for the project.
195 lines
238 KiB
JavaScript
Executable File
195 lines
238 KiB
JavaScript
Executable File
#!/usr/bin/env bun
|
|
// @bun
|
|
import VJ from"net";import{unlinkSync as kW,existsSync as h9}from"fs";import{join as _8}from"path";import{fileURLToPath as d6}from"url";import{setMaxListeners as u6}from"events";import{spawn as n6}from"child_process";import{createInterface as i6}from"readline";import*as W0 from"fs";import{stat as o6,open as kJ}from"fs/promises";import{join as mX}from"path";import{homedir as lX}from"os";import{dirname as n9,join as a8}from"path";import{cwd as g8}from"process";import{randomUUID as dX}from"crypto";var{create:Y6,getPrototypeOf:J6,defineProperty:c9,getOwnPropertyNames:z6}=Object,G6=Object.prototype.hasOwnProperty,B6=(Q,Y,J)=>{J=Q!=null?Y6(J6(Q)):{};let W=Y||!Q||!Q.__esModule?c9(J,"default",{value:Q,enumerable:!0}):J;for(let z of z6(Q))if(!G6.call(W,z))c9(W,z,{get:()=>Q[z],enumerable:!0});return W},Y0=(Q,Y)=>()=>(Y||Q((Y={exports:{}}).exports,Y),Y.exports),F6=(Q,Y)=>{for(var J in Y)c9(Q,J,{get:Y[J],enumerable:!0,configurable:!0,set:(W)=>Y[J]=()=>W})},H6=Y0((Q,Y)=>{(function(J,W){typeof Q==="object"&&typeof Y!=="undefined"?W(Q):typeof define==="function"&&define.amd?define(["exports"],W):W(J.URI=J.URI||{})})(Q,function(J){function W(){for(var M=arguments.length,q=Array(M),A=0;A<M;A++)q[A]=arguments[A];if(q.length>1){q[0]=q[0].slice(0,-1);var E=q.length-1;for(var v=1;v<E;++v)q[v]=q[v].slice(1,-1);return q[E]=q[E].slice(1),q.join("")}else return q[0]}function z(M){return"(?:"+M+")"}function F(M){return M===void 0?"undefined":M===null?"null":Object.prototype.toString.call(M).split(" ").pop().split("]").shift().toLowerCase()}function X(M){return M.toUpperCase()}function B(M){return M!==void 0&&M!==null?M instanceof Array?M:typeof M.length!=="number"||M.split||M.setInterval||M.call?[M]:Array.prototype.slice.call(M):[]}function K(M,q){var A=M;if(q)for(var E in q)A[E]=q[E];return A}function H(M){var q="[A-Za-z]",A="[\\x0D]",E="[0-9]",v="[\\x22]",n=W(E,"[A-Fa-f]"),H0="[\\x0A]",M0="[\\x20]",A0=z(z("%[EFef]"+n+"%"+n+n+"%"+n+n)+"|"+z("%[89A-Fa-f]"+n+"%"+n+n)+"|"+z("%"+n+n)),b0="[\\:\\/\\?\\#\\[\\]\\@]",K0="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",_0=W(b0,K0),S0=M?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",I0=M?"[\\uE000-\\uF8FF]":"[]",j0=W(q,E,"[\\-\\.\\_\\~]",S0),P0=z(q+W(q,E,"[\\+\\-\\.]")+"*"),V0=z(z(A0+"|"+W(j0,K0,"[\\:]"))+"*"),w1=z(z("25[0-5]")+"|"+z("2[0-4]"+E)+"|"+z("1"+E+E)+"|"+z("[1-9]"+E)+"|"+E),p0=z(z("25[0-5]")+"|"+z("2[0-4]"+E)+"|"+z("1"+E+E)+"|"+z("0?[1-9]"+E)+"|0?0?"+E),i0=z(p0+"\\."+p0+"\\."+p0+"\\."+p0),O0=z(n+"{1,4}"),d0=z(z(O0+"\\:"+O0)+"|"+i0),o0=z(z(O0+"\\:")+"{6}"+d0),J1=z("\\:\\:"+z(O0+"\\:")+"{5}"+d0),R1=z(z(O0)+"?\\:\\:"+z(O0+"\\:")+"{4}"+d0),H1=z(z(z(O0+"\\:")+"{0,1}"+O0)+"?\\:\\:"+z(O0+"\\:")+"{3}"+d0),z9=z(z(z(O0+"\\:")+"{0,2}"+O0)+"?\\:\\:"+z(O0+"\\:")+"{2}"+d0),D9=z(z(z(O0+"\\:")+"{0,3}"+O0)+"?\\:\\:"+O0+"\\:"+d0),I9=z(z(z(O0+"\\:")+"{0,4}"+O0)+"?\\:\\:"+d0),b1=z(z(z(O0+"\\:")+"{0,5}"+O0)+"?\\:\\:"+O0),S1=z(z(z(O0+"\\:")+"{0,6}"+O0)+"?\\:\\:"),U1=z([o0,J1,R1,H1,z9,D9,I9,b1,S1].join("|")),v1=z(z(j0+"|"+A0)+"+"),l9=z(U1+"\\%25"+v1),D1=z(U1+z("\\%25|\\%(?!"+n+"{2})")+v1),sW=z("[vV]"+n+"+\\."+W(j0,K0,"[\\:]")+"+"),aW=z("\\["+z(D1+"|"+U1+"|"+sW)+"\\]"),V8=z(z(A0+"|"+W(j0,K0))+"*"),G9=z(aW+"|"+i0+"(?!"+V8+")|"+V8),B9=z(E+"*"),O8=z(z(V0+"@")+"?"+G9+z("\\:"+B9)+"?"),F9=z(A0+"|"+W(j0,K0,"[\\:\\@]")),tW=z(F9+"*"),Z8=z(F9+"+"),eW=z(z(A0+"|"+W(j0,K0,"[\\@]"))+"+"),q1=z(z("\\/"+tW)+"*"),g1=z("\\/"+z(Z8+q1)+"?"),p9=z(eW+q1),C9=z(Z8+q1),k1="(?!"+F9+")",ZJ=z(q1+"|"+g1+"|"+p9+"|"+C9+"|"+k1),x1=z(z(F9+"|"+W("[\\/\\?]",I0))+"*"),H9=z(z(F9+"|[\\/\\?]")+"*"),w8=z(z("\\/\\/"+O8+q1)+"|"+g1+"|"+C9+"|"+k1),W6=z(P0+"\\:"+w8+z("\\?"+x1)+"?"+z("\\#"+H9)+"?"),Q6=z(z("\\/\\/"+O8+q1)+"|"+g1+"|"+p9+"|"+k1),X6=z(Q6+z("\\?"+x1)+"?"+z("\\#"+H9)+"?"),wJ=z(W6+"|"+X6),RJ=z(P0+"\\:"+w8+z("\\?"+x1)+"?"),DJ="^("+P0+")\\:"+z(z("\\/\\/("+z("("+V0+")@")+"?("+G9+")"+z("\\:("+B9+")")+"?)")+"?("+q1+"|"+g1+"|"+C9+"|"+k1+")")+z("\\?("+x1+")")+"?"+z("\\#("+H9+")")+"?$",IJ="^(){0}"+z(z("\\/\\/("+z("("+V0+")@")+"?("+G9+")"+z("\\:("+B9+")")+"?)")+"?("+q1+"|"+g1+"|"+p9+"|"+k1+")")+z("\\?("+x1+")")+"?"+z("\\#("+H9+")")+"?$",CJ="^("+P0+")\\:"+z(z("\\/\\/("+z("("+V0+")@")+"?("+G9+")"+z("\\:("+B9+")")+"?)")+"?("+q1+"|"+g1+"|"+C9+"|"+k1+")")+z("\\?("+x1+")")+"?$",_J="^"+z("\\#("+H9+")")+"?$",PJ="^"+z("("+V0+")@")+"?("+G9+")"+z("\\:("+B9+")")+"?$";return{NOT_SCHEME:new RegExp(W("[^]",q,E,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(W("[^\\%\\:]",j0,K0),"g"),NOT_HOST:new RegExp(W("[^\\%\\[\\]\\:]",j0,K0),"g"),NOT_PATH:new RegExp(W("[^\\%\\/\\:\\@]",j0,K0),"g"),NOT_PATH_NOSCHEME:new RegExp(W("[^\\%\\/\\@]",j0,K0),"g"),NOT_QUERY:new RegExp(W("[^\\%]",j0,K0,"[\\:\\@\\/\\?]",I0),"g"),NOT_FRAGMENT:new RegExp(W("[^\\%]",j0,K0,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(W("[^]",j0,K0),"g"),UNRESERVED:new RegExp(j0,"g"),OTHER_CHARS:new RegExp(W("[^\\%]",j0,_0),"g"),PCT_ENCODED:new RegExp(A0,"g"),IPV4ADDRESS:new RegExp("^("+i0+")$"),IPV6ADDRESS:new RegExp("^\\[?("+U1+")"+z(z("\\%25|\\%(?!"+n+"{2})")+"("+v1+")")+"?\\]?$")}}var O=H(!1),w=H(!0),_=function(){function M(q,A){var E=[],v=!0,n=!1,H0=void 0;try{for(var M0=q[Symbol.iterator](),A0;!(v=(A0=M0.next()).done);v=!0)if(E.push(A0.value),A&&E.length===A)break}catch(b0){n=!0,H0=b0}finally{try{if(!v&&M0.return)M0.return()}finally{if(n)throw H0}}return E}return function(q,A){if(Array.isArray(q))return q;else if(Symbol.iterator in Object(q))return M(q,A);else throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),j=function(M){if(Array.isArray(M)){for(var q=0,A=Array(M.length);q<M.length;q++)A[q]=M[q];return A}else return Array.from(M)},Z=2147483647,U=36,N=1,V=26,L=38,D=700,y=72,S=128,I="-",P=/^xn--/,g=/[^\0-\x7E]/,x=/[\x2E\u3002\uFF0E\uFF61]/g,b={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},k=U-N,R=Math.floor,T=String.fromCharCode;function f(M){throw new RangeError(b[M])}function $(M,q){var A=[],E=M.length;while(E--)A[E]=q(M[E]);return A}function p(M,q){var A=M.split("@"),E="";if(A.length>1)E=A[0]+"@",M=A[1];M=M.replace(x,".");var v=M.split("."),n=$(v,q).join(".");return E+n}function d(M){var q=[],A=0,E=M.length;while(A<E){var v=M.charCodeAt(A++);if(v>=55296&&v<=56319&&A<E){var n=M.charCodeAt(A++);if((n&64512)==56320)q.push(((v&1023)<<10)+(n&1023)+65536);else q.push(v),A--}else q.push(v)}return q}var X0=function M(q){return String.fromCodePoint.apply(String,j(q))},s=function M(q){if(q-48<10)return q-22;if(q-65<26)return q-65;if(q-97<26)return q-97;return U},J0=function M(q,A){return q+22+75*(q<26)-((A!=0)<<5)},a=function M(q,A,E){var v=0;q=E?R(q/D):q>>1,q+=R(q/A);for(;q>k*V>>1;v+=U)q=R(q/k);return R(v+(k+1)*q/(q+L))},z0=function M(q){var A=[],E=q.length,v=0,n=S,H0=y,M0=q.lastIndexOf(I);if(M0<0)M0=0;for(var A0=0;A0<M0;++A0){if(q.charCodeAt(A0)>=128)f("not-basic");A.push(q.charCodeAt(A0))}for(var b0=M0>0?M0+1:0;b0<E;){var K0=v;for(var _0=1,S0=U;;S0+=U){if(b0>=E)f("invalid-input");var I0=s(q.charCodeAt(b0++));if(I0>=U||I0>R((Z-v)/_0))f("overflow");v+=I0*_0;var j0=S0<=H0?N:S0>=H0+V?V:S0-H0;if(I0<j0)break;var P0=U-j0;if(_0>R(Z/P0))f("overflow");_0*=P0}var V0=A.length+1;if(H0=a(v-K0,V0,K0==0),R(v/V0)>Z-n)f("overflow");n+=R(v/V0),v%=V0,A.splice(v++,0,n)}return String.fromCodePoint.apply(String,A)},g0=function M(q){var A=[];q=d(q);var E=q.length,v=S,n=0,H0=y,M0=!0,A0=!1,b0=void 0;try{for(var K0=q[Symbol.iterator](),_0;!(M0=(_0=K0.next()).done);M0=!0){var S0=_0.value;if(S0<128)A.push(T(S0))}}catch(D1){A0=!0,b0=D1}finally{try{if(!M0&&K0.return)K0.return()}finally{if(A0)throw b0}}var I0=A.length,j0=I0;if(I0)A.push(I);while(j0<E){var P0=Z,V0=!0,w1=!1,p0=void 0;try{for(var i0=q[Symbol.iterator](),O0;!(V0=(O0=i0.next()).done);V0=!0){var d0=O0.value;if(d0>=v&&d0<P0)P0=d0}}catch(D1){w1=!0,p0=D1}finally{try{if(!V0&&i0.return)i0.return()}finally{if(w1)throw p0}}var o0=j0+1;if(P0-v>R((Z-n)/o0))f("overflow");n+=(P0-v)*o0,v=P0;var J1=!0,R1=!1,H1=void 0;try{for(var z9=q[Symbol.iterator](),D9;!(J1=(D9=z9.next()).done);J1=!0){var I9=D9.value;if(I9<v&&++n>Z)f("overflow");if(I9==v){var b1=n;for(var S1=U;;S1+=U){var U1=S1<=H0?N:S1>=H0+V?V:S1-H0;if(b1<U1)break;var v1=b1-U1,l9=U-U1;A.push(T(J0(U1+v1%l9,0))),b1=R(v1/l9)}A.push(T(J0(b1,0))),H0=a(n,o0,j0==I0),n=0,++j0}}}catch(D1){R1=!0,H1=D1}finally{try{if(!J1&&z9.return)z9.return()}finally{if(R1)throw H1}}++n,++v}return A.join("")},y0=function M(q){return p(q,function(A){return P.test(A)?z0(A.slice(4).toLowerCase()):A})},k0=function M(q){return p(q,function(A){return g.test(A)?"xn--"+g0(A):A})},Z0={version:"2.1.0",ucs2:{decode:d,encode:X0},decode:z0,encode:g0,toASCII:k0,toUnicode:y0},C0={};function C(M){var q=M.charCodeAt(0),A=void 0;if(q<16)A="%0"+q.toString(16).toUpperCase();else if(q<128)A="%"+q.toString(16).toUpperCase();else if(q<2048)A="%"+(q>>6|192).toString(16).toUpperCase()+"%"+(q&63|128).toString(16).toUpperCase();else A="%"+(q>>12|224).toString(16).toUpperCase()+"%"+(q>>6&63|128).toString(16).toUpperCase()+"%"+(q&63|128).toString(16).toUpperCase();return A}function h(M){var q="",A=0,E=M.length;while(A<E){var v=parseInt(M.substr(A+1,2),16);if(v<128)q+=String.fromCharCode(v),A+=3;else if(v>=194&&v<224){if(E-A>=6){var n=parseInt(M.substr(A+4,2),16);q+=String.fromCharCode((v&31)<<6|n&63)}else q+=M.substr(A,6);A+=6}else if(v>=224){if(E-A>=9){var H0=parseInt(M.substr(A+4,2),16),M0=parseInt(M.substr(A+7,2),16);q+=String.fromCharCode((v&15)<<12|(H0&63)<<6|M0&63)}else q+=M.substr(A,9);A+=9}else q+=M.substr(A,3),A+=3}return q}function o(M,q){function A(E){var v=h(E);return!v.match(q.UNRESERVED)?E:v}if(M.scheme)M.scheme=String(M.scheme).replace(q.PCT_ENCODED,A).toLowerCase().replace(q.NOT_SCHEME,"");if(M.userinfo!==void 0)M.userinfo=String(M.userinfo).replace(q.PCT_ENCODED,A).replace(q.NOT_USERINFO,C).replace(q.PCT_ENCODED,X);if(M.host!==void 0)M.host=String(M.host).replace(q.PCT_ENCODED,A).toLowerCase().replace(q.NOT_HOST,C).replace(q.PCT_ENCODED,X);if(M.path!==void 0)M.path=String(M.path).replace(q.PCT_ENCODED,A).replace(M.scheme?q.NOT_PATH:q.NOT_PATH_NOSCHEME,C).replace(q.PCT_ENCODED,X);if(M.query!==void 0)M.query=String(M.query).replace(q.PCT_ENCODED,A).replace(q.NOT_QUERY,C).replace(q.PCT_ENCODED,X);if(M.fragment!==void 0)M.fragment=String(M.fragment).replace(q.PCT_ENCODED,A).replace(q.NOT_FRAGMENT,C).replace(q.PCT_ENCODED,X);return M}function G0(M){return M.replace(/^0*(.*)/,"$1")||"0"}function m(M,q){var A=M.match(q.IPV4ADDRESS)||[],E=_(A,2),v=E[1];if(v)return v.split(".").map(G0).join(".");else return M}function u(M,q){var A=M.match(q.IPV6ADDRESS)||[],E=_(A,3),v=E[1],n=E[2];if(v){var H0=v.toLowerCase().split("::").reverse(),M0=_(H0,2),A0=M0[0],b0=M0[1],K0=b0?b0.split(":").map(G0):[],_0=A0.split(":").map(G0),S0=q.IPV4ADDRESS.test(_0[_0.length-1]),I0=S0?7:8,j0=_0.length-I0,P0=Array(I0);for(var V0=0;V0<I0;++V0)P0[V0]=K0[V0]||_0[j0+V0]||"";if(S0)P0[I0-1]=m(P0[I0-1],q);var w1=P0.reduce(function(o0,J1,R1){if(!J1||J1==="0"){var H1=o0[o0.length-1];if(H1&&H1.index+H1.length===R1)H1.length++;else o0.push({index:R1,length:1})}return o0},[]),p0=w1.sort(function(o0,J1){return J1.length-o0.length})[0],i0=void 0;if(p0&&p0.length>1){var O0=P0.slice(0,p0.index),d0=P0.slice(p0.index+p0.length);i0=O0.join(":")+"::"+d0.join(":")}else i0=P0.join(":");if(n)i0+="%"+n;return i0}else return M}var U0=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,q0="".match(/(){0}/)[1]===void 0;function Q0(M){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},A={},E=q.iri!==!1?w:O;if(q.reference==="suffix")M=(q.scheme?q.scheme+":":"")+"//"+M;var v=M.match(U0);if(v){if(q0){if(A.scheme=v[1],A.userinfo=v[3],A.host=v[4],A.port=parseInt(v[5],10),A.path=v[6]||"",A.query=v[7],A.fragment=v[8],isNaN(A.port))A.port=v[5]}else if(A.scheme=v[1]||void 0,A.userinfo=M.indexOf("@")!==-1?v[3]:void 0,A.host=M.indexOf("//")!==-1?v[4]:void 0,A.port=parseInt(v[5],10),A.path=v[6]||"",A.query=M.indexOf("?")!==-1?v[7]:void 0,A.fragment=M.indexOf("#")!==-1?v[8]:void 0,isNaN(A.port))A.port=M.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?v[4]:void 0;if(A.host)A.host=u(m(A.host,E),E);if(A.scheme===void 0&&A.userinfo===void 0&&A.host===void 0&&A.port===void 0&&!A.path&&A.query===void 0)A.reference="same-document";else if(A.scheme===void 0)A.reference="relative";else if(A.fragment===void 0)A.reference="absolute";else A.reference="uri";if(q.reference&&q.reference!=="suffix"&&q.reference!==A.reference)A.error=A.error||"URI is not a "+q.reference+" reference.";var n=C0[(q.scheme||A.scheme||"").toLowerCase()];if(!q.unicodeSupport&&(!n||!n.unicodeSupport)){if(A.host&&(q.domainHost||n&&n.domainHost))try{A.host=Z0.toASCII(A.host.replace(E.PCT_ENCODED,h).toLowerCase())}catch(H0){A.error=A.error||"Host's domain name can not be converted to ASCII via punycode: "+H0}o(A,O)}else o(A,E);if(n&&n.parse)n.parse(A,q)}else A.error=A.error||"URI can not be parsed.";return A}function w0(M,q){var A=q.iri!==!1?w:O,E=[];if(M.userinfo!==void 0)E.push(M.userinfo),E.push("@");if(M.host!==void 0)E.push(u(m(String(M.host),A),A).replace(A.IPV6ADDRESS,function(v,n,H0){return"["+n+(H0?"%25"+H0:"")+"]"}));if(typeof M.port==="number"||typeof M.port==="string")E.push(":"),E.push(String(M.port));return E.length?E.join(""):void 0}var R0=/^\.\.?\//,L0=/^\/\.(\/|$)/,x0=/^\/\.\.(\/|$)/,E0=/^\/?(?:.|\n)*?(?=\/|$)/;function h0(M){var q=[];while(M.length)if(M.match(R0))M=M.replace(R0,"");else if(M.match(L0))M=M.replace(L0,"/");else if(M.match(x0))M=M.replace(x0,"/"),q.pop();else if(M==="."||M==="..")M="";else{var A=M.match(E0);if(A){var E=A[0];M=M.slice(E.length),q.push(E)}else throw new Error("Unexpected dot segment condition")}return q.join("")}function D0(M){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},A=q.iri?w:O,E=[],v=C0[(q.scheme||M.scheme||"").toLowerCase()];if(v&&v.serialize)v.serialize(M,q);if(M.host){if(A.IPV6ADDRESS.test(M.host));else if(q.domainHost||v&&v.domainHost)try{M.host=!q.iri?Z0.toASCII(M.host.replace(A.PCT_ENCODED,h).toLowerCase()):Z0.toUnicode(M.host)}catch(M0){M.error=M.error||"Host's domain name can not be converted to "+(!q.iri?"ASCII":"Unicode")+" via punycode: "+M0}}if(o(M,A),q.reference!=="suffix"&&M.scheme)E.push(M.scheme),E.push(":");var n=w0(M,q);if(n!==void 0){if(q.reference!=="suffix")E.push("//");if(E.push(n),M.path&&M.path.charAt(0)!=="/")E.push("/")}if(M.path!==void 0){var H0=M.path;if(!q.absolutePath&&(!v||!v.absolutePath))H0=h0(H0);if(n===void 0)H0=H0.replace(/^\/\//,"/%2F");E.push(H0)}if(M.query!==void 0)E.push("?"),E.push(M.query);if(M.fragment!==void 0)E.push("#"),E.push(M.fragment);return E.join("")}function v0(M,q){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},E=arguments[3],v={};if(!E)M=Q0(D0(M,A),A),q=Q0(D0(q,A),A);if(A=A||{},!A.tolerant&&q.scheme)v.scheme=q.scheme,v.userinfo=q.userinfo,v.host=q.host,v.port=q.port,v.path=h0(q.path||""),v.query=q.query;else{if(q.userinfo!==void 0||q.host!==void 0||q.port!==void 0)v.userinfo=q.userinfo,v.host=q.host,v.port=q.port,v.path=h0(q.path||""),v.query=q.query;else{if(!q.path)if(v.path=M.path,q.query!==void 0)v.query=q.query;else v.query=M.query;else{if(q.path.charAt(0)==="/")v.path=h0(q.path);else{if((M.userinfo!==void 0||M.host!==void 0||M.port!==void 0)&&!M.path)v.path="/"+q.path;else if(!M.path)v.path=q.path;else v.path=M.path.slice(0,M.path.lastIndexOf("/")+1)+q.path;v.path=h0(v.path)}v.query=q.query}v.userinfo=M.userinfo,v.host=M.host,v.port=M.port}v.scheme=M.scheme}return v.fragment=q.fragment,v}function n0(M,q,A){var E=K({scheme:"null"},A);return D0(v0(Q0(M,E),Q0(q,E),E,!0),E)}function l0(M,q){if(typeof M==="string")M=D0(Q0(M,q),q);else if(F(M)==="object")M=Q0(D0(M,q),q);return M}function R9(M,q,A){if(typeof M==="string")M=D0(Q0(M,A),A);else if(F(M)==="object")M=D0(M,A);if(typeof q==="string")q=D0(Q0(q,A),A);else if(F(q)==="object")q=D0(q,A);return M===q}function $9(M,q){return M&&M.toString().replace(!q||!q.iri?O.ESCAPE:w.ESCAPE,C)}function t0(M,q){return M&&M.toString().replace(!q||!q.iri?O.PCT_ENCODED:w.PCT_ENCODED,h)}var Y9={scheme:"http",domainHost:!0,parse:function M(q,A){if(!q.host)q.error=q.error||"HTTP URIs must have a host.";return q},serialize:function M(q,A){var E=String(q.scheme).toLowerCase()==="https";if(q.port===(E?443:80)||q.port==="")q.port=void 0;if(!q.path)q.path="/";return q}},U8={scheme:"https",domainHost:Y9.domainHost,parse:Y9.parse,serialize:Y9.serialize};function q8(M){return typeof M.secure==="boolean"?M.secure:String(M.scheme).toLowerCase()==="wss"}var J9={scheme:"ws",domainHost:!0,parse:function M(q,A){var E=q;return E.secure=q8(E),E.resourceName=(E.path||"/")+(E.query?"?"+E.query:""),E.path=void 0,E.query=void 0,E},serialize:function M(q,A){if(q.port===(q8(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){var E=q.resourceName.split("?"),v=_(E,2),n=v[0],H0=v[1];q.path=n&&n!=="/"?n:void 0,q.query=H0,q.resourceName=void 0}return q.fragment=void 0,q}},K8={scheme:"wss",domainHost:J9.domainHost,parse:J9.parse,serialize:J9.serialize},hW={},$W=!0,N8="[A-Za-z0-9\\-\\.\\_\\~"+($W?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Y1="[0-9A-Fa-f]",mW=z(z("%[EFef]"+Y1+"%"+Y1+Y1+"%"+Y1+Y1)+"|"+z("%[89A-Fa-f]"+Y1+"%"+Y1+Y1)+"|"+z("%"+Y1+Y1)),lW="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",pW="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",dW=W(pW,"[\\\"\\\\]"),uW="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",cW=new RegExp(N8,"g"),E1=new RegExp(mW,"g"),nW=new RegExp(W("[^]",lW,"[\\.]","[\\\"]",dW),"g"),M8=new RegExp(W("[^]",N8,uW),"g"),iW=M8;function m9(M){var q=h(M);return!q.match(cW)?M:q}var L8={scheme:"mailto",parse:function M(q,A){var E=q,v=E.to=E.path?E.path.split(","):[];if(E.path=void 0,E.query){var n=!1,H0={},M0=E.query.split("&");for(var A0=0,b0=M0.length;A0<b0;++A0){var K0=M0[A0].split("=");switch(K0[0]){case"to":var _0=K0[1].split(",");for(var S0=0,I0=_0.length;S0<I0;++S0)v.push(_0[S0]);break;case"subject":E.subject=t0(K0[1],A);break;case"body":E.body=t0(K0[1],A);break;default:n=!0,H0[t0(K0[0],A)]=t0(K0[1],A);break}}if(n)E.headers=H0}E.query=void 0;for(var j0=0,P0=v.length;j0<P0;++j0){var V0=v[j0].split("@");if(V0[0]=t0(V0[0]),!A.unicodeSupport)try{V0[1]=Z0.toASCII(t0(V0[1],A).toLowerCase())}catch(w1){E.error=E.error||"Email address's domain name can not be converted to ASCII via punycode: "+w1}else V0[1]=t0(V0[1],A).toLowerCase();v[j0]=V0.join("@")}return E},serialize:function M(q,A){var E=q,v=B(q.to);if(v){for(var n=0,H0=v.length;n<H0;++n){var M0=String(v[n]),A0=M0.lastIndexOf("@"),b0=M0.slice(0,A0).replace(E1,m9).replace(E1,X).replace(nW,C),K0=M0.slice(A0+1);try{K0=!A.iri?Z0.toASCII(t0(K0,A).toLowerCase()):Z0.toUnicode(K0)}catch(j0){E.error=E.error||"Email address's domain name can not be converted to "+(!A.iri?"ASCII":"Unicode")+" via punycode: "+j0}v[n]=b0+"@"+K0}E.path=v.join(",")}var _0=q.headers=q.headers||{};if(q.subject)_0.subject=q.subject;if(q.body)_0.body=q.body;var S0=[];for(var I0 in _0)if(_0[I0]!==hW[I0])S0.push(I0.replace(E1,m9).replace(E1,X).replace(M8,C)+"="+_0[I0].replace(E1,m9).replace(E1,X).replace(iW,C));if(S0.length)E.query=S0.join("&");return E}},oW=/^([^\:]+)\:(.*)/,j8={scheme:"urn",parse:function M(q,A){var E=q.path&&q.path.match(oW),v=q;if(E){var n=A.scheme||v.scheme||"urn",H0=E[1].toLowerCase(),M0=E[2],A0=n+":"+(A.nid||H0),b0=C0[A0];if(v.nid=H0,v.nss=M0,v.path=void 0,b0)v=b0.parse(v,A)}else v.error=v.error||"URN can not be parsed.";return v},serialize:function M(q,A){var E=A.scheme||q.scheme||"urn",v=q.nid,n=E+":"+(A.nid||v),H0=C0[n];if(H0)q=H0.serialize(q,A);var M0=q,A0=q.nss;return M0.path=(v||A.nid)+":"+A0,M0}},rW=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,A8={scheme:"urn:uuid",parse:function M(q,A){var E=q;if(E.uuid=E.nss,E.nss=void 0,!A.tolerant&&(!E.uuid||!E.uuid.match(rW)))E.error=E.error||"UUID is not valid.";return E},serialize:function M(q,A){var E=q;return E.nss=(q.uuid||"").toLowerCase(),E}};C0[Y9.scheme]=Y9,C0[U8.scheme]=U8,C0[J9.scheme]=J9,C0[K8.scheme]=K8,C0[L8.scheme]=L8,C0[j8.scheme]=j8,C0[A8.scheme]=A8,J.SCHEMES=C0,J.pctEncChar=C,J.pctDecChars=h,J.parse=Q0,J.removeDotSegments=h0,J.serialize=D0,J.resolveComponents=v0,J.resolve=n0,J.normalize=l0,J.equal=R9,J.escapeComponent=$9,J.unescapeComponent=t0,Object.defineProperty(J,"__esModule",{value:!0})})}),e9=Y0((Q,Y)=>{Y.exports=function J(W,z){if(W===z)return!0;if(W&&z&&typeof W=="object"&&typeof z=="object"){if(W.constructor!==z.constructor)return!1;var F,X,B;if(Array.isArray(W)){if(F=W.length,F!=z.length)return!1;for(X=F;X--!==0;)if(!J(W[X],z[X]))return!1;return!0}if(W.constructor===RegExp)return W.source===z.source&&W.flags===z.flags;if(W.valueOf!==Object.prototype.valueOf)return W.valueOf()===z.valueOf();if(W.toString!==Object.prototype.toString)return W.toString()===z.toString();if(B=Object.keys(W),F=B.length,F!==Object.keys(z).length)return!1;for(X=F;X--!==0;)if(!Object.prototype.hasOwnProperty.call(z,B[X]))return!1;for(X=F;X--!==0;){var K=B[X];if(!J(W[K],z[K]))return!1}return!0}return W!==W&&z!==z}}),U6=Y0((Q,Y)=>{Y.exports=function J(W){var z=0,F=W.length,X=0,B;while(X<F)if(z++,B=W.charCodeAt(X++),B>=55296&&B<=56319&&X<F){if(B=W.charCodeAt(X),(B&64512)==56320)X++}return z}}),t1=Y0((Q,Y)=>{Y.exports={copy:J,checkDataType:W,checkDataTypes:z,coerceToTypes:X,toHash:B,getProperty:O,escapeQuotes:w,equal:e9(),ucs2length:U6(),varOccurences:_,varReplace:j,schemaHasRules:Z,schemaHasRulesExcept:U,schemaUnknownRules:N,toQuotedString:V,getPathExpr:L,getPath:D,getData:I,unescapeFragment:g,unescapeJsonPointer:k,escapeFragment:x,escapeJsonPointer:b};function J(R,T){T=T||{};for(var f in R)T[f]=R[f];return T}function W(R,T,f,$){var p=$?" !== ":" === ",d=$?" || ":" && ",X0=$?"!":"",s=$?"":"!";switch(R){case"null":return T+p+"null";case"array":return X0+"Array.isArray("+T+")";case"object":return"("+X0+T+d+"typeof "+T+p+'"object"'+d+s+"Array.isArray("+T+"))";case"integer":return"(typeof "+T+p+'"number"'+d+s+"("+T+" % 1)"+d+T+p+T+(f?d+X0+"isFinite("+T+")":"")+")";case"number":return"(typeof "+T+p+'"'+R+'"'+(f?d+X0+"isFinite("+T+")":"")+")";default:return"typeof "+T+p+'"'+R+'"'}}function z(R,T,f){switch(R.length){case 1:return W(R[0],T,f,!0);default:var $="",p=B(R);if(p.array&&p.object)$=p.null?"(":"(!"+T+" || ",$+="typeof "+T+' !== "object")',delete p.null,delete p.array,delete p.object;if(p.number)delete p.integer;for(var d in p)$+=($?" && ":"")+W(d,T,f,!0);return $}}var F=B(["string","number","integer","boolean","null"]);function X(R,T){if(Array.isArray(T)){var f=[];for(var $=0;$<T.length;$++){var p=T[$];if(F[p])f[f.length]=p;else if(R==="array"&&p==="array")f[f.length]=p}if(f.length)return f}else if(F[T])return[T];else if(R==="array"&&T==="array")return["array"]}function B(R){var T={};for(var f=0;f<R.length;f++)T[R[f]]=!0;return T}var K=/^[a-z$_][a-z$_0-9]*$/i,H=/'|\\/g;function O(R){return typeof R=="number"?"["+R+"]":K.test(R)?"."+R:"['"+w(R)+"']"}function w(R){return R.replace(H,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function _(R,T){T+="[^0-9]";var f=R.match(new RegExp(T,"g"));return f?f.length:0}function j(R,T,f){return T+="([^0-9])",f=f.replace(/\$/g,"$$$$"),R.replace(new RegExp(T,"g"),f+"$1")}function Z(R,T){if(typeof R=="boolean")return!R;for(var f in R)if(T[f])return!0}function U(R,T,f){if(typeof R=="boolean")return!R&&f!="not";for(var $ in R)if($!=f&&T[$])return!0}function N(R,T){if(typeof R=="boolean")return;for(var f in R)if(!T[f])return f}function V(R){return"'"+w(R)+"'"}function L(R,T,f,$){var p=f?"'/' + "+T+($?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):$?"'[' + "+T+" + ']'":"'[\\'' + "+T+" + '\\']'";return P(R,p)}function D(R,T,f){var $=f?V("/"+b(T)):V(O(T));return P(R,$)}var y=/^\/(?:[^~]|~0|~1)*$/,S=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function I(R,T,f){var $,p,d,X0;if(R==="")return"rootData";if(R[0]=="/"){if(!y.test(R))throw new Error("Invalid JSON-pointer: "+R);p=R,d="rootData"}else{if(X0=R.match(S),!X0)throw new Error("Invalid JSON-pointer: "+R);if($=+X0[1],p=X0[2],p=="#"){if($>=T)throw new Error("Cannot access property/index "+$+" levels up, current level is "+T);return f[T-$]}if($>T)throw new Error("Cannot access data "+$+" levels up, current level is "+T);if(d="data"+(T-$||""),!p)return d}var s=d,J0=p.split("/");for(var a=0;a<J0.length;a++){var z0=J0[a];if(z0)d+=O(k(z0)),s+=" && "+d}return s}function P(R,T){if(R=='""')return T;return(R+" + "+T).replace(/([^\\])' \+ '/g,"$1")}function g(R){return k(decodeURIComponent(R))}function x(R){return encodeURIComponent(b(R))}function b(R){return R.replace(/~/g,"~0").replace(/\//g,"~1")}function k(R){return R.replace(/~1/g,"/").replace(/~0/g,"~")}}),h8=Y0((Q,Y)=>{var J=t1();Y.exports=W;function W(z){J.copy(z,this)}}),q6=Y0((Q,Y)=>{var J=Y.exports=function(F,X,B){if(typeof X=="function")B=X,X={};B=X.cb||B;var K=typeof B=="function"?B:B.pre||function(){},H=B.post||function(){};W(X,K,H,F,"",F)};J.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},J.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},J.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},J.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 W(F,X,B,K,H,O,w,_,j,Z){if(K&&typeof K=="object"&&!Array.isArray(K)){X(K,H,O,w,_,j,Z);for(var U in K){var N=K[U];if(Array.isArray(N)){if(U in J.arrayKeywords)for(var V=0;V<N.length;V++)W(F,X,B,N[V],H+"/"+U+"/"+V,O,H,U,K,V)}else if(U in J.propsKeywords){if(N&&typeof N=="object")for(var L in N)W(F,X,B,N[L],H+"/"+U+"/"+z(L),O,H,U,K,L)}else if(U in J.keywords||F.allKeys&&!(U in J.skipKeywords))W(F,X,B,N,H+"/"+U,O,H,U,K)}B(K,H,O,w,_,j,Z)}}function z(F){return F.replace(/~/g,"~0").replace(/\//g,"~1")}}),W8=Y0((Q,Y)=>{var J=H6(),W=e9(),z=t1(),F=h8(),X=q6();Y.exports=B,B.normalizeId=D,B.fullPath=N,B.url=y,B.ids=S,B.inlineRef=j,B.schema=K;function B(I,P,g){var x=this._refs[g];if(typeof x=="string")if(this._refs[x])x=this._refs[x];else return B.call(this,I,P,x);if(x=x||this._schemas[g],x instanceof F)return j(x.schema,this._opts.inlineRefs)?x.schema:x.validate||this._compile(x);var b=K.call(this,P,g),k,R,T;if(b)k=b.schema,P=b.root,T=b.baseId;if(k instanceof F)R=k.validate||I.call(this,k.schema,P,void 0,T);else if(k!==void 0)R=j(k,this._opts.inlineRefs)?k:I.call(this,k,P,void 0,T);return R}function K(I,P){var g=J.parse(P),x=V(g),b=N(this._getId(I.schema));if(Object.keys(I.schema).length===0||x!==b){var k=D(x),R=this._refs[k];if(typeof R=="string")return H.call(this,I,R,g);else if(R instanceof F){if(!R.validate)this._compile(R);I=R}else if(R=this._schemas[k],R instanceof F){if(!R.validate)this._compile(R);if(k==D(P))return{schema:R,root:I,baseId:b};I=R}else return;if(!I.schema)return;b=N(this._getId(I.schema))}return w.call(this,g,b,I.schema,I)}function H(I,P,g){var x=K.call(this,I,P);if(x){var{schema:b,baseId:k}=x;I=x.root;var R=this._getId(b);if(R)k=y(k,R);return w.call(this,g,k,b,I)}}var O=z.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function w(I,P,g,x){if(I.fragment=I.fragment||"",I.fragment.slice(0,1)!="/")return;var b=I.fragment.split("/");for(var k=1;k<b.length;k++){var R=b[k];if(R){if(R=z.unescapeFragment(R),g=g[R],g===void 0)break;var T;if(!O[R]){if(T=this._getId(g),T)P=y(P,T);if(g.$ref){var f=y(P,g.$ref),$=K.call(this,x,f);if($)g=$.schema,x=$.root,P=$.baseId}}}}if(g!==void 0&&g!==x.schema)return{schema:g,root:x,baseId:P}}var _=z.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function j(I,P){if(P===!1)return!1;if(P===void 0||P===!0)return Z(I);else if(P)return U(I)<=P}function Z(I){var P;if(Array.isArray(I)){for(var g=0;g<I.length;g++)if(P=I[g],typeof P=="object"&&!Z(P))return!1}else for(var x in I){if(x=="$ref")return!1;if(P=I[x],typeof P=="object"&&!Z(P))return!1}return!0}function U(I){var P=0,g;if(Array.isArray(I))for(var x=0;x<I.length;x++){if(g=I[x],typeof g=="object")P+=U(g);if(P==1/0)return 1/0}else for(var b in I){if(b=="$ref")return 1/0;if(_[b])P++;else{if(g=I[b],typeof g=="object")P+=U(g)+1;if(P==1/0)return 1/0}}return P}function N(I,P){if(P!==!1)I=D(I);var g=J.parse(I);return V(g)}function V(I){return J.serialize(I).split("#")[0]+"#"}var L=/#\/?$/;function D(I){return I?I.replace(L,""):""}function y(I,P){return P=D(P),J.resolve(I,P)}function S(I){var P=D(this._getId(I)),g={"":P},x={"":N(P,!1)},b={},k=this;return X(I,{allKeys:!0},function(R,T,f,$,p,d,X0){if(T==="")return;var s=k._getId(R),J0=g[$],a=x[$]+"/"+p;if(X0!==void 0)a+="/"+(typeof X0=="number"?X0:z.escapeFragment(X0));if(typeof s=="string"){s=J0=D(J0?J.resolve(J0,s):s);var z0=k._refs[s];if(typeof z0=="string")z0=k._refs[z0];if(z0&&z0.schema){if(!W(R,z0.schema))throw new Error('id "'+s+'" resolves to more than one schema')}else if(s!=D(a))if(s[0]=="#"){if(b[s]&&!W(R,b[s]))throw new Error('id "'+s+'" resolves to more than one schema');b[s]=R}else k._refs[s]=a}g[T]=J0,x[T]=a}),b}}),Q8=Y0((Q,Y)=>{var J=W8();Y.exports={Validation:F(W),MissingRef:F(z)};function W(X){this.message="validation failed",this.errors=X,this.ajv=this.validation=!0}z.message=function(X,B){return"can't resolve reference "+B+" from id "+X};function z(X,B,K){this.message=K||z.message(X,B),this.missingRef=J.url(X,B),this.missingSchema=J.normalizeId(J.fullPath(this.missingRef))}function F(X){return X.prototype=Object.create(Error.prototype),X.prototype.constructor=X,X}}),$8=Y0((Q,Y)=>{Y.exports=function(J,W){if(!W)W={};if(typeof W==="function")W={cmp:W};var z=typeof W.cycles==="boolean"?W.cycles:!1,F=W.cmp&&function(B){return function(K){return function(H,O){var w={key:H,value:K[H]},_={key:O,value:K[O]};return B(w,_)}}}(W.cmp),X=[];return function B(K){if(K&&K.toJSON&&typeof K.toJSON==="function")K=K.toJSON();if(K===void 0)return;if(typeof K=="number")return isFinite(K)?""+K:"null";if(typeof K!=="object")return JSON.stringify(K);var H,O;if(Array.isArray(K)){O="[";for(H=0;H<K.length;H++){if(H)O+=",";O+=B(K[H])||"null"}return O+"]"}if(K===null)return"null";if(X.indexOf(K)!==-1){if(z)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var w=X.push(K)-1,_=Object.keys(K).sort(F&&F(K));O="";for(H=0;H<_.length;H++){var j=_[H],Z=B(K[j]);if(!Z)continue;if(O)O+=",";O+=JSON.stringify(j)+":"+Z}return X.splice(w,1),"{"+O+"}"}(J)}}),m8=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X="",B=W.schema.$async===!0,K=W.util.schemaHasRulesExcept(W.schema,W.RULES.all,"$ref"),H=W.self._getId(W.schema);if(W.opts.strictKeywords){var O=W.util.schemaUnknownRules(W.schema,W.RULES.keywords);if(O){var w="unknown keyword: "+O;if(W.opts.strictKeywords==="log")W.logger.warn(w);else throw new Error(w)}}if(W.isTop){if(X+=" var validate = ",B)W.async=!0,X+="async ";if(X+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",H&&(W.opts.sourceCode||W.opts.processCode))X+=" "+("/*# sourceURL="+H+" */")+" "}if(typeof W.schema=="boolean"||!(K||W.schema.$ref)){var z="false schema",_=W.level,j=W.dataLevel,Z=W.schema[z],U=W.schemaPath+W.util.getProperty(z),N=W.errSchemaPath+"/"+z,P=!W.opts.allErrors,b,V="data"+(j||""),I="valid"+_;if(W.schema===!1){if(W.isTop)P=!0;else X+=" var "+I+" = false; ";var L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(b||"false schema")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(N)+" , params: {} ",W.opts.messages!==!1)X+=" , message: 'boolean schema is false' ";if(W.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+W.schemaPath+" , data: "+V+" ";X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&P)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else if(W.isTop)if(B)X+=" return data; ";else X+=" validate.errors = null; return true; ";else X+=" var "+I+" = true; ";if(W.isTop)X+=" }; return validate; ";return X}if(W.isTop){var y=W.isTop,_=W.level=0,j=W.dataLevel=0,V="data";if(W.rootId=W.resolve.fullPath(W.self._getId(W.root.schema)),W.baseId=W.baseId||W.rootId,delete W.isTop,W.dataPathArr=[""],W.schema.default!==void 0&&W.opts.useDefaults&&W.opts.strictDefaults){var S="default is ignored in the schema root";if(W.opts.strictDefaults==="log")W.logger.warn(S);else throw new Error(S)}X+=" var vErrors = null; ",X+=" var errors = 0; ",X+=" if (rootData === undefined) rootData = data; "}else{var{level:_,dataLevel:j}=W,V="data"+(j||"");if(H)W.baseId=W.resolve.url(W.baseId,H);if(B&&!W.async)throw new Error("async schema in sync schema");X+=" var errs_"+_+" = errors;"}var I="valid"+_,P=!W.opts.allErrors,g="",x="",b,k=W.schema.type,R=Array.isArray(k);if(k&&W.opts.nullable&&W.schema.nullable===!0){if(R){if(k.indexOf("null")==-1)k=k.concat("null")}else if(k!="null")k=[k,"null"],R=!0}if(R&&k.length==1)k=k[0],R=!1;if(W.schema.$ref&&K){if(W.opts.extendRefs=="fail")throw new Error('$ref: validation keywords used in schema at path "'+W.errSchemaPath+'" (see option extendRefs)');else if(W.opts.extendRefs!==!0)K=!1,W.logger.warn('$ref: keywords ignored in schema at path "'+W.errSchemaPath+'"')}if(W.schema.$comment&&W.opts.$comment)X+=" "+W.RULES.all.$comment.code(W,"$comment");if(k){if(W.opts.coerceTypes)var T=W.util.coerceToTypes(W.opts.coerceTypes,k);var f=W.RULES.types[k];if(T||R||f===!0||f&&!E0(f)){var U=W.schemaPath+".type",N=W.errSchemaPath+"/type",U=W.schemaPath+".type",N=W.errSchemaPath+"/type",$=R?"checkDataTypes":"checkDataType";if(X+=" if ("+W.util[$](k,V,W.opts.strictNumbers,!0)+") { ",T){var p="dataType"+_,d="coerced"+_;if(X+=" var "+p+" = typeof "+V+"; var "+d+" = undefined; ",W.opts.coerceTypes=="array")X+=" if ("+p+" == 'object' && Array.isArray("+V+") && "+V+".length == 1) { "+V+" = "+V+"[0]; "+p+" = typeof "+V+"; if ("+W.util.checkDataType(W.schema.type,V,W.opts.strictNumbers)+") "+d+" = "+V+"; } ";X+=" if ("+d+" !== undefined) ; ";var X0=T;if(X0){var s,J0=-1,a=X0.length-1;while(J0<a)if(s=X0[J0+=1],s=="string")X+=" else if ("+p+" == 'number' || "+p+" == 'boolean') "+d+" = '' + "+V+"; else if ("+V+" === null) "+d+" = ''; ";else if(s=="number"||s=="integer"){if(X+=" else if ("+p+" == 'boolean' || "+V+" === null || ("+p+" == 'string' && "+V+" && "+V+" == +"+V+" ",s=="integer")X+=" && !("+V+" % 1)";X+=")) "+d+" = +"+V+"; "}else if(s=="boolean")X+=" else if ("+V+" === 'false' || "+V+" === 0 || "+V+" === null) "+d+" = false; else if ("+V+" === 'true' || "+V+" === 1) "+d+" = true; ";else if(s=="null")X+=" else if ("+V+" === '' || "+V+" === 0 || "+V+" === false) "+d+" = null; ";else if(W.opts.coerceTypes=="array"&&s=="array")X+=" else if ("+p+" == 'string' || "+p+" == 'number' || "+p+" == 'boolean' || "+V+" == null) "+d+" = ["+V+"]; "}X+=" else { ";var L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(b||"type")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(N)+" , params: { type: '",R)X+=""+k.join(",");else X+=""+k;if(X+="' } ",W.opts.messages!==!1){if(X+=" , message: 'should be ",R)X+=""+k.join(",");else X+=""+k;X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+U+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+V+" ";X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&P)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } if ("+d+" !== undefined) { ";var z0=j?"data"+(j-1||""):"parentData",g0=j?W.dataPathArr[j]:"parentDataProperty";if(X+=" "+V+" = "+d+"; ",!j)X+="if ("+z0+" !== undefined)";X+=" "+z0+"["+g0+"] = "+d+"; } "}else{var L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(b||"type")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(N)+" , params: { type: '",R)X+=""+k.join(",");else X+=""+k;if(X+="' } ",W.opts.messages!==!1){if(X+=" , message: 'should be ",R)X+=""+k.join(",");else X+=""+k;X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+U+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+V+" ";X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&P)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}X+=" } "}}if(W.schema.$ref&&!K){if(X+=" "+W.RULES.all.$ref.code(W,"$ref")+" ",P){if(X+=" } if (errors === ",y)X+="0";else X+="errs_"+_;X+=") { ",x+="}"}}else{var y0=W.RULES;if(y0){var f,k0=-1,Z0=y0.length-1;while(k0<Z0)if(f=y0[k0+=1],E0(f)){if(f.type)X+=" if ("+W.util.checkDataType(f.type,V,W.opts.strictNumbers)+") { ";if(W.opts.useDefaults){if(f.type=="object"&&W.schema.properties){var Z=W.schema.properties,C0=Object.keys(Z),C=C0;if(C){var h,o=-1,G0=C.length-1;while(o<G0){h=C[o+=1];var m=Z[h];if(m.default!==void 0){var u=V+W.util.getProperty(h);if(W.compositeRule){if(W.opts.strictDefaults){var S="default is ignored for: "+u;if(W.opts.strictDefaults==="log")W.logger.warn(S);else throw new Error(S)}}else{if(X+=" if ("+u+" === undefined ",W.opts.useDefaults=="empty")X+=" || "+u+" === null || "+u+" === '' ";if(X+=" ) "+u+" = ",W.opts.useDefaults=="shared")X+=" "+W.useDefault(m.default)+" ";else X+=" "+JSON.stringify(m.default)+" ";X+="; "}}}}}else if(f.type=="array"&&Array.isArray(W.schema.items)){var U0=W.schema.items;if(U0){var m,J0=-1,q0=U0.length-1;while(J0<q0)if(m=U0[J0+=1],m.default!==void 0){var u=V+"["+J0+"]";if(W.compositeRule){if(W.opts.strictDefaults){var S="default is ignored for: "+u;if(W.opts.strictDefaults==="log")W.logger.warn(S);else throw new Error(S)}}else{if(X+=" if ("+u+" === undefined ",W.opts.useDefaults=="empty")X+=" || "+u+" === null || "+u+" === '' ";if(X+=" ) "+u+" = ",W.opts.useDefaults=="shared")X+=" "+W.useDefault(m.default)+" ";else X+=" "+JSON.stringify(m.default)+" ";X+="; "}}}}}var Q0=f.rules;if(Q0){var w0,R0=-1,L0=Q0.length-1;while(R0<L0)if(w0=Q0[R0+=1],h0(w0)){var x0=w0.code(W,w0.keyword,f.type);if(x0){if(X+=" "+x0+" ",P)g+="}"}}}if(P)X+=" "+g+" ",g="";if(f.type){if(X+=" } ",k&&k===f.type&&!T){X+=" else { ";var U=W.schemaPath+".type",N=W.errSchemaPath+"/type",L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(b||"type")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(N)+" , params: { type: '",R)X+=""+k.join(",");else X+=""+k;if(X+="' } ",W.opts.messages!==!1){if(X+=" , message: 'should be ",R)X+=""+k.join(",");else X+=""+k;X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+U+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+V+" ";X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&P)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } "}}if(P){if(X+=" if (errors === ",y)X+="0";else X+="errs_"+_;X+=") { ",x+="}"}}}}if(P)X+=" "+x+" ";if(y){if(B)X+=" if (errors === 0) return data; ",X+=" else throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; ",X+=" return errors === 0; ";X+=" }; return validate;"}else X+=" var "+I+" = errors === errs_"+_+";";function E0(v0){var n0=v0.rules;for(var l0=0;l0<n0.length;l0++)if(h0(n0[l0]))return!0}function h0(v0){return W.schema[v0.keyword]!==void 0||v0.implements&&D0(v0)}function D0(v0){var n0=v0.implements;for(var l0=0;l0<n0.length;l0++)if(W.schema[n0[l0]]!==void 0)return!0}return X}}),K6=Y0((Q,Y)=>{var J=W8(),W=t1(),z=Q8(),F=$8(),X=m8(),B=W.ucs2length,K=e9(),H=z.Validation;Y.exports=O;function O(D,y,S,I){var P=this,g=this._opts,x=[void 0],b={},k=[],R={},T=[],f={},$=[];y=y||{schema:D,refVal:x,refs:b};var p=w.call(this,D,y,I),d=this._compilations[p.index];if(p.compiling)return d.callValidate=z0;var X0=this._formats,s=this.RULES;try{var J0=g0(D,y,S,I);d.validate=J0;var a=d.callValidate;if(a){if(a.schema=J0.schema,a.errors=null,a.refs=J0.refs,a.refVal=J0.refVal,a.root=J0.root,a.$async=J0.$async,g.sourceCode)a.source=J0.source}return J0}finally{_.call(this,D,y,I)}function z0(){var m=d.validate,u=m.apply(this,arguments);return z0.errors=m.errors,u}function g0(m,u,U0,q0){var Q0=!u||u&&u.schema==m;if(u.schema!=y.schema)return O.call(P,m,u,U0,q0);var w0=m.$async===!0,R0=X({isTop:!0,schema:m,isRoot:Q0,baseId:q0,root:u,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:z.MissingRef,RULES:s,validate:X,util:W,resolve:J,resolveRef:y0,usePattern:h,useDefault:o,useCustomRule:G0,opts:g,formats:X0,logger:P.logger,self:P});if(R0=L(x,N)+L(k,Z)+L(T,U)+L($,V)+R0,g.processCode)R0=g.processCode(R0,m);var L0;try{var x0=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",R0);L0=x0(P,s,X0,y,x,T,$,K,B,H),x[0]=L0}catch(E0){throw P.logger.error("Error compiling schema, function code:",R0),E0}if(L0.schema=m,L0.errors=null,L0.refs=b,L0.refVal=x,L0.root=Q0?L0:u,w0)L0.$async=!0;if(g.sourceCode===!0)L0.source={code:R0,patterns:k,defaults:T};return L0}function y0(m,u,U0){u=J.url(m,u);var q0=b[u],Q0,w0;if(q0!==void 0)return Q0=x[q0],w0="refVal["+q0+"]",C(Q0,w0);if(!U0&&y.refs){var R0=y.refs[u];if(R0!==void 0)return Q0=y.refVal[R0],w0=k0(u,Q0),C(Q0,w0)}w0=k0(u);var L0=J.call(P,g0,y,u);if(L0===void 0){var x0=S&&S[u];if(x0)L0=J.inlineRef(x0,g.inlineRefs)?x0:O.call(P,x0,y,S,m)}if(L0===void 0)Z0(u);else return C0(u,L0),C(L0,w0)}function k0(m,u){var U0=x.length;return x[U0]=u,b[m]=U0,"refVal"+U0}function Z0(m){delete b[m]}function C0(m,u){var U0=b[m];x[U0]=u}function C(m,u){return typeof m=="object"||typeof m=="boolean"?{code:u,schema:m,inline:!0}:{code:u,$async:m&&!!m.$async}}function h(m){var u=R[m];if(u===void 0)u=R[m]=k.length,k[u]=m;return"pattern"+u}function o(m){switch(typeof m){case"boolean":case"number":return""+m;case"string":return W.toQuotedString(m);case"object":if(m===null)return"null";var u=F(m),U0=f[u];if(U0===void 0)U0=f[u]=T.length,T[U0]=m;return"default"+U0}}function G0(m,u,U0,q0){if(P._opts.validateSchema!==!1){var Q0=m.definition.dependencies;if(Q0&&!Q0.every(function(n0){return Object.prototype.hasOwnProperty.call(U0,n0)}))throw new Error("parent schema must have all required keywords: "+Q0.join(","));var w0=m.definition.validateSchema;if(w0){var R0=w0(u);if(!R0){var L0="keyword schema is invalid: "+P.errorsText(w0.errors);if(P._opts.validateSchema=="log")P.logger.error(L0);else throw new Error(L0)}}}var x0=m.definition.compile,E0=m.definition.inline,h0=m.definition.macro,D0;if(x0)D0=x0.call(P,u,U0,q0);else if(h0){if(D0=h0.call(P,u,U0,q0),g.validateSchema!==!1)P.validateSchema(D0,!0)}else if(E0)D0=E0.call(P,q0,m.keyword,u,U0);else if(D0=m.definition.validate,!D0)return;if(D0===void 0)throw new Error('custom keyword "'+m.keyword+'"failed to compile');var v0=$.length;return $[v0]=D0,{code:"customRule"+v0,validate:D0}}}function w(D,y,S){var I=j.call(this,D,y,S);if(I>=0)return{index:I,compiling:!0};return I=this._compilations.length,this._compilations[I]={schema:D,root:y,baseId:S},{index:I,compiling:!1}}function _(D,y,S){var I=j.call(this,D,y,S);if(I>=0)this._compilations.splice(I,1)}function j(D,y,S){for(var I=0;I<this._compilations.length;I++){var P=this._compilations[I];if(P.schema==D&&P.root==y&&P.baseId==S)return I}return-1}function Z(D,y){return"var pattern"+D+" = new RegExp("+W.toQuotedString(y[D])+");"}function U(D){return"var default"+D+" = defaults["+D+"];"}function N(D,y){return y[D]===void 0?"":"var refVal"+D+" = refVal["+D+"];"}function V(D){return"var customRule"+D+" = customRules["+D+"];"}function L(D,y){if(!D.length)return"";var S="";for(var I=0;I<D.length;I++)S+=y(I,D);return S}}),N6=Y0((Q,Y)=>{var J=Y.exports=function W(){this._cache={}};J.prototype.put=function W(z,F){this._cache[z]=F},J.prototype.get=function W(z){return this._cache[z]},J.prototype.del=function W(z){delete this._cache[z]},J.prototype.clear=function W(){this._cache={}}}),M6=Y0((Q,Y)=>{var J=t1(),W=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,z=[0,31,28,31,30,31,30,31,31,30,31,30,31],F=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,X=/^(?=.{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,B=/^(?:[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,K=/^(?:[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,H=/^(?:(?:[^\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,O=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,w=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,_=/^(?:\/(?:[^~/]|~0|~1)*)*$/,j=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,Z=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;Y.exports=U;function U(x){return x=x=="full"?"full":"fast",J.copy(U[x])}U.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\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,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":H,url:O,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,hostname:X,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[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}))|:)))(?:%.+)?\s*$/i,regex:g,uuid:w,"json-pointer":_,"json-pointer-uri-fragment":j,"relative-json-pointer":Z},U.full={date:V,time:L,"date-time":y,uri:I,"uri-reference":K,"uri-template":H,url:O,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:X,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[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}))|:)))(?:%.+)?\s*$/i,regex:g,uuid:w,"json-pointer":_,"json-pointer-uri-fragment":j,"relative-json-pointer":Z};function N(x){return x%4===0&&(x%100!==0||x%400===0)}function V(x){var b=x.match(W);if(!b)return!1;var k=+b[1],R=+b[2],T=+b[3];return R>=1&&R<=12&&T>=1&&T<=(R==2&&N(k)?29:z[R])}function L(x,b){var k=x.match(F);if(!k)return!1;var R=k[1],T=k[2],f=k[3],$=k[5];return(R<=23&&T<=59&&f<=59||R==23&&T==59&&f==60)&&(!b||$)}var D=/t|\s/i;function y(x){var b=x.split(D);return b.length==2&&V(b[0])&&L(b[1],!0)}var S=/\/|:/;function I(x){return S.test(x)&&B.test(x)}var P=/[^\\]\\Z/;function g(x){if(P.test(x))return!1;try{return new RegExp(x),!0}catch(b){return!1}}}),L6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.errSchemaPath+"/"+z,w=!W.opts.allErrors,_="data"+(K||""),j="valid"+B,Z,U;if(H=="#"||H=="#/")if(W.isRoot)Z=W.async,U="validate";else Z=W.root.schema.$async===!0,U="root.refVal[0]";else{var N=W.resolveRef(W.baseId,H,W.isRoot);if(N===void 0){var V=W.MissingRefError.message(W.baseId,H);if(W.opts.missingRefs=="fail"){W.logger.error(V);var L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(O)+" , params: { ref: '"+W.util.escapeQuotes(H)+"' } ",W.opts.messages!==!1)X+=" , message: 'can\\'t resolve reference "+W.util.escapeQuotes(H)+"' ";if(W.opts.verbose)X+=" , schema: "+W.util.toQuotedString(H)+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+_+" ";X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&w)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(w)X+=" if (false) { "}else if(W.opts.missingRefs=="ignore"){if(W.logger.warn(V),w)X+=" if (true) { "}else throw new W.MissingRefError(W.baseId,H,V)}else if(N.inline){var y=W.util.copy(W);y.level++;var S="valid"+y.level;y.schema=N.schema,y.schemaPath="",y.errSchemaPath=H;var I=W.validate(y).replace(/validate\.schema/g,N.code);if(X+=" "+I+" ",w)X+=" if ("+S+") { "}else Z=N.$async===!0||W.async&&N.$async!==!1,U=N.code}if(U){var L=L||[];if(L.push(X),X="",W.opts.passContext)X+=" "+U+".call(this, ";else X+=" "+U+"( ";if(X+=" "+_+", (dataPath || '')",W.errorPath!='""')X+=" + "+W.errorPath;var P=K?"data"+(K-1||""):"parentData",g=K?W.dataPathArr[K]:"parentDataProperty";X+=" , "+P+" , "+g+", rootData) ";var x=X;if(X=L.pop(),Z){if(!W.async)throw new Error("async schema referenced by sync schema");if(w)X+=" var "+j+"; ";if(X+=" try { await "+x+"; ",w)X+=" "+j+" = true; ";if(X+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",w)X+=" "+j+" = false; ";if(X+=" } ",w)X+=" if ("+j+") { "}else if(X+=" if (!"+x+") { if (vErrors === null) vErrors = "+U+".errors; else vErrors = vErrors.concat("+U+".errors); errors = vErrors.length; } ",w)X+=" else { "}return X}}),j6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.schema[z],K=W.schemaPath+W.util.getProperty(z),H=W.errSchemaPath+"/"+z,O=!W.opts.allErrors,w=W.util.copy(W),_="";w.level++;var j="valid"+w.level,Z=w.baseId,U=!0,N=B;if(N){var V,L=-1,D=N.length-1;while(L<D)if(V=N[L+=1],W.opts.strictKeywords?typeof V=="object"&&Object.keys(V).length>0||V===!1:W.util.schemaHasRules(V,W.RULES.all)){if(U=!1,w.schema=V,w.schemaPath=K+"["+L+"]",w.errSchemaPath=H+"/"+L,X+=" "+W.validate(w)+" ",w.baseId=Z,O)X+=" if ("+j+") { ",_+="}"}}if(O)if(U)X+=" if (true) { ";else X+=" "+_.slice(0,-1)+" ";return X}}),A6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U="errs__"+B,N=W.util.copy(W),V="";N.level++;var L="valid"+N.level,D=H.every(function(b){return W.opts.strictKeywords?typeof b=="object"&&Object.keys(b).length>0||b===!1:W.util.schemaHasRules(b,W.RULES.all)});if(D){var y=N.baseId;X+=" var "+U+" = errors; var "+Z+" = false; ";var S=W.compositeRule;W.compositeRule=N.compositeRule=!0;var I=H;if(I){var P,g=-1,x=I.length-1;while(g<x)P=I[g+=1],N.schema=P,N.schemaPath=O+"["+g+"]",N.errSchemaPath=w+"/"+g,X+=" "+W.validate(N)+" ",N.baseId=y,X+=" "+Z+" = "+Z+" || "+L+"; if (!"+Z+") { ",V+="}"}if(W.compositeRule=N.compositeRule=S,X+=" "+V+" if (!"+Z+") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: {} ",W.opts.messages!==!1)X+=" , message: 'should match some schema in anyOf' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+=" } else { errors = "+U+"; if (vErrors !== null) { if ("+U+") vErrors.length = "+U+"; else vErrors = null; } ",W.opts.allErrors)X+=" } "}else if(_)X+=" if (true) { ";return X}}),V6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.schema[z],K=W.errSchemaPath+"/"+z,H=!W.opts.allErrors,O=W.util.toQuotedString(B);if(W.opts.$comment===!0)X+=" console.log("+O+");";else if(typeof W.opts.$comment=="function")X+=" self._opts.$comment("+O+", "+W.util.toQuotedString(K)+", validate.root.schema);";return X}}),O6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U=W.opts.$data&&H&&H.$data,N;if(U)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",N="schema"+B;else N=H;if(!U)X+=" var schema"+B+" = validate.schema"+O+";";X+="var "+Z+" = equal("+j+", schema"+B+"); if (!"+Z+") { ";var V=V||[];if(V.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'const' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { allowedValue: schema"+B+" } ",W.opts.messages!==!1)X+=" , message: 'should be equal to constant' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var L=X;if(X=V.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+L+"]); ";else X+=" validate.errors = ["+L+"]; return false; ";else X+=" var err = "+L+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" }",_)X+=" else { ";return X}}),Z6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U="errs__"+B,N=W.util.copy(W),V="";N.level++;var L="valid"+N.level,D="i"+B,y=N.dataLevel=W.dataLevel+1,S="data"+y,I=W.baseId,P=W.opts.strictKeywords?typeof H=="object"&&Object.keys(H).length>0||H===!1:W.util.schemaHasRules(H,W.RULES.all);if(X+="var "+U+" = errors;var "+Z+";",P){var g=W.compositeRule;W.compositeRule=N.compositeRule=!0,N.schema=H,N.schemaPath=O,N.errSchemaPath=w,X+=" var "+L+" = false; for (var "+D+" = 0; "+D+" < "+j+".length; "+D+"++) { ",N.errorPath=W.util.getPathExpr(W.errorPath,D,W.opts.jsonPointers,!0);var x=j+"["+D+"]";N.dataPathArr[y]=D;var b=W.validate(N);if(N.baseId=I,W.util.varOccurences(b,S)<2)X+=" "+W.util.varReplace(b,S,x)+" ";else X+=" var "+S+" = "+x+"; "+b+" ";X+=" if ("+L+") break; } ",W.compositeRule=N.compositeRule=g,X+=" "+V+" if (!"+L+") {"}else X+=" if ("+j+".length == 0) {";var k=k||[];if(k.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: {} ",W.opts.messages!==!1)X+=" , message: 'should contain a valid item' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var R=X;if(X=k.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+R+"]); ";else X+=" validate.errors = ["+R+"]; return false; ";else X+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else { ",P)X+=" errors = "+U+"; if (vErrors !== null) { if ("+U+") vErrors.length = "+U+"; else vErrors = null; } ";if(W.opts.allErrors)X+=" } ";return X}}),w6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="errs__"+B,U=W.util.copy(W),N="";U.level++;var V="valid"+U.level,L={},D={},y=W.opts.ownProperties;for(g in H){if(g=="__proto__")continue;var S=H[g],I=Array.isArray(S)?D:L;I[g]=S}X+="var "+Z+" = errors;";var P=W.errorPath;X+="var missing"+B+";";for(var g in D)if(I=D[g],I.length){if(X+=" if ( "+j+W.util.getProperty(g)+" !== undefined ",y)X+=" && Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(g)+"') ";if(_){X+=" && ( ";var x=I;if(x){var b,k=-1,R=x.length-1;while(k<R){if(b=x[k+=1],k)X+=" || ";var T=W.util.getProperty(b),f=j+T;if(X+=" ( ( "+f+" === undefined ",y)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(b)+"') ";X+=") && (missing"+B+" = "+W.util.toQuotedString(W.opts.jsonPointers?b:T)+") ) "}}X+=")) { ";var $="missing"+B,p="' + "+$+" + '";if(W.opts._errorDataPathProperty)W.errorPath=W.opts.jsonPointers?W.util.getPathExpr(P,$,!0):P+" + "+$;var d=d||[];if(d.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { property: '"+W.util.escapeQuotes(g)+"', missingProperty: '"+p+"', depsCount: "+I.length+", deps: '"+W.util.escapeQuotes(I.length==1?I[0]:I.join(", "))+"' } ",W.opts.messages!==!1){if(X+=" , message: 'should have ",I.length==1)X+="property "+W.util.escapeQuotes(I[0]);else X+="properties "+W.util.escapeQuotes(I.join(", "));X+=" when property "+W.util.escapeQuotes(g)+" is present' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var X0=X;if(X=d.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+X0+"]); ";else X+=" validate.errors = ["+X0+"]; return false; ";else X+=" var err = "+X0+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{X+=" ) { ";var s=I;if(s){var b,J0=-1,a=s.length-1;while(J0<a){b=s[J0+=1];var T=W.util.getProperty(b),p=W.util.escapeQuotes(b),f=j+T;if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPath(P,b,W.opts.jsonPointers);if(X+=" if ( "+f+" === undefined ",y)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(b)+"') ";if(X+=") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { property: '"+W.util.escapeQuotes(g)+"', missingProperty: '"+p+"', depsCount: "+I.length+", deps: '"+W.util.escapeQuotes(I.length==1?I[0]:I.join(", "))+"' } ",W.opts.messages!==!1){if(X+=" , message: 'should have ",I.length==1)X+="property "+W.util.escapeQuotes(I[0]);else X+="properties "+W.util.escapeQuotes(I.join(", "));X+=" when property "+W.util.escapeQuotes(g)+" is present' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}if(X+=" } ",_)N+="}",X+=" else { "}W.errorPath=P;var z0=U.baseId;for(var g in L){var S=L[g];if(W.opts.strictKeywords?typeof S=="object"&&Object.keys(S).length>0||S===!1:W.util.schemaHasRules(S,W.RULES.all)){if(X+=" "+V+" = true; if ( "+j+W.util.getProperty(g)+" !== undefined ",y)X+=" && Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(g)+"') ";if(X+=") { ",U.schema=S,U.schemaPath=O+W.util.getProperty(g),U.errSchemaPath=w+"/"+W.util.escapeFragment(g),X+=" "+W.validate(U)+" ",U.baseId=z0,X+=" } ",_)X+=" if ("+V+") { ",N+="}"}}if(_)X+=" "+N+" if ("+Z+" == errors) {";return X}}),R6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U=W.opts.$data&&H&&H.$data,N;if(U)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",N="schema"+B;else N=H;var V="i"+B,L="schema"+B;if(!U)X+=" var "+L+" = validate.schema"+O+";";if(X+="var "+Z+";",U)X+=" if (schema"+B+" === undefined) "+Z+" = true; else if (!Array.isArray(schema"+B+")) "+Z+" = false; else {";if(X+=""+Z+" = false;for (var "+V+"=0; "+V+"<"+L+".length; "+V+"++) if (equal("+j+", "+L+"["+V+"])) { "+Z+" = true; break; }",U)X+=" } ";X+=" if (!"+Z+") { ";var D=D||[];if(D.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { allowedValues: schema"+B+" } ",W.opts.messages!==!1)X+=" , message: 'should be equal to one of the allowed values' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var y=X;if(X=D.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+y+"]); ";else X+=" validate.errors = ["+y+"]; return false; ";else X+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" }",_)X+=" else { ";return X}}),D6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||"");if(W.opts.format===!1){if(_)X+=" if (true) { ";return X}var Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;var N=W.opts.unknownFormats,V=Array.isArray(N);if(Z){var L="format"+B,D="isObject"+B,y="formatType"+B;if(X+=" var "+L+" = formats["+U+"]; var "+D+" = typeof "+L+" == 'object' && !("+L+" instanceof RegExp) && "+L+".validate; var "+y+" = "+D+" && "+L+".type || 'string'; if ("+D+") { ",W.async)X+=" var async"+B+" = "+L+".async; ";if(X+=" "+L+" = "+L+".validate; } if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'string') || ";if(X+=" (",N!="ignore"){if(X+=" ("+U+" && !"+L+" ",V)X+=" && self._opts.unknownFormats.indexOf("+U+") == -1 ";X+=") || "}if(X+=" ("+L+" && "+y+" == '"+F+"' && !(typeof "+L+" == 'function' ? ",W.async)X+=" (async"+B+" ? await "+L+"("+j+") : "+L+"("+j+")) ";else X+=" "+L+"("+j+") ";X+=" : "+L+".test("+j+"))))) {"}else{var L=W.formats[H];if(!L)if(N=="ignore"){if(W.logger.warn('unknown format "'+H+'" ignored in schema at path "'+W.errSchemaPath+'"'),_)X+=" if (true) { ";return X}else if(V&&N.indexOf(H)>=0){if(_)X+=" if (true) { ";return X}else throw new Error('unknown format "'+H+'" is used in schema at path "'+W.errSchemaPath+'"');var D=typeof L=="object"&&!(L instanceof RegExp)&&L.validate,y=D&&L.type||"string";if(D){var S=L.async===!0;L=L.validate}if(y!=F){if(_)X+=" if (true) { ";return X}if(S){if(!W.async)throw new Error("async format in sync schema");var I="formats"+W.util.getProperty(H)+".validate";X+=" if (!(await "+I+"("+j+"))) { "}else{X+=" if (! ";var I="formats"+W.util.getProperty(H);if(D)I+=".validate";if(typeof L=="function")X+=" "+I+"("+j+") ";else X+=" "+I+".test("+j+") ";X+=") { "}}var P=P||[];if(P.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'format' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { format: ",Z)X+=""+U;else X+=""+W.util.toQuotedString(H);if(X+=" } ",W.opts.messages!==!1){if(X+=` , message: 'should match format "`,Z)X+="' + "+U+" + '";else X+=""+W.util.escapeQuotes(H);X+=`"' `}if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+W.util.toQuotedString(H);X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var g=X;if(X=P.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+g+"]); ";else X+=" validate.errors = ["+g+"]; return false; ";else X+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",_)X+=" else { ";return X}}),I6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U="errs__"+B,N=W.util.copy(W);N.level++;var V="valid"+N.level,L=W.schema.then,D=W.schema.else,y=L!==void 0&&(W.opts.strictKeywords?typeof L=="object"&&Object.keys(L).length>0||L===!1:W.util.schemaHasRules(L,W.RULES.all)),S=D!==void 0&&(W.opts.strictKeywords?typeof D=="object"&&Object.keys(D).length>0||D===!1:W.util.schemaHasRules(D,W.RULES.all)),I=N.baseId;if(y||S){var P;N.createErrors=!1,N.schema=H,N.schemaPath=O,N.errSchemaPath=w,X+=" var "+U+" = errors; var "+Z+" = true; ";var g=W.compositeRule;if(W.compositeRule=N.compositeRule=!0,X+=" "+W.validate(N)+" ",N.baseId=I,N.createErrors=!0,X+=" errors = "+U+"; if (vErrors !== null) { if ("+U+") vErrors.length = "+U+"; else vErrors = null; } ",W.compositeRule=N.compositeRule=g,y){if(X+=" if ("+V+") { ",N.schema=W.schema.then,N.schemaPath=W.schemaPath+".then",N.errSchemaPath=W.errSchemaPath+"/then",X+=" "+W.validate(N)+" ",N.baseId=I,X+=" "+Z+" = "+V+"; ",y&&S)P="ifClause"+B,X+=" var "+P+" = 'then'; ";else P="'then'";if(X+=" } ",S)X+=" else { "}else X+=" if (!"+V+") { ";if(S){if(N.schema=W.schema.else,N.schemaPath=W.schemaPath+".else",N.errSchemaPath=W.errSchemaPath+"/else",X+=" "+W.validate(N)+" ",N.baseId=I,X+=" "+Z+" = "+V+"; ",y&&S)P="ifClause"+B,X+=" var "+P+" = 'else'; ";else P="'else'";X+=" } "}if(X+=" if (!"+Z+") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'if' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { failingKeyword: "+P+" } ",W.opts.messages!==!1)X+=` , message: 'should match "' + `+P+` + '" schema' `;if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+=" } ",_)X+=" else { "}else if(_)X+=" if (true) { ";return X}}),C6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U="errs__"+B,N=W.util.copy(W),V="";N.level++;var L="valid"+N.level,D="i"+B,y=N.dataLevel=W.dataLevel+1,S="data"+y,I=W.baseId;if(X+="var "+U+" = errors;var "+Z+";",Array.isArray(H)){var P=W.schema.additionalItems;if(P===!1){X+=" "+Z+" = "+j+".length <= "+H.length+"; ";var g=w;w=W.errSchemaPath+"/additionalItems",X+=" if (!"+Z+") { ";var x=x||[];if(x.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { limit: "+H.length+" } ",W.opts.messages!==!1)X+=" , message: 'should NOT have more than "+H.length+" items' ";if(W.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var b=X;if(X=x.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+b+"]); ";else X+=" validate.errors = ["+b+"]; return false; ";else X+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",w=g,_)V+="}",X+=" else { "}var k=H;if(k){var R,T=-1,f=k.length-1;while(T<f)if(R=k[T+=1],W.opts.strictKeywords?typeof R=="object"&&Object.keys(R).length>0||R===!1:W.util.schemaHasRules(R,W.RULES.all)){X+=" "+L+" = true; if ("+j+".length > "+T+") { ";var $=j+"["+T+"]";N.schema=R,N.schemaPath=O+"["+T+"]",N.errSchemaPath=w+"/"+T,N.errorPath=W.util.getPathExpr(W.errorPath,T,W.opts.jsonPointers,!0),N.dataPathArr[y]=T;var p=W.validate(N);if(N.baseId=I,W.util.varOccurences(p,S)<2)X+=" "+W.util.varReplace(p,S,$)+" ";else X+=" var "+S+" = "+$+"; "+p+" ";if(X+=" } ",_)X+=" if ("+L+") { ",V+="}"}}if(typeof P=="object"&&(W.opts.strictKeywords?typeof P=="object"&&Object.keys(P).length>0||P===!1:W.util.schemaHasRules(P,W.RULES.all))){N.schema=P,N.schemaPath=W.schemaPath+".additionalItems",N.errSchemaPath=W.errSchemaPath+"/additionalItems",X+=" "+L+" = true; if ("+j+".length > "+H.length+") { for (var "+D+" = "+H.length+"; "+D+" < "+j+".length; "+D+"++) { ",N.errorPath=W.util.getPathExpr(W.errorPath,D,W.opts.jsonPointers,!0);var $=j+"["+D+"]";N.dataPathArr[y]=D;var p=W.validate(N);if(N.baseId=I,W.util.varOccurences(p,S)<2)X+=" "+W.util.varReplace(p,S,$)+" ";else X+=" var "+S+" = "+$+"; "+p+" ";if(_)X+=" if (!"+L+") break; ";if(X+=" } } ",_)X+=" if ("+L+") { ",V+="}"}}else if(W.opts.strictKeywords?typeof H=="object"&&Object.keys(H).length>0||H===!1:W.util.schemaHasRules(H,W.RULES.all)){N.schema=H,N.schemaPath=O,N.errSchemaPath=w,X+=" for (var "+D+" = 0; "+D+" < "+j+".length; "+D+"++) { ",N.errorPath=W.util.getPathExpr(W.errorPath,D,W.opts.jsonPointers,!0);var $=j+"["+D+"]";N.dataPathArr[y]=D;var p=W.validate(N);if(N.baseId=I,W.util.varOccurences(p,S)<2)X+=" "+W.util.varReplace(p,S,$)+" ";else X+=" var "+S+" = "+$+"; "+p+" ";if(_)X+=" if (!"+L+") break; ";X+=" }"}if(_)X+=" "+V+" if ("+U+" == errors) {";return X}}),R8=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,I,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;var N=z=="maximum",V=N?"exclusiveMaximum":"exclusiveMinimum",L=W.schema[V],D=W.opts.$data&&L&&L.$data,y=N?"<":">",S=N?">":"<",I=void 0;if(!(Z||typeof H=="number"||H===void 0))throw new Error(z+" must be number");if(!(D||L===void 0||typeof L=="number"||typeof L=="boolean"))throw new Error(V+" must be number or boolean");if(D){var P=W.util.getData(L.$data,K,W.dataPathArr),g="exclusive"+B,x="exclType"+B,b="exclIsNumber"+B,k="op"+B,R="' + "+k+" + '";X+=" var schemaExcl"+B+" = "+P+"; ",P="schemaExcl"+B,X+=" var "+g+"; var "+x+" = typeof "+P+"; if ("+x+" != 'boolean' && "+x+" != 'undefined' && "+x+" != 'number') { ";var I=V,T=T||[];if(T.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(I||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: {} ",W.opts.messages!==!1)X+=" , message: '"+V+" should be boolean' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var f=X;if(X=T.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+f+"]); ";else X+=" validate.errors = ["+f+"]; return false; ";else X+=" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";if(X+=" "+x+" == 'number' ? ( ("+g+" = "+U+" === undefined || "+P+" "+y+"= "+U+") ? "+j+" "+S+"= "+P+" : "+j+" "+S+" "+U+" ) : ( ("+g+" = "+P+" === true) ? "+j+" "+S+"= "+U+" : "+j+" "+S+" "+U+" ) || "+j+" !== "+j+") { var op"+B+" = "+g+" ? '"+y+"' : '"+y+"='; ",H===void 0)I=V,w=W.errSchemaPath+"/"+V,U=P,Z=D}else{var b=typeof L=="number",R=y;if(b&&Z){var k="'"+R+"'";if(X+=" if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";X+=" ( "+U+" === undefined || "+L+" "+y+"= "+U+" ? "+j+" "+S+"= "+L+" : "+j+" "+S+" "+U+" ) || "+j+" !== "+j+") { "}else{if(b&&H===void 0)g=!0,I=V,w=W.errSchemaPath+"/"+V,U=L,S+="=";else{if(b)U=Math[N?"min":"max"](L,H);if(L===(b?U:!0))g=!0,I=V,w=W.errSchemaPath+"/"+V,S+="=";else g=!1,R+="="}var k="'"+R+"'";if(X+=" if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";X+=" "+j+" "+S+" "+U+" || "+j+" !== "+j+") { "}}I=I||z;var T=T||[];if(T.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(I||"_limit")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { comparison: "+k+", limit: "+U+", exclusive: "+g+" } ",W.opts.messages!==!1)if(X+=" , message: 'should be "+R+" ",Z)X+="' + "+U;else X+=""+U+"'";if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var f=X;if(X=T.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+f+"]); ";else X+=" validate.errors = ["+f+"]; return false; ";else X+=" var err = "+f+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",_)X+=" else { ";return X}}),D8=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,V,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;if(!(Z||typeof H=="number"))throw new Error(z+" must be number");var N=z=="maxItems"?">":"<";if(X+="if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";X+=" "+j+".length "+N+" "+U+") { ";var V=z,L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(V||"_limitItems")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { limit: "+U+" } ",W.opts.messages!==!1){if(X+=" , message: 'should NOT have ",z=="maxItems")X+="more";else X+="fewer";if(X+=" than ",Z)X+="' + "+U+" + '";else X+=""+H;X+=" items' "}if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",_)X+=" else { ";return X}}),I8=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,V,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;if(!(Z||typeof H=="number"))throw new Error(z+" must be number");var N=z=="maxLength"?">":"<";if(X+="if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";if(W.opts.unicode===!1)X+=" "+j+".length ";else X+=" ucs2length("+j+") ";X+=" "+N+" "+U+") { ";var V=z,L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(V||"_limitLength")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { limit: "+U+" } ",W.opts.messages!==!1){if(X+=" , message: 'should NOT be ",z=="maxLength")X+="longer";else X+="shorter";if(X+=" than ",Z)X+="' + "+U+" + '";else X+=""+H;X+=" characters' "}if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",_)X+=" else { ";return X}}),C8=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,V,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;if(!(Z||typeof H=="number"))throw new Error(z+" must be number");var N=z=="maxProperties"?">":"<";if(X+="if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'number') || ";X+=" Object.keys("+j+").length "+N+" "+U+") { ";var V=z,L=L||[];if(L.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(V||"_limitProperties")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { limit: "+U+" } ",W.opts.messages!==!1){if(X+=" , message: 'should NOT have ",z=="maxProperties")X+="more";else X+="fewer";if(X+=" than ",Z)X+="' + "+U+" + '";else X+=""+H;X+=" properties' "}if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var D=X;if(X=L.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+D+"]); ";else X+=" validate.errors = ["+D+"]; return false; ";else X+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",_)X+=" else { ";return X}}),_6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;if(!(Z||typeof H=="number"))throw new Error(z+" must be number");if(X+="var division"+B+";if (",Z)X+=" "+U+" !== undefined && ( typeof "+U+" != 'number' || ";if(X+=" (division"+B+" = "+j+" / "+U+", ",W.opts.multipleOfPrecision)X+=" Math.abs(Math.round(division"+B+") - division"+B+") > 1e-"+W.opts.multipleOfPrecision+" ";else X+=" division"+B+" !== parseInt(division"+B+") ";if(X+=" ) ",Z)X+=" ) ";X+=" ) { ";var N=N||[];if(N.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { multipleOf: "+U+" } ",W.opts.messages!==!1)if(X+=" , message: 'should be multiple of ",Z)X+="' + "+U;else X+=""+U+"'";if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var V=X;if(X=N.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+V+"]); ";else X+=" validate.errors = ["+V+"]; return false; ";else X+=" var err = "+V+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",_)X+=" else { ";return X}}),P6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="errs__"+B,U=W.util.copy(W);U.level++;var N="valid"+U.level;if(W.opts.strictKeywords?typeof H=="object"&&Object.keys(H).length>0||H===!1:W.util.schemaHasRules(H,W.RULES.all)){U.schema=H,U.schemaPath=O,U.errSchemaPath=w,X+=" var "+Z+" = errors; ";var V=W.compositeRule;W.compositeRule=U.compositeRule=!0,U.createErrors=!1;var L;if(U.opts.allErrors)L=U.opts.allErrors,U.opts.allErrors=!1;if(X+=" "+W.validate(U)+" ",U.createErrors=!0,L)U.opts.allErrors=L;W.compositeRule=U.compositeRule=V,X+=" if ("+N+") { ";var D=D||[];if(D.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'not' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: {} ",W.opts.messages!==!1)X+=" , message: 'should NOT be valid' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var y=X;if(X=D.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+y+"]); ";else X+=" validate.errors = ["+y+"]; return false; ";else X+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } else { errors = "+Z+"; if (vErrors !== null) { if ("+Z+") vErrors.length = "+Z+"; else vErrors = null; } ",W.opts.allErrors)X+=" } "}else{if(X+=" var err = ",W.createErrors!==!1){if(X+=" { keyword: 'not' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: {} ",W.opts.messages!==!1)X+=" , message: 'should NOT be valid' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",_)X+=" if (false) { "}return X}}),T6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U="errs__"+B,N=W.util.copy(W),V="";N.level++;var L="valid"+N.level,D=N.baseId,y="prevValid"+B,S="passingSchemas"+B;X+="var "+U+" = errors , "+y+" = false , "+Z+" = false , "+S+" = null; ";var I=W.compositeRule;W.compositeRule=N.compositeRule=!0;var P=H;if(P){var g,x=-1,b=P.length-1;while(x<b){if(g=P[x+=1],W.opts.strictKeywords?typeof g=="object"&&Object.keys(g).length>0||g===!1:W.util.schemaHasRules(g,W.RULES.all))N.schema=g,N.schemaPath=O+"["+x+"]",N.errSchemaPath=w+"/"+x,X+=" "+W.validate(N)+" ",N.baseId=D;else X+=" var "+L+" = true; ";if(x)X+=" if ("+L+" && "+y+") { "+Z+" = false; "+S+" = ["+S+", "+x+"]; } else { ",V+="}";X+=" if ("+L+") { "+Z+" = "+y+" = true; "+S+" = "+x+"; }"}}if(W.compositeRule=N.compositeRule=I,X+=""+V+"if (!"+Z+") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { passingSchemas: "+S+" } ",W.opts.messages!==!1)X+=" , message: 'should match exactly one schema in oneOf' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(X+="} else { errors = "+U+"; if (vErrors !== null) { if ("+U+") vErrors.length = "+U+"; else vErrors = null; }",W.opts.allErrors)X+=" } ";return X}}),E6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z=W.opts.$data&&H&&H.$data,U;if(Z)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",U="schema"+B;else U=H;var N=Z?"(new RegExp("+U+"))":W.usePattern(H);if(X+="if ( ",Z)X+=" ("+U+" !== undefined && typeof "+U+" != 'string') || ";X+=" !"+N+".test("+j+") ) { ";var V=V||[];if(V.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { pattern: ",Z)X+=""+U;else X+=""+W.util.toQuotedString(H);if(X+=" } ",W.opts.messages!==!1){if(X+=` , message: 'should match pattern "`,Z)X+="' + "+U+" + '";else X+=""+W.util.escapeQuotes(H);X+=`"' `}if(W.opts.verbose){if(X+=" , schema: ",Z)X+="validate.schema"+O;else X+=""+W.util.toQuotedString(H);X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var L=X;if(X=V.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+L+"]); ";else X+=" validate.errors = ["+L+"]; return false; ";else X+=" var err = "+L+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+="} ",_)X+=" else { ";return X}}),b6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="errs__"+B,U=W.util.copy(W),N="";U.level++;var V="valid"+U.level,L="key"+B,D="idx"+B,y=U.dataLevel=W.dataLevel+1,S="data"+y,I="dataProperties"+B,P=Object.keys(H||{}).filter(J0),g=W.schema.patternProperties||{},x=Object.keys(g).filter(J0),b=W.schema.additionalProperties,k=P.length||x.length,R=b===!1,T=typeof b=="object"&&Object.keys(b).length,f=W.opts.removeAdditional,$=R||T||f,p=W.opts.ownProperties,d=W.baseId,X0=W.schema.required;if(X0&&!(W.opts.$data&&X0.$data)&&X0.length<W.opts.loopRequired)var s=W.util.toHash(X0);function J0(t0){return t0!=="__proto__"}if(X+="var "+Z+" = errors;var "+V+" = true;",p)X+=" var "+I+" = undefined;";if($){if(p)X+=" "+I+" = "+I+" || Object.keys("+j+"); for (var "+D+"=0; "+D+"<"+I+".length; "+D+"++) { var "+L+" = "+I+"["+D+"]; ";else X+=" for (var "+L+" in "+j+") { ";if(k){if(X+=" var isAdditional"+B+" = !(false ",P.length)if(P.length>8)X+=" || validate.schema"+O+".hasOwnProperty("+L+") ";else{var a=P;if(a){var z0,g0=-1,y0=a.length-1;while(g0<y0)z0=a[g0+=1],X+=" || "+L+" == "+W.util.toQuotedString(z0)+" "}}if(x.length){var k0=x;if(k0){var Z0,C0=-1,C=k0.length-1;while(C0<C)Z0=k0[C0+=1],X+=" || "+W.usePattern(Z0)+".test("+L+") "}}X+=" ); if (isAdditional"+B+") { "}if(f=="all")X+=" delete "+j+"["+L+"]; ";else{var h=W.errorPath,o="' + "+L+" + '";if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPathExpr(W.errorPath,L,W.opts.jsonPointers);if(R)if(f)X+=" delete "+j+"["+L+"]; ";else{X+=" "+V+" = false; ";var G0=w;w=W.errSchemaPath+"/additionalProperties";var m=m||[];if(m.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { additionalProperty: '"+o+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is an invalid additional property";else X+="should NOT have additional properties";X+="' "}if(W.opts.verbose)X+=" , schema: false , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var u=X;if(X=m.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+u+"]); ";else X+=" validate.errors = ["+u+"]; return false; ";else X+=" var err = "+u+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(w=G0,_)X+=" break; "}else if(T)if(f=="failing"){X+=" var "+Z+" = errors; ";var U0=W.compositeRule;W.compositeRule=U.compositeRule=!0,U.schema=b,U.schemaPath=W.schemaPath+".additionalProperties",U.errSchemaPath=W.errSchemaPath+"/additionalProperties",U.errorPath=W.opts._errorDataPathProperty?W.errorPath:W.util.getPathExpr(W.errorPath,L,W.opts.jsonPointers);var q0=j+"["+L+"]";U.dataPathArr[y]=L;var Q0=W.validate(U);if(U.baseId=d,W.util.varOccurences(Q0,S)<2)X+=" "+W.util.varReplace(Q0,S,q0)+" ";else X+=" var "+S+" = "+q0+"; "+Q0+" ";X+=" if (!"+V+") { errors = "+Z+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+j+"["+L+"]; } ",W.compositeRule=U.compositeRule=U0}else{U.schema=b,U.schemaPath=W.schemaPath+".additionalProperties",U.errSchemaPath=W.errSchemaPath+"/additionalProperties",U.errorPath=W.opts._errorDataPathProperty?W.errorPath:W.util.getPathExpr(W.errorPath,L,W.opts.jsonPointers);var q0=j+"["+L+"]";U.dataPathArr[y]=L;var Q0=W.validate(U);if(U.baseId=d,W.util.varOccurences(Q0,S)<2)X+=" "+W.util.varReplace(Q0,S,q0)+" ";else X+=" var "+S+" = "+q0+"; "+Q0+" ";if(_)X+=" if (!"+V+") break; "}W.errorPath=h}if(k)X+=" } ";if(X+=" } ",_)X+=" if ("+V+") { ",N+="}"}var w0=W.opts.useDefaults&&!W.compositeRule;if(P.length){var R0=P;if(R0){var z0,L0=-1,x0=R0.length-1;while(L0<x0){z0=R0[L0+=1];var E0=H[z0];if(W.opts.strictKeywords?typeof E0=="object"&&Object.keys(E0).length>0||E0===!1:W.util.schemaHasRules(E0,W.RULES.all)){var h0=W.util.getProperty(z0),q0=j+h0,D0=w0&&E0.default!==void 0;U.schema=E0,U.schemaPath=O+h0,U.errSchemaPath=w+"/"+W.util.escapeFragment(z0),U.errorPath=W.util.getPath(W.errorPath,z0,W.opts.jsonPointers),U.dataPathArr[y]=W.util.toQuotedString(z0);var Q0=W.validate(U);if(U.baseId=d,W.util.varOccurences(Q0,S)<2){Q0=W.util.varReplace(Q0,S,q0);var v0=q0}else{var v0=S;X+=" var "+S+" = "+q0+"; "}if(D0)X+=" "+Q0+" ";else{if(s&&s[z0]){if(X+=" if ( "+v0+" === undefined ",p)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(z0)+"') ";X+=") { "+V+" = false; ";var h=W.errorPath,G0=w,n0=W.util.escapeQuotes(z0);if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPath(h,z0,W.opts.jsonPointers);w=W.errSchemaPath+"/required";var m=m||[];if(m.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+n0+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+n0+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var u=X;if(X=m.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+u+"]); ";else X+=" validate.errors = ["+u+"]; return false; ";else X+=" var err = "+u+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";w=G0,W.errorPath=h,X+=" } else { "}else if(_){if(X+=" if ( "+v0+" === undefined ",p)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(z0)+"') ";X+=") { "+V+" = true; } else { "}else{if(X+=" if ("+v0+" !== undefined ",p)X+=" && Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(z0)+"') ";X+=" ) { "}X+=" "+Q0+" } "}}if(_)X+=" if ("+V+") { ",N+="}"}}}if(x.length){var l0=x;if(l0){var Z0,R9=-1,$9=l0.length-1;while(R9<$9){Z0=l0[R9+=1];var E0=g[Z0];if(W.opts.strictKeywords?typeof E0=="object"&&Object.keys(E0).length>0||E0===!1:W.util.schemaHasRules(E0,W.RULES.all)){if(U.schema=E0,U.schemaPath=W.schemaPath+".patternProperties"+W.util.getProperty(Z0),U.errSchemaPath=W.errSchemaPath+"/patternProperties/"+W.util.escapeFragment(Z0),p)X+=" "+I+" = "+I+" || Object.keys("+j+"); for (var "+D+"=0; "+D+"<"+I+".length; "+D+"++) { var "+L+" = "+I+"["+D+"]; ";else X+=" for (var "+L+" in "+j+") { ";X+=" if ("+W.usePattern(Z0)+".test("+L+")) { ",U.errorPath=W.util.getPathExpr(W.errorPath,L,W.opts.jsonPointers);var q0=j+"["+L+"]";U.dataPathArr[y]=L;var Q0=W.validate(U);if(U.baseId=d,W.util.varOccurences(Q0,S)<2)X+=" "+W.util.varReplace(Q0,S,q0)+" ";else X+=" var "+S+" = "+q0+"; "+Q0+" ";if(_)X+=" if (!"+V+") break; ";if(X+=" } ",_)X+=" else "+V+" = true; ";if(X+=" } ",_)X+=" if ("+V+") { ",N+="}"}}}}if(_)X+=" "+N+" if ("+Z+" == errors) {";return X}}),S6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="errs__"+B,U=W.util.copy(W),N="";U.level++;var V="valid"+U.level;if(X+="var "+Z+" = errors;",W.opts.strictKeywords?typeof H=="object"&&Object.keys(H).length>0||H===!1:W.util.schemaHasRules(H,W.RULES.all)){U.schema=H,U.schemaPath=O,U.errSchemaPath=w;var L="key"+B,D="idx"+B,y="i"+B,S="' + "+L+" + '",I=U.dataLevel=W.dataLevel+1,P="data"+I,g="dataProperties"+B,x=W.opts.ownProperties,b=W.baseId;if(x)X+=" var "+g+" = undefined; ";if(x)X+=" "+g+" = "+g+" || Object.keys("+j+"); for (var "+D+"=0; "+D+"<"+g+".length; "+D+"++) { var "+L+" = "+g+"["+D+"]; ";else X+=" for (var "+L+" in "+j+") { ";X+=" var startErrs"+B+" = errors; ";var k=L,R=W.compositeRule;W.compositeRule=U.compositeRule=!0;var T=W.validate(U);if(U.baseId=b,W.util.varOccurences(T,P)<2)X+=" "+W.util.varReplace(T,P,k)+" ";else X+=" var "+P+" = "+k+"; "+T+" ";if(W.compositeRule=U.compositeRule=R,X+=" if (!"+V+") { for (var "+y+"=startErrs"+B+"; "+y+"<errors; "+y+"++) { vErrors["+y+"].propertyName = "+L+"; } var err = ",W.createErrors!==!1){if(X+=" { keyword: 'propertyNames' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { propertyName: '"+S+"' } ",W.opts.messages!==!1)X+=" , message: 'property name \\'"+S+"\\' is invalid' ";if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; ";if(_)X+=" break; ";X+=" } }"}if(_)X+=" "+N+" if ("+Z+" == errors) {";return X}}),v6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U=W.opts.$data&&H&&H.$data,N;if(U)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",N="schema"+B;else N=H;var V="schema"+B;if(!U)if(H.length<W.opts.loopRequired&&W.schema.properties&&Object.keys(W.schema.properties).length){var L=[],D=H;if(D){var y,S=-1,I=D.length-1;while(S<I){y=D[S+=1];var P=W.schema.properties[y];if(!(P&&(W.opts.strictKeywords?typeof P=="object"&&Object.keys(P).length>0||P===!1:W.util.schemaHasRules(P,W.RULES.all))))L[L.length]=y}}}else var L=H;if(U||L.length){var g=W.errorPath,x=U||L.length>=W.opts.loopRequired,b=W.opts.ownProperties;if(_)if(X+=" var missing"+B+"; ",x){if(!U)X+=" var "+V+" = validate.schema"+O+"; ";var k="i"+B,R="schema"+B+"["+k+"]",T="' + "+R+" + '";if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPathExpr(g,R,W.opts.jsonPointers);if(X+=" var "+Z+" = true; ",U)X+=" if (schema"+B+" === undefined) "+Z+" = true; else if (!Array.isArray(schema"+B+")) "+Z+" = false; else {";if(X+=" for (var "+k+" = 0; "+k+" < "+V+".length; "+k+"++) { "+Z+" = "+j+"["+V+"["+k+"]] !== undefined ",b)X+=" && Object.prototype.hasOwnProperty.call("+j+", "+V+"["+k+"]) ";if(X+="; if (!"+Z+") break; } ",U)X+=" } ";X+=" if (!"+Z+") { ";var f=f||[];if(f.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+T+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+T+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var $=X;if(X=f.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+$+"]); ";else X+=" validate.errors = ["+$+"]; return false; ";else X+=" var err = "+$+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } else { "}else{X+=" if ( ";var p=L;if(p){var d,k=-1,X0=p.length-1;while(k<X0){if(d=p[k+=1],k)X+=" || ";var s=W.util.getProperty(d),J0=j+s;if(X+=" ( ( "+J0+" === undefined ",b)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(d)+"') ";X+=") && (missing"+B+" = "+W.util.toQuotedString(W.opts.jsonPointers?d:s)+") ) "}}X+=") { ";var R="missing"+B,T="' + "+R+" + '";if(W.opts._errorDataPathProperty)W.errorPath=W.opts.jsonPointers?W.util.getPathExpr(g,R,!0):g+" + "+R;var f=f||[];if(f.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+T+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+T+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";var $=X;if(X=f.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+$+"]); ";else X+=" validate.errors = ["+$+"]; return false; ";else X+=" var err = "+$+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";X+=" } else { "}else if(x){if(!U)X+=" var "+V+" = validate.schema"+O+"; ";var k="i"+B,R="schema"+B+"["+k+"]",T="' + "+R+" + '";if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPathExpr(g,R,W.opts.jsonPointers);if(U){if(X+=" if ("+V+" && !Array.isArray("+V+")) { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+T+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+T+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+V+" !== undefined) { "}if(X+=" for (var "+k+" = 0; "+k+" < "+V+".length; "+k+"++) { if ("+j+"["+V+"["+k+"]] === undefined ",b)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", "+V+"["+k+"]) ";if(X+=") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+T+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+T+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",U)X+=" } "}else{var a=L;if(a){var d,z0=-1,g0=a.length-1;while(z0<g0){d=a[z0+=1];var s=W.util.getProperty(d),T=W.util.escapeQuotes(d),J0=j+s;if(W.opts._errorDataPathProperty)W.errorPath=W.util.getPath(g,d,W.opts.jsonPointers);if(X+=" if ( "+J0+" === undefined ",b)X+=" || ! Object.prototype.hasOwnProperty.call("+j+", '"+W.util.escapeQuotes(d)+"') ";if(X+=") { var err = ",W.createErrors!==!1){if(X+=" { keyword: 'required' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { missingProperty: '"+T+"' } ",W.opts.messages!==!1){if(X+=" , message: '",W.opts._errorDataPathProperty)X+="is a required property";else X+="should have required property \\'"+T+"\\'";X+="' "}if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" ";X+=" } "}else X+=" {} ";X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}W.errorPath=g}else if(_)X+=" if (true) {";return X}}),g6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j="data"+(K||""),Z="valid"+B,U=W.opts.$data&&H&&H.$data,N;if(U)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",N="schema"+B;else N=H;if((H||U)&&W.opts.uniqueItems!==!1){if(U)X+=" var "+Z+"; if ("+N+" === false || "+N+" === undefined) "+Z+" = true; else if (typeof "+N+" != 'boolean') "+Z+" = false; else { ";X+=" var i = "+j+".length , "+Z+" = true , j; if (i > 1) { ";var V=W.schema.items&&W.schema.items.type,L=Array.isArray(V);if(!V||V=="object"||V=="array"||L&&(V.indexOf("object")>=0||V.indexOf("array")>=0))X+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+j+"[i], "+j+"[j])) { "+Z+" = false; break outer; } } } ";else{X+=" var itemIndices = {}, item; for (;i--;) { var item = "+j+"[i]; ";var D="checkDataType"+(L?"s":"");if(X+=" if ("+W.util[D](V,"item",W.opts.strictNumbers,!0)+") continue; ",L)X+=` if (typeof item == 'string') item = '"' + item; `;X+=" if (typeof itemIndices[item] == 'number') { "+Z+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "}if(X+=" } ",U)X+=" } ";X+=" if (!"+Z+") { ";var y=y||[];if(y.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { i: i, j: j } ",W.opts.messages!==!1)X+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' ";if(W.opts.verbose){if(X+=" , schema: ",U)X+="validate.schema"+O;else X+=""+H;X+=" , parentSchema: validate.schema"+W.schemaPath+" , data: "+j+" "}X+=" } "}else X+=" {} ";var S=X;if(X=y.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+S+"]); ";else X+=" validate.errors = ["+S+"]; return false; ";else X+=" var err = "+S+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(X+=" } ",_)X+=" else { "}else if(_)X+=" if (true) { ";return X}}),k6=Y0((Q,Y)=>{Y.exports={$ref:L6(),allOf:j6(),anyOf:A6(),$comment:V6(),const:O6(),contains:Z6(),dependencies:w6(),enum:R6(),format:D6(),if:I6(),items:C6(),maximum:R8(),minimum:R8(),maxItems:D8(),minItems:D8(),maxLength:I8(),minLength:I8(),maxProperties:C8(),minProperties:C8(),multipleOf:_6(),not:P6(),oneOf:T6(),pattern:E6(),properties:b6(),propertyNames:S6(),required:v6(),uniqueItems:g6(),validate:m8()}}),x6=Y0((Q,Y)=>{var J=k6(),W=t1().toHash;Y.exports=function z(){var F=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],X=["type","$comment"],B=["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"],K=["number","integer","string","array","object","boolean","null"];return F.all=W(X),F.types=W(K),F.forEach(function(H){if(H.rules=H.rules.map(function(O){var w;if(typeof O=="object"){var _=Object.keys(O)[0];w=O[_],O=_,w.forEach(function(Z){X.push(Z),F.all[Z]=!0})}X.push(O);var j=F.all[O]={keyword:O,code:J[O],implements:w};return j}),F.all.$comment={keyword:"$comment",code:J.$comment},H.type)F.types[H.type]=H}),F.keywords=W(X.concat(B)),F.custom={},F}}),y6=Y0((Q,Y)=>{var J=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];Y.exports=function(W,z){for(var F=0;F<z.length;F++){W=JSON.parse(JSON.stringify(W));var X=z[F].split("/"),B=W,K;for(K=1;K<X.length;K++)B=B[X[K]];for(K=0;K<J.length;K++){var H=J[K],O=B[H];if(O)B[H]={anyOf:[O,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]}}}return W}}),f6=Y0((Q,Y)=>{var J=Q8().MissingRef;Y.exports=W;function W(z,F,X){var B=this;if(typeof this._opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");if(typeof F=="function")X=F,F=void 0;var K=H(z).then(function(){var w=B._addSchema(z,void 0,F);return w.validate||O(w)});if(X)K.then(function(w){X(null,w)},X);return K;function H(w){var _=w.$schema;return _&&!B.getSchema(_)?W.call(B,{$ref:_},!0):Promise.resolve()}function O(w){try{return B._compile(w)}catch(j){if(j instanceof J)return _(j);throw j}function _(j){var Z=j.missingSchema;if(V(Z))throw new Error("Schema "+Z+" is loaded but "+j.missingRef+" cannot be resolved");var U=B._loadingSchemas[Z];if(!U)U=B._loadingSchemas[Z]=B._opts.loadSchema(Z),U.then(N,N);return U.then(function(L){if(!V(Z))return H(L).then(function(){if(!V(Z))B.addSchema(L,Z,void 0,F)})}).then(function(){return O(w)});function N(){delete B._loadingSchemas[Z]}function V(L){return B._refs[L]||B._schemas[L]}}}}}),h6=Y0((Q,Y)=>{Y.exports=function J(W,z,F){var X=" ",B=W.level,K=W.dataLevel,H=W.schema[z],O=W.schemaPath+W.util.getProperty(z),w=W.errSchemaPath+"/"+z,_=!W.opts.allErrors,j,Z="data"+(K||""),U="valid"+B,N="errs__"+B,V=W.opts.$data&&H&&H.$data,L;if(V)X+=" var schema"+B+" = "+W.util.getData(H.$data,K,W.dataPathArr)+"; ",L="schema"+B;else L=H;var D=this,y="definition"+B,S=D.definition,I="",P,g,x,b,k;if(V&&S.$data){k="keywordValidate"+B;var R=S.validateSchema;X+=" var "+y+" = RULES.custom['"+z+"'].definition; var "+k+" = "+y+".validate;"}else{if(b=W.useCustomRule(D,H,W.schema,W),!b)return;L="validate.schema"+O,k=b.code,P=S.compile,g=S.inline,x=S.macro}var T=k+".errors",f="i"+B,$="ruleErr"+B,p=S.async;if(p&&!W.async)throw new Error("async keyword in sync schema");if(!(g||x))X+=""+T+" = null;";if(X+="var "+N+" = errors;var "+U+";",V&&S.$data){if(I+="}",X+=" if ("+L+" === undefined) { "+U+" = true; } else { ",R)I+="}",X+=" "+U+" = "+y+".validateSchema("+L+"); if ("+U+") { "}if(g)if(S.statements)X+=" "+b.validate+" ";else X+=" "+U+" = "+b.validate+"; ";else if(x){var d=W.util.copy(W),I="";d.level++;var X0="valid"+d.level;d.schema=b.validate,d.schemaPath="";var s=W.compositeRule;W.compositeRule=d.compositeRule=!0;var J0=W.validate(d).replace(/validate\.schema/g,k);W.compositeRule=d.compositeRule=s,X+=" "+J0}else{var a=a||[];if(a.push(X),X="",X+=" "+k+".call( ",W.opts.passContext)X+="this";else X+="self";if(P||S.schema===!1)X+=" , "+Z+" ";else X+=" , "+L+" , "+Z+" , validate.schema"+W.schemaPath+" ";if(X+=" , (dataPath || '')",W.errorPath!='""')X+=" + "+W.errorPath;var z0=K?"data"+(K-1||""):"parentData",g0=K?W.dataPathArr[K]:"parentDataProperty";X+=" , "+z0+" , "+g0+" , rootData ) ";var y0=X;if(X=a.pop(),S.errors===!1){if(X+=" "+U+" = ",p)X+="await ";X+=""+y0+"; "}else if(p)T="customErrors"+B,X+=" var "+T+" = null; try { "+U+" = await "+y0+"; } catch (e) { "+U+" = false; if (e instanceof ValidationError) "+T+" = e.errors; else throw e; } ";else X+=" "+T+" = null; "+U+" = "+y0+"; "}if(S.modifying)X+=" if ("+z0+") "+Z+" = "+z0+"["+g0+"];";if(X+=""+I,S.valid){if(_)X+=" if (true) { "}else{if(X+=" if ( ",S.valid===void 0)if(X+=" !",x)X+=""+X0;else X+=""+U;else X+=" "+!S.valid+" ";X+=") { ",j=D.keyword;var a=a||[];a.push(X),X="";var a=a||[];if(a.push(X),X="",W.createErrors!==!1){if(X+=" { keyword: '"+(j||"custom")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { keyword: '"+D.keyword+"' } ",W.opts.messages!==!1)X+=` , message: 'should pass "`+D.keyword+`" keyword validation' `;if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+Z+" ";X+=" } "}else X+=" {} ";var k0=X;if(X=a.pop(),!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(["+k0+"]); ";else X+=" validate.errors = ["+k0+"]; return false; ";else X+=" var err = "+k0+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var Z0=X;if(X=a.pop(),g)if(S.errors){if(S.errors!="full"){if(X+=" for (var "+f+"="+N+"; "+f+"<errors; "+f+"++) { var "+$+" = vErrors["+f+"]; if ("+$+".dataPath === undefined) "+$+".dataPath = (dataPath || '') + "+W.errorPath+"; if ("+$+".schemaPath === undefined) { "+$+'.schemaPath = "'+w+'"; } ',W.opts.verbose)X+=" "+$+".schema = "+L+"; "+$+".data = "+Z+"; ";X+=" } "}}else if(S.errors===!1)X+=" "+Z0+" ";else{if(X+=" if ("+N+" == errors) { "+Z0+" } else { for (var "+f+"="+N+"; "+f+"<errors; "+f+"++) { var "+$+" = vErrors["+f+"]; if ("+$+".dataPath === undefined) "+$+".dataPath = (dataPath || '') + "+W.errorPath+"; if ("+$+".schemaPath === undefined) { "+$+'.schemaPath = "'+w+'"; } ',W.opts.verbose)X+=" "+$+".schema = "+L+"; "+$+".data = "+Z+"; ";X+=" } } "}else if(x){if(X+=" var err = ",W.createErrors!==!1){if(X+=" { keyword: '"+(j||"custom")+"' , dataPath: (dataPath || '') + "+W.errorPath+" , schemaPath: "+W.util.toQuotedString(w)+" , params: { keyword: '"+D.keyword+"' } ",W.opts.messages!==!1)X+=` , message: 'should pass "`+D.keyword+`" keyword validation' `;if(W.opts.verbose)X+=" , schema: validate.schema"+O+" , parentSchema: validate.schema"+W.schemaPath+" , data: "+Z+" ";X+=" } "}else X+=" {} ";if(X+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!W.compositeRule&&_)if(W.async)X+=" throw new ValidationError(vErrors); ";else X+=" validate.errors = vErrors; return false; "}else if(S.errors===!1)X+=" "+Z0+" ";else{if(X+=" if (Array.isArray("+T+")) { if (vErrors === null) vErrors = "+T+"; else vErrors = vErrors.concat("+T+"); errors = vErrors.length; for (var "+f+"="+N+"; "+f+"<errors; "+f+"++) { var "+$+" = vErrors["+f+"]; if ("+$+".dataPath === undefined) "+$+".dataPath = (dataPath || '') + "+W.errorPath+"; "+$+'.schemaPath = "'+w+'"; ',W.opts.verbose)X+=" "+$+".schema = "+L+"; "+$+".data = "+Z+"; ";X+=" } } else { "+Z0+" } "}if(X+=" } ",_)X+=" else { "}return X}}),l8=Y0((Q,Y)=>{Y.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}}),$6=Y0((Q,Y)=>{var J=l8();Y.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:J.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:J.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}}),m6=Y0((Q,Y)=>{var J=/^[a-z_$][a-z0-9_$-]*$/i,W=h6(),z=$6();Y.exports={add:F,get:X,remove:B,validate:K};function F(H,O){var w=this.RULES;if(w.keywords[H])throw new Error("Keyword "+H+" is already defined");if(!J.test(H))throw new Error("Keyword "+H+" is not a valid identifier");if(O){this.validateKeyword(O,!0);var _=O.type;if(Array.isArray(_))for(var j=0;j<_.length;j++)U(H,_[j],O);else U(H,_,O);var Z=O.metaSchema;if(Z){if(O.$data&&this._opts.$data)Z={anyOf:[Z,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]};O.validateSchema=this.compile(Z,!0)}}w.keywords[H]=w.all[H]=!0;function U(N,V,L){var D;for(var y=0;y<w.length;y++){var S=w[y];if(S.type==V){D=S;break}}if(!D)D={type:V,rules:[]},w.push(D);var I={keyword:N,definition:L,custom:!0,code:W,implements:L.implements};D.rules.push(I),w.custom[N]=I}return this}function X(H){var O=this.RULES.custom[H];return O?O.definition:this.RULES.keywords[H]||!1}function B(H){var O=this.RULES;delete O.keywords[H],delete O.all[H],delete O.custom[H];for(var w=0;w<O.length;w++){var _=O[w].rules;for(var j=0;j<_.length;j++)if(_[j].keyword==H){_.splice(j,1);break}}return this}function K(H,O){K.errors=null;var w=this._validateKeyword=this._validateKeyword||this.compile(z,!0);if(w(H))return!0;if(K.errors=w.errors,O)throw new Error("custom keyword definition is invalid: "+this.errorsText(w.errors));else return!1}}),l6=Y0((Q,Y)=>{Y.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON Schema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}}),p6=Y0((Q,Y)=>{var J=K6(),W=W8(),z=N6(),F=h8(),X=$8(),B=M6(),K=x6(),H=y6(),O=t1();Y.exports=N,N.prototype.validate=V,N.prototype.compile=L,N.prototype.addSchema=D,N.prototype.addMetaSchema=y,N.prototype.validateSchema=S,N.prototype.getSchema=P,N.prototype.removeSchema=b,N.prototype.addFormat=s,N.prototype.errorsText=X0,N.prototype._addSchema=R,N.prototype._compile=T,N.prototype.compileAsync=f6();var w=m6();N.prototype.addKeyword=w.add,N.prototype.getKeyword=w.get,N.prototype.removeKeyword=w.remove,N.prototype.validateKeyword=w.validate;var _=Q8();N.ValidationError=_.Validation,N.MissingRefError=_.MissingRef,N.$dataMetaSchema=H;var j="http://json-schema.org/draft-07/schema",Z=["removeAdditional","useDefaults","coerceTypes","strictDefaults"],U=["/properties"];function N(C){if(!(this instanceof N))return new N(C);if(C=this._opts=O.copy(C)||{},Z0(this),this._schemas={},this._refs={},this._fragments={},this._formats=B(C.format),this._cache=C.cache||new z,this._loadingSchemas={},this._compilations=[],this.RULES=K(),this._getId=f(C),C.loopRequired=C.loopRequired||1/0,C.errorDataPath=="property")C._errorDataPathProperty=!0;if(C.serialize===void 0)C.serialize=X;if(this._metaOpts=k0(this),C.formats)z0(this);if(C.keywords)g0(this);if(J0(this),typeof C.meta=="object")this.addMetaSchema(C.meta);if(C.nullable)this.addKeyword("nullable",{metaSchema:{type:"boolean"}});a(this)}function V(C,h){var o;if(typeof C=="string"){if(o=this.getSchema(C),!o)throw new Error('no schema with key or ref "'+C+'"')}else{var G0=this._addSchema(C);o=G0.validate||this._compile(G0)}var m=o(h);if(o.$async!==!0)this.errors=o.errors;return m}function L(C,h){var o=this._addSchema(C,void 0,h);return o.validate||this._compile(o)}function D(C,h,o,G0){if(Array.isArray(C)){for(var m=0;m<C.length;m++)this.addSchema(C[m],void 0,o,G0);return this}var u=this._getId(C);if(u!==void 0&&typeof u!="string")throw new Error("schema id must be string");return h=W.normalizeId(h||u),y0(this,h),this._schemas[h]=this._addSchema(C,o,G0,!0),this}function y(C,h,o){return this.addSchema(C,h,o,!0),this}function S(C,h){var o=C.$schema;if(o!==void 0&&typeof o!="string")throw new Error("$schema must be a string");if(o=o||this._opts.defaultMeta||I(this),!o)return this.logger.warn("meta-schema not available"),this.errors=null,!0;var G0=this.validate(o,C);if(!G0&&h){var m="schema is invalid: "+this.errorsText();if(this._opts.validateSchema=="log")this.logger.error(m);else throw new Error(m)}return G0}function I(C){var h=C._opts.meta;return C._opts.defaultMeta=typeof h=="object"?C._getId(h)||h:C.getSchema(j)?j:void 0,C._opts.defaultMeta}function P(C){var h=x(this,C);switch(typeof h){case"object":return h.validate||this._compile(h);case"string":return this.getSchema(h);case"undefined":return g(this,C)}}function g(C,h){var o=W.schema.call(C,{schema:{}},h);if(o){var{schema:G0,root:m,baseId:u}=o,U0=J.call(C,G0,m,void 0,u);return C._fragments[h]=new F({ref:h,fragment:!0,schema:G0,root:m,baseId:u,validate:U0}),U0}}function x(C,h){return h=W.normalizeId(h),C._schemas[h]||C._refs[h]||C._fragments[h]}function b(C){if(C instanceof RegExp)return k(this,this._schemas,C),k(this,this._refs,C),this;switch(typeof C){case"undefined":return k(this,this._schemas),k(this,this._refs),this._cache.clear(),this;case"string":var h=x(this,C);if(h)this._cache.del(h.cacheKey);return delete this._schemas[C],delete this._refs[C],this;case"object":var o=this._opts.serialize,G0=o?o(C):C;this._cache.del(G0);var m=this._getId(C);if(m)m=W.normalizeId(m),delete this._schemas[m],delete this._refs[m]}return this}function k(C,h,o){for(var G0 in h){var m=h[G0];if(!m.meta&&(!o||o.test(G0)))C._cache.del(m.cacheKey),delete h[G0]}}function R(C,h,o,G0){if(typeof C!="object"&&typeof C!="boolean")throw new Error("schema should be object or boolean");var m=this._opts.serialize,u=m?m(C):C,U0=this._cache.get(u);if(U0)return U0;G0=G0||this._opts.addUsedSchema!==!1;var q0=W.normalizeId(this._getId(C));if(q0&&G0)y0(this,q0);var Q0=this._opts.validateSchema!==!1&&!h,w0;if(Q0&&!(w0=q0&&q0==W.normalizeId(C.$schema)))this.validateSchema(C,!0);var R0=W.ids.call(this,C),L0=new F({id:q0,schema:C,localRefs:R0,cacheKey:u,meta:o});if(q0[0]!="#"&&G0)this._refs[q0]=L0;if(this._cache.put(u,L0),Q0&&w0)this.validateSchema(C,!0);return L0}function T(C,h){if(C.compiling){if(C.validate=m,m.schema=C.schema,m.errors=null,m.root=h?h:m,C.schema.$async===!0)m.$async=!0;return m}C.compiling=!0;var o;if(C.meta)o=this._opts,this._opts=this._metaOpts;var G0;try{G0=J.call(this,C.schema,h,C.localRefs)}catch(u){throw delete C.validate,u}finally{if(C.compiling=!1,C.meta)this._opts=o}return C.validate=G0,C.refs=G0.refs,C.refVal=G0.refVal,C.root=G0.root,G0;function m(){var u=C.validate,U0=u.apply(this,arguments);return m.errors=u.errors,U0}}function f(C){switch(C.schemaId){case"auto":return d;case"id":return $;default:return p}}function $(C){if(C.$id)this.logger.warn("schema $id ignored",C.$id);return C.id}function p(C){if(C.id)this.logger.warn("schema id ignored",C.id);return C.$id}function d(C){if(C.$id&&C.id&&C.$id!=C.id)throw new Error("schema $id is different from id");return C.$id||C.id}function X0(C,h){if(C=C||this.errors,!C)return"No errors";h=h||{};var o=h.separator===void 0?", ":h.separator,G0=h.dataVar===void 0?"data":h.dataVar,m="";for(var u=0;u<C.length;u++){var U0=C[u];if(U0)m+=G0+U0.dataPath+" "+U0.message+o}return m.slice(0,-o.length)}function s(C,h){if(typeof h=="string")h=new RegExp(h);return this._formats[C]=h,this}function J0(C){var h;if(C._opts.$data)h=l6(),C.addMetaSchema(h,h.$id,!0);if(C._opts.meta===!1)return;var o=l8();if(C._opts.$data)o=H(o,U);C.addMetaSchema(o,j,!0),C._refs["http://json-schema.org/schema"]=j}function a(C){var h=C._opts.schemas;if(!h)return;if(Array.isArray(h))C.addSchema(h);else for(var o in h)C.addSchema(h[o],o)}function z0(C){for(var h in C._opts.formats){var o=C._opts.formats[h];C.addFormat(h,o)}}function g0(C){for(var h in C._opts.keywords){var o=C._opts.keywords[h];C.addKeyword(h,o)}}function y0(C,h){if(C._schemas[h]||C._refs[h])throw new Error('schema with key or id "'+h+'" already exists')}function k0(C){var h=O.copy(C._opts);for(var o=0;o<Z.length;o++)delete h[Z[o]];return h}function Z0(C){var h=C._opts.logger;if(h===!1)C.logger={log:C0,warn:C0,error:C0};else{if(h===void 0)h=console;if(!(typeof h=="object"&&h.log&&h.warn&&h.error))throw new Error("logger must implement log, warn and error methods");C.logger=h}}function C0(){}}),c6=50;function p8(Q=c6){let Y=new AbortController;return u6(Q,Y.signal),Y}var r6={cwd(){return process.cwd()},existsSync(Q){return W0.existsSync(Q)},async stat(Q){return o6(Q)},statSync(Q){return W0.statSync(Q)},readFileSync(Q,Y){return W0.readFileSync(Q,{encoding:Y.encoding})},readFileBytesSync(Q){return W0.readFileSync(Q)},readSync(Q,Y){let J=void 0;try{J=W0.openSync(Q,"r");let W=Buffer.alloc(Y.length),z=W0.readSync(J,W,0,Y.length,0);return{buffer:W,bytesRead:z}}finally{if(J)W0.closeSync(J)}},writeFileSync(Q,Y,J){if(!J.flush){let z={encoding:J.encoding};if(J.mode!==void 0)z.mode=J.mode;W0.writeFileSync(Q,Y,z);return}let W;try{let z=J.mode!==void 0?J.mode:void 0;W=W0.openSync(Q,"w",z),W0.writeFileSync(W,Y,{encoding:J.encoding}),W0.fsyncSync(W)}finally{if(W)W0.closeSync(W)}},appendFileSync(Q,Y){W0.appendFileSync(Q,Y)},copyFileSync(Q,Y){W0.copyFileSync(Q,Y)},unlinkSync(Q){W0.unlinkSync(Q)},renameSync(Q,Y){W0.renameSync(Q,Y)},linkSync(Q,Y){W0.linkSync(Q,Y)},symlinkSync(Q,Y){W0.symlinkSync(Q,Y)},readlinkSync(Q){return W0.readlinkSync(Q)},realpathSync(Q){return W0.realpathSync(Q)},mkdirSync(Q){if(!W0.existsSync(Q))W0.mkdirSync(Q,{recursive:!0,mode:448})},readdirSync(Q){return W0.readdirSync(Q,{withFileTypes:!0})},readdirStringSync(Q){return W0.readdirSync(Q)},isDirEmptySync(Q){return this.readdirSync(Q).length===0},rmdirSync(Q){W0.rmdirSync(Q)},rmSync(Q,Y){W0.rmSync(Q,Y)},createWriteStream(Q){return W0.createWriteStream(Q)}},s6=r6;function L1(){return s6}class f1 extends Error{}function d8(){return process.versions.bun!==void 0}class u8{options;child;childStdin;childStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(Q){this.options=Q,this.abortController=Q.abortController||p8(),this.initialize()}initialize(){try{let{additionalDirectories:Q=[],agents:Y,cwd:J,executable:W=d8()?"bun":"node",executableArgs:z=[],extraArgs:F={},pathToClaudeCodeExecutable:X,env:B={...process.env},stderr:K,customSystemPrompt:H,appendSystemPrompt:O,maxThinkingTokens:w,maxTurns:_,model:j,fallbackModel:Z,permissionMode:U,permissionPromptToolName:N,continueConversation:V,resume:L,settingSources:D,allowedTools:y=[],disallowedTools:S=[],mcpServers:I,strictMcpConfig:P,canUseTool:g,includePartialMessages:x}=this.options,b=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(typeof H==="string")b.push("--system-prompt",H);if(O)b.push("--append-system-prompt",O);if(w!==void 0)b.push("--max-thinking-tokens",w.toString());if(_)b.push("--max-turns",_.toString());if(j)b.push("--model",j);if(B.DEBUG)b.push("--debug-to-stderr");if(g){if(N)throw new Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");b.push("--permission-prompt-tool","stdio")}else if(N)b.push("--permission-prompt-tool",N);if(V)b.push("--continue");if(L)b.push("--resume",L);if(y.length>0)b.push("--allowedTools",y.join(","));if(S.length>0)b.push("--disallowedTools",S.join(","));if(I&&Object.keys(I).length>0)b.push("--mcp-config",JSON.stringify({mcpServers:I}));if(Y&&Object.keys(Y).length>0)b.push("--agents",JSON.stringify(Y));if(D)b.push("--setting-sources",D.join(","));if(P)b.push("--strict-mcp-config");if(U)b.push("--permission-mode",U);if(Z){if(j&&Z===j)throw new Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");b.push("--fallback-model",Z)}if(x)b.push("--include-partial-messages");for(let d of Q)b.push("--add-dir",d);if(this.options.forkSession)b.push("--fork-session");if(this.options.resumeSessionAt)b.push("--resume-session-at",this.options.resumeSessionAt);for(let[d,X0]of Object.entries(F))if(X0===null)b.push(`--${d}`);else b.push(`--${d}`,X0);if(!B.CLAUDE_CODE_ENTRYPOINT)B.CLAUDE_CODE_ENTRYPOINT="sdk-ts";if(!L1().existsSync(X)){let d=P8(X)?`Claude Code native binary not found at ${X}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${X}. Is options.pathToClaudeCodeExecutable set?`;throw new ReferenceError(d)}let R=P8(X),T=R?X:W,f=R?b:[...z,X,...b];this.logForDebugging(R?`Spawning Claude Code native binary: ${X} ${b.join(" ")}`:`Spawning Claude Code process: ${W} ${[...z,X,...b].join(" ")}`);let $=B.DEBUG||K?"pipe":"ignore";if(this.child=n6(T,f,{cwd:J,stdio:["pipe","pipe",$],signal:this.abortController.signal,env:B}),this.childStdin=this.child.stdin,this.childStdout=this.child.stdout,B.DEBUG||K)this.child.stderr.on("data",(d)=>{this.logForDebugging(d.toString())});let p=()=>{if(this.child&&!this.child.killed)this.child.kill("SIGTERM")};this.processExitHandler=p,this.abortHandler=p,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.child.on("error",(d)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new f1("Claude Code process aborted by user");else this.exitError=new Error(`Failed to spawn Claude Code process: ${d.message}`),this.logForDebugging(this.exitError.message)}),this.child.on("close",(d,X0)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new f1("Claude Code process aborted by user");else{let s=this.getProcessExitError(d,X0);if(s)this.exitError=s,this.logForDebugging(s.message)}}),this.ready=!0}catch(Q){throw this.ready=!1,Q}}getProcessExitError(Q,Y){if(Q!==0&&Q!==null)return new Error(`Claude Code process exited with code ${Q}`);else if(Y)return new Error(`Claude Code process terminated by signal ${Y}`);return}logForDebugging(Q){if(process.env.DEBUG)process.stderr.write(`${Q}
|
|
`);if(this.options.stderr)this.options.stderr(Q)}write(Q){if(this.abortController.signal.aborted)throw new f1("Operation aborted");if(!this.ready||!this.childStdin)throw new Error("ProcessTransport is not ready for writing");if(this.child?.killed||this.child?.exitCode!==null)throw new Error("Cannot write to terminated process");if(this.exitError)throw new Error(`Cannot write to process that exited with error: ${this.exitError.message}`);if(process.env.DEBUG_SDK)process.stderr.write(`[ProcessTransport] Writing to stdin: ${Q.substring(0,100)}
|
|
`);try{if(!this.childStdin.write(Q)&&process.env.DEBUG_SDK)console.warn("[ProcessTransport] Write buffer full, data queued")}catch(Y){throw this.ready=!1,new Error(`Failed to write to process stdin: ${Y.message}`)}}close(){if(this.childStdin)this.childStdin.end(),this.childStdin=void 0;if(this.processExitHandler)process.off("exit",this.processExitHandler),this.processExitHandler=void 0;if(this.abortHandler)this.abortController.signal.removeEventListener("abort",this.abortHandler),this.abortHandler=void 0;for(let{handler:Q}of this.exitListeners)this.child?.off("exit",Q);if(this.exitListeners=[],this.child&&!this.child.killed)this.child.kill("SIGTERM"),setTimeout(()=>{if(this.child&&!this.child.killed)this.child.kill("SIGKILL")},5000);this.ready=!1}isReady(){return this.ready}async*readMessages(){if(!this.childStdout)throw new Error("ProcessTransport output stream not available");let Q=i6({input:this.childStdout});try{for await(let Y of Q)if(Y.trim())yield JSON.parse(Y);await this.waitForExit()}catch(Y){throw Y}finally{Q.close()}}endInput(){if(this.childStdin)this.childStdin.end()}getInputStream(){return this.childStdin}onExit(Q){if(!this.child)return()=>{};let Y=(J,W)=>{let z=this.getProcessExitError(J,W);Q(z)};return this.child.on("exit",Y),this.exitListeners.push({callback:Q,handler:Y}),()=>{if(this.child)this.child.off("exit",Y);let J=this.exitListeners.findIndex((W)=>W.handler===Y);if(J!==-1)this.exitListeners.splice(J,1)}}async waitForExit(){if(!this.child){if(this.exitError)throw this.exitError;return}if(this.child.exitCode!==null||this.child.killed){if(this.exitError)throw this.exitError;return}return new Promise((Q,Y)=>{let J=(z,F)=>{if(this.abortController.signal.aborted){Y(new f1("Operation aborted"));return}let X=this.getProcessExitError(z,F);if(X)Y(X);else Q()};this.child.once("exit",J);let W=(z)=>{this.child.off("exit",J),Y(z)};this.child.once("error",W),this.child.once("exit",()=>{this.child.off("error",W)})})}}function P8(Q){return![".js",".mjs",".tsx",".ts",".jsx"].some((J)=>Q.endsWith(J))}class c8{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(Q){this.returned=Q}[Symbol.asyncIterator](){if(this.started)throw new Error("Stream can only be iterated once");return this.started=!0,this}next(){if(this.queue.length>0)return Promise.resolve({done:!1,value:this.queue.shift()});if(this.isDone)return Promise.resolve({done:!0,value:void 0});if(this.hasError)return Promise.reject(this.hasError);return new Promise((Q,Y)=>{this.readResolve=Q,this.readReject=Y})}enqueue(Q){if(this.readResolve){let Y=this.readResolve;this.readResolve=void 0,this.readReject=void 0,Y({done:!1,value:Q})}else this.queue.push(Q)}done(){if(this.isDone=!0,this.readResolve){let Q=this.readResolve;this.readResolve=void 0,this.readReject=void 0,Q({done:!0,value:void 0})}}error(Q){if(this.hasError=Q,this.readReject){let Y=this.readReject;this.readResolve=void 0,this.readReject=void 0,Y(Q)}}return(){if(this.isDone=!0,this.returned)this.returned();return Promise.resolve({done:!0,value:void 0})}}class n8{sendMcpMessage;isClosed=!1;constructor(Q){this.sendMcpMessage=Q}onclose;onerror;onmessage;async start(){}async send(Q){if(this.isClosed)throw new Error("Transport is closed");this.sendMcpMessage(Q)}async close(){if(this.isClosed)return;this.isClosed=!0,this.onclose?.()}}var a6=typeof global=="object"&&global&&global.Object===Object&&global,t6=a6,e6=typeof self=="object"&&self&&self.Object===Object&&self,WQ=t6||e6||Function("return this")(),X8=WQ,QQ=X8.Symbol,P9=QQ,i8=Object.prototype,XQ=i8.hasOwnProperty,YQ=i8.toString,U9=P9?P9.toStringTag:void 0;function JQ(Q){var Y=XQ.call(Q,U9),J=Q[U9];try{Q[U9]=void 0;var W=!0}catch(F){}var z=YQ.call(Q);if(W)if(Y)Q[U9]=J;else delete Q[U9];return z}var zQ=JQ,GQ=Object.prototype,BQ=GQ.toString;function FQ(Q){return BQ.call(Q)}var HQ=FQ,UQ="[object Null]",qQ="[object Undefined]",T8=P9?P9.toStringTag:void 0;function KQ(Q){if(Q==null)return Q===void 0?qQ:UQ;return T8&&T8 in Object(Q)?zQ(Q):HQ(Q)}var NQ=KQ;function MQ(Q){var Y=typeof Q;return Q!=null&&(Y=="object"||Y=="function")}var o8=MQ,LQ="[object AsyncFunction]",jQ="[object Function]",AQ="[object GeneratorFunction]",VQ="[object Proxy]";function OQ(Q){if(!o8(Q))return!1;var Y=NQ(Q);return Y==jQ||Y==AQ||Y==LQ||Y==VQ}var ZQ=OQ,wQ=X8["__core-js_shared__"],d9=wQ,E8=function(){var Q=/[^.]+$/.exec(d9&&d9.keys&&d9.keys.IE_PROTO||"");return Q?"Symbol(src)_1."+Q:""}();function RQ(Q){return!!E8&&E8 in Q}var DQ=RQ,IQ=Function.prototype,CQ=IQ.toString;function _Q(Q){if(Q!=null){try{return CQ.call(Q)}catch(Y){}try{return Q+""}catch(Y){}}return""}var PQ=_Q,TQ=/[\\^$.*+?()[\]{}|]/g,EQ=/^\[object .+?Constructor\]$/,bQ=Function.prototype,SQ=Object.prototype,vQ=bQ.toString,gQ=SQ.hasOwnProperty,kQ=RegExp("^"+vQ.call(gQ).replace(TQ,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xQ(Q){if(!o8(Q)||DQ(Q))return!1;var Y=ZQ(Q)?kQ:EQ;return Y.test(PQ(Q))}var yQ=xQ;function fQ(Q,Y){return Q==null?void 0:Q[Y]}var hQ=fQ;function $Q(Q,Y){var J=hQ(Q,Y);return yQ(J)?J:void 0}var r8=$Q;function mQ(Q,Y){return Q===Y||Q!==Q&&Y!==Y}var lQ=mQ,pQ=r8(Object,"create"),q9=pQ;function dQ(){this.__data__=q9?q9(null):{},this.size=0}var uQ=dQ;function cQ(Q){var Y=this.has(Q)&&delete this.__data__[Q];return this.size-=Y?1:0,Y}var nQ=cQ,iQ="__lodash_hash_undefined__",oQ=Object.prototype,rQ=oQ.hasOwnProperty;function sQ(Q){var Y=this.__data__;if(q9){var J=Y[Q];return J===iQ?void 0:J}return rQ.call(Y,Q)?Y[Q]:void 0}var aQ=sQ,tQ=Object.prototype,eQ=tQ.hasOwnProperty;function WX(Q){var Y=this.__data__;return q9?Y[Q]!==void 0:eQ.call(Y,Q)}var QX=WX,XX="__lodash_hash_undefined__";function YX(Q,Y){var J=this.__data__;return this.size+=this.has(Q)?0:1,J[Q]=q9&&Y===void 0?XX:Y,this}var JX=YX;function e1(Q){var Y=-1,J=Q==null?0:Q.length;this.clear();while(++Y<J){var W=Q[Y];this.set(W[0],W[1])}}e1.prototype.clear=uQ;e1.prototype.delete=nQ;e1.prototype.get=aQ;e1.prototype.has=QX;e1.prototype.set=JX;var b8=e1;function zX(){this.__data__=[],this.size=0}var GX=zX;function BX(Q,Y){var J=Q.length;while(J--)if(lQ(Q[J][0],Y))return J;return-1}var b9=BX,FX=Array.prototype,HX=FX.splice;function UX(Q){var Y=this.__data__,J=b9(Y,Q);if(J<0)return!1;var W=Y.length-1;if(J==W)Y.pop();else HX.call(Y,J,1);return--this.size,!0}var qX=UX;function KX(Q){var Y=this.__data__,J=b9(Y,Q);return J<0?void 0:Y[J][1]}var NX=KX;function MX(Q){return b9(this.__data__,Q)>-1}var LX=MX;function jX(Q,Y){var J=this.__data__,W=b9(J,Q);if(W<0)++this.size,J.push([Q,Y]);else J[W][1]=Y;return this}var AX=jX;function W9(Q){var Y=-1,J=Q==null?0:Q.length;this.clear();while(++Y<J){var W=Q[Y];this.set(W[0],W[1])}}W9.prototype.clear=GX;W9.prototype.delete=qX;W9.prototype.get=NX;W9.prototype.has=LX;W9.prototype.set=AX;var VX=W9,OX=r8(X8,"Map"),ZX=OX;function wX(){this.size=0,this.__data__={hash:new b8,map:new(ZX||VX),string:new b8}}var RX=wX;function DX(Q){var Y=typeof Q;return Y=="string"||Y=="number"||Y=="symbol"||Y=="boolean"?Q!=="__proto__":Q===null}var IX=DX;function CX(Q,Y){var J=Q.__data__;return IX(Y)?J[typeof Y=="string"?"string":"hash"]:J.map}var S9=CX;function _X(Q){var Y=S9(this,Q).delete(Q);return this.size-=Y?1:0,Y}var PX=_X;function TX(Q){return S9(this,Q).get(Q)}var EX=TX;function bX(Q){return S9(this,Q).has(Q)}var SX=bX;function vX(Q,Y){var J=S9(this,Q),W=J.size;return J.set(Q,Y),this.size+=J.size==W?0:1,this}var gX=vX;function Q9(Q){var Y=-1,J=Q==null?0:Q.length;this.clear();while(++Y<J){var W=Q[Y];this.set(W[0],W[1])}}Q9.prototype.clear=RX;Q9.prototype.delete=PX;Q9.prototype.get=EX;Q9.prototype.has=SX;Q9.prototype.set=gX;var s8=Q9,kX="Expected a function";function Y8(Q,Y){if(typeof Q!="function"||Y!=null&&typeof Y!="function")throw new TypeError(kX);var J=function(){var W=arguments,z=Y?Y.apply(this,W):W[0],F=J.cache;if(F.has(z))return F.get(z);var X=Q.apply(this,W);return J.cache=F.set(z,X)||F,X};return J.cache=new(Y8.Cache||s8),J}Y8.Cache=s8;var V9=Y8,S8=2000;function xX(Q){for(let Y=0;Y<Q.length;Y+=S8)process.stderr.write(Q.substring(Y,Y+S8))}var yX=V9((Q)=>{if(!Q||Q.trim()==="")return null;let Y=Q.split(",").map((F)=>F.trim()).filter(Boolean);if(Y.length===0)return null;let J=Y.some((F)=>F.startsWith("!")),W=Y.some((F)=>!F.startsWith("!"));if(J&&W)return null;let z=Y.map((F)=>F.replace(/^!/,"").toLowerCase());return{include:J?[]:z,exclude:J?z:[],isExclusive:J}});function fX(Q){let Y=[],J=Q.match(/^MCP server ["']([^"']+)["']/);if(J&&J[1])Y.push("mcp"),Y.push(J[1].toLowerCase());else{let F=Q.match(/^([^:[]+):/);if(F&&F[1])Y.push(F[1].trim().toLowerCase())}let W=Q.match(/^\[([^\]]+)]/);if(W&&W[1])Y.push(W[1].trim().toLowerCase());if(Q.toLowerCase().includes("statsig event:"))Y.push("statsig");let z=Q.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(z&&z[1]){let F=z[1].trim().toLowerCase();if(F.length<30&&!F.includes(" "))Y.push(F)}return Array.from(new Set(Y))}function hX(Q,Y){if(!Y)return!0;if(Q.length===0)return!1;if(Y.isExclusive)return!Q.some((J)=>Y.exclude.includes(J));else return Q.some((J)=>Y.include.includes(J))}function $X(Q,Y){if(!Y)return!0;let J=fX(Q);return hX(J,Y)}function pX(){return process.env.CLAUDE_CONFIG_DIR??mX(lX(),".claude")}function v8(Q){if(!Q)return!1;if(typeof Q==="boolean")return Q;let Y=Q.toLowerCase().trim();return["1","true","yes","on"].includes(Y)}var uX={name:"BASH_MAX_OUTPUT_LENGTH",default:30000,validate:(Q)=>{if(!Q)return{effective:30000,status:"valid"};let W=parseInt(Q,10);if(isNaN(W)||W<=0)return{effective:30000,status:"invalid",message:`Invalid value "${Q}" (using default: 30000)`};if(W>150000)return{effective:150000,status:"capped",message:`Capped from ${W} to 150000`};return{effective:W,status:"valid"}}},cX={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32000,validate:(Q)=>{if(!Q)return{effective:32000,status:"valid"};let Y=parseInt(Q,10);if(isNaN(Y)||Y<=0)return{effective:32000,status:"invalid",message:`Invalid value "${Q}" (using default: 32000)`};if(Y>32000)return{effective:32000,status:"capped",message:`Capped from ${Y} to 32000`};return{effective:Y,status:"valid"}}};function nX(){return{originalCwd:g8(),totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,cwd:g8(),modelUsage:{},mainLoopModelOverride:void 0,maxRateLimitFallbackActive:!1,initialMainLoopModel:null,modelStrings:null,isNonInteractiveSession:!0,isInteractive:!1,clientType:"cli",sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,sessionId:dX(),loggerProvider:null,eventLogger:null,meterProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[uX,cX],lastAPIRequest:null,inMemoryErrorLog:[]}}var iX=nX();function oX(){return iX.sessionId}var mJ=V9(()=>{return v8(process.env.DEBUG)||v8(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||t8()||process.argv.some((Q)=>Q.startsWith("--debug="))}),rX=V9(()=>{let Q=process.argv.find((J)=>J.startsWith("--debug="));if(!Q)return null;let Y=Q.substring(8);return yX(Y)}),t8=V9(()=>{return process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e")});function sX(Q){let Y=rX();return $X(Q,Y)}var aX=!1;function K1(Q,{level:Y}={level:"debug"}){if(!sX(Q))return;if(aX&&Q.includes(`
|
|
`))Q=JSON.stringify(Q);let J=`[${Y.toUpperCase()}] ${Q.trim()}
|
|
`;if(t8()){xX(J);return}if(!L1().existsSync(n9(_9())))L1().mkdirSync(n9(_9()));L1().appendFileSync(_9(),J),tX()}function _9(){return process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??a8(pX(),"debug",`${oX()}.txt`)}var tX=V9(()=>{try{let Q=_9(),Y=n9(Q),J=a8(Y,"latest");if(!L1().existsSync(Y))L1().mkdirSync(Y);if(L1().existsSync(J))try{L1().unlinkSync(J)}catch{}L1().symlinkSync(Q,J)}catch{}});class e8{transport;isSingleUserTurn;canUseTool;hooks;abortController;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new c8;initialization;cancelControllers=new Map;hookCallbacks=new Map;nextCallbackId=0;sdkMcpTransports=new Map;pendingMcpResponses=new Map;firstResultReceivedPromise;firstResultReceivedResolve;constructor(Q,Y,J,W,z,F=new Map){this.transport=Q,this.isSingleUserTurn=Y,this.canUseTool=J,this.hooks=W,this.abortController=z;for(let[X,B]of F){let K=new n8((H)=>this.sendMcpServerMessageToCli(X,H));this.sdkMcpTransports.set(X,K),B.connect(K)}this.sdkMessages=this.readSdkMessages(),this.firstResultReceivedPromise=new Promise((X)=>{this.firstResultReceivedResolve=X}),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(Q){this.inputStream.error(Q)}cleanup(Q){if(this.cleanupPerformed)return;this.cleanupPerformed=!0;try{if(this.transport.close(),this.pendingControlResponses.clear(),this.pendingMcpResponses.clear(),Q)this.inputStream.error(Q);else this.inputStream.done()}catch(Y){}}next(...[Q]){return this.sdkMessages.next(...[Q])}return(Q){return this.sdkMessages.return(Q)}throw(Q){return this.sdkMessages.throw(Q)}[Symbol.asyncIterator](){return this.sdkMessages}[Symbol.asyncDispose](){return this.sdkMessages[Symbol.asyncDispose]()}async readMessages(){try{for await(let Q of this.transport.readMessages()){if(Q.type==="control_response"){let Y=this.pendingControlResponses.get(Q.response.request_id);if(Y)Y(Q.response);continue}else if(Q.type==="control_request"){this.handleControlRequest(Q);continue}else if(Q.type==="control_cancel_request"){this.handleControlCancelRequest(Q);continue}else if(Q.type==="keep_alive")continue;if(Q.type==="result"){if(this.firstResultReceivedResolve)this.firstResultReceivedResolve();if(this.isSingleUserTurn)this.transport.endInput()}this.inputStream.enqueue(Q)}this.inputStream.done(),this.cleanup()}catch(Q){this.inputStream.error(Q),this.cleanup(Q)}}async handleControlRequest(Q){let Y=new AbortController;this.cancelControllers.set(Q.request_id,Y);try{let J=await this.processControlRequest(Q,Y.signal),W={type:"control_response",response:{subtype:"success",request_id:Q.request_id,response:J}};await Promise.resolve(this.transport.write(JSON.stringify(W)+`
|
|
`))}catch(J){let W={type:"control_response",response:{subtype:"error",request_id:Q.request_id,error:J.message||String(J)}};await Promise.resolve(this.transport.write(JSON.stringify(W)+`
|
|
`))}finally{this.cancelControllers.delete(Q.request_id)}}handleControlCancelRequest(Q){let Y=this.cancelControllers.get(Q.request_id);if(Y)Y.abort(),this.cancelControllers.delete(Q.request_id)}async processControlRequest(Q,Y){if(Q.request.subtype==="can_use_tool"){if(!this.canUseTool)throw new Error("canUseTool callback is not provided.");return this.canUseTool(Q.request.tool_name,Q.request.input,{signal:Y,suggestions:Q.request.permission_suggestions})}else if(Q.request.subtype==="hook_callback")return await this.handleHookCallbacks(Q.request.callback_id,Q.request.input,Q.request.tool_use_id,Y);else if(Q.request.subtype==="mcp_message"){let J=Q.request,W=this.sdkMcpTransports.get(J.server_name);if(!W)throw new Error(`SDK MCP server not found: ${J.server_name}`);if("method"in J.message&&"id"in J.message&&J.message.id!==null)return{mcp_response:await this.handleMcpControlRequest(J.server_name,J,W)};else{if(W.onmessage)W.onmessage(J.message);return{mcp_response:{jsonrpc:"2.0",result:{},id:0}}}}throw new Error("Unsupported control request subtype: "+Q.request.subtype)}async*readSdkMessages(){for await(let Q of this.inputStream)yield Q}async initialize(){let Q;if(this.hooks){Q={};for(let[z,F]of Object.entries(this.hooks))if(F.length>0)Q[z]=F.map((X)=>{let B=[];for(let K of X.hooks){let H=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(H,K),B.push(H)}return{matcher:X.matcher,hookCallbackIds:B}})}let Y=this.sdkMcpTransports.size>0?Array.from(this.sdkMcpTransports.keys()):void 0,J={subtype:"initialize",hooks:Q,sdkMcpServers:Y};return(await this.request(J)).response}async interrupt(){await this.request({subtype:"interrupt"})}async setPermissionMode(Q){await this.request({subtype:"set_permission_mode",mode:Q})}async setModel(Q){await this.request({subtype:"set_model",model:Q})}request(Q){let Y=Math.random().toString(36).substring(2,15),J={request_id:Y,type:"control_request",request:Q};return new Promise((W,z)=>{this.pendingControlResponses.set(Y,(F)=>{if(F.subtype==="success")W(F);else z(new Error(F.error))}),Promise.resolve(this.transport.write(JSON.stringify(J)+`
|
|
`))})}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async accountInfo(){return(await this.initialization).account}async streamInput(Q){K1("[Query.streamInput] Starting to process input stream"),K1(`[Query.streamInput] this.sdkMcpTransports.size = ${this.sdkMcpTransports.size}`);try{let Y=0;for await(let J of Q){if(Y++,K1(`[Query.streamInput] Processing message ${Y}: ${J.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(JSON.stringify(J)+`
|
|
`))}if(K1(`[Query.streamInput] Finished processing ${Y} messages from input stream`),K1(`[Query.streamInput] About to check MCP servers. this.sdkMcpTransports.size = ${this.sdkMcpTransports.size}`),this.sdkMcpTransports.size>0&&this.firstResultReceivedPromise){K1("[Query.streamInput] Entering Promise.race to wait for result");let J=1e4,W;if(await Promise.race([this.firstResultReceivedPromise.then(()=>{if(K1("[Query.streamInput] Received first result, closing input stream"),W)clearTimeout(W)}),new Promise((z)=>{W=setTimeout(()=>{K1("[Query.streamInput] Timed out waiting for first result, closing input stream"),z()},J)})]),W)clearTimeout(W)}K1("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(Y){if(!(Y instanceof f1))throw Y}}handleHookCallbacks(Q,Y,J,W){let z=this.hookCallbacks.get(Q);if(!z)throw new Error(`No hook callback found for ID: ${Q}`);return z(Y,J,{signal:W})}sendMcpServerMessageToCli(Q,Y){if("id"in Y&&Y.id!==null&&Y.id!==void 0){let J=`${Q}:${Y.id}`,W=this.pendingMcpResponses.get(J);if(W){W.resolve(Y),this.pendingMcpResponses.delete(J);return}}throw new Error("No pending request found")}handleMcpControlRequest(Q,Y,J){let W="id"in Y.message?Y.message.id:null,z=`${Q}:${W}`;return new Promise((F,X)=>{let B=null,K=()=>{if(B)clearTimeout(B);this.pendingMcpResponses.delete(z)},H=(w)=>{K(),F(w)},O=(w)=>{K(),X(w)};if(this.pendingMcpResponses.set(z,{resolve:H,reject:O}),J.onmessage)J.onmessage(Y.message);else{K(),X(new Error("No message handler registered"));return}B=setTimeout(()=>{if(this.pendingMcpResponses.has(z))K(),X(new Error("Request timeout"))},30000)})}}function eX({prompt:Q,options:{abortController:Y=p8(),additionalDirectories:J=[],agents:W,allowedTools:z=[],appendSystemPrompt:F,canUseTool:X,continue:B,customSystemPrompt:K,cwd:H,disallowedTools:O=[],env:w,executable:_=d8()?"bun":"node",executableArgs:j=[],extraArgs:Z={},fallbackModel:U,forkSession:N,hooks:V,includePartialMessages:L,maxThinkingTokens:D,maxTurns:y,mcpServers:S,model:I,pathToClaudeCodeExecutable:P,permissionMode:g="default",permissionPromptToolName:x,resume:b,resumeSessionAt:k,settingSources:R,stderr:T,strictMcpConfig:f}={}}){if(!w)w={...process.env};if(!w.CLAUDE_CODE_ENTRYPOINT)w.CLAUDE_CODE_ENTRYPOINT="sdk-ts";if(!P)throw new Error("pathToClaudeCodeExecutable is required");let $={},p=new Map;if(S)for(let[J0,a]of Object.entries(S))if(a.type==="sdk"&&"instance"in a)p.set(J0,a.instance),$[J0]={type:"sdk",name:J0};else $[J0]=a;let d=typeof Q==="string",X0=new u8({abortController:Y,additionalDirectories:J,agents:W,cwd:H,executable:_,executableArgs:j,extraArgs:Z,pathToClaudeCodeExecutable:P,env:w,forkSession:N,stderr:T,customSystemPrompt:K,appendSystemPrompt:F,maxThinkingTokens:D,maxTurns:y,model:I,fallbackModel:U,permissionMode:g,permissionPromptToolName:x,continueConversation:B,resume:b,resumeSessionAt:k,settingSources:R,allowedTools:z,disallowedTools:O,mcpServers:$,strictMcpConfig:f,canUseTool:!!X,hooks:!!V,includePartialMessages:L}),s=new e8(X0,d,X,V,Y,p);if(typeof Q==="string")X0.write(JSON.stringify({type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:Q}]},parent_tool_use_id:null})+`
|
|
`);else s.streamInput(Q);return s}var G={};F6(G,{void:()=>f5,util:()=>N0,unknown:()=>x5,union:()=>l5,undefined:()=>v5,tuple:()=>u5,transformer:()=>y8,symbol:()=>S5,string:()=>GW,strictObject:()=>m5,setErrorMap:()=>X5,set:()=>i5,record:()=>c5,quotelessJson:()=>W5,promise:()=>e5,preprocess:()=>XY,pipeline:()=>YY,ostring:()=>JY,optional:()=>WY,onumber:()=>zY,oboolean:()=>GY,objectUtil:()=>i9,object:()=>$5,number:()=>BW,nullable:()=>QY,null:()=>g5,never:()=>y5,nativeEnum:()=>t5,nan:()=>T5,map:()=>n5,makeIssue:()=>E9,literal:()=>s5,lazy:()=>r5,late:()=>_5,isValid:()=>I1,isDirty:()=>r9,isAsync:()=>K9,isAborted:()=>o9,intersection:()=>d5,instanceof:()=>P5,getParsedType:()=>M1,getErrorMap:()=>T9,function:()=>o5,enum:()=>a5,effect:()=>y8,discriminatedUnion:()=>p5,defaultErrorMap:()=>m1,datetimeRegex:()=>YW,date:()=>b5,custom:()=>zW,coerce:()=>BY,boolean:()=>FW,bigint:()=>E5,array:()=>h5,any:()=>k5,addIssueToContext:()=>c,ZodVoid:()=>M9,ZodUnknown:()=>A1,ZodUnion:()=>u1,ZodUndefined:()=>p1,ZodType:()=>F0,ZodTuple:()=>G1,ZodTransformer:()=>r0,ZodSymbol:()=>N9,ZodString:()=>e0,ZodSet:()=>P1,ZodSchema:()=>F0,ZodRecord:()=>L9,ZodReadonly:()=>a1,ZodPromise:()=>T1,ZodPipeline:()=>O9,ZodParsedType:()=>i,ZodOptional:()=>Q1,ZodObject:()=>T0,ZodNumber:()=>V1,ZodNullable:()=>j1,ZodNull:()=>d1,ZodNever:()=>z1,ZodNativeEnum:()=>o1,ZodNaN:()=>A9,ZodMap:()=>j9,ZodLiteral:()=>i1,ZodLazy:()=>n1,ZodIssueCode:()=>l,ZodIntersection:()=>c1,ZodFunction:()=>$1,ZodFirstPartyTypeKind:()=>e,ZodError:()=>u0,ZodEnum:()=>Z1,ZodEffects:()=>r0,ZodDiscriminatedUnion:()=>v9,ZodDefault:()=>r1,ZodDate:()=>C1,ZodCatch:()=>s1,ZodBranded:()=>g9,ZodBoolean:()=>l1,ZodBigInt:()=>O1,ZodArray:()=>W1,ZodAny:()=>_1,Schema:()=>F0,ParseStatus:()=>f0,OK:()=>$0,NEVER:()=>FY,INVALID:()=>t,EMPTY_PATH:()=>Y5,DIRTY:()=>h1,BRAND:()=>C5});var N0;(function(Q){Q.assertEqual=(z)=>{};function Y(z){}Q.assertIs=Y;function J(z){throw new Error}Q.assertNever=J,Q.arrayToEnum=(z)=>{let F={};for(let X of z)F[X]=X;return F},Q.getValidEnumValues=(z)=>{let F=Q.objectKeys(z).filter((B)=>typeof z[z[B]]!=="number"),X={};for(let B of F)X[B]=z[B];return Q.objectValues(X)},Q.objectValues=(z)=>{return Q.objectKeys(z).map(function(F){return z[F]})},Q.objectKeys=typeof Object.keys==="function"?(z)=>Object.keys(z):(z)=>{let F=[];for(let X in z)if(Object.prototype.hasOwnProperty.call(z,X))F.push(X);return F},Q.find=(z,F)=>{for(let X of z)if(F(X))return X;return},Q.isInteger=typeof Number.isInteger==="function"?(z)=>Number.isInteger(z):(z)=>typeof z==="number"&&Number.isFinite(z)&&Math.floor(z)===z;function W(z,F=" | "){return z.map((X)=>typeof X==="string"?`'${X}'`:X).join(F)}Q.joinValues=W,Q.jsonStringifyReplacer=(z,F)=>{if(typeof F==="bigint")return F.toString();return F}})(N0||(N0={}));var i9;(function(Q){Q.mergeShapes=(Y,J)=>{return{...Y,...J}}})(i9||(i9={}));var i=N0.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),M1=(Q)=>{switch(typeof Q){case"undefined":return i.undefined;case"string":return i.string;case"number":return Number.isNaN(Q)?i.nan:i.number;case"boolean":return i.boolean;case"function":return i.function;case"bigint":return i.bigint;case"symbol":return i.symbol;case"object":if(Array.isArray(Q))return i.array;if(Q===null)return i.null;if(Q.then&&typeof Q.then==="function"&&Q.catch&&typeof Q.catch==="function")return i.promise;if(typeof Map!=="undefined"&&Q instanceof Map)return i.map;if(typeof Set!=="undefined"&&Q instanceof Set)return i.set;if(typeof Date!=="undefined"&&Q instanceof Date)return i.date;return i.object;default:return i.unknown}},l=N0.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),W5=(Q)=>{return JSON.stringify(Q,null,2).replace(/"([^"]+)":/g,"$1:")};class u0 extends Error{get errors(){return this.issues}constructor(Q){super();this.issues=[],this.addIssue=(J)=>{this.issues=[...this.issues,J]},this.addIssues=(J=[])=>{this.issues=[...this.issues,...J]};let Y=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Y);else this.__proto__=Y;this.name="ZodError",this.issues=Q}format(Q){let Y=Q||function(z){return z.message},J={_errors:[]},W=(z)=>{for(let F of z.issues)if(F.code==="invalid_union")F.unionErrors.map(W);else if(F.code==="invalid_return_type")W(F.returnTypeError);else if(F.code==="invalid_arguments")W(F.argumentsError);else if(F.path.length===0)J._errors.push(Y(F));else{let X=J,B=0;while(B<F.path.length){let K=F.path[B];if(B!==F.path.length-1)X[K]=X[K]||{_errors:[]};else X[K]=X[K]||{_errors:[]},X[K]._errors.push(Y(F));X=X[K],B++}}};return W(this),J}static assert(Q){if(!(Q instanceof u0))throw new Error(`Not a ZodError: ${Q}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,N0.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(Q=(Y)=>Y.message){let Y={},J=[];for(let W of this.issues)if(W.path.length>0){let z=W.path[0];Y[z]=Y[z]||[],Y[z].push(Q(W))}else J.push(Q(W));return{formErrors:J,fieldErrors:Y}}get formErrors(){return this.flatten()}}u0.create=(Q)=>{return new u0(Q)};var Q5=(Q,Y)=>{let J;switch(Q.code){case l.invalid_type:if(Q.received===i.undefined)J="Required";else J=`Expected ${Q.expected}, received ${Q.received}`;break;case l.invalid_literal:J=`Invalid literal value, expected ${JSON.stringify(Q.expected,N0.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:J=`Unrecognized key(s) in object: ${N0.joinValues(Q.keys,", ")}`;break;case l.invalid_union:J="Invalid input";break;case l.invalid_union_discriminator:J=`Invalid discriminator value. Expected ${N0.joinValues(Q.options)}`;break;case l.invalid_enum_value:J=`Invalid enum value. Expected ${N0.joinValues(Q.options)}, received '${Q.received}'`;break;case l.invalid_arguments:J="Invalid function arguments";break;case l.invalid_return_type:J="Invalid function return type";break;case l.invalid_date:J="Invalid date";break;case l.invalid_string:if(typeof Q.validation==="object")if("includes"in Q.validation){if(J=`Invalid input: must include "${Q.validation.includes}"`,typeof Q.validation.position==="number")J=`${J} at one or more positions greater than or equal to ${Q.validation.position}`}else if("startsWith"in Q.validation)J=`Invalid input: must start with "${Q.validation.startsWith}"`;else if("endsWith"in Q.validation)J=`Invalid input: must end with "${Q.validation.endsWith}"`;else N0.assertNever(Q.validation);else if(Q.validation!=="regex")J=`Invalid ${Q.validation}`;else J="Invalid";break;case l.too_small:if(Q.type==="array")J=`Array must contain ${Q.exact?"exactly":Q.inclusive?"at least":"more than"} ${Q.minimum} element(s)`;else if(Q.type==="string")J=`String must contain ${Q.exact?"exactly":Q.inclusive?"at least":"over"} ${Q.minimum} character(s)`;else if(Q.type==="number")J=`Number must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${Q.minimum}`;else if(Q.type==="bigint")J=`Number must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${Q.minimum}`;else if(Q.type==="date")J=`Date must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(Q.minimum))}`;else J="Invalid input";break;case l.too_big:if(Q.type==="array")J=`Array must contain ${Q.exact?"exactly":Q.inclusive?"at most":"less than"} ${Q.maximum} element(s)`;else if(Q.type==="string")J=`String must contain ${Q.exact?"exactly":Q.inclusive?"at most":"under"} ${Q.maximum} character(s)`;else if(Q.type==="number")J=`Number must be ${Q.exact?"exactly":Q.inclusive?"less than or equal to":"less than"} ${Q.maximum}`;else if(Q.type==="bigint")J=`BigInt must be ${Q.exact?"exactly":Q.inclusive?"less than or equal to":"less than"} ${Q.maximum}`;else if(Q.type==="date")J=`Date must be ${Q.exact?"exactly":Q.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(Q.maximum))}`;else J="Invalid input";break;case l.custom:J="Invalid input";break;case l.invalid_intersection_types:J="Intersection results could not be merged";break;case l.not_multiple_of:J=`Number must be a multiple of ${Q.multipleOf}`;break;case l.not_finite:J="Number must be finite";break;default:J=Y.defaultError,N0.assertNever(Q)}return{message:J}},m1=Q5,WW=m1;function X5(Q){WW=Q}function T9(){return WW}var E9=(Q)=>{let{data:Y,path:J,errorMaps:W,issueData:z}=Q,F=[...J,...z.path||[]],X={...z,path:F};if(z.message!==void 0)return{...z,path:F,message:z.message};let B="",K=W.filter((H)=>!!H).slice().reverse();for(let H of K)B=H(X,{data:Y,defaultError:B}).message;return{...z,path:F,message:B}},Y5=[];function c(Q,Y){let J=T9(),W=E9({issueData:Y,data:Q.data,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,J,J===m1?void 0:m1].filter((z)=>!!z)});Q.common.issues.push(W)}class f0{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(Q,Y){let J=[];for(let W of Y){if(W.status==="aborted")return t;if(W.status==="dirty")Q.dirty();J.push(W.value)}return{status:Q.value,value:J}}static async mergeObjectAsync(Q,Y){let J=[];for(let W of Y){let z=await W.key,F=await W.value;J.push({key:z,value:F})}return f0.mergeObjectSync(Q,J)}static mergeObjectSync(Q,Y){let J={};for(let W of Y){let{key:z,value:F}=W;if(z.status==="aborted")return t;if(F.status==="aborted")return t;if(z.status==="dirty")Q.dirty();if(F.status==="dirty")Q.dirty();if(z.value!=="__proto__"&&(typeof F.value!=="undefined"||W.alwaysSet))J[z.value]=F.value}return{status:Q.value,value:J}}}var t=Object.freeze({status:"aborted"}),h1=(Q)=>({status:"dirty",value:Q}),$0=(Q)=>({status:"valid",value:Q}),o9=(Q)=>Q.status==="aborted",r9=(Q)=>Q.status==="dirty",I1=(Q)=>Q.status==="valid",K9=(Q)=>typeof Promise!=="undefined"&&Q instanceof Promise,r;(function(Q){Q.errToObj=(Y)=>typeof Y==="string"?{message:Y}:Y||{},Q.toString=(Y)=>typeof Y==="string"?Y:Y?.message})(r||(r={}));class X1{constructor(Q,Y,J,W){this._cachedPath=[],this.parent=Q,this.data=Y,this._path=J,this._key=W}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var k8=(Q,Y)=>{if(I1(Y))return{success:!0,data:Y.value};else{if(!Q.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let J=new u0(Q.common.issues);return this._error=J,this._error}}}};function B0(Q){if(!Q)return{};let{errorMap:Y,invalid_type_error:J,required_error:W,description:z}=Q;if(Y&&(J||W))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Y)return{errorMap:Y,description:z};return{errorMap:(X,B)=>{let{message:K}=Q;if(X.code==="invalid_enum_value")return{message:K??B.defaultError};if(typeof B.data==="undefined")return{message:K??W??B.defaultError};if(X.code!=="invalid_type")return{message:B.defaultError};return{message:K??J??B.defaultError}},description:z}}class F0{get description(){return this._def.description}_getType(Q){return M1(Q.data)}_getOrReturnCtx(Q,Y){return Y||{common:Q.parent.common,data:Q.data,parsedType:M1(Q.data),schemaErrorMap:this._def.errorMap,path:Q.path,parent:Q.parent}}_processInputParams(Q){return{status:new f0,ctx:{common:Q.parent.common,data:Q.data,parsedType:M1(Q.data),schemaErrorMap:this._def.errorMap,path:Q.path,parent:Q.parent}}}_parseSync(Q){let Y=this._parse(Q);if(K9(Y))throw new Error("Synchronous parse encountered promise.");return Y}_parseAsync(Q){let Y=this._parse(Q);return Promise.resolve(Y)}parse(Q,Y){let J=this.safeParse(Q,Y);if(J.success)return J.data;throw J.error}safeParse(Q,Y){let J={common:{issues:[],async:Y?.async??!1,contextualErrorMap:Y?.errorMap},path:Y?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:M1(Q)},W=this._parseSync({data:Q,path:J.path,parent:J});return k8(J,W)}"~validate"(Q){let Y={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:M1(Q)};if(!this["~standard"].async)try{let J=this._parseSync({data:Q,path:[],parent:Y});return I1(J)?{value:J.value}:{issues:Y.common.issues}}catch(J){if(J?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Y.common={issues:[],async:!0}}return this._parseAsync({data:Q,path:[],parent:Y}).then((J)=>I1(J)?{value:J.value}:{issues:Y.common.issues})}async parseAsync(Q,Y){let J=await this.safeParseAsync(Q,Y);if(J.success)return J.data;throw J.error}async safeParseAsync(Q,Y){let J={common:{issues:[],contextualErrorMap:Y?.errorMap,async:!0},path:Y?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:M1(Q)},W=this._parse({data:Q,path:J.path,parent:J}),z=await(K9(W)?W:Promise.resolve(W));return k8(J,z)}refine(Q,Y){let J=(W)=>{if(typeof Y==="string"||typeof Y==="undefined")return{message:Y};else if(typeof Y==="function")return Y(W);else return Y};return this._refinement((W,z)=>{let F=Q(W),X=()=>z.addIssue({code:l.custom,...J(W)});if(typeof Promise!=="undefined"&&F instanceof Promise)return F.then((B)=>{if(!B)return X(),!1;else return!0});if(!F)return X(),!1;else return!0})}refinement(Q,Y){return this._refinement((J,W)=>{if(!Q(J))return W.addIssue(typeof Y==="function"?Y(J,W):Y),!1;else return!0})}_refinement(Q){return new r0({schema:this,typeName:e.ZodEffects,effect:{type:"refinement",refinement:Q}})}superRefine(Q){return this._refinement(Q)}constructor(Q){this.spa=this.safeParseAsync,this._def=Q,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Y)=>this["~validate"](Y)}}optional(){return Q1.create(this,this._def)}nullable(){return j1.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W1.create(this)}promise(){return T1.create(this,this._def)}or(Q){return u1.create([this,Q],this._def)}and(Q){return c1.create(this,Q,this._def)}transform(Q){return new r0({...B0(this._def),schema:this,typeName:e.ZodEffects,effect:{type:"transform",transform:Q}})}default(Q){let Y=typeof Q==="function"?Q:()=>Q;return new r1({...B0(this._def),innerType:this,defaultValue:Y,typeName:e.ZodDefault})}brand(){return new g9({typeName:e.ZodBranded,type:this,...B0(this._def)})}catch(Q){let Y=typeof Q==="function"?Q:()=>Q;return new s1({...B0(this._def),innerType:this,catchValue:Y,typeName:e.ZodCatch})}describe(Q){return new this.constructor({...this._def,description:Q})}pipe(Q){return O9.create(this,Q)}readonly(){return a1.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var J5=/^c[^\s-]{8,}$/i,z5=/^[0-9a-z]+$/,G5=/^[0-9A-HJKMNP-TV-Z]{26}$/i,B5=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,F5=/^[a-z0-9_-]{21}$/i,H5=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,U5=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,q5=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,K5="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",u9,N5=/^(?:(?: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])$/,M5=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,L5=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,j5=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,A5=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,V5=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,QW="((\\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])))",O5=new RegExp(`^${QW}$`);function XW(Q){let Y="[0-5]\\d";if(Q.precision)Y=`${Y}\\.\\d{${Q.precision}}`;else if(Q.precision==null)Y=`${Y}(\\.\\d+)?`;let J=Q.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Y})${J}`}function Z5(Q){return new RegExp(`^${XW(Q)}$`)}function YW(Q){let Y=`${QW}T${XW(Q)}`,J=[];if(J.push(Q.local?"Z?":"Z"),Q.offset)J.push("([+-]\\d{2}:?\\d{2})");return Y=`${Y}(${J.join("|")})`,new RegExp(`^${Y}$`)}function w5(Q,Y){if((Y==="v4"||!Y)&&N5.test(Q))return!0;if((Y==="v6"||!Y)&&L5.test(Q))return!0;return!1}function R5(Q,Y){if(!H5.test(Q))return!1;try{let[J]=Q.split(".");if(!J)return!1;let W=J.replace(/-/g,"+").replace(/_/g,"/").padEnd(J.length+(4-J.length%4)%4,"="),z=JSON.parse(atob(W));if(typeof z!=="object"||z===null)return!1;if("typ"in z&&z?.typ!=="JWT")return!1;if(!z.alg)return!1;if(Y&&z.alg!==Y)return!1;return!0}catch{return!1}}function D5(Q,Y){if((Y==="v4"||!Y)&&M5.test(Q))return!0;if((Y==="v6"||!Y)&&j5.test(Q))return!0;return!1}class e0 extends F0{_parse(Q){if(this._def.coerce)Q.data=String(Q.data);if(this._getType(Q)!==i.string){let z=this._getOrReturnCtx(Q);return c(z,{code:l.invalid_type,expected:i.string,received:z.parsedType}),t}let J=new f0,W=void 0;for(let z of this._def.checks)if(z.kind==="min"){if(Q.data.length<z.value)W=this._getOrReturnCtx(Q,W),c(W,{code:l.too_small,minimum:z.value,type:"string",inclusive:!0,exact:!1,message:z.message}),J.dirty()}else if(z.kind==="max"){if(Q.data.length>z.value)W=this._getOrReturnCtx(Q,W),c(W,{code:l.too_big,maximum:z.value,type:"string",inclusive:!0,exact:!1,message:z.message}),J.dirty()}else if(z.kind==="length"){let F=Q.data.length>z.value,X=Q.data.length<z.value;if(F||X){if(W=this._getOrReturnCtx(Q,W),F)c(W,{code:l.too_big,maximum:z.value,type:"string",inclusive:!0,exact:!0,message:z.message});else if(X)c(W,{code:l.too_small,minimum:z.value,type:"string",inclusive:!0,exact:!0,message:z.message});J.dirty()}}else if(z.kind==="email"){if(!q5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"email",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="emoji"){if(!u9)u9=new RegExp(K5,"u");if(!u9.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"emoji",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="uuid"){if(!B5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"uuid",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="nanoid"){if(!F5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"nanoid",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="cuid"){if(!J5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"cuid",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="cuid2"){if(!z5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"cuid2",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="ulid"){if(!G5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"ulid",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="url")try{new URL(Q.data)}catch{W=this._getOrReturnCtx(Q,W),c(W,{validation:"url",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="regex"){if(z.regex.lastIndex=0,!z.regex.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"regex",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="trim")Q.data=Q.data.trim();else if(z.kind==="includes"){if(!Q.data.includes(z.value,z.position))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:{includes:z.value,position:z.position},message:z.message}),J.dirty()}else if(z.kind==="toLowerCase")Q.data=Q.data.toLowerCase();else if(z.kind==="toUpperCase")Q.data=Q.data.toUpperCase();else if(z.kind==="startsWith"){if(!Q.data.startsWith(z.value))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:{startsWith:z.value},message:z.message}),J.dirty()}else if(z.kind==="endsWith"){if(!Q.data.endsWith(z.value))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:{endsWith:z.value},message:z.message}),J.dirty()}else if(z.kind==="datetime"){if(!YW(z).test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:"datetime",message:z.message}),J.dirty()}else if(z.kind==="date"){if(!O5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:"date",message:z.message}),J.dirty()}else if(z.kind==="time"){if(!Z5(z).test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{code:l.invalid_string,validation:"time",message:z.message}),J.dirty()}else if(z.kind==="duration"){if(!U5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"duration",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="ip"){if(!w5(Q.data,z.version))W=this._getOrReturnCtx(Q,W),c(W,{validation:"ip",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="jwt"){if(!R5(Q.data,z.alg))W=this._getOrReturnCtx(Q,W),c(W,{validation:"jwt",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="cidr"){if(!D5(Q.data,z.version))W=this._getOrReturnCtx(Q,W),c(W,{validation:"cidr",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="base64"){if(!A5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"base64",code:l.invalid_string,message:z.message}),J.dirty()}else if(z.kind==="base64url"){if(!V5.test(Q.data))W=this._getOrReturnCtx(Q,W),c(W,{validation:"base64url",code:l.invalid_string,message:z.message}),J.dirty()}else N0.assertNever(z);return{status:J.value,value:Q.data}}_regex(Q,Y,J){return this.refinement((W)=>Q.test(W),{validation:Y,code:l.invalid_string,...r.errToObj(J)})}_addCheck(Q){return new e0({...this._def,checks:[...this._def.checks,Q]})}email(Q){return this._addCheck({kind:"email",...r.errToObj(Q)})}url(Q){return this._addCheck({kind:"url",...r.errToObj(Q)})}emoji(Q){return this._addCheck({kind:"emoji",...r.errToObj(Q)})}uuid(Q){return this._addCheck({kind:"uuid",...r.errToObj(Q)})}nanoid(Q){return this._addCheck({kind:"nanoid",...r.errToObj(Q)})}cuid(Q){return this._addCheck({kind:"cuid",...r.errToObj(Q)})}cuid2(Q){return this._addCheck({kind:"cuid2",...r.errToObj(Q)})}ulid(Q){return this._addCheck({kind:"ulid",...r.errToObj(Q)})}base64(Q){return this._addCheck({kind:"base64",...r.errToObj(Q)})}base64url(Q){return this._addCheck({kind:"base64url",...r.errToObj(Q)})}jwt(Q){return this._addCheck({kind:"jwt",...r.errToObj(Q)})}ip(Q){return this._addCheck({kind:"ip",...r.errToObj(Q)})}cidr(Q){return this._addCheck({kind:"cidr",...r.errToObj(Q)})}datetime(Q){if(typeof Q==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:Q});return this._addCheck({kind:"datetime",precision:typeof Q?.precision==="undefined"?null:Q?.precision,offset:Q?.offset??!1,local:Q?.local??!1,...r.errToObj(Q?.message)})}date(Q){return this._addCheck({kind:"date",message:Q})}time(Q){if(typeof Q==="string")return this._addCheck({kind:"time",precision:null,message:Q});return this._addCheck({kind:"time",precision:typeof Q?.precision==="undefined"?null:Q?.precision,...r.errToObj(Q?.message)})}duration(Q){return this._addCheck({kind:"duration",...r.errToObj(Q)})}regex(Q,Y){return this._addCheck({kind:"regex",regex:Q,...r.errToObj(Y)})}includes(Q,Y){return this._addCheck({kind:"includes",value:Q,position:Y?.position,...r.errToObj(Y?.message)})}startsWith(Q,Y){return this._addCheck({kind:"startsWith",value:Q,...r.errToObj(Y)})}endsWith(Q,Y){return this._addCheck({kind:"endsWith",value:Q,...r.errToObj(Y)})}min(Q,Y){return this._addCheck({kind:"min",value:Q,...r.errToObj(Y)})}max(Q,Y){return this._addCheck({kind:"max",value:Q,...r.errToObj(Y)})}length(Q,Y){return this._addCheck({kind:"length",value:Q,...r.errToObj(Y)})}nonempty(Q){return this.min(1,r.errToObj(Q))}trim(){return new e0({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e0({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e0({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((Q)=>Q.kind==="datetime")}get isDate(){return!!this._def.checks.find((Q)=>Q.kind==="date")}get isTime(){return!!this._def.checks.find((Q)=>Q.kind==="time")}get isDuration(){return!!this._def.checks.find((Q)=>Q.kind==="duration")}get isEmail(){return!!this._def.checks.find((Q)=>Q.kind==="email")}get isURL(){return!!this._def.checks.find((Q)=>Q.kind==="url")}get isEmoji(){return!!this._def.checks.find((Q)=>Q.kind==="emoji")}get isUUID(){return!!this._def.checks.find((Q)=>Q.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((Q)=>Q.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((Q)=>Q.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((Q)=>Q.kind==="cuid2")}get isULID(){return!!this._def.checks.find((Q)=>Q.kind==="ulid")}get isIP(){return!!this._def.checks.find((Q)=>Q.kind==="ip")}get isCIDR(){return!!this._def.checks.find((Q)=>Q.kind==="cidr")}get isBase64(){return!!this._def.checks.find((Q)=>Q.kind==="base64")}get isBase64url(){return!!this._def.checks.find((Q)=>Q.kind==="base64url")}get minLength(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="min"){if(Q===null||Y.value>Q)Q=Y.value}return Q}get maxLength(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="max"){if(Q===null||Y.value<Q)Q=Y.value}return Q}}e0.create=(Q)=>{return new e0({checks:[],typeName:e.ZodString,coerce:Q?.coerce??!1,...B0(Q)})};function I5(Q,Y){let J=(Q.toString().split(".")[1]||"").length,W=(Y.toString().split(".")[1]||"").length,z=J>W?J:W,F=Number.parseInt(Q.toFixed(z).replace(".","")),X=Number.parseInt(Y.toFixed(z).replace(".",""));return F%X/10**z}class V1 extends F0{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(Q){if(this._def.coerce)Q.data=Number(Q.data);if(this._getType(Q)!==i.number){let z=this._getOrReturnCtx(Q);return c(z,{code:l.invalid_type,expected:i.number,received:z.parsedType}),t}let J=void 0,W=new f0;for(let z of this._def.checks)if(z.kind==="int"){if(!N0.isInteger(Q.data))J=this._getOrReturnCtx(Q,J),c(J,{code:l.invalid_type,expected:"integer",received:"float",message:z.message}),W.dirty()}else if(z.kind==="min"){if(z.inclusive?Q.data<z.value:Q.data<=z.value)J=this._getOrReturnCtx(Q,J),c(J,{code:l.too_small,minimum:z.value,type:"number",inclusive:z.inclusive,exact:!1,message:z.message}),W.dirty()}else if(z.kind==="max"){if(z.inclusive?Q.data>z.value:Q.data>=z.value)J=this._getOrReturnCtx(Q,J),c(J,{code:l.too_big,maximum:z.value,type:"number",inclusive:z.inclusive,exact:!1,message:z.message}),W.dirty()}else if(z.kind==="multipleOf"){if(I5(Q.data,z.value)!==0)J=this._getOrReturnCtx(Q,J),c(J,{code:l.not_multiple_of,multipleOf:z.value,message:z.message}),W.dirty()}else if(z.kind==="finite"){if(!Number.isFinite(Q.data))J=this._getOrReturnCtx(Q,J),c(J,{code:l.not_finite,message:z.message}),W.dirty()}else N0.assertNever(z);return{status:W.value,value:Q.data}}gte(Q,Y){return this.setLimit("min",Q,!0,r.toString(Y))}gt(Q,Y){return this.setLimit("min",Q,!1,r.toString(Y))}lte(Q,Y){return this.setLimit("max",Q,!0,r.toString(Y))}lt(Q,Y){return this.setLimit("max",Q,!1,r.toString(Y))}setLimit(Q,Y,J,W){return new V1({...this._def,checks:[...this._def.checks,{kind:Q,value:Y,inclusive:J,message:r.toString(W)}]})}_addCheck(Q){return new V1({...this._def,checks:[...this._def.checks,Q]})}int(Q){return this._addCheck({kind:"int",message:r.toString(Q)})}positive(Q){return this._addCheck({kind:"min",value:0,inclusive:!1,message:r.toString(Q)})}negative(Q){return this._addCheck({kind:"max",value:0,inclusive:!1,message:r.toString(Q)})}nonpositive(Q){return this._addCheck({kind:"max",value:0,inclusive:!0,message:r.toString(Q)})}nonnegative(Q){return this._addCheck({kind:"min",value:0,inclusive:!0,message:r.toString(Q)})}multipleOf(Q,Y){return this._addCheck({kind:"multipleOf",value:Q,message:r.toString(Y)})}finite(Q){return this._addCheck({kind:"finite",message:r.toString(Q)})}safe(Q){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:r.toString(Q)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:r.toString(Q)})}get minValue(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="min"){if(Q===null||Y.value>Q)Q=Y.value}return Q}get maxValue(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="max"){if(Q===null||Y.value<Q)Q=Y.value}return Q}get isInt(){return!!this._def.checks.find((Q)=>Q.kind==="int"||Q.kind==="multipleOf"&&N0.isInteger(Q.value))}get isFinite(){let Q=null,Y=null;for(let J of this._def.checks)if(J.kind==="finite"||J.kind==="int"||J.kind==="multipleOf")return!0;else if(J.kind==="min"){if(Y===null||J.value>Y)Y=J.value}else if(J.kind==="max"){if(Q===null||J.value<Q)Q=J.value}return Number.isFinite(Y)&&Number.isFinite(Q)}}V1.create=(Q)=>{return new V1({checks:[],typeName:e.ZodNumber,coerce:Q?.coerce||!1,...B0(Q)})};class O1 extends F0{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(Q){if(this._def.coerce)try{Q.data=BigInt(Q.data)}catch{return this._getInvalidInput(Q)}if(this._getType(Q)!==i.bigint)return this._getInvalidInput(Q);let J=void 0,W=new f0;for(let z of this._def.checks)if(z.kind==="min"){if(z.inclusive?Q.data<z.value:Q.data<=z.value)J=this._getOrReturnCtx(Q,J),c(J,{code:l.too_small,type:"bigint",minimum:z.value,inclusive:z.inclusive,message:z.message}),W.dirty()}else if(z.kind==="max"){if(z.inclusive?Q.data>z.value:Q.data>=z.value)J=this._getOrReturnCtx(Q,J),c(J,{code:l.too_big,type:"bigint",maximum:z.value,inclusive:z.inclusive,message:z.message}),W.dirty()}else if(z.kind==="multipleOf"){if(Q.data%z.value!==BigInt(0))J=this._getOrReturnCtx(Q,J),c(J,{code:l.not_multiple_of,multipleOf:z.value,message:z.message}),W.dirty()}else N0.assertNever(z);return{status:W.value,value:Q.data}}_getInvalidInput(Q){let Y=this._getOrReturnCtx(Q);return c(Y,{code:l.invalid_type,expected:i.bigint,received:Y.parsedType}),t}gte(Q,Y){return this.setLimit("min",Q,!0,r.toString(Y))}gt(Q,Y){return this.setLimit("min",Q,!1,r.toString(Y))}lte(Q,Y){return this.setLimit("max",Q,!0,r.toString(Y))}lt(Q,Y){return this.setLimit("max",Q,!1,r.toString(Y))}setLimit(Q,Y,J,W){return new O1({...this._def,checks:[...this._def.checks,{kind:Q,value:Y,inclusive:J,message:r.toString(W)}]})}_addCheck(Q){return new O1({...this._def,checks:[...this._def.checks,Q]})}positive(Q){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:r.toString(Q)})}negative(Q){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:r.toString(Q)})}nonpositive(Q){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:r.toString(Q)})}nonnegative(Q){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:r.toString(Q)})}multipleOf(Q,Y){return this._addCheck({kind:"multipleOf",value:Q,message:r.toString(Y)})}get minValue(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="min"){if(Q===null||Y.value>Q)Q=Y.value}return Q}get maxValue(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="max"){if(Q===null||Y.value<Q)Q=Y.value}return Q}}O1.create=(Q)=>{return new O1({checks:[],typeName:e.ZodBigInt,coerce:Q?.coerce??!1,...B0(Q)})};class l1 extends F0{_parse(Q){if(this._def.coerce)Q.data=Boolean(Q.data);if(this._getType(Q)!==i.boolean){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.boolean,received:J.parsedType}),t}return $0(Q.data)}}l1.create=(Q)=>{return new l1({typeName:e.ZodBoolean,coerce:Q?.coerce||!1,...B0(Q)})};class C1 extends F0{_parse(Q){if(this._def.coerce)Q.data=new Date(Q.data);if(this._getType(Q)!==i.date){let z=this._getOrReturnCtx(Q);return c(z,{code:l.invalid_type,expected:i.date,received:z.parsedType}),t}if(Number.isNaN(Q.data.getTime())){let z=this._getOrReturnCtx(Q);return c(z,{code:l.invalid_date}),t}let J=new f0,W=void 0;for(let z of this._def.checks)if(z.kind==="min"){if(Q.data.getTime()<z.value)W=this._getOrReturnCtx(Q,W),c(W,{code:l.too_small,message:z.message,inclusive:!0,exact:!1,minimum:z.value,type:"date"}),J.dirty()}else if(z.kind==="max"){if(Q.data.getTime()>z.value)W=this._getOrReturnCtx(Q,W),c(W,{code:l.too_big,message:z.message,inclusive:!0,exact:!1,maximum:z.value,type:"date"}),J.dirty()}else N0.assertNever(z);return{status:J.value,value:new Date(Q.data.getTime())}}_addCheck(Q){return new C1({...this._def,checks:[...this._def.checks,Q]})}min(Q,Y){return this._addCheck({kind:"min",value:Q.getTime(),message:r.toString(Y)})}max(Q,Y){return this._addCheck({kind:"max",value:Q.getTime(),message:r.toString(Y)})}get minDate(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="min"){if(Q===null||Y.value>Q)Q=Y.value}return Q!=null?new Date(Q):null}get maxDate(){let Q=null;for(let Y of this._def.checks)if(Y.kind==="max"){if(Q===null||Y.value<Q)Q=Y.value}return Q!=null?new Date(Q):null}}C1.create=(Q)=>{return new C1({checks:[],coerce:Q?.coerce||!1,typeName:e.ZodDate,...B0(Q)})};class N9 extends F0{_parse(Q){if(this._getType(Q)!==i.symbol){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.symbol,received:J.parsedType}),t}return $0(Q.data)}}N9.create=(Q)=>{return new N9({typeName:e.ZodSymbol,...B0(Q)})};class p1 extends F0{_parse(Q){if(this._getType(Q)!==i.undefined){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.undefined,received:J.parsedType}),t}return $0(Q.data)}}p1.create=(Q)=>{return new p1({typeName:e.ZodUndefined,...B0(Q)})};class d1 extends F0{_parse(Q){if(this._getType(Q)!==i.null){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.null,received:J.parsedType}),t}return $0(Q.data)}}d1.create=(Q)=>{return new d1({typeName:e.ZodNull,...B0(Q)})};class _1 extends F0{constructor(){super(...arguments);this._any=!0}_parse(Q){return $0(Q.data)}}_1.create=(Q)=>{return new _1({typeName:e.ZodAny,...B0(Q)})};class A1 extends F0{constructor(){super(...arguments);this._unknown=!0}_parse(Q){return $0(Q.data)}}A1.create=(Q)=>{return new A1({typeName:e.ZodUnknown,...B0(Q)})};class z1 extends F0{_parse(Q){let Y=this._getOrReturnCtx(Q);return c(Y,{code:l.invalid_type,expected:i.never,received:Y.parsedType}),t}}z1.create=(Q)=>{return new z1({typeName:e.ZodNever,...B0(Q)})};class M9 extends F0{_parse(Q){if(this._getType(Q)!==i.undefined){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.void,received:J.parsedType}),t}return $0(Q.data)}}M9.create=(Q)=>{return new M9({typeName:e.ZodVoid,...B0(Q)})};class W1 extends F0{_parse(Q){let{ctx:Y,status:J}=this._processInputParams(Q),W=this._def;if(Y.parsedType!==i.array)return c(Y,{code:l.invalid_type,expected:i.array,received:Y.parsedType}),t;if(W.exactLength!==null){let F=Y.data.length>W.exactLength.value,X=Y.data.length<W.exactLength.value;if(F||X)c(Y,{code:F?l.too_big:l.too_small,minimum:X?W.exactLength.value:void 0,maximum:F?W.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:W.exactLength.message}),J.dirty()}if(W.minLength!==null){if(Y.data.length<W.minLength.value)c(Y,{code:l.too_small,minimum:W.minLength.value,type:"array",inclusive:!0,exact:!1,message:W.minLength.message}),J.dirty()}if(W.maxLength!==null){if(Y.data.length>W.maxLength.value)c(Y,{code:l.too_big,maximum:W.maxLength.value,type:"array",inclusive:!0,exact:!1,message:W.maxLength.message}),J.dirty()}if(Y.common.async)return Promise.all([...Y.data].map((F,X)=>{return W.type._parseAsync(new X1(Y,F,Y.path,X))})).then((F)=>{return f0.mergeArray(J,F)});let z=[...Y.data].map((F,X)=>{return W.type._parseSync(new X1(Y,F,Y.path,X))});return f0.mergeArray(J,z)}get element(){return this._def.type}min(Q,Y){return new W1({...this._def,minLength:{value:Q,message:r.toString(Y)}})}max(Q,Y){return new W1({...this._def,maxLength:{value:Q,message:r.toString(Y)}})}length(Q,Y){return new W1({...this._def,exactLength:{value:Q,message:r.toString(Y)}})}nonempty(Q){return this.min(1,Q)}}W1.create=(Q,Y)=>{return new W1({type:Q,minLength:null,maxLength:null,exactLength:null,typeName:e.ZodArray,...B0(Y)})};function y1(Q){if(Q instanceof T0){let Y={};for(let J in Q.shape){let W=Q.shape[J];Y[J]=Q1.create(y1(W))}return new T0({...Q._def,shape:()=>Y})}else if(Q instanceof W1)return new W1({...Q._def,type:y1(Q.element)});else if(Q instanceof Q1)return Q1.create(y1(Q.unwrap()));else if(Q instanceof j1)return j1.create(y1(Q.unwrap()));else if(Q instanceof G1)return G1.create(Q.items.map((Y)=>y1(Y)));else return Q}class T0 extends F0{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let Q=this._def.shape(),Y=N0.objectKeys(Q);return this._cached={shape:Q,keys:Y},this._cached}_parse(Q){if(this._getType(Q)!==i.object){let K=this._getOrReturnCtx(Q);return c(K,{code:l.invalid_type,expected:i.object,received:K.parsedType}),t}let{status:J,ctx:W}=this._processInputParams(Q),{shape:z,keys:F}=this._getCached(),X=[];if(!(this._def.catchall instanceof z1&&this._def.unknownKeys==="strip")){for(let K in W.data)if(!F.includes(K))X.push(K)}let B=[];for(let K of F){let H=z[K],O=W.data[K];B.push({key:{status:"valid",value:K},value:H._parse(new X1(W,O,W.path,K)),alwaysSet:K in W.data})}if(this._def.catchall instanceof z1){let K=this._def.unknownKeys;if(K==="passthrough")for(let H of X)B.push({key:{status:"valid",value:H},value:{status:"valid",value:W.data[H]}});else if(K==="strict"){if(X.length>0)c(W,{code:l.unrecognized_keys,keys:X}),J.dirty()}else if(K==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let K=this._def.catchall;for(let H of X){let O=W.data[H];B.push({key:{status:"valid",value:H},value:K._parse(new X1(W,O,W.path,H)),alwaysSet:H in W.data})}}if(W.common.async)return Promise.resolve().then(async()=>{let K=[];for(let H of B){let O=await H.key,w=await H.value;K.push({key:O,value:w,alwaysSet:H.alwaysSet})}return K}).then((K)=>{return f0.mergeObjectSync(J,K)});else return f0.mergeObjectSync(J,B)}get shape(){return this._def.shape()}strict(Q){return r.errToObj,new T0({...this._def,unknownKeys:"strict",...Q!==void 0?{errorMap:(Y,J)=>{let W=this._def.errorMap?.(Y,J).message??J.defaultError;if(Y.code==="unrecognized_keys")return{message:r.errToObj(Q).message??W};return{message:W}}}:{}})}strip(){return new T0({...this._def,unknownKeys:"strip"})}passthrough(){return new T0({...this._def,unknownKeys:"passthrough"})}extend(Q){return new T0({...this._def,shape:()=>({...this._def.shape(),...Q})})}merge(Q){return new T0({unknownKeys:Q._def.unknownKeys,catchall:Q._def.catchall,shape:()=>({...this._def.shape(),...Q._def.shape()}),typeName:e.ZodObject})}setKey(Q,Y){return this.augment({[Q]:Y})}catchall(Q){return new T0({...this._def,catchall:Q})}pick(Q){let Y={};for(let J of N0.objectKeys(Q))if(Q[J]&&this.shape[J])Y[J]=this.shape[J];return new T0({...this._def,shape:()=>Y})}omit(Q){let Y={};for(let J of N0.objectKeys(this.shape))if(!Q[J])Y[J]=this.shape[J];return new T0({...this._def,shape:()=>Y})}deepPartial(){return y1(this)}partial(Q){let Y={};for(let J of N0.objectKeys(this.shape)){let W=this.shape[J];if(Q&&!Q[J])Y[J]=W;else Y[J]=W.optional()}return new T0({...this._def,shape:()=>Y})}required(Q){let Y={};for(let J of N0.objectKeys(this.shape))if(Q&&!Q[J])Y[J]=this.shape[J];else{let z=this.shape[J];while(z instanceof Q1)z=z._def.innerType;Y[J]=z}return new T0({...this._def,shape:()=>Y})}keyof(){return JW(N0.objectKeys(this.shape))}}T0.create=(Q,Y)=>{return new T0({shape:()=>Q,unknownKeys:"strip",catchall:z1.create(),typeName:e.ZodObject,...B0(Y)})};T0.strictCreate=(Q,Y)=>{return new T0({shape:()=>Q,unknownKeys:"strict",catchall:z1.create(),typeName:e.ZodObject,...B0(Y)})};T0.lazycreate=(Q,Y)=>{return new T0({shape:Q,unknownKeys:"strip",catchall:z1.create(),typeName:e.ZodObject,...B0(Y)})};class u1 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q),J=this._def.options;function W(z){for(let X of z)if(X.result.status==="valid")return X.result;for(let X of z)if(X.result.status==="dirty")return Y.common.issues.push(...X.ctx.common.issues),X.result;let F=z.map((X)=>new u0(X.ctx.common.issues));return c(Y,{code:l.invalid_union,unionErrors:F}),t}if(Y.common.async)return Promise.all(J.map(async(z)=>{let F={...Y,common:{...Y.common,issues:[]},parent:null};return{result:await z._parseAsync({data:Y.data,path:Y.path,parent:F}),ctx:F}})).then(W);else{let z=void 0,F=[];for(let B of J){let K={...Y,common:{...Y.common,issues:[]},parent:null},H=B._parseSync({data:Y.data,path:Y.path,parent:K});if(H.status==="valid")return H;else if(H.status==="dirty"&&!z)z={result:H,ctx:K};if(K.common.issues.length)F.push(K.common.issues)}if(z)return Y.common.issues.push(...z.ctx.common.issues),z.result;let X=F.map((B)=>new u0(B));return c(Y,{code:l.invalid_union,unionErrors:X}),t}}get options(){return this._def.options}}u1.create=(Q,Y)=>{return new u1({options:Q,typeName:e.ZodUnion,...B0(Y)})};var N1=(Q)=>{if(Q instanceof n1)return N1(Q.schema);else if(Q instanceof r0)return N1(Q.innerType());else if(Q instanceof i1)return[Q.value];else if(Q instanceof Z1)return Q.options;else if(Q instanceof o1)return N0.objectValues(Q.enum);else if(Q instanceof r1)return N1(Q._def.innerType);else if(Q instanceof p1)return[void 0];else if(Q instanceof d1)return[null];else if(Q instanceof Q1)return[void 0,...N1(Q.unwrap())];else if(Q instanceof j1)return[null,...N1(Q.unwrap())];else if(Q instanceof g9)return N1(Q.unwrap());else if(Q instanceof a1)return N1(Q.unwrap());else if(Q instanceof s1)return N1(Q._def.innerType);else return[]};class v9 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==i.object)return c(Y,{code:l.invalid_type,expected:i.object,received:Y.parsedType}),t;let J=this.discriminator,W=Y.data[J],z=this.optionsMap.get(W);if(!z)return c(Y,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[J]}),t;if(Y.common.async)return z._parseAsync({data:Y.data,path:Y.path,parent:Y});else return z._parseSync({data:Y.data,path:Y.path,parent:Y})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(Q,Y,J){let W=new Map;for(let z of Y){let F=N1(z.shape[Q]);if(!F.length)throw new Error(`A discriminator value for key \`${Q}\` could not be extracted from all schema options`);for(let X of F){if(W.has(X))throw new Error(`Discriminator property ${String(Q)} has duplicate value ${String(X)}`);W.set(X,z)}}return new v9({typeName:e.ZodDiscriminatedUnion,discriminator:Q,options:Y,optionsMap:W,...B0(J)})}}function s9(Q,Y){let J=M1(Q),W=M1(Y);if(Q===Y)return{valid:!0,data:Q};else if(J===i.object&&W===i.object){let z=N0.objectKeys(Y),F=N0.objectKeys(Q).filter((B)=>z.indexOf(B)!==-1),X={...Q,...Y};for(let B of F){let K=s9(Q[B],Y[B]);if(!K.valid)return{valid:!1};X[B]=K.data}return{valid:!0,data:X}}else if(J===i.array&&W===i.array){if(Q.length!==Y.length)return{valid:!1};let z=[];for(let F=0;F<Q.length;F++){let X=Q[F],B=Y[F],K=s9(X,B);if(!K.valid)return{valid:!1};z.push(K.data)}return{valid:!0,data:z}}else if(J===i.date&&W===i.date&&+Q===+Y)return{valid:!0,data:Q};else return{valid:!1}}class c1 extends F0{_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q),W=(z,F)=>{if(o9(z)||o9(F))return t;let X=s9(z.value,F.value);if(!X.valid)return c(J,{code:l.invalid_intersection_types}),t;if(r9(z)||r9(F))Y.dirty();return{status:Y.value,value:X.data}};if(J.common.async)return Promise.all([this._def.left._parseAsync({data:J.data,path:J.path,parent:J}),this._def.right._parseAsync({data:J.data,path:J.path,parent:J})]).then(([z,F])=>W(z,F));else return W(this._def.left._parseSync({data:J.data,path:J.path,parent:J}),this._def.right._parseSync({data:J.data,path:J.path,parent:J}))}}c1.create=(Q,Y,J)=>{return new c1({left:Q,right:Y,typeName:e.ZodIntersection,...B0(J)})};class G1 extends F0{_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q);if(J.parsedType!==i.array)return c(J,{code:l.invalid_type,expected:i.array,received:J.parsedType}),t;if(J.data.length<this._def.items.length)return c(J,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t;if(!this._def.rest&&J.data.length>this._def.items.length)c(J,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Y.dirty();let z=[...J.data].map((F,X)=>{let B=this._def.items[X]||this._def.rest;if(!B)return null;return B._parse(new X1(J,F,J.path,X))}).filter((F)=>!!F);if(J.common.async)return Promise.all(z).then((F)=>{return f0.mergeArray(Y,F)});else return f0.mergeArray(Y,z)}get items(){return this._def.items}rest(Q){return new G1({...this._def,rest:Q})}}G1.create=(Q,Y)=>{if(!Array.isArray(Q))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new G1({items:Q,typeName:e.ZodTuple,rest:null,...B0(Y)})};class L9 extends F0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q);if(J.parsedType!==i.object)return c(J,{code:l.invalid_type,expected:i.object,received:J.parsedType}),t;let W=[],z=this._def.keyType,F=this._def.valueType;for(let X in J.data)W.push({key:z._parse(new X1(J,X,J.path,X)),value:F._parse(new X1(J,J.data[X],J.path,X)),alwaysSet:X in J.data});if(J.common.async)return f0.mergeObjectAsync(Y,W);else return f0.mergeObjectSync(Y,W)}get element(){return this._def.valueType}static create(Q,Y,J){if(Y instanceof F0)return new L9({keyType:Q,valueType:Y,typeName:e.ZodRecord,...B0(J)});return new L9({keyType:e0.create(),valueType:Q,typeName:e.ZodRecord,...B0(Y)})}}class j9 extends F0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q);if(J.parsedType!==i.map)return c(J,{code:l.invalid_type,expected:i.map,received:J.parsedType}),t;let W=this._def.keyType,z=this._def.valueType,F=[...J.data.entries()].map(([X,B],K)=>{return{key:W._parse(new X1(J,X,J.path,[K,"key"])),value:z._parse(new X1(J,B,J.path,[K,"value"]))}});if(J.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let B of F){let K=await B.key,H=await B.value;if(K.status==="aborted"||H.status==="aborted")return t;if(K.status==="dirty"||H.status==="dirty")Y.dirty();X.set(K.value,H.value)}return{status:Y.value,value:X}})}else{let X=new Map;for(let B of F){let{key:K,value:H}=B;if(K.status==="aborted"||H.status==="aborted")return t;if(K.status==="dirty"||H.status==="dirty")Y.dirty();X.set(K.value,H.value)}return{status:Y.value,value:X}}}}j9.create=(Q,Y,J)=>{return new j9({valueType:Y,keyType:Q,typeName:e.ZodMap,...B0(J)})};class P1 extends F0{_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q);if(J.parsedType!==i.set)return c(J,{code:l.invalid_type,expected:i.set,received:J.parsedType}),t;let W=this._def;if(W.minSize!==null){if(J.data.size<W.minSize.value)c(J,{code:l.too_small,minimum:W.minSize.value,type:"set",inclusive:!0,exact:!1,message:W.minSize.message}),Y.dirty()}if(W.maxSize!==null){if(J.data.size>W.maxSize.value)c(J,{code:l.too_big,maximum:W.maxSize.value,type:"set",inclusive:!0,exact:!1,message:W.maxSize.message}),Y.dirty()}let z=this._def.valueType;function F(B){let K=new Set;for(let H of B){if(H.status==="aborted")return t;if(H.status==="dirty")Y.dirty();K.add(H.value)}return{status:Y.value,value:K}}let X=[...J.data.values()].map((B,K)=>z._parse(new X1(J,B,J.path,K)));if(J.common.async)return Promise.all(X).then((B)=>F(B));else return F(X)}min(Q,Y){return new P1({...this._def,minSize:{value:Q,message:r.toString(Y)}})}max(Q,Y){return new P1({...this._def,maxSize:{value:Q,message:r.toString(Y)}})}size(Q,Y){return this.min(Q,Y).max(Q,Y)}nonempty(Q){return this.min(1,Q)}}P1.create=(Q,Y)=>{return new P1({valueType:Q,minSize:null,maxSize:null,typeName:e.ZodSet,...B0(Y)})};class $1 extends F0{constructor(){super(...arguments);this.validate=this.implement}_parse(Q){let{ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==i.function)return c(Y,{code:l.invalid_type,expected:i.function,received:Y.parsedType}),t;function J(X,B){return E9({data:X,path:Y.path,errorMaps:[Y.common.contextualErrorMap,Y.schemaErrorMap,T9(),m1].filter((K)=>!!K),issueData:{code:l.invalid_arguments,argumentsError:B}})}function W(X,B){return E9({data:X,path:Y.path,errorMaps:[Y.common.contextualErrorMap,Y.schemaErrorMap,T9(),m1].filter((K)=>!!K),issueData:{code:l.invalid_return_type,returnTypeError:B}})}let z={errorMap:Y.common.contextualErrorMap},F=Y.data;if(this._def.returns instanceof T1){let X=this;return $0(async function(...B){let K=new u0([]),H=await X._def.args.parseAsync(B,z).catch((_)=>{throw K.addIssue(J(B,_)),K}),O=await Reflect.apply(F,this,H);return await X._def.returns._def.type.parseAsync(O,z).catch((_)=>{throw K.addIssue(W(O,_)),K})})}else{let X=this;return $0(function(...B){let K=X._def.args.safeParse(B,z);if(!K.success)throw new u0([J(B,K.error)]);let H=Reflect.apply(F,this,K.data),O=X._def.returns.safeParse(H,z);if(!O.success)throw new u0([W(H,O.error)]);return O.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...Q){return new $1({...this._def,args:G1.create(Q).rest(A1.create())})}returns(Q){return new $1({...this._def,returns:Q})}implement(Q){return this.parse(Q)}strictImplement(Q){return this.parse(Q)}static create(Q,Y,J){return new $1({args:Q?Q:G1.create([]).rest(A1.create()),returns:Y||A1.create(),typeName:e.ZodFunction,...B0(J)})}}class n1 extends F0{get schema(){return this._def.getter()}_parse(Q){let{ctx:Y}=this._processInputParams(Q);return this._def.getter()._parse({data:Y.data,path:Y.path,parent:Y})}}n1.create=(Q,Y)=>{return new n1({getter:Q,typeName:e.ZodLazy,...B0(Y)})};class i1 extends F0{_parse(Q){if(Q.data!==this._def.value){let Y=this._getOrReturnCtx(Q);return c(Y,{received:Y.data,code:l.invalid_literal,expected:this._def.value}),t}return{status:"valid",value:Q.data}}get value(){return this._def.value}}i1.create=(Q,Y)=>{return new i1({value:Q,typeName:e.ZodLiteral,...B0(Y)})};function JW(Q,Y){return new Z1({values:Q,typeName:e.ZodEnum,...B0(Y)})}class Z1 extends F0{_parse(Q){if(typeof Q.data!=="string"){let Y=this._getOrReturnCtx(Q),J=this._def.values;return c(Y,{expected:N0.joinValues(J),received:Y.parsedType,code:l.invalid_type}),t}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(Q.data)){let Y=this._getOrReturnCtx(Q),J=this._def.values;return c(Y,{received:Y.data,code:l.invalid_enum_value,options:J}),t}return $0(Q.data)}get options(){return this._def.values}get enum(){let Q={};for(let Y of this._def.values)Q[Y]=Y;return Q}get Values(){let Q={};for(let Y of this._def.values)Q[Y]=Y;return Q}get Enum(){let Q={};for(let Y of this._def.values)Q[Y]=Y;return Q}extract(Q,Y=this._def){return Z1.create(Q,{...this._def,...Y})}exclude(Q,Y=this._def){return Z1.create(this.options.filter((J)=>!Q.includes(J)),{...this._def,...Y})}}Z1.create=JW;class o1 extends F0{_parse(Q){let Y=N0.getValidEnumValues(this._def.values),J=this._getOrReturnCtx(Q);if(J.parsedType!==i.string&&J.parsedType!==i.number){let W=N0.objectValues(Y);return c(J,{expected:N0.joinValues(W),received:J.parsedType,code:l.invalid_type}),t}if(!this._cache)this._cache=new Set(N0.getValidEnumValues(this._def.values));if(!this._cache.has(Q.data)){let W=N0.objectValues(Y);return c(J,{received:J.data,code:l.invalid_enum_value,options:W}),t}return $0(Q.data)}get enum(){return this._def.values}}o1.create=(Q,Y)=>{return new o1({values:Q,typeName:e.ZodNativeEnum,...B0(Y)})};class T1 extends F0{unwrap(){return this._def.type}_parse(Q){let{ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==i.promise&&Y.common.async===!1)return c(Y,{code:l.invalid_type,expected:i.promise,received:Y.parsedType}),t;let J=Y.parsedType===i.promise?Y.data:Promise.resolve(Y.data);return $0(J.then((W)=>{return this._def.type.parseAsync(W,{path:Y.path,errorMap:Y.common.contextualErrorMap})}))}}T1.create=(Q,Y)=>{return new T1({type:Q,typeName:e.ZodPromise,...B0(Y)})};class r0 extends F0{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===e.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q),W=this._def.effect||null,z={addIssue:(F)=>{if(c(J,F),F.fatal)Y.abort();else Y.dirty()},get path(){return J.path}};if(z.addIssue=z.addIssue.bind(z),W.type==="preprocess"){let F=W.transform(J.data,z);if(J.common.async)return Promise.resolve(F).then(async(X)=>{if(Y.value==="aborted")return t;let B=await this._def.schema._parseAsync({data:X,path:J.path,parent:J});if(B.status==="aborted")return t;if(B.status==="dirty")return h1(B.value);if(Y.value==="dirty")return h1(B.value);return B});else{if(Y.value==="aborted")return t;let X=this._def.schema._parseSync({data:F,path:J.path,parent:J});if(X.status==="aborted")return t;if(X.status==="dirty")return h1(X.value);if(Y.value==="dirty")return h1(X.value);return X}}if(W.type==="refinement"){let F=(X)=>{let B=W.refinement(X,z);if(J.common.async)return Promise.resolve(B);if(B instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(J.common.async===!1){let X=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(X.status==="aborted")return t;if(X.status==="dirty")Y.dirty();return F(X.value),{status:Y.value,value:X.value}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((X)=>{if(X.status==="aborted")return t;if(X.status==="dirty")Y.dirty();return F(X.value).then(()=>{return{status:Y.value,value:X.value}})})}if(W.type==="transform")if(J.common.async===!1){let F=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(!I1(F))return t;let X=W.transform(F.value,z);if(X instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Y.value,value:X}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((F)=>{if(!I1(F))return t;return Promise.resolve(W.transform(F.value,z)).then((X)=>({status:Y.value,value:X}))});N0.assertNever(W)}}r0.create=(Q,Y,J)=>{return new r0({schema:Q,typeName:e.ZodEffects,effect:Y,...B0(J)})};r0.createWithPreprocess=(Q,Y,J)=>{return new r0({schema:Y,effect:{type:"preprocess",transform:Q},typeName:e.ZodEffects,...B0(J)})};class Q1 extends F0{_parse(Q){if(this._getType(Q)===i.undefined)return $0(void 0);return this._def.innerType._parse(Q)}unwrap(){return this._def.innerType}}Q1.create=(Q,Y)=>{return new Q1({innerType:Q,typeName:e.ZodOptional,...B0(Y)})};class j1 extends F0{_parse(Q){if(this._getType(Q)===i.null)return $0(null);return this._def.innerType._parse(Q)}unwrap(){return this._def.innerType}}j1.create=(Q,Y)=>{return new j1({innerType:Q,typeName:e.ZodNullable,...B0(Y)})};class r1 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q),J=Y.data;if(Y.parsedType===i.undefined)J=this._def.defaultValue();return this._def.innerType._parse({data:J,path:Y.path,parent:Y})}removeDefault(){return this._def.innerType}}r1.create=(Q,Y)=>{return new r1({innerType:Q,typeName:e.ZodDefault,defaultValue:typeof Y.default==="function"?Y.default:()=>Y.default,...B0(Y)})};class s1 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q),J={...Y,common:{...Y.common,issues:[]}},W=this._def.innerType._parse({data:J.data,path:J.path,parent:{...J}});if(K9(W))return W.then((z)=>{return{status:"valid",value:z.status==="valid"?z.value:this._def.catchValue({get error(){return new u0(J.common.issues)},input:J.data})}});else return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new u0(J.common.issues)},input:J.data})}}removeCatch(){return this._def.innerType}}s1.create=(Q,Y)=>{return new s1({innerType:Q,typeName:e.ZodCatch,catchValue:typeof Y.catch==="function"?Y.catch:()=>Y.catch,...B0(Y)})};class A9 extends F0{_parse(Q){if(this._getType(Q)!==i.nan){let J=this._getOrReturnCtx(Q);return c(J,{code:l.invalid_type,expected:i.nan,received:J.parsedType}),t}return{status:"valid",value:Q.data}}}A9.create=(Q)=>{return new A9({typeName:e.ZodNaN,...B0(Q)})};var C5=Symbol("zod_brand");class g9 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q),J=Y.data;return this._def.type._parse({data:J,path:Y.path,parent:Y})}unwrap(){return this._def.type}}class O9 extends F0{_parse(Q){let{status:Y,ctx:J}=this._processInputParams(Q);if(J.common.async)return(async()=>{let z=await this._def.in._parseAsync({data:J.data,path:J.path,parent:J});if(z.status==="aborted")return t;if(z.status==="dirty")return Y.dirty(),h1(z.value);else return this._def.out._parseAsync({data:z.value,path:J.path,parent:J})})();else{let W=this._def.in._parseSync({data:J.data,path:J.path,parent:J});if(W.status==="aborted")return t;if(W.status==="dirty")return Y.dirty(),{status:"dirty",value:W.value};else return this._def.out._parseSync({data:W.value,path:J.path,parent:J})}}static create(Q,Y){return new O9({in:Q,out:Y,typeName:e.ZodPipeline})}}class a1 extends F0{_parse(Q){let Y=this._def.innerType._parse(Q),J=(W)=>{if(I1(W))W.value=Object.freeze(W.value);return W};return K9(Y)?Y.then((W)=>J(W)):J(Y)}unwrap(){return this._def.innerType}}a1.create=(Q,Y)=>{return new a1({innerType:Q,typeName:e.ZodReadonly,...B0(Y)})};function x8(Q,Y){let J=typeof Q==="function"?Q(Y):typeof Q==="string"?{message:Q}:Q;return typeof J==="string"?{message:J}:J}function zW(Q,Y={},J){if(Q)return _1.create().superRefine((W,z)=>{let F=Q(W);if(F instanceof Promise)return F.then((X)=>{if(!X){let B=x8(Y,W),K=B.fatal??J??!0;z.addIssue({code:"custom",...B,fatal:K})}});if(!F){let X=x8(Y,W),B=X.fatal??J??!0;z.addIssue({code:"custom",...X,fatal:B})}return});return _1.create()}var _5={object:T0.lazycreate},e;(function(Q){Q.ZodString="ZodString",Q.ZodNumber="ZodNumber",Q.ZodNaN="ZodNaN",Q.ZodBigInt="ZodBigInt",Q.ZodBoolean="ZodBoolean",Q.ZodDate="ZodDate",Q.ZodSymbol="ZodSymbol",Q.ZodUndefined="ZodUndefined",Q.ZodNull="ZodNull",Q.ZodAny="ZodAny",Q.ZodUnknown="ZodUnknown",Q.ZodNever="ZodNever",Q.ZodVoid="ZodVoid",Q.ZodArray="ZodArray",Q.ZodObject="ZodObject",Q.ZodUnion="ZodUnion",Q.ZodDiscriminatedUnion="ZodDiscriminatedUnion",Q.ZodIntersection="ZodIntersection",Q.ZodTuple="ZodTuple",Q.ZodRecord="ZodRecord",Q.ZodMap="ZodMap",Q.ZodSet="ZodSet",Q.ZodFunction="ZodFunction",Q.ZodLazy="ZodLazy",Q.ZodLiteral="ZodLiteral",Q.ZodEnum="ZodEnum",Q.ZodEffects="ZodEffects",Q.ZodNativeEnum="ZodNativeEnum",Q.ZodOptional="ZodOptional",Q.ZodNullable="ZodNullable",Q.ZodDefault="ZodDefault",Q.ZodCatch="ZodCatch",Q.ZodPromise="ZodPromise",Q.ZodBranded="ZodBranded",Q.ZodPipeline="ZodPipeline",Q.ZodReadonly="ZodReadonly"})(e||(e={}));var P5=(Q,Y={message:`Input not instance of ${Q.name}`})=>zW((J)=>J instanceof Q,Y),GW=e0.create,BW=V1.create,T5=A9.create,E5=O1.create,FW=l1.create,b5=C1.create,S5=N9.create,v5=p1.create,g5=d1.create,k5=_1.create,x5=A1.create,y5=z1.create,f5=M9.create,h5=W1.create,$5=T0.create,m5=T0.strictCreate,l5=u1.create,p5=v9.create,d5=c1.create,u5=G1.create,c5=L9.create,n5=j9.create,i5=P1.create,o5=$1.create,r5=n1.create,s5=i1.create,a5=Z1.create,t5=o1.create,e5=T1.create,y8=r0.create,WY=Q1.create,QY=j1.create,XY=r0.createWithPreprocess,YY=O9.create,JY=()=>GW().optional(),zY=()=>BW().optional(),GY=()=>FW().optional(),BY={string:(Q)=>e0.create({...Q,coerce:!0}),number:(Q)=>V1.create({...Q,coerce:!0}),boolean:(Q)=>l1.create({...Q,coerce:!0}),bigint:(Q)=>O1.create({...Q,coerce:!0}),date:(Q)=>C1.create({...Q,coerce:!0})},FY=t;var k9="2.0",HW=G.union([G.string(),G.number().int()]),UW=G.string(),HY=G.object({progressToken:G.optional(HW)}).passthrough(),s0=G.object({_meta:G.optional(HY)}).passthrough(),m0=G.object({method:G.string(),params:G.optional(s0)}),Z9=G.object({_meta:G.optional(G.object({}).passthrough())}).passthrough(),B1=G.object({method:G.string(),params:G.optional(Z9)}),a0=G.object({_meta:G.optional(G.object({}).passthrough())}).passthrough(),x9=G.union([G.string(),G.number().int()]),UY=G.object({jsonrpc:G.literal(k9),id:x9}).merge(m0).strict();var qY=G.object({jsonrpc:G.literal(k9)}).merge(B1).strict();var KY=G.object({jsonrpc:G.literal(k9),id:x9,result:a0}).strict();var f8;(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"})(f8||(f8={}));var NY=G.object({jsonrpc:G.literal(k9),id:x9,error:G.object({code:G.number().int(),message:G.string(),data:G.optional(G.unknown())})}).strict();var lJ=G.union([UY,qY,KY,NY]),qW=a0.strict(),KW=B1.extend({method:G.literal("notifications/cancelled"),params:Z9.extend({requestId:x9,reason:G.string().optional()})}),w9=G.object({name:G.string(),title:G.optional(G.string())}).passthrough(),NW=w9.extend({version:G.string()}),MY=G.object({experimental:G.optional(G.object({}).passthrough()),sampling:G.optional(G.object({}).passthrough()),elicitation:G.optional(G.object({}).passthrough()),roots:G.optional(G.object({listChanged:G.optional(G.boolean())}).passthrough())}).passthrough(),LY=m0.extend({method:G.literal("initialize"),params:s0.extend({protocolVersion:G.string(),capabilities:MY,clientInfo:NW})}),jY=G.object({experimental:G.optional(G.object({}).passthrough()),logging:G.optional(G.object({}).passthrough()),completions:G.optional(G.object({}).passthrough()),prompts:G.optional(G.object({listChanged:G.optional(G.boolean())}).passthrough()),resources:G.optional(G.object({subscribe:G.optional(G.boolean()),listChanged:G.optional(G.boolean())}).passthrough()),tools:G.optional(G.object({listChanged:G.optional(G.boolean())}).passthrough())}).passthrough(),AY=a0.extend({protocolVersion:G.string(),capabilities:jY,serverInfo:NW,instructions:G.optional(G.string())}),VY=B1.extend({method:G.literal("notifications/initialized")}),MW=m0.extend({method:G.literal("ping")}),OY=G.object({progress:G.number(),total:G.optional(G.number()),message:G.optional(G.string())}).passthrough(),LW=B1.extend({method:G.literal("notifications/progress"),params:Z9.merge(OY).extend({progressToken:HW})}),y9=m0.extend({params:s0.extend({cursor:G.optional(UW)}).optional()}),f9=a0.extend({nextCursor:G.optional(UW)}),jW=G.object({uri:G.string(),mimeType:G.optional(G.string()),_meta:G.optional(G.object({}).passthrough())}).passthrough(),AW=jW.extend({text:G.string()}),J8=G.string().refine((Q)=>{try{return atob(Q),!0}catch(Y){return!1}},{message:"Invalid Base64 string"}),VW=jW.extend({blob:J8}),OW=w9.extend({uri:G.string(),description:G.optional(G.string()),mimeType:G.optional(G.string()),_meta:G.optional(G.object({}).passthrough())}),ZY=w9.extend({uriTemplate:G.string(),description:G.optional(G.string()),mimeType:G.optional(G.string()),_meta:G.optional(G.object({}).passthrough())}),wY=y9.extend({method:G.literal("resources/list")}),RY=f9.extend({resources:G.array(OW)}),DY=y9.extend({method:G.literal("resources/templates/list")}),IY=f9.extend({resourceTemplates:G.array(ZY)}),CY=m0.extend({method:G.literal("resources/read"),params:s0.extend({uri:G.string()})}),_Y=a0.extend({contents:G.array(G.union([AW,VW]))}),PY=B1.extend({method:G.literal("notifications/resources/list_changed")}),TY=m0.extend({method:G.literal("resources/subscribe"),params:s0.extend({uri:G.string()})}),EY=m0.extend({method:G.literal("resources/unsubscribe"),params:s0.extend({uri:G.string()})}),bY=B1.extend({method:G.literal("notifications/resources/updated"),params:Z9.extend({uri:G.string()})}),SY=G.object({name:G.string(),description:G.optional(G.string()),required:G.optional(G.boolean())}).passthrough(),vY=w9.extend({description:G.optional(G.string()),arguments:G.optional(G.array(SY)),_meta:G.optional(G.object({}).passthrough())}),gY=y9.extend({method:G.literal("prompts/list")}),kY=f9.extend({prompts:G.array(vY)}),xY=m0.extend({method:G.literal("prompts/get"),params:s0.extend({name:G.string(),arguments:G.optional(G.record(G.string()))})}),z8=G.object({type:G.literal("text"),text:G.string(),_meta:G.optional(G.object({}).passthrough())}).passthrough(),G8=G.object({type:G.literal("image"),data:J8,mimeType:G.string(),_meta:G.optional(G.object({}).passthrough())}).passthrough(),B8=G.object({type:G.literal("audio"),data:J8,mimeType:G.string(),_meta:G.optional(G.object({}).passthrough())}).passthrough(),yY=G.object({type:G.literal("resource"),resource:G.union([AW,VW]),_meta:G.optional(G.object({}).passthrough())}).passthrough(),fY=OW.extend({type:G.literal("resource_link")}),ZW=G.union([z8,G8,B8,fY,yY]),hY=G.object({role:G.enum(["user","assistant"]),content:ZW}).passthrough(),$Y=a0.extend({description:G.optional(G.string()),messages:G.array(hY)}),mY=B1.extend({method:G.literal("notifications/prompts/list_changed")}),lY=G.object({title:G.optional(G.string()),readOnlyHint:G.optional(G.boolean()),destructiveHint:G.optional(G.boolean()),idempotentHint:G.optional(G.boolean()),openWorldHint:G.optional(G.boolean())}).passthrough(),pY=w9.extend({description:G.optional(G.string()),inputSchema:G.object({type:G.literal("object"),properties:G.optional(G.object({}).passthrough()),required:G.optional(G.array(G.string()))}).passthrough(),outputSchema:G.optional(G.object({type:G.literal("object"),properties:G.optional(G.object({}).passthrough()),required:G.optional(G.array(G.string()))}).passthrough()),annotations:G.optional(lY),_meta:G.optional(G.object({}).passthrough())}),dY=y9.extend({method:G.literal("tools/list")}),uY=f9.extend({tools:G.array(pY)}),wW=a0.extend({content:G.array(ZW).default([]),structuredContent:G.object({}).passthrough().optional(),isError:G.optional(G.boolean())}),pJ=wW.or(a0.extend({toolResult:G.unknown()})),cY=m0.extend({method:G.literal("tools/call"),params:s0.extend({name:G.string(),arguments:G.optional(G.record(G.unknown()))})}),nY=B1.extend({method:G.literal("notifications/tools/list_changed")}),RW=G.enum(["debug","info","notice","warning","error","critical","alert","emergency"]),iY=m0.extend({method:G.literal("logging/setLevel"),params:s0.extend({level:RW})}),oY=B1.extend({method:G.literal("notifications/message"),params:Z9.extend({level:RW,logger:G.optional(G.string()),data:G.unknown()})}),rY=G.object({name:G.string().optional()}).passthrough(),sY=G.object({hints:G.optional(G.array(rY)),costPriority:G.optional(G.number().min(0).max(1)),speedPriority:G.optional(G.number().min(0).max(1)),intelligencePriority:G.optional(G.number().min(0).max(1))}).passthrough(),aY=G.object({role:G.enum(["user","assistant"]),content:G.union([z8,G8,B8])}).passthrough(),tY=m0.extend({method:G.literal("sampling/createMessage"),params:s0.extend({messages:G.array(aY),systemPrompt:G.optional(G.string()),includeContext:G.optional(G.enum(["none","thisServer","allServers"])),temperature:G.optional(G.number()),maxTokens:G.number().int(),stopSequences:G.optional(G.array(G.string())),metadata:G.optional(G.object({}).passthrough()),modelPreferences:G.optional(sY)})}),eY=a0.extend({model:G.string(),stopReason:G.optional(G.enum(["endTurn","stopSequence","maxTokens"]).or(G.string())),role:G.enum(["user","assistant"]),content:G.discriminatedUnion("type",[z8,G8,B8])}),WJ=G.object({type:G.literal("boolean"),title:G.optional(G.string()),description:G.optional(G.string()),default:G.optional(G.boolean())}).passthrough(),QJ=G.object({type:G.literal("string"),title:G.optional(G.string()),description:G.optional(G.string()),minLength:G.optional(G.number()),maxLength:G.optional(G.number()),format:G.optional(G.enum(["email","uri","date","date-time"]))}).passthrough(),XJ=G.object({type:G.enum(["number","integer"]),title:G.optional(G.string()),description:G.optional(G.string()),minimum:G.optional(G.number()),maximum:G.optional(G.number())}).passthrough(),YJ=G.object({type:G.literal("string"),title:G.optional(G.string()),description:G.optional(G.string()),enum:G.array(G.string()),enumNames:G.optional(G.array(G.string()))}).passthrough(),JJ=G.union([WJ,QJ,XJ,YJ]),zJ=m0.extend({method:G.literal("elicitation/create"),params:s0.extend({message:G.string(),requestedSchema:G.object({type:G.literal("object"),properties:G.record(G.string(),JJ),required:G.optional(G.array(G.string()))}).passthrough()})}),GJ=a0.extend({action:G.enum(["accept","decline","cancel"]),content:G.optional(G.record(G.string(),G.unknown()))}),BJ=G.object({type:G.literal("ref/resource"),uri:G.string()}).passthrough(),FJ=G.object({type:G.literal("ref/prompt"),name:G.string()}).passthrough(),HJ=m0.extend({method:G.literal("completion/complete"),params:s0.extend({ref:G.union([FJ,BJ]),argument:G.object({name:G.string(),value:G.string()}).passthrough(),context:G.optional(G.object({arguments:G.optional(G.record(G.string(),G.string()))}))})}),UJ=a0.extend({completion:G.object({values:G.array(G.string()).max(100),total:G.optional(G.number().int()),hasMore:G.optional(G.boolean())}).passthrough()}),qJ=G.object({uri:G.string().startsWith("file://"),name:G.optional(G.string()),_meta:G.optional(G.object({}).passthrough())}).passthrough(),KJ=m0.extend({method:G.literal("roots/list")}),NJ=a0.extend({roots:G.array(qJ)}),MJ=B1.extend({method:G.literal("notifications/roots/list_changed")}),dJ=G.union([MW,LY,HJ,iY,xY,gY,wY,DY,CY,TY,EY,cY,dY]),uJ=G.union([KW,LW,VY,MJ]),cJ=G.union([qW,eY,GJ,NJ]),nJ=G.union([MW,tY,zJ,KJ]),iJ=G.union([KW,LW,oY,bY,PY,nY,mY]),oJ=G.union([qW,AY,UJ,$Y,kY,RY,IY,_Y,wW,uY]);var rJ=B6(p6(),1);var sJ=Symbol("Let zodToJsonSchema decide on which parser to use");var aJ=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var a9;(function(Q){Q.Completable="McpCompletable"})(a9||(a9={}));class t9 extends F0{_parse(Q){let{ctx:Y}=this._processInputParams(Q),J=Y.data;return this._def.type._parse({data:J,path:Y.path,parent:Y})}unwrap(){return this._def.type}}t9.create=(Q,Y)=>{return new t9({type:Q,typeName:a9.Completable,complete:Y.complete,...LJ(Y)})};function LJ(Q){if(!Q)return{};let{errorMap:Y,invalid_type_error:J,required_error:W,description:z}=Q;if(Y&&(J||W))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Y)return{errorMap:Y,description:z};return{errorMap:(X,B)=>{var K,H;let{message:O}=Q;if(X.code==="invalid_enum_value")return{message:O!==null&&O!==void 0?O:B.defaultError};if(typeof B.data==="undefined")return{message:(K=O!==null&&O!==void 0?O:W)!==null&&K!==void 0?K:B.defaultError};if(X.code!=="invalid_type")return{message:B.defaultError};return{message:(H=O!==null&&O!==void 0?O:J)!==null&&H!==void 0?H:B.defaultError}},description:z}}function DW({prompt:Q,options:Y}){let{systemPrompt:J,settingSources:W,...z}=Y??{},F,X;if(J===void 0)F="";else if(typeof J==="string")F=J;else if(J.type==="preset")X=J.append;let B=z.pathToClaudeCodeExecutable;if(!B){let K=d6(import.meta.url),H=_8(K,"..");B=_8(H,"cli.js")}return process.env.CLAUDE_AGENT_SDK_VERSION="0.1.15",eX({prompt:Q,options:{...z,pathToClaudeCodeExecutable:B,customSystemPrompt:F,appendSystemPrompt:X,settingSources:W??[]}})}import{Database as AJ}from"bun:sqlite";import{join as c0,dirname as Q7,basename as X7}from"path";import{homedir as IW}from"os";import{existsSync as G7,mkdirSync as jJ}from"fs";var F1=process.env.CLAUDE_MEM_DATA_DIR||c0(IW(),".claude-mem"),F8=process.env.CLAUDE_CONFIG_DIR||c0(IW(),".claude"),B7=c0(F1,"archives"),F7=c0(F1,"logs"),H7=c0(F1,"trash"),U7=c0(F1,"backups"),q7=c0(F1,"chroma"),K7=c0(F1,"settings.json"),CW=c0(F1,"claude-mem.db"),N7=c0(F8,"settings.json"),M7=c0(F8,"commands"),L7=c0(F8,"CLAUDE.md");function _W(Q){return c0(F1,`worker-${Q}.sock`)}function PW(Q){jJ(Q,{recursive:!0})}class H8{db;constructor(){PW(F1),this.db=new AJ(CW,{create:!0,readwrite:!0}),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON")}getRecentSummaries(Q,Y=10){return this.db.query(`
|
|
SELECT
|
|
request, investigated, learned, completed, next_steps,
|
|
files_read, files_edited, notes, created_at
|
|
FROM session_summaries
|
|
WHERE project = ?
|
|
ORDER BY created_at_epoch DESC
|
|
LIMIT ?
|
|
`).all(Q,Y)}findActiveSDKSession(Q){return this.db.query(`
|
|
SELECT id, sdk_session_id, project
|
|
FROM sdk_sessions
|
|
WHERE claude_session_id = ? AND status = 'active'
|
|
LIMIT 1
|
|
`).get(Q)||null}createSDKSession(Q,Y,J){let W=new Date,z=W.getTime();return this.db.query(`
|
|
INSERT INTO sdk_sessions
|
|
(claude_session_id, project, user_prompt, started_at, started_at_epoch, status)
|
|
VALUES (?, ?, ?, ?, ?, 'active')
|
|
`).run(Q,Y,J,W.toISOString(),z),this.db.query("SELECT last_insert_rowid() as id").get().id}updateSDKSessionId(Q,Y){this.db.query(`
|
|
UPDATE sdk_sessions
|
|
SET sdk_session_id = ?
|
|
WHERE id = ?
|
|
`).run(Y,Q)}storeObservation(Q,Y,J,W){let z=new Date,F=z.getTime();this.db.query(`
|
|
INSERT INTO observations
|
|
(sdk_session_id, project, text, type, created_at, created_at_epoch)
|
|
VALUES (?, ?, ?, ?, ?, ?)
|
|
`).run(Q,Y,W,J,z.toISOString(),F)}storeSummary(Q,Y,J){let W=new Date,z=W.getTime();this.db.query(`
|
|
INSERT INTO session_summaries
|
|
(sdk_session_id, project, request, investigated, learned, completed,
|
|
next_steps, files_read, files_edited, notes, created_at, created_at_epoch)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
`).run(Q,Y,J.request||null,J.investigated||null,J.learned||null,J.completed||null,J.next_steps||null,J.files_read||null,J.files_edited||null,J.notes||null,W.toISOString(),z)}markSessionCompleted(Q){let Y=new Date,J=Y.getTime();this.db.query(`
|
|
UPDATE sdk_sessions
|
|
SET status = 'completed', completed_at = ?, completed_at_epoch = ?
|
|
WHERE id = ?
|
|
`).run(Y.toISOString(),J,Q)}markSessionFailed(Q){let Y=new Date,J=Y.getTime();this.db.query(`
|
|
UPDATE sdk_sessions
|
|
SET status = 'failed', completed_at = ?, completed_at_epoch = ?
|
|
WHERE id = ?
|
|
`).run(Y.toISOString(),J,Q)}close(){this.db.close()}}function TW(Q,Y,J){return`You are a memory assistant for the "${Q}" project.
|
|
|
|
SESSION CONTEXT
|
|
---------------
|
|
Session ID: ${Y}
|
|
User's Goal: ${J}
|
|
Date: ${new Date().toISOString().split("T")[0]}
|
|
|
|
YOUR ROLE
|
|
---------
|
|
You will observe tool executions during this Claude Code session. Your job is to:
|
|
|
|
1. Extract meaningful insights (not just raw data)
|
|
2. Store atomic observations in SQLite
|
|
3. Focus on: key decisions, patterns discovered, problems solved, technical insights
|
|
|
|
WHAT TO CAPTURE
|
|
----------------
|
|
\u2713 Architecture decisions (e.g., "chose PostgreSQL over MongoDB for ACID guarantees")
|
|
\u2713 Bug fixes (e.g., "fixed race condition in auth middleware by adding mutex")
|
|
\u2713 New features (e.g., "implemented JWT refresh token flow")
|
|
\u2713 Refactorings (e.g., "extracted validation logic into separate service")
|
|
\u2713 Discoveries (e.g., "found that API rate limit is 100 req/min")
|
|
|
|
\u2717 NOT routine operations (reading files, listing directories)
|
|
\u2717 NOT work-in-progress (only completed work)
|
|
\u2717 NOT obvious facts (e.g., "TypeScript file has types")
|
|
|
|
HOW TO STORE OBSERVATIONS
|
|
--------------------------
|
|
When you identify something worth remembering, output your observation in this EXACT XML format:
|
|
|
|
\`\`\`xml
|
|
<observation>
|
|
<type>feature</type>
|
|
<text>Implemented JWT token refresh flow with 7-day expiry</text>
|
|
</observation>
|
|
\`\`\`
|
|
|
|
Valid types: decision, bugfix, feature, refactor, discovery
|
|
|
|
Structure requirements:
|
|
- <observation> is the root element
|
|
- <type> must be one of the 5 valid types (single word)
|
|
- <text> contains your concise observation (one sentence preferred)
|
|
- No additional fields or nesting
|
|
|
|
The SDK worker will parse all <observation> blocks from your response using regex and store them in SQLite.
|
|
|
|
You can include your reasoning before or after the observation block, or just output the observation by itself.
|
|
|
|
EXAMPLE
|
|
-------
|
|
Bad: "Read src/auth.ts file"
|
|
Good: "Implemented JWT token refresh flow with 7-day expiry"
|
|
|
|
Wait for tool observations. Acknowledge this message briefly.`}function EW(Q){return`TOOL OBSERVATION
|
|
================
|
|
Tool: ${Q.tool_name}
|
|
Time: ${new Date(Q.created_at_epoch).toISOString()}
|
|
|
|
Input:
|
|
${JSON.stringify(JSON.parse(Q.tool_input),null,2)}
|
|
|
|
Output:
|
|
${JSON.stringify(JSON.parse(Q.tool_output),null,2)}
|
|
|
|
ANALYSIS TASK
|
|
-------------
|
|
1. Does this observation contain something worth remembering?
|
|
2. If YES: Output the observation in this EXACT XML format:
|
|
|
|
\`\`\`xml
|
|
<observation>
|
|
<type>feature</type>
|
|
<text>Your concise observation here</text>
|
|
</observation>
|
|
\`\`\`
|
|
|
|
Requirements:
|
|
- Use one of these types: decision, bugfix, feature, refactor, discovery
|
|
- Keep text concise (one sentence preferred)
|
|
- No markdown formatting inside <text>
|
|
- No additional XML fields
|
|
|
|
3. If NO: Just acknowledge and wait for next observation
|
|
|
|
Remember: Quality over quantity. Only store meaningful insights.`}function bW(Q){return`SESSION ENDING
|
|
==============
|
|
The Claude Code session is finishing.
|
|
|
|
FINAL TASK
|
|
----------
|
|
1. Review the observations you've stored this session
|
|
2. Generate a structured summary that answers these questions:
|
|
- What did user request?
|
|
- What did you investigate?
|
|
- What did you learn?
|
|
- What did you do?
|
|
- What's next?
|
|
- Files read
|
|
- Files edited
|
|
- Notes
|
|
|
|
3. Generate the structured summary and output it in this EXACT XML format:
|
|
|
|
\`\`\`xml
|
|
<summary>
|
|
<request>Implement JWT authentication system</request>
|
|
<investigated>Existing auth middleware, session management, token storage patterns</investigated>
|
|
<learned>Current system uses session cookies; no JWT support; race condition in middleware</learned>
|
|
<completed>Implemented JWT token + refresh flow with 7-day expiry; fixed race condition with mutex; added token validation middleware</completed>
|
|
<next_steps>Add token revocation API endpoint; write integration tests</next_steps>
|
|
<files_read>
|
|
<file>src/auth.ts</file>
|
|
<file>src/middleware/session.ts</file>
|
|
<file>src/types/user.ts</file>
|
|
</files_read>
|
|
<files_edited>
|
|
<file>src/auth.ts</file>
|
|
<file>src/middleware/auth.ts</file>
|
|
<file>src/routes/auth.ts</file>
|
|
</files_edited>
|
|
<notes>Token secret stored in .env; refresh tokens use rotation strategy</notes>
|
|
</summary>
|
|
\`\`\`
|
|
|
|
Structure requirements:
|
|
- <summary> is the root element
|
|
- All 8 child elements are REQUIRED: request, investigated, learned, completed, next_steps, files_read, files_edited, notes
|
|
- <files_read> and <files_edited> must contain <file> child elements (one per file)
|
|
- If no files were read/edited, use empty tags: <files_read></files_read>
|
|
- Text fields can be multiple sentences but avoid markdown formatting
|
|
- Use underscores in element names: next_steps, files_read, files_edited
|
|
|
|
The SDK worker will parse the <summary> block and extract all fields to store in SQLite.
|
|
|
|
Generate the summary now in the required XML format.`}function vW(Q){let Y=[],J=/<observation>\s*<type>([^<]+)<\/type>\s*<text>([^<]+)<\/text>\s*<\/observation>/g,W;while((W=J.exec(Q))!==null){let z=W[1].trim(),F=W[2].trim();if(!["decision","bugfix","feature","refactor","discovery"].includes(z)){console.warn(`[SDK Parser] Invalid observation type: ${z}, skipping`);continue}Y.push({type:z,text:F})}return Y}function gW(Q){let J=/<summary>([\s\S]*?)<\/summary>/.exec(Q);if(!J)return null;let W=J[1],z=X9(W,"request"),F=X9(W,"investigated"),X=X9(W,"learned"),B=X9(W,"completed"),K=X9(W,"next_steps"),H=X9(W,"notes"),O=SW(W,"files_read"),w=SW(W,"files_edited");if(!z||!F||!X||!B||!K||!H)return console.warn("[SDK Parser] Summary missing required fields"),null;return{request:z,investigated:F,learned:X,completed:B,next_steps:K,files_read:O,files_edited:w,notes:H}}function X9(Q,Y){let W=new RegExp(`<${Y}>([^<]*)</${Y}>`).exec(Q);return W?W[1].trim():null}function SW(Q,Y){let J=[],z=new RegExp(`<${Y}>(.*?)</${Y}>`,"s").exec(Q);if(!z)return J;let F=z[1],X=/<file>([^<]+)<\/file>/g,B;while((B=X.exec(F))!==null)J.push(B[1].trim());return J}var xW="claude-sonnet-4-5",OJ=["Glob","Grep","ListMcpResourcesTool","WebSearch"];async function yW(){console.error("[SDK Worker DEBUG] main() called");let Q=parseInt(process.argv[2],10);if(console.error(`[SDK Worker DEBUG] Session DB ID: ${Q}`),!Q)console.error("[SDK Worker] Missing session ID argument"),process.exit(1);let Y=new fW(Q);console.error("[SDK Worker DEBUG] SDKWorker instance created"),await Y.run()}class fW{sessionDbId;db;socketPath;server=null;sdkSessionId=null;project="";userPrompt="";abortController;isFinalized=!1;pendingMessages=[];constructor(Q){this.sessionDbId=Q,this.db=new H8,this.abortController=new AbortController,this.socketPath=_W(Q),console.error("[claude-mem worker] Worker instance created",{sessionDbId:Q,socketPath:this.socketPath})}async run(){console.error("[claude-mem worker] Worker run() started",{sessionDbId:this.sessionDbId,socketPath:this.socketPath});try{let Q=await this.loadSession();if(!Q)console.error("[claude-mem worker] Session not found in database",{sessionDbId:this.sessionDbId}),process.exit(1);console.error("[claude-mem worker] Session loaded successfully",{sessionDbId:this.sessionDbId,project:Q.project,sdkSessionId:Q.sdk_session_id,userPromptLength:Q.user_prompt?.length||0}),this.project=Q.project,this.userPrompt=Q.user_prompt,await this.startSocketServer(),console.error("[claude-mem worker] Socket server started successfully",{socketPath:this.socketPath,sessionDbId:this.sessionDbId}),console.error("[claude-mem worker] Starting SDK agent",{sessionDbId:this.sessionDbId,model:xW}),await this.runSDKAgent(),console.error("[claude-mem worker] SDK agent completed, marking session as completed",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId}),this.db.markSessionCompleted(this.sessionDbId),this.db.close(),this.cleanup()}catch(Q){console.error("[claude-mem worker] Fatal error in run()",{sessionDbId:this.sessionDbId,error:Q.message,stack:Q.stack}),this.db.markSessionFailed(this.sessionDbId),this.db.close(),this.cleanup(),process.exit(1)}}async startSocketServer(){if(console.error("[SDK Worker DEBUG] Starting socket server..."),console.error(`[SDK Worker DEBUG] Socket path: ${this.socketPath}`),h9(this.socketPath))console.error("[SDK Worker DEBUG] Removing existing socket"),kW(this.socketPath);return new Promise((Q,Y)=>{console.error("[SDK Worker DEBUG] Creating net server..."),this.server=VJ.createServer((J)=>{console.error("[claude-mem worker] Socket connection received",{sessionDbId:this.sessionDbId,socketPath:this.socketPath});let W="";J.on("data",(z)=>{console.error("[claude-mem worker] Data received on socket",{sessionDbId:this.sessionDbId,chunkSize:z.length}),W+=z.toString();let F=W.split(`
|
|
`);W=F.pop()||"";for(let X of F)if(X.trim())try{let B=JSON.parse(X);console.error("[claude-mem worker] Message received from socket",{sessionDbId:this.sessionDbId,messageType:B.type,rawMessage:X.substring(0,500)}),this.handleMessage(B)}catch(B){console.error("[claude-mem worker] Invalid message - failed to parse JSON",{sessionDbId:this.sessionDbId,error:B instanceof Error?B.message:String(B),rawLine:X.substring(0,200)})}}),J.on("error",(z)=>{console.error("[claude-mem worker] Socket connection error",{sessionDbId:this.sessionDbId,error:z.message,stack:z.stack})})}),this.server.on("error",(J)=>{if(J.code==="EADDRINUSE")console.error("[claude-mem worker] Socket already in use",{socketPath:this.socketPath,sessionDbId:this.sessionDbId});else console.error("[claude-mem worker] Server error",{sessionDbId:this.sessionDbId,error:J.message,code:J.code,stack:J.stack});Y(J)}),this.server.listen(this.socketPath,()=>{console.error("[SDK Worker DEBUG] listen() callback fired"),console.error(`[SDK Worker DEBUG] Checking if socket exists: ${h9(this.socketPath)}`),Q()})})}handleMessage(Q){if(console.error("[claude-mem worker] Processing message in handleMessage()",{sessionDbId:this.sessionDbId,messageType:Q.type,pendingMessagesCount:this.pendingMessages.length}),this.pendingMessages.push(Q),Q.type==="finalize")console.error("[claude-mem worker] FINALIZE message detected - queued for processing",{sessionDbId:this.sessionDbId,pendingMessagesCount:this.pendingMessages.length});else if(Q.type==="observation")console.error("[claude-mem worker] Observation message queued",{sessionDbId:this.sessionDbId,toolName:Q.tool_name,inputLength:Q.tool_input?.length||0,outputLength:Q.tool_output?.length||0})}async loadSession(){return this.db.db.query(`
|
|
SELECT id, sdk_session_id, project, user_prompt
|
|
FROM sdk_sessions
|
|
WHERE id = ?
|
|
LIMIT 1
|
|
`).get(this.sessionDbId)}async runSDKAgent(){let Q=process.env.CLAUDE_CODE_PATH||"/Users/alexnewman/.nvm/versions/node/v24.5.0/bin/claude";console.error(`[SDK Worker DEBUG] About to call query with claudePath: ${Q}`);let Y=DW({prompt:this.createMessageGenerator(),options:{model:xW,disallowedTools:OJ,abortController:this.abortController,pathToClaudeCodeExecutable:Q}});for await(let J of Y)if(J.type==="system"&&J.subtype==="init"){let W=J;if(W.session_id)console.error("[claude-mem worker] SDK session initialized",{sessionDbId:this.sessionDbId,sdkSessionId:W.session_id}),this.sdkSessionId=W.session_id,this.db.updateSDKSessionId(this.sessionDbId,W.session_id)}else if(J.type==="assistant"){let W=J.message.content,z=Array.isArray(W)?W.filter((F)=>F.type==="text").map((F)=>F.text).join(`
|
|
`):typeof W==="string"?W:"";console.error("[claude-mem worker] SDK agent response received",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,contentLength:z.length,contentPreview:z.substring(0,200)}),this.handleAgentMessage(z)}}async*createMessageGenerator(){let Q=`session-${this.sessionDbId}`,Y=TW(this.project,Q,this.userPrompt);console.error("[claude-mem worker] Yielding initial prompt to SDK agent",{sessionDbId:this.sessionDbId,claudeSessionId:Q,project:this.project,promptLength:Y.length}),yield{type:"user",session_id:this.sdkSessionId||Q,parent_tool_use_id:null,message:{role:"user",content:Y}};while(!this.isFinalized){if(this.pendingMessages.length===0){await this.sleep(100);continue}while(this.pendingMessages.length>0){let J=this.pendingMessages.shift();if(J.type==="finalize"){console.error("[claude-mem worker] Processing FINALIZE message in generator",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId}),this.isFinalized=!0;let W=await this.loadSession();if(W){let z=bW(W);console.error("[claude-mem worker] Yielding finalize prompt to SDK agent",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,promptLength:z.length,promptPreview:z.substring(0,300)}),yield{type:"user",session_id:this.sdkSessionId||Q,parent_tool_use_id:null,message:{role:"user",content:z}}}else console.error("[claude-mem worker] Failed to load session for finalize prompt",{sessionDbId:this.sessionDbId});break}if(J.type==="observation"){let W=EW({id:0,tool_name:J.tool_name,tool_input:J.tool_input,tool_output:J.tool_output,created_at_epoch:Date.now()});console.error("[claude-mem worker] Yielding observation prompt to SDK agent",{sessionDbId:this.sessionDbId,toolName:J.tool_name,promptLength:W.length}),yield{type:"user",session_id:this.sdkSessionId||Q,parent_tool_use_id:null,message:{role:"user",content:W}}}}}}handleAgentMessage(Q){console.error("[claude-mem worker] Parsing agent message for observations and summary",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,contentLength:Q.length});let Y=vW(Q);console.error("[claude-mem worker] Observations parsed from response",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,observationCount:Y.length});for(let W of Y)if(this.sdkSessionId)console.error("[claude-mem worker] Storing observation in database",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,project:this.project,observationType:W.type,observationTextLength:W.text?.length||0}),this.db.storeObservation(this.sdkSessionId,this.project,W.type,W.text);else console.error("[claude-mem worker] Cannot store observation - no SDK session ID",{sessionDbId:this.sessionDbId,observationType:W.type});console.error("[claude-mem worker] Attempting to parse summary from response",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId});let J=gW(Q);if(J&&this.sdkSessionId){console.error("[claude-mem worker] Summary parsed successfully",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,project:this.project,hasRequest:!!J.request,hasInvestigated:!!J.investigated,hasLearned:!!J.learned,hasCompleted:!!J.completed,filesReadCount:J.files_read?.length||0,filesEditedCount:J.files_edited?.length||0});let W={request:J.request,investigated:J.investigated,learned:J.learned,completed:J.completed,next_steps:J.next_steps,files_read:JSON.stringify(J.files_read),files_edited:JSON.stringify(J.files_edited),notes:J.notes};console.error("[claude-mem worker] Storing summary in database",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,project:this.project}),this.db.storeSummary(this.sdkSessionId,this.project,W),console.error("[claude-mem worker] Summary stored successfully in database",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId,project:this.project})}else if(J&&!this.sdkSessionId)console.error("[claude-mem worker] Summary parsed but cannot store - no SDK session ID",{sessionDbId:this.sessionDbId});else console.error("[claude-mem worker] No summary found in response",{sessionDbId:this.sessionDbId,sdkSessionId:this.sdkSessionId})}cleanup(){if(console.error("[claude-mem worker] Cleaning up worker resources",{sessionDbId:this.sessionDbId,socketPath:this.socketPath,hasServer:!!this.server,socketExists:h9(this.socketPath)}),this.server)this.server.close();if(h9(this.socketPath))kW(this.socketPath);console.error("[claude-mem worker] Cleanup complete",{sessionDbId:this.sessionDbId})}sleep(Q){return new Promise((Y)=>setTimeout(Y,Q))}}yW().catch((Q)=>{console.error("[SDK Worker] Fatal error:",Q),process.exit(1)});
|