nemar-cli 0.8.27-PR579.ffe96e8 → 0.8.27-dev.1007

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +3 -3
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -90,12 +90,12 @@ ${F}`,I90,S90,k90=(D,F,$)=>{let J=$===""?"":`with ${$.trim()}() `,Q=P90.bind(nul
90
90
  depsCount: ${F},
91
91
  deps: ${$}}`};var U20={keyword:"dependencies",type:"object",schemaType:"object",error:ok.error,code(D){let[F,$]=L20(D);ik(D,F),ak(D,$)}};function L20({schema:D}){let F={},$={};for(let J in D){if(J==="__proto__")continue;let Q=Array.isArray(D[J])?F:$;Q[J]=D[J]}return[F,$]}function ik(D,F=D.schema){let{gen:$,data:J,it:Q}=D;if(Object.keys(F).length===0)return;let Y=$.let("missing");for(let B in F){let X=F[B];if(X.length===0)continue;let G=(0,W9.propertyInData)($,J,B,Q.opts.ownProperties);if(D.setParams({property:B,depsCount:X.length,deps:X.join(", ")}),Q.allErrors)$.if(G,()=>{for(let H of X)(0,W9.checkReportMissingProp)(D,H)});else $.if(SG._`${G} && (${(0,W9.checkMissingProp)(D,X,Y)})`),(0,W9.reportMissingProp)(D,Y),$.else()}}ok.validatePropertyDeps=ik;function ak(D,F=D.schema){let{gen:$,data:J,keyword:Q,it:Y}=D,B=$.name("valid");for(let X in F){if((0,Z20.alwaysValidSchema)(Y,F[X]))continue;$.if((0,W9.propertyInData)($,J,X,Y.opts.ownProperties),()=>{let G=D.subschema({keyword:Q,schemaProp:X},B);D.mergeValidEvaluated(G,B)},()=>$.var(B,!0)),D.ok(B)}}ok.validateSchemaDeps=ak;ok.default=U20});var Dv=z((ek)=>{Object.defineProperty(ek,"__esModule",{value:!0});var tk=e(),N20=z0(),R20={message:"property name must be valid",params:({params:D})=>tk._`{propertyName: ${D.propertyName}}`},C20={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:R20,code(D){let{gen:F,schema:$,data:J,it:Q}=D;if((0,N20.alwaysValidSchema)(Q,$))return;let Y=F.name("valid");F.forIn("key",J,(B)=>{D.setParams({propertyName:B}),D.subschema({keyword:"propertyNames",data:B,dataTypes:["string"],propertyName:B,compositeRule:!0},Y),F.if((0,tk.not)(Y),()=>{if(D.error(!0),!Q.allErrors)F.break()})}),D.ok(Y)}};ek.default=C20});var kG=z((Fv)=>{Object.defineProperty(Fv,"__esModule",{value:!0});var MJ=L1(),h1=e(),w20=U1(),NJ=z0(),j20={message:"must NOT have additional properties",params:({params:D})=>h1._`{additionalProperty: ${D.additionalProperty}}`},T20={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:j20,code(D){let{gen:F,schema:$,parentSchema:J,data:Q,errsCount:Y,it:B}=D;if(!Y)throw Error("ajv implementation error");let{allErrors:X,opts:G}=B;if(B.props=!0,G.removeAdditional!=="all"&&(0,NJ.alwaysValidSchema)(B,$))return;let H=(0,MJ.allSchemaProperties)(J.properties),q=(0,MJ.allSchemaProperties)(J.patternProperties);K(),D.ok(h1._`${Y} === ${w20.default.errors}`);function K(){F.forIn("key",Q,(M)=>{if(!H.length&&!q.length)Z(M);else F.if(V(M),()=>Z(M))})}function V(M){let A;if(H.length>8){let N=(0,NJ.schemaRefOrVal)(B,J.properties,"properties");A=(0,MJ.isOwnProperty)(F,N,M)}else if(H.length)A=(0,h1.or)(...H.map((N)=>h1._`${M} === ${N}`));else A=h1.nil;if(q.length)A=(0,h1.or)(A,...q.map((N)=>h1._`${(0,MJ.usePattern)(D,N)}.test(${M})`));return(0,h1.not)(A)}function E(M){F.code(h1._`delete ${Q}[${M}]`)}function Z(M){if(G.removeAdditional==="all"||G.removeAdditional&&$===!1){E(M);return}if($===!1){if(D.setParams({additionalProperty:M}),D.error(),!X)F.break();return}if(typeof $=="object"&&!(0,NJ.alwaysValidSchema)(B,$)){let A=F.name("valid");if(G.removeAdditional==="failing")L(M,A,!1),F.if((0,h1.not)(A),()=>{D.reset(),E(M)});else if(L(M,A),!X)F.if((0,h1.not)(A),()=>F.break())}}function L(M,A,N){let w={keyword:"additionalProperties",dataProp:M,dataPropType:NJ.Type.Str};if(N===!1)Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1});D.subschema(w,A)}}};Fv.default=T20});var Yv=z((Qv)=>{Object.defineProperty(Qv,"__esModule",{value:!0});var I20=JF(),$v=L1(),vG=z0(),Jv=kG(),S20={keyword:"properties",type:"object",schemaType:"object",code(D){let{gen:F,schema:$,parentSchema:J,data:Q,it:Y}=D;if(Y.opts.removeAdditional==="all"&&J.additionalProperties===void 0)Jv.default.code(new I20.KeywordCxt(Y,Jv.default,"additionalProperties"));let B=(0,$v.allSchemaProperties)($);for(let K of B)Y.definedProperties.add(K);if(Y.opts.unevaluated&&B.length&&Y.props!==!0)Y.props=vG.mergeEvaluated.props(F,(0,vG.toHash)(B),Y.props);let X=B.filter((K)=>!(0,vG.alwaysValidSchema)(Y,$[K]));if(X.length===0)return;let G=F.name("valid");for(let K of X){if(H(K))q(K);else{if(F.if((0,$v.propertyInData)(F,Q,K,Y.opts.ownProperties)),q(K),!Y.allErrors)F.else().var(G,!0);F.endIf()}D.it.definedProperties.add(K),D.ok(G)}function H(K){return Y.opts.useDefaults&&!Y.compositeRule&&$[K].default!==void 0}function q(K){D.subschema({keyword:"properties",schemaProp:K,dataProp:K},G)}}};Qv.default=S20});var Hv=z((Wv)=>{Object.defineProperty(Wv,"__esModule",{value:!0});var Bv=L1(),RJ=e(),Xv=z0(),Gv=z0(),v20={keyword:"patternProperties",type:"object",schemaType:"object",code(D){let{gen:F,schema:$,data:J,parentSchema:Q,it:Y}=D,{opts:B}=Y,X=(0,Bv.allSchemaProperties)($),G=X.filter((L)=>(0,Xv.alwaysValidSchema)(Y,$[L]));if(X.length===0||G.length===X.length&&(!Y.opts.unevaluated||Y.props===!0))return;let H=B.strictSchema&&!B.allowMatchingProperties&&Q.properties,q=F.name("valid");if(Y.props!==!0&&!(Y.props instanceof RJ.Name))Y.props=(0,Gv.evaluatedPropsToName)(F,Y.props);let{props:K}=Y;V();function V(){for(let L of X){if(H)E(L);if(Y.allErrors)Z(L);else F.var(q,!0),Z(L),F.if(q)}}function E(L){for(let M in H)if(new RegExp(L).test(M))(0,Xv.checkStrictMode)(Y,`property ${M} matches pattern ${L} (use allowMatchingProperties)`)}function Z(L){F.forIn("key",J,(M)=>{F.if(RJ._`${(0,Bv.usePattern)(D,L)}.test(${M})`,()=>{let A=G.includes(L);if(!A)D.subschema({keyword:"patternProperties",schemaProp:L,dataProp:M,dataPropType:Gv.Type.Str},q);if(Y.opts.unevaluated&&K!==!0)F.assign(RJ._`${K}[${M}]`,!0);else if(!A&&!Y.allErrors)F.if((0,RJ.not)(q),()=>F.break())})})}}};Wv.default=v20});var Kv=z((qv)=>{Object.defineProperty(qv,"__esModule",{value:!0});var x20=z0(),_20={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(D){let{gen:F,schema:$,it:J}=D;if((0,x20.alwaysValidSchema)(J,$)){D.fail();return}let Q=F.name("valid");D.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},Q),D.failResult(Q,()=>D.reset(),()=>D.error())},error:{message:"must NOT be valid"}};qv.default=_20});var Ev=z((zv)=>{Object.defineProperty(zv,"__esModule",{value:!0});var g20=L1(),h20={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:g20.validateUnion,error:{message:"must match a schema in anyOf"}};zv.default=h20});var Zv=z((Vv)=>{Object.defineProperty(Vv,"__esModule",{value:!0});var CJ=e(),u20=z0(),m20={message:"must match exactly one schema in oneOf",params:({params:D})=>CJ._`{passingSchemas: ${D.passing}}`},l20={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:m20,code(D){let{gen:F,schema:$,parentSchema:J,it:Q}=D;if(!Array.isArray($))throw Error("ajv implementation error");if(Q.opts.discriminator&&J.discriminator)return;let Y=$,B=F.let("valid",!1),X=F.let("passing",null),G=F.name("_valid");D.setParams({passing:X}),F.block(H),D.result(B,()=>D.reset(),()=>D.error(!0));function H(){Y.forEach((q,K)=>{let V;if((0,u20.alwaysValidSchema)(Q,q))F.var(G,!0);else V=D.subschema({keyword:"oneOf",schemaProp:K,compositeRule:!0},G);if(K>0)F.if(CJ._`${G} && ${B}`).assign(B,!1).assign(X,CJ._`[${X}, ${K}]`).else();F.if(G,()=>{if(F.assign(B,!0),F.assign(X,K),V)D.mergeEvaluated(V,CJ.Name)})})}}};Vv.default=l20});var Lv=z((Uv)=>{Object.defineProperty(Uv,"__esModule",{value:!0});var d20=z0(),c20={keyword:"allOf",schemaType:"array",code(D){let{gen:F,schema:$,it:J}=D;if(!Array.isArray($))throw Error("ajv implementation error");let Q=F.name("valid");$.forEach((Y,B)=>{if((0,d20.alwaysValidSchema)(J,Y))return;let X=D.subschema({keyword:"allOf",schemaProp:B},Q);D.ok(Q),D.mergeEvaluated(X)})}};Uv.default=c20});var Rv=z((Nv)=>{Object.defineProperty(Nv,"__esModule",{value:!0});var OJ=e(),Mv=z0(),i20={message:({params:D})=>OJ.str`must match "${D.ifClause}" schema`,params:({params:D})=>OJ._`{failingKeyword: ${D.ifClause}}`},a20={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:i20,code(D){let{gen:F,parentSchema:$,it:J}=D;if($.then===void 0&&$.else===void 0)(0,Mv.checkStrictMode)(J,'"if" without "then" and "else" is ignored');let Q=Av(J,"then"),Y=Av(J,"else");if(!Q&&!Y)return;let B=F.let("valid",!0),X=F.name("_valid");if(G(),D.reset(),Q&&Y){let q=F.let("ifClause");D.setParams({ifClause:q}),F.if(X,H("then",q),H("else",q))}else if(Q)F.if(X,H("then"));else F.if((0,OJ.not)(X),H("else"));D.pass(B,()=>D.error(!0));function G(){let q=D.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},X);D.mergeEvaluated(q)}function H(q,K){return()=>{let V=D.subschema({keyword:q},X);if(F.assign(B,X),D.mergeValidEvaluated(V,B),K)F.assign(K,OJ._`${q}`);else D.setParams({ifClause:q})}}}};function Av(D,F){let $=D.schema[F];return $!==void 0&&!(0,Mv.alwaysValidSchema)(D,$)}Nv.default=a20});var Ov=z((Cv)=>{Object.defineProperty(Cv,"__esModule",{value:!0});var s20=z0(),r20={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:D,parentSchema:F,it:$}){if(F.if===void 0)(0,s20.checkStrictMode)($,`"${D}" without "if" is ignored`)}};Cv.default=r20});var yG=z((wv)=>{Object.defineProperty(wv,"__esModule",{value:!0});var e20=PG(),DX0=mk(),FX0=IG(),$X0=dk(),JX0=nk(),QX0=AJ(),YX0=Dv(),BX0=kG(),XX0=Yv(),GX0=Hv(),WX0=Kv(),HX0=Ev(),qX0=Zv(),KX0=Lv(),zX0=Rv(),EX0=Ov();function VX0(D=!1){let F=[WX0.default,HX0.default,qX0.default,KX0.default,zX0.default,EX0.default,YX0.default,BX0.default,QX0.default,XX0.default,GX0.default];if(D)F.push(DX0.default,$X0.default);else F.push(e20.default,FX0.default);return F.push(JX0.default),F}wv.default=VX0});var _G=z((Pv)=>{Object.defineProperty(Pv,"__esModule",{value:!0});Pv.dynamicAnchor=void 0;var xG=e(),UX0=U1(),jv=e5(),LX0=KJ(),AX0={keyword:"$dynamicAnchor",schemaType:"string",code:(D)=>Tv(D,D.schema)};function Tv(D,F){let{gen:$,it:J}=D;J.schemaEnv.root.dynamicAnchors[F]=!0;let Q=xG._`${UX0.default.dynamicAnchors}${(0,xG.getProperty)(F)}`,Y=J.errSchemaPath==="#"?J.validateName:MX0(D);$.if(xG._`!${Q}`,()=>$.assign(Q,Y))}Pv.dynamicAnchor=Tv;function MX0(D){let{schemaEnv:F,schema:$,self:J}=D.it,{root:Q,baseId:Y,localRefs:B,meta:X}=F.root,{schemaId:G}=J.opts,H=new jv.SchemaEnv({schema:$,schemaId:G,root:Q,baseId:Y,localRefs:B,meta:X});return jv.compileSchema.call(J,H),(0,LX0.getValidate)(D,H)}Pv.default=AX0});var fG=z((yv)=>{Object.defineProperty(yv,"__esModule",{value:!0});yv.dynamicRef=void 0;var Sv=e(),RX0=U1(),kv=KJ(),CX0={keyword:"$dynamicRef",schemaType:"string",code:(D)=>vv(D,D.schema)};function vv(D,F){let{gen:$,keyword:J,it:Q}=D;if(F[0]!=="#")throw Error(`"${J}" only supports hash fragment reference`);let Y=F.slice(1);if(Q.allErrors)B();else{let G=$.let("valid",!1);B(G),D.ok(G)}function B(G){if(Q.schemaEnv.root.dynamicAnchors[Y]){let H=$.let("_v",Sv._`${RX0.default.dynamicAnchors}${(0,Sv.getProperty)(Y)}`);$.if(H,X(H,G),X(Q.validateName,G))}else X(Q.validateName,G)()}function X(G,H){return H?()=>$.block(()=>{(0,kv.callRef)(D,G),$.let(H,!0)}):()=>(0,kv.callRef)(D,G)}}yv.dynamicRef=vv;yv.default=CX0});var fv=z((_v)=>{Object.defineProperty(_v,"__esModule",{value:!0});var wX0=_G(),jX0=z0(),TX0={keyword:"$recursiveAnchor",schemaType:"boolean",code(D){if(D.schema)(0,wX0.dynamicAnchor)(D,"");else(0,jX0.checkStrictMode)(D.it,"$recursiveAnchor: false is ignored")}};_v.default=TX0});var hv=z((gv)=>{Object.defineProperty(gv,"__esModule",{value:!0});var IX0=fG(),SX0={keyword:"$recursiveRef",schemaType:"string",code:(D)=>(0,IX0.dynamicRef)(D,D.schema)};gv.default=SX0});var uv=z((bv)=>{Object.defineProperty(bv,"__esModule",{value:!0});var vX0=_G(),yX0=fG(),xX0=fv(),_X0=hv(),fX0=[vX0.default,yX0.default,xX0.default,_X0.default];bv.default=fX0});var pv=z((lv)=>{Object.defineProperty(lv,"__esModule",{value:!0});var mv=AJ(),hX0={keyword:"dependentRequired",type:"object",schemaType:"object",error:mv.error,code:(D)=>(0,mv.validatePropertyDeps)(D)};lv.default=hX0});var cv=z((dv)=>{Object.defineProperty(dv,"__esModule",{value:!0});var uX0=AJ(),mX0={keyword:"dependentSchemas",type:"object",schemaType:"object",code:(D)=>(0,uX0.validateSchemaDeps)(D)};dv.default=mX0});var iv=z((nv)=>{Object.defineProperty(nv,"__esModule",{value:!0});var pX0=z0(),dX0={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:D,parentSchema:F,it:$}){if(F.contains===void 0)(0,pX0.checkStrictMode)($,`"${D}" without "contains" is ignored`)}};nv.default=dX0});var ov=z((av)=>{Object.defineProperty(av,"__esModule",{value:!0});var nX0=pv(),iX0=cv(),aX0=iv(),oX0=[nX0.default,iX0.default,aX0.default];av.default=oX0});var tv=z((rv)=>{Object.defineProperty(rv,"__esModule",{value:!0});var m6=e(),sv=z0(),rX0=U1(),tX0={message:"must NOT have unevaluated properties",params:({params:D})=>m6._`{unevaluatedProperty: ${D.unevaluatedProperty}}`},eX0={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:tX0,code(D){let{gen:F,schema:$,data:J,errsCount:Q,it:Y}=D;if(!Q)throw Error("ajv implementation error");let{allErrors:B,props:X}=Y;if(X instanceof m6.Name)F.if(m6._`${X} !== true`,()=>F.forIn("key",J,(K)=>F.if(H(X,K),()=>G(K))));else if(X!==!0)F.forIn("key",J,(K)=>X===void 0?G(K):F.if(q(X,K),()=>G(K)));Y.props=!0,D.ok(m6._`${Q} === ${rX0.default.errors}`);function G(K){if($===!1){if(D.setParams({unevaluatedProperty:K}),D.error(),!B)F.break();return}if(!(0,sv.alwaysValidSchema)(Y,$)){let V=F.name("valid");if(D.subschema({keyword:"unevaluatedProperties",dataProp:K,dataPropType:sv.Type.Str},V),!B)F.if((0,m6.not)(V),()=>F.break())}}function H(K,V){return m6._`!${K} || !${K}[${V}]`}function q(K,V){let E=[];for(let Z in K)if(K[Z]===!0)E.push(m6._`${V} !== ${Z}`);return(0,m6.and)(...E)}}};rv.default=eX0});var Fy=z((Dy)=>{Object.defineProperty(Dy,"__esModule",{value:!0});var j4=e(),ev=z0(),FG0={message:({params:{len:D}})=>j4.str`must NOT have more than ${D} items`,params:({params:{len:D}})=>j4._`{limit: ${D}}`},$G0={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:FG0,code(D){let{gen:F,schema:$,data:J,it:Q}=D,Y=Q.items||0;if(Y===!0)return;let B=F.const("len",j4._`${J}.length`);if($===!1)D.setParams({len:Y}),D.fail(j4._`${B} > ${Y}`);else if(typeof $=="object"&&!(0,ev.alwaysValidSchema)(Q,$)){let G=F.var("valid",j4._`${B} <= ${Y}`);F.if((0,j4.not)(G),()=>X(G,Y)),D.ok(G)}Q.items=!0;function X(G,H){F.forRange("i",H,B,(q)=>{if(D.subschema({keyword:"unevaluatedItems",dataProp:q,dataPropType:ev.Type.Num},G),!Q.allErrors)F.if((0,j4.not)(G),()=>F.break())})}}};Dy.default=$G0});var Jy=z(($y)=>{Object.defineProperty($y,"__esModule",{value:!0});var QG0=tv(),YG0=Fy(),BG0=[QG0.default,YG0.default];$y.default=BG0});var Yy=z((Qy)=>{Object.defineProperty(Qy,"__esModule",{value:!0});var QD=e(),GG0={message:({schemaCode:D})=>QD.str`must match format "${D}"`,params:({schemaCode:D})=>QD._`{format: ${D}}`},WG0={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:GG0,code(D,F){let{gen:$,data:J,$data:Q,schema:Y,schemaCode:B,it:X}=D,{opts:G,errSchemaPath:H,schemaEnv:q,self:K}=X;if(!G.validateFormats)return;if(Q)V();else E();function V(){let Z=$.scopeValue("formats",{ref:K.formats,code:G.code.formats}),L=$.const("fDef",QD._`${Z}[${B}]`),M=$.let("fType"),A=$.let("format");$.if(QD._`typeof ${L} == "object" && !(${L} instanceof RegExp)`,()=>$.assign(M,QD._`${L}.type || "string"`).assign(A,QD._`${L}.validate`),()=>$.assign(M,QD._`"string"`).assign(A,L)),D.fail$data((0,QD.or)(N(),w()));function N(){if(G.strictSchema===!1)return QD.nil;return QD._`${B} && !${A}`}function w(){let P=q.$async?QD._`(${L}.async ? await ${A}(${J}) : ${A}(${J}))`:QD._`${A}(${J})`,O=QD._`(typeof ${A} == "function" ? ${P} : ${A}.test(${J}))`;return QD._`${A} && ${A} !== true && ${M} === ${F} && !${O}`}}function E(){let Z=K.formats[Y];if(!Z){N();return}if(Z===!0)return;let[L,M,A]=w(Z);if(L===F)D.pass(P());function N(){if(G.strictSchema===!1){K.logger.warn(O());return}throw Error(O());function O(){return`unknown format "${Y}" ignored in schema at path "${H}"`}}function w(O){let T=O instanceof RegExp?(0,QD.regexpCode)(O):G.code.formats?QD._`${G.code.formats}${(0,QD.getProperty)(Y)}`:void 0,y=$.scopeValue("formats",{key:Y,ref:O,code:T});if(typeof O=="object"&&!(O instanceof RegExp))return[O.type||"string",O.validate,QD._`${y}.validate`];return["string",O,y]}function P(){if(typeof Z=="object"&&!(Z instanceof RegExp)&&Z.async){if(!q.$async)throw Error("async format in sync schema");return QD._`await ${A}(${J})`}return typeof M=="function"?QD._`${A}(${J})`:QD._`${A}.test(${J})`}}}};Qy.default=WG0});var gG=z((By)=>{Object.defineProperty(By,"__esModule",{value:!0});var qG0=Yy(),KG0=[qG0.default];By.default=KG0});var hG=z((Xy)=>{Object.defineProperty(Xy,"__esModule",{value:!0});Xy.contentVocabulary=Xy.metadataVocabulary=void 0;Xy.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Xy.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var qy=z((Hy)=>{Object.defineProperty(Hy,"__esModule",{value:!0});var VG0=CG(),ZG0=jG(),UG0=yG(),LG0=uv(),AG0=ov(),MG0=Jy(),NG0=gG(),Wy=hG(),RG0=[LG0.default,VG0.default,ZG0.default,(0,UG0.default)(!0),NG0.default,Wy.metadataVocabulary,Wy.contentVocabulary,AG0.default,MG0.default];Hy.default=RG0});var Vy=z((zy)=>{Object.defineProperty(zy,"__esModule",{value:!0});zy.DiscrError=void 0;var Ky;(function(D){D.Tag="tag",D.Mapping="mapping"})(Ky||(zy.DiscrError=Ky={}))});var uG=z((Uy)=>{Object.defineProperty(Uy,"__esModule",{value:!0});var XF=e(),bG=Vy(),Zy=e5(),OG0=QF(),wG0=z0(),jG0={message:({params:{discrError:D,tagName:F}})=>D===bG.DiscrError.Tag?`tag "${F}" must be string`:`value of tag "${F}" must be in oneOf`,params:({params:{discrError:D,tag:F,tagName:$}})=>XF._`{error: ${D}, tag: ${$}, tagValue: ${F}}`},TG0={keyword:"discriminator",type:"object",schemaType:"object",error:jG0,code(D){let{gen:F,data:$,schema:J,parentSchema:Q,it:Y}=D,{oneOf:B}=Q;if(!Y.opts.discriminator)throw Error("discriminator: requires discriminator option");let X=J.propertyName;if(typeof X!="string")throw Error("discriminator: requires propertyName");if(J.mapping)throw Error("discriminator: mapping is not supported");if(!B)throw Error("discriminator: requires oneOf keyword");let G=F.let("valid",!1),H=F.const("tag",XF._`${$}${(0,XF.getProperty)(X)}`);F.if(XF._`typeof ${H} == "string"`,()=>q(),()=>D.error(!1,{discrError:bG.DiscrError.Tag,tag:H,tagName:X})),D.ok(G);function q(){let E=V();F.if(!1);for(let Z in E)F.elseIf(XF._`${H} === ${Z}`),F.assign(G,K(E[Z]));F.else(),D.error(!1,{discrError:bG.DiscrError.Mapping,tag:H,tagName:X}),F.endIf()}function K(E){let Z=F.name("valid"),L=D.subschema({keyword:"oneOf",schemaProp:E},Z);return D.mergeEvaluated(L,XF.Name),Z}function V(){var E;let Z={},L=A(Q),M=!0;for(let P=0;P<B.length;P++){let O=B[P];if((O===null||O===void 0?void 0:O.$ref)&&!(0,wG0.schemaHasRulesButRef)(O,Y.self.RULES)){let y=O.$ref;if(O=Zy.resolveRef.call(Y.self,Y.schemaEnv.root,Y.baseId,y),O instanceof Zy.SchemaEnv)O=O.schema;if(O===void 0)throw new OG0.default(Y.opts.uriResolver,Y.baseId,y)}let T=(E=O===null||O===void 0?void 0:O.properties)===null||E===void 0?void 0:E[X];if(typeof T!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${X}"`);M=M&&(L||A(O)),N(T,P)}if(!M)throw Error(`discriminator: "${X}" must be required`);return Z;function A({required:P}){return Array.isArray(P)&&P.includes(X)}function N(P,O){if(P.const)w(P.const,O);else if(P.enum)for(let T of P.enum)w(T,O);else throw Error(`discriminator: "properties/${X}" must have "const" or "enum"`)}function w(P,O){if(typeof P!="string"||P in Z)throw Error(`discriminator: "${X}" values must be unique strings`);Z[P]=O}}}};Uy.default=TG0});var Ly=z((KP0,IG0)=>{IG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/schema",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/unevaluated"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format-annotation"},{$ref:"meta/content"}],type:["object","boolean"],$comment:"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",properties:{definitions:{$comment:'"definitions" has been replaced by "$defs".',type:"object",additionalProperties:{$dynamicRef:"#meta"},deprecated:!0,default:{}},dependencies:{$comment:'"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',type:"object",additionalProperties:{anyOf:[{$dynamicRef:"#meta"},{$ref:"meta/validation#/$defs/stringArray"}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:'"$recursiveAnchor" has been replaced by "$dynamicAnchor".',$ref:"meta/core#/$defs/anchorString",deprecated:!0},$recursiveRef:{$comment:'"$recursiveRef" has been replaced by "$dynamicRef".',$ref:"meta/core#/$defs/uriReferenceString",deprecated:!0}}}});var Ay=z((zP0,SG0)=>{SG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/applicator":!0},$dynamicAnchor:"meta",title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{prefixItems:{$ref:"#/$defs/schemaArray"},items:{$dynamicRef:"#meta"},contains:{$dynamicRef:"#meta"},additionalProperties:{$dynamicRef:"#meta"},properties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},patternProperties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},propertyNames:{$dynamicRef:"#meta"},if:{$dynamicRef:"#meta"},then:{$dynamicRef:"#meta"},else:{$dynamicRef:"#meta"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$dynamicRef:"#meta"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$dynamicRef:"#meta"}}}}});var My=z((EP0,kG0)=>{kG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/unevaluated",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0},$dynamicAnchor:"meta",title:"Unevaluated applicator vocabulary meta-schema",type:["object","boolean"],properties:{unevaluatedItems:{$dynamicRef:"#meta"},unevaluatedProperties:{$dynamicRef:"#meta"}}}});var Ny=z((VP0,vG0)=>{vG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/content",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentEncoding:{type:"string"},contentMediaType:{type:"string"},contentSchema:{$dynamicRef:"#meta"}}}});var Ry=z((ZP0,yG0)=>{yG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/core",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0},$dynamicAnchor:"meta",title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{$ref:"#/$defs/uriReferenceString",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{$ref:"#/$defs/uriString"},$ref:{$ref:"#/$defs/uriReferenceString"},$anchor:{$ref:"#/$defs/anchorString"},$dynamicRef:{$ref:"#/$defs/uriReferenceString"},$dynamicAnchor:{$ref:"#/$defs/anchorString"},$vocabulary:{type:"object",propertyNames:{$ref:"#/$defs/uriString"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$dynamicRef:"#meta"}}},$defs:{anchorString:{type:"string",pattern:"^[A-Za-z_][-A-Za-z0-9._]*$"},uriString:{type:"string",format:"uri"},uriReferenceString:{type:"string",format:"uri-reference"}}}});var Cy=z((UP0,xG0)=>{xG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/format-annotation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0},$dynamicAnchor:"meta",title:"Format vocabulary meta-schema for annotation results",type:["object","boolean"],properties:{format:{type:"string"}}}});var Oy=z((LP0,_G0)=>{_G0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/meta-data":!0},$dynamicAnchor:"meta",title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var wy=z((AP0,fG0)=>{fG0.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/validation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/validation":!0},$dynamicAnchor:"meta",title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var Ty=z((jy)=>{Object.defineProperty(jy,"__esModule",{value:!0});var gG0=Ly(),hG0=Ay(),bG0=My(),uG0=Ny(),mG0=Ry(),lG0=Cy(),pG0=Oy(),dG0=wy(),cG0=["/properties"];function nG0(D){return[gG0,hG0,bG0,uG0,mG0,F(this,lG0),pG0,F(this,dG0)].forEach(($)=>this.addMetaSchema($,void 0,!1)),this;function F($,J){return D?$.$dataMetaSchema(J,cG0):J}}jy.default=nG0});var Py=z((oD,lG)=>{Object.defineProperty(oD,"__esModule",{value:!0});oD.MissingRefError=oD.ValidationError=oD.CodeGen=oD.Name=oD.nil=oD.stringify=oD.str=oD._=oD.KeywordCxt=oD.Ajv2020=void 0;var aG0=RG(),oG0=qy(),sG0=uG(),rG0=Ty(),mG="https://json-schema.org/draft/2020-12/schema";class H9 extends aG0.default{constructor(D={}){super({...D,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){if(super._addVocabularies(),oG0.default.forEach((D)=>this.addVocabulary(D)),this.opts.discriminator)this.addKeyword(sG0.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:D,meta:F}=this.opts;if(!F)return;rG0.default.call(this,D),this.refs["http://json-schema.org/schema"]=mG}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(mG)?mG:void 0)}}oD.Ajv2020=H9;lG.exports=oD=H9;lG.exports.Ajv2020=H9;Object.defineProperty(oD,"__esModule",{value:!0});oD.default=H9;var tG0=JF();Object.defineProperty(oD,"KeywordCxt",{enumerable:!0,get:function(){return tG0.KeywordCxt}});var GF=e();Object.defineProperty(oD,"_",{enumerable:!0,get:function(){return GF._}});Object.defineProperty(oD,"str",{enumerable:!0,get:function(){return GF.str}});Object.defineProperty(oD,"stringify",{enumerable:!0,get:function(){return GF.stringify}});Object.defineProperty(oD,"nil",{enumerable:!0,get:function(){return GF.nil}});Object.defineProperty(oD,"Name",{enumerable:!0,get:function(){return GF.Name}});Object.defineProperty(oD,"CodeGen",{enumerable:!0,get:function(){return GF.CodeGen}});var eG0=r5();Object.defineProperty(oD,"ValidationError",{enumerable:!0,get:function(){return eG0.default}});var DW0=QF();Object.defineProperty(oD,"MissingRefError",{enumerable:!0,get:function(){return DW0.default}})});var hy=z((fy)=>{Object.defineProperty(fy,"__esModule",{value:!0});fy.formatNames=fy.fastFormats=fy.fullFormats=void 0;function L8(D,F){return{validate:D,compare:F}}fy.fullFormats={date:L8(vy,nG),time:L8(dG(!0),iG),"date-time":L8(Iy(!0),xy),"iso-time":L8(dG(),yy),"iso-date-time":L8(Iy(),_y),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:GW0,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:VW0,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:WW0,int32:{type:"number",validate:KW0},int64:{type:"number",validate:zW0},float:{type:"number",validate:ky},double:{type:"number",validate:ky},password:!0,binary:!0};fy.fastFormats={...fy.fullFormats,date:L8(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,nG),time:L8(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,iG),"date-time":L8(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,xy),"iso-time":L8(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,yy),"iso-date-time":L8(/^\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,_y),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};fy.formatNames=Object.keys(fy.fullFormats);function JW0(D){return D%4===0&&(D%100!==0||D%400===0)}var QW0=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,YW0=[0,31,28,31,30,31,30,31,31,30,31,30,31];function vy(D){let F=QW0.exec(D);if(!F)return!1;let $=+F[1],J=+F[2],Q=+F[3];return J>=1&&J<=12&&Q>=1&&Q<=(J===2&&JW0($)?29:YW0[J])}function nG(D,F){if(!(D&&F))return;if(D>F)return 1;if(D<F)return-1;return 0}var pG=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function dG(D){return function($){let J=pG.exec($);if(!J)return!1;let Q=+J[1],Y=+J[2],B=+J[3],X=J[4],G=J[5]==="-"?-1:1,H=+(J[6]||0),q=+(J[7]||0);if(H>23||q>59||D&&!X)return!1;if(Q<=23&&Y<=59&&B<60)return!0;let K=Y-q*G,V=Q-H*G-(K<0?1:0);return(V===23||V===-1)&&(K===59||K===-1)&&B<61}}function iG(D,F){if(!(D&&F))return;let $=new Date("2020-01-01T"+D).valueOf(),J=new Date("2020-01-01T"+F).valueOf();if(!($&&J))return;return $-J}function yy(D,F){if(!(D&&F))return;let $=pG.exec(D),J=pG.exec(F);if(!($&&J))return;if(D=$[1]+$[2]+$[3],F=J[1]+J[2]+J[3],D>F)return 1;if(D<F)return-1;return 0}var cG=/t|\s/i;function Iy(D){let F=dG(D);return function(J){let Q=J.split(cG);return Q.length===2&&vy(Q[0])&&F(Q[1])}}function xy(D,F){if(!(D&&F))return;let $=new Date(D).valueOf(),J=new Date(F).valueOf();if(!($&&J))return;return $-J}function _y(D,F){if(!(D&&F))return;let[$,J]=D.split(cG),[Q,Y]=F.split(cG),B=nG($,Q);if(B===void 0)return;return B||iG(J,Y)}var BW0=/\/|:/,XW0=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function GW0(D){return BW0.test(D)&&XW0.test(D)}var Sy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function WW0(D){return Sy.lastIndex=0,Sy.test(D)}var HW0=-2147483648,qW0=2147483647;function KW0(D){return Number.isInteger(D)&&D<=qW0&&D>=HW0}function zW0(D){return Number.isInteger(D)}function ky(){return!0}var EW0=/[^\\]\\Z/;function VW0(D){if(EW0.test(D))return!1;try{return new RegExp(D),!0}catch(F){return!1}}});var my=z((uy)=>{Object.defineProperty(uy,"__esModule",{value:!0});var UW0=CG(),LW0=jG(),AW0=yG(),MW0=gG(),by=hG(),NW0=[UW0.default,LW0.default,(0,AW0.default)(),MW0.default,by.metadataVocabulary,by.contentVocabulary];uy.default=NW0});var ly=z((kP0,CW0)=>{CW0.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var dy=z((sD,oG)=>{Object.defineProperty(sD,"__esModule",{value:!0});sD.MissingRefError=sD.ValidationError=sD.CodeGen=sD.Name=sD.nil=sD.stringify=sD.str=sD._=sD.KeywordCxt=sD.Ajv=void 0;var OW0=RG(),wW0=my(),jW0=uG(),py=ly(),TW0=["/properties"],wJ="http://json-schema.org/draft-07/schema";class q9 extends OW0.default{_addVocabularies(){if(super._addVocabularies(),wW0.default.forEach((D)=>this.addVocabulary(D)),this.opts.discriminator)this.addKeyword(jW0.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let D=this.opts.$data?this.$dataMetaSchema(py,TW0):py;this.addMetaSchema(D,wJ,!1),this.refs["http://json-schema.org/schema"]=wJ}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(wJ)?wJ:void 0)}}sD.Ajv=q9;oG.exports=sD=q9;oG.exports.Ajv=q9;Object.defineProperty(sD,"__esModule",{value:!0});sD.default=q9;var PW0=JF();Object.defineProperty(sD,"KeywordCxt",{enumerable:!0,get:function(){return PW0.KeywordCxt}});var WF=e();Object.defineProperty(sD,"_",{enumerable:!0,get:function(){return WF._}});Object.defineProperty(sD,"str",{enumerable:!0,get:function(){return WF.str}});Object.defineProperty(sD,"stringify",{enumerable:!0,get:function(){return WF.stringify}});Object.defineProperty(sD,"nil",{enumerable:!0,get:function(){return WF.nil}});Object.defineProperty(sD,"Name",{enumerable:!0,get:function(){return WF.Name}});Object.defineProperty(sD,"CodeGen",{enumerable:!0,get:function(){return WF.CodeGen}});var IW0=r5();Object.defineProperty(sD,"ValidationError",{enumerable:!0,get:function(){return IW0.default}});var SW0=QF();Object.defineProperty(sD,"MissingRefError",{enumerable:!0,get:function(){return SW0.default}})});var ny=z((cy)=>{Object.defineProperty(cy,"__esModule",{value:!0});cy.formatLimitDefinition=void 0;var yW0=dy(),b1=e(),l6=b1.operators,jJ={formatMaximum:{okStr:"<=",ok:l6.LTE,fail:l6.GT},formatMinimum:{okStr:">=",ok:l6.GTE,fail:l6.LT},formatExclusiveMaximum:{okStr:"<",ok:l6.LT,fail:l6.GTE},formatExclusiveMinimum:{okStr:">",ok:l6.GT,fail:l6.LTE}},xW0={message:({keyword:D,schemaCode:F})=>b1.str`should be ${jJ[D].okStr} ${F}`,params:({keyword:D,schemaCode:F})=>b1._`{comparison: ${jJ[D].okStr}, limit: ${F}}`};cy.formatLimitDefinition={keyword:Object.keys(jJ),type:"string",schemaType:"string",$data:!0,error:xW0,code(D){let{gen:F,data:$,schemaCode:J,keyword:Q,it:Y}=D,{opts:B,self:X}=Y;if(!B.validateFormats)return;let G=new yW0.KeywordCxt(Y,X.RULES.all.format.definition,"format");if(G.$data)H();else q();function H(){let V=F.scopeValue("formats",{ref:X.formats,code:B.code.formats}),E=F.const("fmt",b1._`${V}[${G.schemaCode}]`);D.fail$data((0,b1.or)(b1._`typeof ${E} != "object"`,b1._`${E} instanceof RegExp`,b1._`typeof ${E}.compare != "function"`,K(E)))}function q(){let V=G.schema,E=X.formats[V];if(!E||E===!0)return;if(typeof E!="object"||E instanceof RegExp||typeof E.compare!="function")throw Error(`"${Q}": format "${V}" does not define "compare" function`);let Z=F.scopeValue("formats",{key:V,ref:E,code:B.code.formats?b1._`${B.code.formats}${(0,b1.getProperty)(V)}`:void 0});D.fail$data(K(Z))}function K(V){return b1._`${V}.compare(${$}, ${J}) ${jJ[Q].fail} 0`}},dependencies:["format"]};var _W0=(D)=>{return D.addKeyword(cy.formatLimitDefinition),D};cy.default=_W0});var sy=z((K9,oy)=>{Object.defineProperty(K9,"__esModule",{value:!0});var HF=hy(),gW0=ny(),rG=e(),iy=new rG.Name("fullFormats"),hW0=new rG.Name("fastFormats"),tG=(D,F={keywords:!0})=>{if(Array.isArray(F))return ay(D,F,HF.fullFormats,iy),D;let[$,J]=F.mode==="fast"?[HF.fastFormats,hW0]:[HF.fullFormats,iy],Q=F.formats||HF.formatNames;if(ay(D,Q,$,J),F.keywords)(0,gW0.default)(D);return D};tG.get=(D,F="full")=>{let J=(F==="fast"?HF.fastFormats:HF.fullFormats)[D];if(!J)throw Error(`Unknown format "${D}"`);return J};function ay(D,F,$,J){var Q,Y;(Q=(Y=D.opts.code).formats)!==null&&Q!==void 0||(Y.formats=rG._`require("ajv-formats/dist/formats").${J}`);for(let B of F)D.addFormat(B,$[B])}oy.exports=K9=tG;Object.defineProperty(K9,"__esModule",{value:!0});K9.default=tG});var bW0=(D,F={})=>{if(typeof D!=="function")throw TypeError(`Expected the first argument to be a function, got \`${typeof D}\``);let{wait:$=0,maxWait:J=Number.POSITIVE_INFINITY,before:Q=!1,after:Y=!0}=F;if($<0||J<0)throw RangeError("`wait` and `maxWait` must not be negative.");if(!Q&&!Y)throw Error("Both `before` and `after` are false, function wouldn't be called.");let B,X,G,H=function(...q){let K=this,V=()=>{if(B=void 0,X)clearTimeout(X),X=void 0;if(Y)G=D.apply(K,q)},E=()=>{if(X=void 0,B)clearTimeout(B),B=void 0;if(Y)G=D.apply(K,q)},Z=Q&&!B;if(clearTimeout(B),B=setTimeout(V,$),J>0&&J!==Number.POSITIVE_INFINITY&&!X)X=setTimeout(E,J);if(Z)G=D.apply(K,q);return G};return f5(H,D),H.cancel=()=>{if(B)clearTimeout(B),B=void 0;if(X)clearTimeout(X),X=void 0},H},eG;var ry=I(()=>{WX();eG=bW0});var z9=z((pP0,ty)=>{var uW0=Number.MAX_SAFE_INTEGER||9007199254740991,mW0=["major","premajor","minor","preminor","patch","prepatch","prerelease"];ty.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:uW0,RELEASE_TYPES:mW0,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var E9=z((dP0,ey)=>{var lW0=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...D)=>console.error("SEMVER",...D):()=>{};ey.exports=lW0});var qF=z((A8,Dx)=>{var{MAX_SAFE_COMPONENT_LENGTH:DW,MAX_SAFE_BUILD_LENGTH:pW0,MAX_LENGTH:dW0}=z9(),cW0=E9();A8=Dx.exports={};var nW0=A8.re=[],iW0=A8.safeRe=[],f=A8.src=[],aW0=A8.safeSrc=[],g=A8.t={},oW0=0,FW="[a-zA-Z0-9-]",sW0=[["\\s",1],["\\d",dW0],[FW,pW0]],rW0=(D)=>{for(let[F,$]of sW0)D=D.split(`${F}*`).join(`${F}{0,${$}}`).split(`${F}+`).join(`${F}{1,${$}}`);return D},J0=(D,F,$)=>{let J=rW0(F),Q=oW0++;cW0(D,Q,F),g[D]=Q,f[Q]=F,aW0[Q]=J,nW0[Q]=new RegExp(F,$?"g":void 0),iW0[Q]=new RegExp(J,$?"g":void 0)};J0("NUMERICIDENTIFIER","0|[1-9]\\d*");J0("NUMERICIDENTIFIERLOOSE","\\d+");J0("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${FW}*`);J0("MAINVERSION",`(${f[g.NUMERICIDENTIFIER]})\\.(${f[g.NUMERICIDENTIFIER]})\\.(${f[g.NUMERICIDENTIFIER]})`);J0("MAINVERSIONLOOSE",`(${f[g.NUMERICIDENTIFIERLOOSE]})\\.(${f[g.NUMERICIDENTIFIERLOOSE]})\\.(${f[g.NUMERICIDENTIFIERLOOSE]})`);J0("PRERELEASEIDENTIFIER",`(?:${f[g.NONNUMERICIDENTIFIER]}|${f[g.NUMERICIDENTIFIER]})`);J0("PRERELEASEIDENTIFIERLOOSE",`(?:${f[g.NONNUMERICIDENTIFIER]}|${f[g.NUMERICIDENTIFIERLOOSE]})`);J0("PRERELEASE",`(?:-(${f[g.PRERELEASEIDENTIFIER]}(?:\\.${f[g.PRERELEASEIDENTIFIER]})*))`);J0("PRERELEASELOOSE",`(?:-?(${f[g.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${f[g.PRERELEASEIDENTIFIERLOOSE]})*))`);J0("BUILDIDENTIFIER",`${FW}+`);J0("BUILD",`(?:\\+(${f[g.BUILDIDENTIFIER]}(?:\\.${f[g.BUILDIDENTIFIER]})*))`);J0("FULLPLAIN",`v?${f[g.MAINVERSION]}${f[g.PRERELEASE]}?${f[g.BUILD]}?`);J0("FULL",`^${f[g.FULLPLAIN]}$`);J0("LOOSEPLAIN",`[v=\\s]*${f[g.MAINVERSIONLOOSE]}${f[g.PRERELEASELOOSE]}?${f[g.BUILD]}?`);J0("LOOSE",`^${f[g.LOOSEPLAIN]}$`);J0("GTLT","((?:<|>)?=?)");J0("XRANGEIDENTIFIERLOOSE",`${f[g.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);J0("XRANGEIDENTIFIER",`${f[g.NUMERICIDENTIFIER]}|x|X|\\*`);J0("XRANGEPLAIN",`[v=\\s]*(${f[g.XRANGEIDENTIFIER]})(?:\\.(${f[g.XRANGEIDENTIFIER]})(?:\\.(${f[g.XRANGEIDENTIFIER]})(?:${f[g.PRERELEASE]})?${f[g.BUILD]}?)?)?`);J0("XRANGEPLAINLOOSE",`[v=\\s]*(${f[g.XRANGEIDENTIFIERLOOSE]})(?:\\.(${f[g.XRANGEIDENTIFIERLOOSE]})(?:\\.(${f[g.XRANGEIDENTIFIERLOOSE]})(?:${f[g.PRERELEASELOOSE]})?${f[g.BUILD]}?)?)?`);J0("XRANGE",`^${f[g.GTLT]}\\s*${f[g.XRANGEPLAIN]}$`);J0("XRANGELOOSE",`^${f[g.GTLT]}\\s*${f[g.XRANGEPLAINLOOSE]}$`);J0("COERCEPLAIN",`(^|[^\\d])(\\d{1,${DW}})(?:\\.(\\d{1,${DW}}))?(?:\\.(\\d{1,${DW}}))?`);J0("COERCE",`${f[g.COERCEPLAIN]}(?:$|[^\\d])`);J0("COERCEFULL",f[g.COERCEPLAIN]+`(?:${f[g.PRERELEASE]})?(?:${f[g.BUILD]})?(?:$|[^\\d])`);J0("COERCERTL",f[g.COERCE],!0);J0("COERCERTLFULL",f[g.COERCEFULL],!0);J0("LONETILDE","(?:~>?)");J0("TILDETRIM",`(\\s*)${f[g.LONETILDE]}\\s+`,!0);A8.tildeTrimReplace="$1~";J0("TILDE",`^${f[g.LONETILDE]}${f[g.XRANGEPLAIN]}$`);J0("TILDELOOSE",`^${f[g.LONETILDE]}${f[g.XRANGEPLAINLOOSE]}$`);J0("LONECARET","(?:\\^)");J0("CARETTRIM",`(\\s*)${f[g.LONECARET]}\\s+`,!0);A8.caretTrimReplace="$1^";J0("CARET",`^${f[g.LONECARET]}${f[g.XRANGEPLAIN]}$`);J0("CARETLOOSE",`^${f[g.LONECARET]}${f[g.XRANGEPLAINLOOSE]}$`);J0("COMPARATORLOOSE",`^${f[g.GTLT]}\\s*(${f[g.LOOSEPLAIN]})$|^$`);J0("COMPARATOR",`^${f[g.GTLT]}\\s*(${f[g.FULLPLAIN]})$|^$`);J0("COMPARATORTRIM",`(\\s*)${f[g.GTLT]}\\s*(${f[g.LOOSEPLAIN]}|${f[g.XRANGEPLAIN]})`,!0);A8.comparatorTrimReplace="$1$2$3";J0("HYPHENRANGE",`^\\s*(${f[g.XRANGEPLAIN]})\\s+-\\s+(${f[g.XRANGEPLAIN]})\\s*$`);J0("HYPHENRANGELOOSE",`^\\s*(${f[g.XRANGEPLAINLOOSE]})\\s+-\\s+(${f[g.XRANGEPLAINLOOSE]})\\s*$`);J0("STAR","(<|>)?=?\\s*\\*");J0("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");J0("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var TJ=z((cP0,Fx)=>{var tW0=Object.freeze({loose:!0}),eW0=Object.freeze({}),DH0=(D)=>{if(!D)return eW0;if(typeof D!=="object")return tW0;return D};Fx.exports=DH0});var $W=z((nP0,Qx)=>{var $x=/^[0-9]+$/,Jx=(D,F)=>{if(typeof D==="number"&&typeof F==="number")return D===F?0:D<F?-1:1;let $=$x.test(D),J=$x.test(F);if($&&J)D=+D,F=+F;return D===F?0:$&&!J?-1:J&&!$?1:D<F?-1:1},FH0=(D,F)=>Jx(F,D);Qx.exports={compareIdentifiers:Jx,rcompareIdentifiers:FH0}});var TD=z((iP0,Bx)=>{var PJ=E9(),{MAX_LENGTH:Yx,MAX_SAFE_INTEGER:IJ}=z9(),{safeRe:SJ,t:kJ}=qF(),$H0=TJ(),{compareIdentifiers:JW}=$W();class u1{constructor(D,F){if(F=$H0(F),D instanceof u1)if(D.loose===!!F.loose&&D.includePrerelease===!!F.includePrerelease)return D;else D=D.version;else if(typeof D!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof D}".`);if(D.length>Yx)throw TypeError(`version is longer than ${Yx} characters`);PJ("SemVer",D,F),this.options=F,this.loose=!!F.loose,this.includePrerelease=!!F.includePrerelease;let $=D.trim().match(F.loose?SJ[kJ.LOOSE]:SJ[kJ.FULL]);if(!$)throw TypeError(`Invalid Version: ${D}`);if(this.raw=D,this.major=+$[1],this.minor=+$[2],this.patch=+$[3],this.major>IJ||this.major<0)throw TypeError("Invalid major version");if(this.minor>IJ||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>IJ||this.patch<0)throw TypeError("Invalid patch version");if(!$[4])this.prerelease=[];else this.prerelease=$[4].split(".").map((J)=>{if(/^[0-9]+$/.test(J)){let Q=+J;if(Q>=0&&Q<IJ)return Q}return J});this.build=$[5]?$[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(D){if(PJ("SemVer.compare",this.version,this.options,D),!(D instanceof u1)){if(typeof D==="string"&&D===this.version)return 0;D=new u1(D,this.options)}if(D.version===this.version)return 0;return this.compareMain(D)||this.comparePre(D)}compareMain(D){if(!(D instanceof u1))D=new u1(D,this.options);if(this.major<D.major)return-1;if(this.major>D.major)return 1;if(this.minor<D.minor)return-1;if(this.minor>D.minor)return 1;if(this.patch<D.patch)return-1;if(this.patch>D.patch)return 1;return 0}comparePre(D){if(!(D instanceof u1))D=new u1(D,this.options);if(this.prerelease.length&&!D.prerelease.length)return-1;else if(!this.prerelease.length&&D.prerelease.length)return 1;else if(!this.prerelease.length&&!D.prerelease.length)return 0;let F=0;do{let $=this.prerelease[F],J=D.prerelease[F];if(PJ("prerelease compare",F,$,J),$===void 0&&J===void 0)return 0;else if(J===void 0)return 1;else if($===void 0)return-1;else if($===J)continue;else return JW($,J)}while(++F)}compareBuild(D){if(!(D instanceof u1))D=new u1(D,this.options);let F=0;do{let $=this.build[F],J=D.build[F];if(PJ("build compare",F,$,J),$===void 0&&J===void 0)return 0;else if(J===void 0)return 1;else if($===void 0)return-1;else if($===J)continue;else return JW($,J)}while(++F)}inc(D,F,$){if(D.startsWith("pre")){if(!F&&$===!1)throw Error("invalid increment argument: identifier is empty");if(F){let J=`-${F}`.match(this.options.loose?SJ[kJ.PRERELEASELOOSE]:SJ[kJ.PRERELEASE]);if(!J||J[1]!==F)throw Error(`invalid identifier: ${F}`)}}switch(D){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",F,$);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",F,$);break;case"prepatch":this.prerelease.length=0,this.inc("patch",F,$),this.inc("pre",F,$);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",F,$);this.inc("pre",F,$);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let J=Number($)?1:0;if(this.prerelease.length===0)this.prerelease=[J];else{let Q=this.prerelease.length;while(--Q>=0)if(typeof this.prerelease[Q]==="number")this.prerelease[Q]++,Q=-2;if(Q===-1){if(F===this.prerelease.join(".")&&$===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(J)}}if(F){let Q=[F,J];if($===!1)Q=[F];if(JW(this.prerelease[0],F)===0){if(isNaN(this.prerelease[1]))this.prerelease=Q}else this.prerelease=Q}break}default:throw Error(`invalid increment argument: ${D}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}Bx.exports=u1});var T4=z((aP0,Gx)=>{var Xx=TD(),JH0=(D,F,$=!1)=>{if(D instanceof Xx)return D;try{return new Xx(D,F)}catch(J){if(!$)return null;throw J}};Gx.exports=JH0});var Hx=z((oP0,Wx)=>{var QH0=T4(),YH0=(D,F)=>{let $=QH0(D,F);return $?$.version:null};Wx.exports=YH0});var Kx=z((sP0,qx)=>{var BH0=T4(),XH0=(D,F)=>{let $=BH0(D.trim().replace(/^[=v]+/,""),F);return $?$.version:null};qx.exports=XH0});var Vx=z((rP0,Ex)=>{var zx=TD(),GH0=(D,F,$,J,Q)=>{if(typeof $==="string")Q=J,J=$,$=void 0;try{return new zx(D instanceof zx?D.version:D,$).inc(F,J,Q).version}catch(Y){return null}};Ex.exports=GH0});var Lx=z((tP0,Ux)=>{var Zx=T4(),WH0=(D,F)=>{let $=Zx(D,null,!0),J=Zx(F,null,!0),Q=$.compare(J);if(Q===0)return null;let Y=Q>0,B=Y?$:J,X=Y?J:$,G=!!B.prerelease.length;if(!!X.prerelease.length&&!G){if(!X.patch&&!X.minor)return"major";if(X.compareMain(B)===0){if(X.minor&&!X.patch)return"minor";return"patch"}}let q=G?"pre":"";if($.major!==J.major)return q+"major";if($.minor!==J.minor)return q+"minor";if($.patch!==J.patch)return q+"patch";return"prerelease"};Ux.exports=WH0});var Mx=z((eP0,Ax)=>{var HH0=TD(),qH0=(D,F)=>new HH0(D,F).major;Ax.exports=qH0});var Rx=z((DI0,Nx)=>{var KH0=TD(),zH0=(D,F)=>new KH0(D,F).minor;Nx.exports=zH0});var Ox=z((FI0,Cx)=>{var EH0=TD(),VH0=(D,F)=>new EH0(D,F).patch;Cx.exports=VH0});var jx=z(($I0,wx)=>{var ZH0=T4(),UH0=(D,F)=>{let $=ZH0(D,F);return $&&$.prerelease.length?$.prerelease:null};wx.exports=UH0});var M1=z((JI0,Px)=>{var Tx=TD(),LH0=(D,F,$)=>new Tx(D,$).compare(new Tx(F,$));Px.exports=LH0});var Sx=z((QI0,Ix)=>{var AH0=M1(),MH0=(D,F,$)=>AH0(F,D,$);Ix.exports=MH0});var vx=z((YI0,kx)=>{var NH0=M1(),RH0=(D,F)=>NH0(D,F,!0);kx.exports=RH0});var vJ=z((BI0,xx)=>{var yx=TD(),CH0=(D,F,$)=>{let J=new yx(D,$),Q=new yx(F,$);return J.compare(Q)||J.compareBuild(Q)};xx.exports=CH0});var fx=z((XI0,_x)=>{var OH0=vJ(),wH0=(D,F)=>D.sort(($,J)=>OH0($,J,F));_x.exports=wH0});var hx=z((GI0,gx)=>{var jH0=vJ(),TH0=(D,F)=>D.sort(($,J)=>jH0(J,$,F));gx.exports=TH0});var V9=z((WI0,bx)=>{var PH0=M1(),IH0=(D,F,$)=>PH0(D,F,$)>0;bx.exports=IH0});var yJ=z((HI0,ux)=>{var SH0=M1(),kH0=(D,F,$)=>SH0(D,F,$)<0;ux.exports=kH0});var QW=z((qI0,mx)=>{var vH0=M1(),yH0=(D,F,$)=>vH0(D,F,$)===0;mx.exports=yH0});var YW=z((KI0,lx)=>{var xH0=M1(),_H0=(D,F,$)=>xH0(D,F,$)!==0;lx.exports=_H0});var xJ=z((zI0,px)=>{var fH0=M1(),gH0=(D,F,$)=>fH0(D,F,$)>=0;px.exports=gH0});var _J=z((EI0,dx)=>{var hH0=M1(),bH0=(D,F,$)=>hH0(D,F,$)<=0;dx.exports=bH0});var BW=z((VI0,cx)=>{var uH0=QW(),mH0=YW(),lH0=V9(),pH0=xJ(),dH0=yJ(),cH0=_J(),nH0=(D,F,$,J)=>{switch(F){case"===":if(typeof D==="object")D=D.version;if(typeof $==="object")$=$.version;return D===$;case"!==":if(typeof D==="object")D=D.version;if(typeof $==="object")$=$.version;return D!==$;case"":case"=":case"==":return uH0(D,$,J);case"!=":return mH0(D,$,J);case">":return lH0(D,$,J);case">=":return pH0(D,$,J);case"<":return dH0(D,$,J);case"<=":return cH0(D,$,J);default:throw TypeError(`Invalid operator: ${F}`)}};cx.exports=nH0});var ix=z((ZI0,nx)=>{var iH0=TD(),aH0=T4(),{safeRe:fJ,t:gJ}=qF(),oH0=(D,F)=>{if(D instanceof iH0)return D;if(typeof D==="number")D=String(D);if(typeof D!=="string")return null;F=F||{};let $=null;if(!F.rtl)$=D.match(F.includePrerelease?fJ[gJ.COERCEFULL]:fJ[gJ.COERCE]);else{let G=F.includePrerelease?fJ[gJ.COERCERTLFULL]:fJ[gJ.COERCERTL],H;while((H=G.exec(D))&&(!$||$.index+$[0].length!==D.length)){if(!$||H.index+H[0].length!==$.index+$[0].length)$=H;G.lastIndex=H.index+H[1].length+H[2].length}G.lastIndex=-1}if($===null)return null;let J=$[2],Q=$[3]||"0",Y=$[4]||"0",B=F.includePrerelease&&$[5]?`-${$[5]}`:"",X=F.includePrerelease&&$[6]?`+${$[6]}`:"";return aH0(`${J}.${Q}.${Y}${B}${X}`,F)};nx.exports=oH0});var sx=z((UI0,ox)=>{class ax{constructor(){this.max=1000,this.map=new Map}get(D){let F=this.map.get(D);if(F===void 0)return;else return this.map.delete(D),this.map.set(D,F),F}delete(D){return this.map.delete(D)}set(D,F){if(!this.delete(D)&&F!==void 0){if(this.map.size>=this.max){let J=this.map.keys().next().value;this.delete(J)}this.map.set(D,F)}return this}}ox.exports=ax});var N1=z((LI0,D_)=>{var sH0=/\s+/g;class Z9{constructor(D,F){if(F=tH0(F),D instanceof Z9)if(D.loose===!!F.loose&&D.includePrerelease===!!F.includePrerelease)return D;else return new Z9(D.raw,F);if(D instanceof XW)return this.raw=D.value,this.set=[[D]],this.formatted=void 0,this;if(this.options=F,this.loose=!!F.loose,this.includePrerelease=!!F.includePrerelease,this.raw=D.trim().replace(sH0," "),this.set=this.raw.split("||").map(($)=>this.parseRange($.trim())).filter(($)=>$.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let $=this.set[0];if(this.set=this.set.filter((J)=>!tx(J[0])),this.set.length===0)this.set=[$];else if(this.set.length>1){for(let J of this.set)if(J.length===1&&Yq0(J[0])){this.set=[J];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let D=0;D<this.set.length;D++){if(D>0)this.formatted+="||";let F=this.set[D];for(let $=0;$<F.length;$++){if($>0)this.formatted+=" ";this.formatted+=F[$].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(D){let $=((this.options.includePrerelease&&Jq0)|(this.options.loose&&Qq0))+":"+D,J=rx.get($);if(J)return J;let Q=this.options.loose,Y=Q?fD[PD.HYPHENRANGELOOSE]:fD[PD.HYPHENRANGE];D=D.replace(Y,Vq0(this.options.includePrerelease)),u0("hyphen replace",D),D=D.replace(fD[PD.COMPARATORTRIM],Dq0),u0("comparator trim",D),D=D.replace(fD[PD.TILDETRIM],Fq0),u0("tilde trim",D),D=D.replace(fD[PD.CARETTRIM],$q0),u0("caret trim",D);let B=D.split(" ").map((q)=>Bq0(q,this.options)).join(" ").split(/\s+/).map((q)=>Eq0(q,this.options));if(Q)B=B.filter((q)=>{return u0("loose invalid filter",q,this.options),!!q.match(fD[PD.COMPARATORLOOSE])});u0("range list",B);let X=new Map,G=B.map((q)=>new XW(q,this.options));for(let q of G){if(tx(q))return[q];X.set(q.value,q)}if(X.size>1&&X.has(""))X.delete("");let H=[...X.values()];return rx.set($,H),H}intersects(D,F){if(!(D instanceof Z9))throw TypeError("a Range is required");return this.set.some(($)=>{return ex($,F)&&D.set.some((J)=>{return ex(J,F)&&$.every((Q)=>{return J.every((Y)=>{return Q.intersects(Y,F)})})})})}test(D){if(!D)return!1;if(typeof D==="string")try{D=new eH0(D,this.options)}catch(F){return!1}for(let F=0;F<this.set.length;F++)if(Zq0(this.set[F],D,this.options))return!0;return!1}}D_.exports=Z9;var rH0=sx(),rx=new rH0,tH0=TJ(),XW=U9(),u0=E9(),eH0=TD(),{safeRe:fD,t:PD,comparatorTrimReplace:Dq0,tildeTrimReplace:Fq0,caretTrimReplace:$q0}=qF(),{FLAG_INCLUDE_PRERELEASE:Jq0,FLAG_LOOSE:Qq0}=z9(),tx=(D)=>D.value==="<0.0.0-0",Yq0=(D)=>D.value==="",ex=(D,F)=>{let $=!0,J=D.slice(),Q=J.pop();while($&&J.length)$=J.every((Y)=>{return Q.intersects(Y,F)}),Q=J.pop();return $},Bq0=(D,F)=>{return D=D.replace(fD[PD.BUILD],""),u0("comp",D,F),D=Wq0(D,F),u0("caret",D),D=Xq0(D,F),u0("tildes",D),D=qq0(D,F),u0("xrange",D),D=zq0(D,F),u0("stars",D),D},gD=(D)=>!D||D.toLowerCase()==="x"||D==="*",Xq0=(D,F)=>{return D.trim().split(/\s+/).map(($)=>Gq0($,F)).join(" ")},Gq0=(D,F)=>{let $=F.loose?fD[PD.TILDELOOSE]:fD[PD.TILDE];return D.replace($,(J,Q,Y,B,X)=>{u0("tilde",D,J,Q,Y,B,X);let G;if(gD(Q))G="";else if(gD(Y))G=`>=${Q}.0.0 <${+Q+1}.0.0-0`;else if(gD(B))G=`>=${Q}.${Y}.0 <${Q}.${+Y+1}.0-0`;else if(X)u0("replaceTilde pr",X),G=`>=${Q}.${Y}.${B}-${X} <${Q}.${+Y+1}.0-0`;else G=`>=${Q}.${Y}.${B} <${Q}.${+Y+1}.0-0`;return u0("tilde return",G),G})},Wq0=(D,F)=>{return D.trim().split(/\s+/).map(($)=>Hq0($,F)).join(" ")},Hq0=(D,F)=>{u0("caret",D,F);let $=F.loose?fD[PD.CARETLOOSE]:fD[PD.CARET],J=F.includePrerelease?"-0":"";return D.replace($,(Q,Y,B,X,G)=>{u0("caret",D,Q,Y,B,X,G);let H;if(gD(Y))H="";else if(gD(B))H=`>=${Y}.0.0${J} <${+Y+1}.0.0-0`;else if(gD(X))if(Y==="0")H=`>=${Y}.${B}.0${J} <${Y}.${+B+1}.0-0`;else H=`>=${Y}.${B}.0${J} <${+Y+1}.0.0-0`;else if(G)if(u0("replaceCaret pr",G),Y==="0")if(B==="0")H=`>=${Y}.${B}.${X}-${G} <${Y}.${B}.${+X+1}-0`;else H=`>=${Y}.${B}.${X}-${G} <${Y}.${+B+1}.0-0`;else H=`>=${Y}.${B}.${X}-${G} <${+Y+1}.0.0-0`;else if(u0("no pr"),Y==="0")if(B==="0")H=`>=${Y}.${B}.${X}${J} <${Y}.${B}.${+X+1}-0`;else H=`>=${Y}.${B}.${X}${J} <${Y}.${+B+1}.0-0`;else H=`>=${Y}.${B}.${X} <${+Y+1}.0.0-0`;return u0("caret return",H),H})},qq0=(D,F)=>{return u0("replaceXRanges",D,F),D.split(/\s+/).map(($)=>Kq0($,F)).join(" ")},Kq0=(D,F)=>{D=D.trim();let $=F.loose?fD[PD.XRANGELOOSE]:fD[PD.XRANGE];return D.replace($,(J,Q,Y,B,X,G)=>{u0("xRange",D,J,Q,Y,B,X,G);let H=gD(Y),q=H||gD(B),K=q||gD(X),V=K;if(Q==="="&&V)Q="";if(G=F.includePrerelease?"-0":"",H)if(Q===">"||Q==="<")J="<0.0.0-0";else J="*";else if(Q&&V){if(q)B=0;if(X=0,Q===">")if(Q=">=",q)Y=+Y+1,B=0,X=0;else B=+B+1,X=0;else if(Q==="<=")if(Q="<",q)Y=+Y+1;else B=+B+1;if(Q==="<")G="-0";J=`${Q+Y}.${B}.${X}${G}`}else if(q)J=`>=${Y}.0.0${G} <${+Y+1}.0.0-0`;else if(K)J=`>=${Y}.${B}.0${G} <${Y}.${+B+1}.0-0`;return u0("xRange return",J),J})},zq0=(D,F)=>{return u0("replaceStars",D,F),D.trim().replace(fD[PD.STAR],"")},Eq0=(D,F)=>{return u0("replaceGTE0",D,F),D.trim().replace(fD[F.includePrerelease?PD.GTE0PRE:PD.GTE0],"")},Vq0=(D)=>(F,$,J,Q,Y,B,X,G,H,q,K,V)=>{if(gD(J))$="";else if(gD(Q))$=`>=${J}.0.0${D?"-0":""}`;else if(gD(Y))$=`>=${J}.${Q}.0${D?"-0":""}`;else if(B)$=`>=${$}`;else $=`>=${$}${D?"-0":""}`;if(gD(H))G="";else if(gD(q))G=`<${+H+1}.0.0-0`;else if(gD(K))G=`<${H}.${+q+1}.0-0`;else if(V)G=`<=${H}.${q}.${K}-${V}`;else if(D)G=`<${H}.${q}.${+K+1}-0`;else G=`<=${G}`;return`${$} ${G}`.trim()},Zq0=(D,F,$)=>{for(let J=0;J<D.length;J++)if(!D[J].test(F))return!1;if(F.prerelease.length&&!$.includePrerelease){for(let J=0;J<D.length;J++){if(u0(D[J].semver),D[J].semver===XW.ANY)continue;if(D[J].semver.prerelease.length>0){let Q=D[J].semver;if(Q.major===F.major&&Q.minor===F.minor&&Q.patch===F.patch)return!0}}return!1}return!0}});var U9=z((AI0,B_)=>{var L9=Symbol("SemVer ANY");class hJ{static get ANY(){return L9}constructor(D,F){if(F=F_(F),D instanceof hJ)if(D.loose===!!F.loose)return D;else D=D.value;if(D=D.trim().split(/\s+/).join(" "),WW("comparator",D,F),this.options=F,this.loose=!!F.loose,this.parse(D),this.semver===L9)this.value="";else this.value=this.operator+this.semver.version;WW("comp",this)}parse(D){let F=this.options.loose?$_[J_.COMPARATORLOOSE]:$_[J_.COMPARATOR],$=D.match(F);if(!$)throw TypeError(`Invalid comparator: ${D}`);if(this.operator=$[1]!==void 0?$[1]:"",this.operator==="=")this.operator="";if(!$[2])this.semver=L9;else this.semver=new Q_($[2],this.options.loose)}toString(){return this.value}test(D){if(WW("Comparator.test",D,this.options.loose),this.semver===L9||D===L9)return!0;if(typeof D==="string")try{D=new Q_(D,this.options)}catch(F){return!1}return GW(D,this.operator,this.semver,this.options)}intersects(D,F){if(!(D instanceof hJ))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new Y_(D.value,F).test(this.value)}else if(D.operator===""){if(D.value==="")return!0;return new Y_(this.value,F).test(D.semver)}if(F=F_(F),F.includePrerelease&&(this.value==="<0.0.0-0"||D.value==="<0.0.0-0"))return!1;if(!F.includePrerelease&&(this.value.startsWith("<0.0.0")||D.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&D.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&D.operator.startsWith("<"))return!0;if(this.semver.version===D.semver.version&&this.operator.includes("=")&&D.operator.includes("="))return!0;if(GW(this.semver,"<",D.semver,F)&&this.operator.startsWith(">")&&D.operator.startsWith("<"))return!0;if(GW(this.semver,">",D.semver,F)&&this.operator.startsWith("<")&&D.operator.startsWith(">"))return!0;return!1}}B_.exports=hJ;var F_=TJ(),{safeRe:$_,t:J_}=qF(),GW=BW(),WW=E9(),Q_=TD(),Y_=N1()});var A9=z((MI0,X_)=>{var Uq0=N1(),Lq0=(D,F,$)=>{try{F=new Uq0(F,$)}catch(J){return!1}return F.test(D)};X_.exports=Lq0});var W_=z((NI0,G_)=>{var Aq0=N1(),Mq0=(D,F)=>new Aq0(D,F).set.map(($)=>$.map((J)=>J.value).join(" ").trim().split(" "));G_.exports=Mq0});var q_=z((RI0,H_)=>{var Nq0=TD(),Rq0=N1(),Cq0=(D,F,$)=>{let J=null,Q=null,Y=null;try{Y=new Rq0(F,$)}catch(B){return null}return D.forEach((B)=>{if(Y.test(B)){if(!J||Q.compare(B)===-1)J=B,Q=new Nq0(J,$)}}),J};H_.exports=Cq0});var z_=z((CI0,K_)=>{var Oq0=TD(),wq0=N1(),jq0=(D,F,$)=>{let J=null,Q=null,Y=null;try{Y=new wq0(F,$)}catch(B){return null}return D.forEach((B)=>{if(Y.test(B)){if(!J||Q.compare(B)===1)J=B,Q=new Oq0(J,$)}}),J};K_.exports=jq0});var Z_=z((OI0,V_)=>{var HW=TD(),Tq0=N1(),E_=V9(),Pq0=(D,F)=>{D=new Tq0(D,F);let $=new HW("0.0.0");if(D.test($))return $;if($=new HW("0.0.0-0"),D.test($))return $;$=null;for(let J=0;J<D.set.length;++J){let Q=D.set[J],Y=null;if(Q.forEach((B)=>{let X=new HW(B.semver.version);switch(B.operator){case">":if(X.prerelease.length===0)X.patch++;else X.prerelease.push(0);X.raw=X.format();case"":case">=":if(!Y||E_(X,Y))Y=X;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${B.operator}`)}}),Y&&(!$||E_($,Y)))$=Y}if($&&D.test($))return $;return null};V_.exports=Pq0});var L_=z((wI0,U_)=>{var Iq0=N1(),Sq0=(D,F)=>{try{return new Iq0(D,F).range||"*"}catch($){return null}};U_.exports=Sq0});var bJ=z((jI0,R_)=>{var kq0=TD(),N_=U9(),{ANY:vq0}=N_,yq0=N1(),xq0=A9(),A_=V9(),M_=yJ(),_q0=_J(),fq0=xJ(),gq0=(D,F,$,J)=>{D=new kq0(D,J),F=new yq0(F,J);let Q,Y,B,X,G;switch($){case">":Q=A_,Y=_q0,B=M_,X=">",G=">=";break;case"<":Q=M_,Y=fq0,B=A_,X="<",G="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(xq0(D,F,J))return!1;for(let H=0;H<F.set.length;++H){let q=F.set[H],K=null,V=null;if(q.forEach((E)=>{if(E.semver===vq0)E=new N_(">=0.0.0");if(K=K||E,V=V||E,Q(E.semver,K.semver,J))K=E;else if(B(E.semver,V.semver,J))V=E}),K.operator===X||K.operator===G)return!1;if((!V.operator||V.operator===X)&&Y(D,V.semver))return!1;else if(V.operator===G&&B(D,V.semver))return!1}return!0};R_.exports=gq0});var O_=z((TI0,C_)=>{var hq0=bJ(),bq0=(D,F,$)=>hq0(D,F,">",$);C_.exports=bq0});var j_=z((PI0,w_)=>{var uq0=bJ(),mq0=(D,F,$)=>uq0(D,F,"<",$);w_.exports=mq0});var I_=z((II0,P_)=>{var T_=N1(),lq0=(D,F,$)=>{return D=new T_(D,$),F=new T_(F,$),D.intersects(F,$)};P_.exports=lq0});var k_=z((SI0,S_)=>{var pq0=A9(),dq0=M1();S_.exports=(D,F,$)=>{let J=[],Q=null,Y=null,B=D.sort((q,K)=>dq0(q,K,$));for(let q of B)if(pq0(q,F,$)){if(Y=q,!Q)Q=q}else{if(Y)J.push([Q,Y]);Y=null,Q=null}if(Q)J.push([Q,null]);let X=[];for(let[q,K]of J)if(q===K)X.push(q);else if(!K&&q===B[0])X.push("*");else if(!K)X.push(`>=${q}`);else if(q===B[0])X.push(`<=${K}`);else X.push(`${q} - ${K}`);let G=X.join(" || "),H=typeof F.raw==="string"?F.raw:String(F);return G.length<H.length?G:F}});var g_=z((kI0,f_)=>{var v_=N1(),KW=U9(),{ANY:qW}=KW,M9=A9(),zW=M1(),cq0=(D,F,$={})=>{if(D===F)return!0;D=new v_(D,$),F=new v_(F,$);let J=!1;D:for(let Q of D.set){for(let Y of F.set){let B=iq0(Q,Y,$);if(J=J||B!==null,B)continue D}if(J)return!1}return!0},nq0=[new KW(">=0.0.0-0")],y_=[new KW(">=0.0.0")],iq0=(D,F,$)=>{if(D===F)return!0;if(D.length===1&&D[0].semver===qW)if(F.length===1&&F[0].semver===qW)return!0;else if($.includePrerelease)D=nq0;else D=y_;if(F.length===1&&F[0].semver===qW)if($.includePrerelease)return!0;else F=y_;let J=new Set,Q,Y;for(let E of D)if(E.operator===">"||E.operator===">=")Q=x_(Q,E,$);else if(E.operator==="<"||E.operator==="<=")Y=__(Y,E,$);else J.add(E.semver);if(J.size>1)return null;let B;if(Q&&Y){if(B=zW(Q.semver,Y.semver,$),B>0)return null;else if(B===0&&(Q.operator!==">="||Y.operator!=="<="))return null}for(let E of J){if(Q&&!M9(E,String(Q),$))return null;if(Y&&!M9(E,String(Y),$))return null;for(let Z of F)if(!M9(E,String(Z),$))return!1;return!0}let X,G,H,q,K=Y&&!$.includePrerelease&&Y.semver.prerelease.length?Y.semver:!1,V=Q&&!$.includePrerelease&&Q.semver.prerelease.length?Q.semver:!1;if(K&&K.prerelease.length===1&&Y.operator==="<"&&K.prerelease[0]===0)K=!1;for(let E of F){if(q=q||E.operator===">"||E.operator===">=",H=H||E.operator==="<"||E.operator==="<=",Q){if(V){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===V.major&&E.semver.minor===V.minor&&E.semver.patch===V.patch)V=!1}if(E.operator===">"||E.operator===">="){if(X=x_(Q,E,$),X===E&&X!==Q)return!1}else if(Q.operator===">="&&!M9(Q.semver,String(E),$))return!1}if(Y){if(K){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===K.major&&E.semver.minor===K.minor&&E.semver.patch===K.patch)K=!1}if(E.operator==="<"||E.operator==="<="){if(G=__(Y,E,$),G===E&&G!==Y)return!1}else if(Y.operator==="<="&&!M9(Y.semver,String(E),$))return!1}if(!E.operator&&(Y||Q)&&B!==0)return!1}if(Q&&H&&!Y&&B!==0)return!1;if(Y&&q&&!Q&&B!==0)return!1;if(V||K)return!1;return!0},x_=(D,F,$)=>{if(!D)return F;let J=zW(D.semver,F.semver,$);return J>0?D:J<0?F:F.operator===">"&&D.operator===">="?F:D},__=(D,F,$)=>{if(!D)return F;let J=zW(D.semver,F.semver,$);return J<0?D:J>0?F:F.operator==="<"&&D.operator==="<="?F:D};f_.exports=cq0});var m_=z((vI0,u_)=>{var EW=qF(),h_=z9(),aq0=TD(),b_=$W(),oq0=T4(),sq0=Hx(),rq0=Kx(),tq0=Vx(),eq0=Lx(),DK0=Mx(),FK0=Rx(),$K0=Ox(),JK0=jx(),QK0=M1(),YK0=Sx(),BK0=vx(),XK0=vJ(),GK0=fx(),WK0=hx(),HK0=V9(),qK0=yJ(),KK0=QW(),zK0=YW(),EK0=xJ(),VK0=_J(),ZK0=BW(),UK0=ix(),LK0=U9(),AK0=N1(),MK0=A9(),NK0=W_(),RK0=q_(),CK0=z_(),OK0=Z_(),wK0=L_(),jK0=bJ(),TK0=O_(),PK0=j_(),IK0=I_(),SK0=k_(),kK0=g_();u_.exports={parse:oq0,valid:sq0,clean:rq0,inc:tq0,diff:eq0,major:DK0,minor:FK0,patch:$K0,prerelease:JK0,compare:QK0,rcompare:YK0,compareLoose:BK0,compareBuild:XK0,sort:GK0,rsort:WK0,gt:HK0,lt:qK0,eq:KK0,neq:zK0,gte:EK0,lte:VK0,cmp:ZK0,coerce:UK0,Comparator:LK0,Range:AK0,satisfies:MK0,toComparators:NK0,maxSatisfying:RK0,minSatisfying:CK0,minVersion:OK0,validRange:wK0,outside:jK0,gtr:TK0,ltr:PK0,intersects:IK0,simplifyRange:SK0,subset:kK0,SemVer:aq0,re:EW.re,src:EW.src,tokens:EW.t,SEMVER_SPEC_VERSION:h_.SEMVER_SPEC_VERSION,RELEASE_TYPES:h_.RELEASE_TYPES,compareIdentifiers:b_.compareIdentifiers,rcompareIdentifiers:b_.rcompareIdentifiers}});function p_(D,F,$){if(!D)return!1;if(D.constructor===F)return!0;return vK0.call(D)===$}function d_(D){return p_(D,Uint8Array,"[object Uint8Array]")}function yK0(D){return p_(D,ArrayBuffer,"[object ArrayBuffer]")}function xK0(D){return d_(D)||yK0(D)}function _K0(D){if(!d_(D))throw TypeError(`Expected \`Uint8Array\`, got \`${typeof D}\``)}function fK0(D){if(!xK0(D))throw TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof D}\``)}function VW(D,F){if(D.length===0)return new Uint8Array(0);F??=D.reduce((Q,Y)=>Q+Y.length,0);let $=new Uint8Array(F),J=0;for(let Q of D)_K0(Q),$.set(Q,J),J+=Q.length;return $}function ZW(D,F="utf8"){return fK0(D),l_[F]??=new globalThis.TextDecoder(F),l_[F].decode(D)}function gK0(D){if(typeof D!=="string")throw TypeError(`Expected \`string\`, got \`${typeof D}\``)}function uJ(D){return gK0(D),hK0.encode(D)}var vK0,l_,hK0,yI0;var c_=I(()=>{vK0=Object.prototype.toString;l_={utf8:new globalThis.TextDecoder("utf8")};hK0=new globalThis.TextEncoder;yI0=Array.from({length:256},(D,F)=>F.toString(16).padStart(2,"0"))});import{isDeepStrictEqual as bK0}from"util";import n_ from"process";import P4 from"fs";import i_ from"path";import N9 from"crypto";import uK0 from"assert";var o_,s_,I4,mK0,a_="aes-256-cbc",KF=()=>Object.create(null),lK0=(D)=>D!==void 0&&D!==null,pK0=(D,F)=>{let $=new Set(["undefined","symbol","function"]),J=typeof F;if($.has(J))throw TypeError(`Setting a value of type \`${J}\` for key \`${D}\` is not allowed as it's not supported by JSON`)},mJ="__internal__",UW,lJ;var r_=I(()=>{QP();BP();fP();ry();c_();o_=r(Py(),1),s_=r(sy(),1),I4=r(m_(),1),mK0=s_.default.default,UW=`${mJ}.migrations.version`;lJ=class lJ{path;events;#$;#F;#D;#Q={};constructor(D={}){let F={configName:"config",fileExtension:"json",projectSuffix:"nodejs",clearInvalidConfig:!1,accessPropertiesByDotNotation:!0,configFileMode:438,...D};if(!F.cwd){if(!F.projectName)throw Error("Please specify the `projectName` option.");F.cwd=TX(F.projectName,{suffix:F.projectSuffix}).config}if(this.#D=F,F.schema??F.ajvOptions??F.rootSchema){if(F.schema&&typeof F.schema!=="object")throw TypeError("The `schema` option must be an object.");let Y=new o_.Ajv2020({allErrors:!0,useDefaults:!0,...F.ajvOptions});mK0(Y);let B={...F.rootSchema,type:"object",properties:F.schema};this.#$=Y.compile(B);for(let[X,G]of Object.entries(F.schema??{}))if(G?.default)this.#Q[X]=G.default}if(F.defaults)this.#Q={...this.#Q,...F.defaults};if(F.serialize)this._serialize=F.serialize;if(F.deserialize)this._deserialize=F.deserialize;this.events=new EventTarget,this.#F=F.encryptionKey;let $=F.fileExtension?`.${F.fileExtension}`:"";this.path=i_.resolve(F.cwd,`${F.configName??"config"}${$}`);let J=this.store,Q=Object.assign(KF(),F.defaults,J);if(F.migrations){if(!F.projectVersion)throw Error("Please specify the `projectVersion` option.");this._migrate(F.migrations,F.projectVersion,F.beforeEachMigration)}this._validate(Q);try{uK0.deepEqual(J,Q)}catch{this.store=Q}if(F.watch)this._watch()}get(D,F){if(this.#D.accessPropertiesByDotNotation)return this._get(D,F);let{store:$}=this;return D in $?$[D]:F}set(D,F){if(typeof D!=="string"&&typeof D!=="object")throw TypeError(`Expected \`key\` to be of type \`string\` or \`object\`, got ${typeof D}`);if(typeof D!=="object"&&F===void 0)throw TypeError("Use `delete()` to clear values");if(this._containsReservedKey(D))throw TypeError(`Please don't use the ${mJ} key, as it's used to manage this module internal operations.`);let{store:$}=this,J=(Q,Y)=>{if(pK0(Q,Y),this.#D.accessPropertiesByDotNotation)OX($,Q,Y);else $[Q]=Y};if(typeof D==="object"){let Q=D;for(let[Y,B]of Object.entries(Q))J(Y,B)}else J(D,F);this.store=$}has(D){if(this.#D.accessPropertiesByDotNotation)return JP(this.store,D);return D in this.store}reset(...D){for(let F of D)if(lK0(this.#Q[F]))this.set(F,this.#Q[F])}delete(D){let{store:F}=this;if(this.#D.accessPropertiesByDotNotation)$P(F,D);else delete F[D];this.store=F}clear(){this.store=KF();for(let D of Object.keys(this.#Q))this.reset(D)}onDidChange(D,F){if(typeof D!=="string")throw TypeError(`Expected \`key\` to be of type \`string\`, got ${typeof D}`);if(typeof F!=="function")throw TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof F}`);return this._handleChange(()=>this.get(D),F)}onDidAnyChange(D){if(typeof D!=="function")throw TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof D}`);return this._handleChange(()=>this.store,D)}get size(){return Object.keys(this.store).length}get store(){try{let D=P4.readFileSync(this.path,this.#F?null:"utf8"),F=this._encryptData(D),$=this._deserialize(F);return this._validate($),Object.assign(KF(),$)}catch(D){if(D?.code==="ENOENT")return this._ensureDirectory(),KF();if(this.#D.clearInvalidConfig&&D.name==="SyntaxError")return KF();throw D}}set store(D){this._ensureDirectory(),this._validate(D),this._write(D),this.events.dispatchEvent(new Event("change"))}*[Symbol.iterator](){for(let[D,F]of Object.entries(this.store))yield[D,F]}_encryptData(D){if(!this.#F)return typeof D==="string"?D:ZW(D);try{let F=D.slice(0,16),$=N9.pbkdf2Sync(this.#F,F.toString(),1e4,32,"sha512"),J=N9.createDecipheriv(a_,$,F),Q=D.slice(17),Y=typeof Q==="string"?uJ(Q):Q;return ZW(VW([J.update(Y),J.final()]))}catch{}return D.toString()}_handleChange(D,F){let $=D(),J=()=>{let Q=$,Y=D();if(bK0(Y,Q))return;$=Y,F.call(this,Y,Q)};return this.events.addEventListener("change",J),()=>{this.events.removeEventListener("change",J)}}_deserialize=(D)=>JSON.parse(D);_serialize=(D)=>JSON.stringify(D,void 0,"\t");_validate(D){if(!this.#$)return;if(this.#$(D)||!this.#$.errors)return;let $=this.#$.errors.map(({instancePath:J,message:Q=""})=>`\`${J.slice(1)}\` ${Q}`);throw Error("Config schema violation: "+$.join("; "))}_ensureDirectory(){P4.mkdirSync(i_.dirname(this.path),{recursive:!0})}_write(D){let F=this._serialize(D);if(this.#F){let $=N9.randomBytes(16),J=N9.pbkdf2Sync(this.#F,$.toString(),1e4,32,"sha512"),Q=N9.createCipheriv(a_,J,$);F=VW([$,uJ(":"),Q.update(uJ(F)),Q.final()])}if(n_.env.SNAP)P4.writeFileSync(this.path,F,{mode:this.#D.configFileMode});else try{hX(this.path,F,{mode:this.#D.configFileMode})}catch($){if($?.code==="EXDEV"){P4.writeFileSync(this.path,F,{mode:this.#D.configFileMode});return}throw $}}_watch(){if(this._ensureDirectory(),!P4.existsSync(this.path))this._write(KF());if(n_.platform==="win32")P4.watch(this.path,{persistent:!1},eG(()=>{this.events.dispatchEvent(new Event("change"))},{wait:100}));else P4.watchFile(this.path,{persistent:!1},eG(()=>{this.events.dispatchEvent(new Event("change"))},{wait:5000}))}_migrate(D,F,$){let J=this._get(UW,"0.0.0"),Q=Object.keys(D).filter((B)=>this._shouldPerformMigration(B,J,F)),Y={...this.store};for(let B of Q)try{if($)$(this,{fromVersion:J,toVersion:B,finalVersion:F,versions:Q});let X=D[B];X?.(this),this._set(UW,B),J=B,Y={...this.store}}catch(X){throw this.store=Y,Error(`Something went wrong during the migration! Changes applied to the store until this failed migration will be restored. ${X}`)}if(this._isVersionInRangeFormat(J)||!I4.default.eq(J,F))this._set(UW,F)}_containsReservedKey(D){if(typeof D==="object"){if(Object.keys(D)[0]===mJ)return!0}if(typeof D!=="string")return!1;if(this.#D.accessPropertiesByDotNotation){if(D.startsWith(`${mJ}.`))return!0;return!1}return!1}_isVersionInRangeFormat(D){return I4.default.clean(D)===null}_shouldPerformMigration(D,F,$){if(this._isVersionInRangeFormat(D)){if(F!=="0.0.0"&&I4.default.satisfies(F,D))return!1;return I4.default.satisfies($,D)}if(I4.default.lte(D,F))return!1;if(I4.default.gt(D,$))return!1;return!0}_get(D,F){return FP(this.store,D,F)}_set(D,F){let{store:$}=this;OX($,D,F),this.store=$}}});var E0,LW,k,M8=(D)=>{switch(typeof D){case"undefined":return k.undefined;case"string":return k.string;case"number":return Number.isNaN(D)?k.nan:k.number;case"boolean":return k.boolean;case"function":return k.function;case"bigint":return k.bigint;case"symbol":return k.symbol;case"object":if(Array.isArray(D))return k.array;if(D===null)return k.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return k.promise;if(typeof Map<"u"&&D instanceof Map)return k.map;if(typeof Set<"u"&&D instanceof Set)return k.set;if(typeof Date<"u"&&D instanceof Date)return k.date;return k.object;default:return k.unknown}};var R9=I(()=>{(function(D){D.assertEqual=(Q)=>{};function F(Q){}D.assertIs=F;function $(Q){throw Error()}D.assertNever=$,D.arrayToEnum=(Q)=>{let Y={};for(let B of Q)Y[B]=B;return Y},D.getValidEnumValues=(Q)=>{let Y=D.objectKeys(Q).filter((X)=>typeof Q[Q[X]]!=="number"),B={};for(let X of Y)B[X]=Q[X];return D.objectValues(B)},D.objectValues=(Q)=>{return D.objectKeys(Q).map(function(Y){return Q[Y]})},D.objectKeys=typeof Object.keys==="function"?(Q)=>Object.keys(Q):(Q)=>{let Y=[];for(let B in Q)if(Object.prototype.hasOwnProperty.call(Q,B))Y.push(B);return Y},D.find=(Q,Y)=>{for(let B of Q)if(Y(B))return B;return},D.isInteger=typeof Number.isInteger==="function"?(Q)=>Number.isInteger(Q):(Q)=>typeof Q==="number"&&Number.isFinite(Q)&&Math.floor(Q)===Q;function J(Q,Y=" | "){return Q.map((B)=>typeof B==="string"?`'${B}'`:B).join(Y)}D.joinValues=J,D.jsonStringifyReplacer=(Q,Y)=>{if(typeof Y==="bigint")return Y.toString();return Y}})(E0||(E0={}));(function(D){D.mergeShapes=(F,$)=>{return{...F,...$}}})(LW||(LW={}));k=E0.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"])});var j,dK0=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")},rD;var pJ=I(()=>{R9();j=E0.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"]);rD=class rD extends Error{get errors(){return this.issues}constructor(D){super();this.issues=[],this.addIssue=($)=>{this.issues=[...this.issues,$]},this.addIssues=($=[])=>{this.issues=[...this.issues,...$]};let F=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,F);else this.__proto__=F;this.name="ZodError",this.issues=D}format(D){let F=D||function(Q){return Q.message},$={_errors:[]},J=(Q)=>{for(let Y of Q.issues)if(Y.code==="invalid_union")Y.unionErrors.map(J);else if(Y.code==="invalid_return_type")J(Y.returnTypeError);else if(Y.code==="invalid_arguments")J(Y.argumentsError);else if(Y.path.length===0)$._errors.push(F(Y));else{let B=$,X=0;while(X<Y.path.length){let G=Y.path[X];if(X!==Y.path.length-1)B[G]=B[G]||{_errors:[]};else B[G]=B[G]||{_errors:[]},B[G]._errors.push(F(Y));B=B[G],X++}}};return J(this),$}static assert(D){if(!(D instanceof rD))throw Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,E0.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(D=(F)=>F.message){let F={},$=[];for(let J of this.issues)if(J.path.length>0){let Q=J.path[0];F[Q]=F[Q]||[],F[Q].push(D(J))}else $.push(D(J));return{formErrors:$,fieldErrors:F}}get formErrors(){return this.flatten()}};rD.create=(D)=>{return new rD(D)}});var cK0=(D,F)=>{let $;switch(D.code){case j.invalid_type:if(D.received===k.undefined)$="Required";else $=`Expected ${D.expected}, received ${D.received}`;break;case j.invalid_literal:$=`Invalid literal value, expected ${JSON.stringify(D.expected,E0.jsonStringifyReplacer)}`;break;case j.unrecognized_keys:$=`Unrecognized key(s) in object: ${E0.joinValues(D.keys,", ")}`;break;case j.invalid_union:$="Invalid input";break;case j.invalid_union_discriminator:$=`Invalid discriminator value. Expected ${E0.joinValues(D.options)}`;break;case j.invalid_enum_value:$=`Invalid enum value. Expected ${E0.joinValues(D.options)}, received '${D.received}'`;break;case j.invalid_arguments:$="Invalid function arguments";break;case j.invalid_return_type:$="Invalid function return type";break;case j.invalid_date:$="Invalid date";break;case j.invalid_string:if(typeof D.validation==="object")if("includes"in D.validation){if($=`Invalid input: must include "${D.validation.includes}"`,typeof D.validation.position==="number")$=`${$} at one or more positions greater than or equal to ${D.validation.position}`}else if("startsWith"in D.validation)$=`Invalid input: must start with "${D.validation.startsWith}"`;else if("endsWith"in D.validation)$=`Invalid input: must end with "${D.validation.endsWith}"`;else E0.assertNever(D.validation);else if(D.validation!=="regex")$=`Invalid ${D.validation}`;else $="Invalid";break;case j.too_small:if(D.type==="array")$=`Array must contain ${D.exact?"exactly":D.inclusive?"at least":"more than"} ${D.minimum} element(s)`;else if(D.type==="string")$=`String must contain ${D.exact?"exactly":D.inclusive?"at least":"over"} ${D.minimum} character(s)`;else if(D.type==="number")$=`Number must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${D.minimum}`;else if(D.type==="bigint")$=`Number must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${D.minimum}`;else if(D.type==="date")$=`Date must be ${D.exact?"exactly equal to ":D.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(D.minimum))}`;else $="Invalid input";break;case j.too_big:if(D.type==="array")$=`Array must contain ${D.exact?"exactly":D.inclusive?"at most":"less than"} ${D.maximum} element(s)`;else if(D.type==="string")$=`String must contain ${D.exact?"exactly":D.inclusive?"at most":"under"} ${D.maximum} character(s)`;else if(D.type==="number")$=`Number must be ${D.exact?"exactly":D.inclusive?"less than or equal to":"less than"} ${D.maximum}`;else if(D.type==="bigint")$=`BigInt must be ${D.exact?"exactly":D.inclusive?"less than or equal to":"less than"} ${D.maximum}`;else if(D.type==="date")$=`Date must be ${D.exact?"exactly":D.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(D.maximum))}`;else $="Invalid input";break;case j.custom:$="Invalid input";break;case j.invalid_intersection_types:$="Intersection results could not be merged";break;case j.not_multiple_of:$=`Number must be a multiple of ${D.multipleOf}`;break;case j.not_finite:$="Number must be finite";break;default:$=F.defaultError,E0.assertNever(D)}return{message:$}},d8;var AW=I(()=>{pJ();R9();d8=cK0});function nK0(D){t_=D}function zF(){return t_}var t_;var dJ=I(()=>{AW();t_=d8});function v(D,F){let $=zF(),J=C9({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,$,$===d8?void 0:d8].filter((Q)=>!!Q)});D.common.issues.push(J)}class ND{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(D,F){let $=[];for(let J of F){if(J.status==="aborted")return a;if(J.status==="dirty")D.dirty();$.push(J.value)}return{status:D.value,value:$}}static async mergeObjectAsync(D,F){let $=[];for(let J of F){let Q=await J.key,Y=await J.value;$.push({key:Q,value:Y})}return ND.mergeObjectSync(D,$)}static mergeObjectSync(D,F){let $={};for(let J of F){let{key:Q,value:Y}=J;if(Q.status==="aborted")return a;if(Y.status==="aborted")return a;if(Q.status==="dirty")D.dirty();if(Y.status==="dirty")D.dirty();if(Q.value!=="__proto__"&&(typeof Y.value<"u"||J.alwaysSet))$[Q.value]=Y.value}return{status:D.value,value:$}}}var C9=(D)=>{let{data:F,path:$,errorMaps:J,issueData:Q}=D,Y=[...$,...Q.path||[]],B={...Q,path:Y};if(Q.message!==void 0)return{...Q,path:Y,message:Q.message};let X="",G=J.filter((H)=>!!H).slice().reverse();for(let H of G)X=H(B,{data:F,defaultError:X}).message;return{...Q,path:Y,message:X}},iK0,a,S4=(D)=>({status:"dirty",value:D}),ID=(D)=>({status:"valid",value:D}),cJ=(D)=>D.status==="aborted",nJ=(D)=>D.status==="dirty",p6=(D)=>D.status==="valid",EF=(D)=>typeof Promise<"u"&&D instanceof Promise;var MW=I(()=>{dJ();AW();iK0=[];a=Object.freeze({status:"aborted"})});var e_=()=>{};var l;var Df=I(()=>{(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(l||(l={}))});class d1{constructor(D,F,$,J){this._cachedPath=[],this.parent=D,this.data=F,this._path=$,this._key=J}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}}function B0(D){if(!D)return{};let{errorMap:F,invalid_type_error:$,required_error:J,description:Q}=D;if(F&&($||J))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(F)return{errorMap:F,description:Q};return{errorMap:(B,X)=>{let{message:G}=D;if(B.code==="invalid_enum_value")return{message:G??X.defaultError};if(typeof X.data>"u")return{message:G??J??X.defaultError};if(B.code!=="invalid_type")return{message:X.defaultError};return{message:G??$??X.defaultError}},description:Q}}class H0{get description(){return this._def.description}_getType(D){return M8(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:M8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new ND,ctx:{common:D.parent.common,data:D.data,parsedType:M8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(EF(F))throw Error("Synchronous parse encountered promise.");return F}_parseAsync(D){let F=this._parse(D);return Promise.resolve(F)}parse(D,F){let $=this.safeParse(D,F);if($.success)return $.data;throw $.error}safeParse(D,F){let $={common:{issues:[],async:F?.async??!1,contextualErrorMap:F?.errorMap},path:F?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:M8(D)},J=this._parseSync({data:D,path:$.path,parent:$});return Ff($,J)}"~validate"(D){let F={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:M8(D)};if(!this["~standard"].async)try{let $=this._parseSync({data:D,path:[],parent:F});return p6($)?{value:$.value}:{issues:F.common.issues}}catch($){if($?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;F.common={issues:[],async:!0}}return this._parseAsync({data:D,path:[],parent:F}).then(($)=>p6($)?{value:$.value}:{issues:F.common.issues})}async parseAsync(D,F){let $=await this.safeParseAsync(D,F);if($.success)return $.data;throw $.error}async safeParseAsync(D,F){let $={common:{issues:[],contextualErrorMap:F?.errorMap,async:!0},path:F?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:M8(D)},J=this._parse({data:D,path:$.path,parent:$}),Q=await(EF(J)?J:Promise.resolve(J));return Ff($,Q)}refine(D,F){let $=(J)=>{if(typeof F==="string"||typeof F>"u")return{message:F};else if(typeof F==="function")return F(J);else return F};return this._refinement((J,Q)=>{let Y=D(J),B=()=>Q.addIssue({code:j.custom,...$(J)});if(typeof Promise<"u"&&Y instanceof Promise)return Y.then((X)=>{if(!X)return B(),!1;else return!0});if(!Y)return B(),!1;else return!0})}refinement(D,F){return this._refinement(($,J)=>{if(!D($))return J.addIssue(typeof F==="function"?F($,J):F),!1;else return!0})}_refinement(D){return new c1({schema:this,typeName:o.ZodEffects,effect:{type:"refinement",refinement:D}})}superRefine(D){return this._refinement(D)}constructor(D){this.spa=this.safeParseAsync,this._def=D,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:(F)=>this["~validate"](F)}}optional(){return p1.create(this,this._def)}nullable(){return n8.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return l1.create(this)}promise(){return x4.create(this,this._def)}or(D){return MF.create([this,D],this._def)}and(D){return NF.create(this,D,this._def)}transform(D){return new c1({...B0(this._def),schema:this,typeName:o.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new wF({...B0(this._def),innerType:this,defaultValue:F,typeName:o.ZodDefault})}brand(){return new aJ({typeName:o.ZodBranded,type:this,...B0(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new jF({...B0(this._def),innerType:this,catchValue:F,typeName:o.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return I9.create(this,D)}readonly(){return TF.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}function Qf(D){let F="[0-5]\\d";if(D.precision)F=`${F}\\.\\d{${D.precision}}`;else if(D.precision==null)F=`${F}(\\.\\d+)?`;let $=D.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${F})${$}`}function Hz0(D){return new RegExp(`^${Qf(D)}$`)}function Yf(D){let F=`${Jf}T${Qf(D)}`,$=[];if($.push(D.local?"Z?":"Z"),D.offset)$.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${$.join("|")})`,new RegExp(`^${F}$`)}function qz0(D,F){if((F==="v4"||!F)&&Jz0.test(D))return!0;if((F==="v6"||!F)&&Yz0.test(D))return!0;return!1}function Kz0(D,F){if(!eK0.test(D))return!1;try{let[$]=D.split(".");if(!$)return!1;let J=$.replace(/-/g,"+").replace(/_/g,"/").padEnd($.length+(4-$.length%4)%4,"="),Q=JSON.parse(atob(J));if(typeof Q!=="object"||Q===null)return!1;if("typ"in Q&&Q?.typ!=="JWT")return!1;if(!Q.alg)return!1;if(F&&Q.alg!==F)return!1;return!0}catch{return!1}}function zz0(D,F){if((F==="v4"||!F)&&Qz0.test(D))return!0;if((F==="v6"||!F)&&Bz0.test(D))return!0;return!1}function Ez0(D,F){let $=(D.toString().split(".")[1]||"").length,J=(F.toString().split(".")[1]||"").length,Q=$>J?$:J,Y=Number.parseInt(D.toFixed(Q).replace(".","")),B=Number.parseInt(F.toFixed(Q).replace(".",""));return Y%B/10**Q}function VF(D){if(D instanceof s0){let F={};for(let $ in D.shape){let J=D.shape[$];F[$]=p1.create(VF(J))}return new s0({...D._def,shape:()=>F})}else if(D instanceof l1)return new l1({...D._def,type:VF(D.element)});else if(D instanceof p1)return p1.create(VF(D.unwrap()));else if(D instanceof n8)return n8.create(VF(D.unwrap()));else if(D instanceof R8)return R8.create(D.items.map((F)=>VF(F)));else return D}function RW(D,F){let $=M8(D),J=M8(F);if(D===F)return{valid:!0,data:D};else if($===k.object&&J===k.object){let Q=E0.objectKeys(F),Y=E0.objectKeys(D).filter((X)=>Q.indexOf(X)!==-1),B={...D,...F};for(let X of Y){let G=RW(D[X],F[X]);if(!G.valid)return{valid:!1};B[X]=G.data}return{valid:!0,data:B}}else if($===k.array&&J===k.array){if(D.length!==F.length)return{valid:!1};let Q=[];for(let Y=0;Y<D.length;Y++){let B=D[Y],X=F[Y],G=RW(B,X);if(!G.valid)return{valid:!1};Q.push(G.data)}return{valid:!0,data:Q}}else if($===k.date&&J===k.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}function Bf(D,F){return new i6({values:D,typeName:o.ZodEnum,...B0(F)})}function $f(D,F){let $=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof $==="string"?{message:$}:$}function Xf(D,F={},$){if(D)return v4.create().superRefine((J,Q)=>{let Y=D(J);if(Y instanceof Promise)return Y.then((B)=>{if(!B){let X=$f(F,J),G=X.fatal??$??!0;Q.addIssue({code:"custom",...X,fatal:G})}});if(!Y){let B=$f(F,J),X=B.fatal??$??!0;Q.addIssue({code:"custom",...B,fatal:X})}return});return v4.create()}var Ff=(D,F)=>{if(p6(F))return{success:!0,data:F.value};else{if(!D.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let $=new rD(D.common.issues);return this._error=$,this._error}}}},aK0,oK0,sK0,rK0,tK0,eK0,Dz0,Fz0,$z0="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",NW,Jz0,Qz0,Yz0,Bz0,Xz0,Gz0,Jf="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Wz0,m1,c6,n6,UF,k4,O9,LF,AF,v4,d6,N8,w9,l1,s0,MF,c8=(D)=>{if(D instanceof RF)return c8(D.schema);else if(D instanceof c1)return c8(D.innerType());else if(D instanceof CF)return[D.value];else if(D instanceof i6)return D.options;else if(D instanceof OF)return E0.objectValues(D.enum);else if(D instanceof wF)return c8(D._def.innerType);else if(D instanceof LF)return[void 0];else if(D instanceof AF)return[null];else if(D instanceof p1)return[void 0,...c8(D.unwrap())];else if(D instanceof n8)return[null,...c8(D.unwrap())];else if(D instanceof aJ)return c8(D.unwrap());else if(D instanceof TF)return c8(D.unwrap());else if(D instanceof jF)return c8(D._def.innerType);else return[]},iJ,NF,R8,j9,T9,y4,ZF,RF,CF,i6,OF,x4,c1,p1,n8,wF,jF,P9,Vz0,aJ,I9,TF,Zz0,o,Uz0=(D,F={message:`Input not instance of ${D.name}`})=>Xf(($)=>$ instanceof D,F),Gf,Wf,Lz0,Az0,Hf,Mz0,Nz0,Rz0,Cz0,Oz0,wz0,jz0,Tz0,Pz0,Iz0,Sz0,kz0,vz0,yz0,xz0,_z0,fz0,gz0,hz0,bz0,uz0,mz0,lz0,pz0,dz0,cz0,nz0,iz0,az0,oz0=()=>Gf().optional(),sz0=()=>Wf().optional(),rz0=()=>Hf().optional(),tz0,ez0;var qf=I(()=>{pJ();dJ();Df();MW();R9();aK0=/^c[^\s-]{8,}$/i,oK0=/^[0-9a-z]+$/,sK0=/^[0-9A-HJKMNP-TV-Z]{26}$/i,rK0=/^[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,tK0=/^[a-z0-9_-]{21}$/i,eK0=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Dz0=/^[-+]?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)?)??$/,Fz0=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Jz0=/^(?:(?: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])$/,Qz0=/^(?:(?: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])$/,Yz0=/^(([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]))$/,Bz0=/^(([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])$/,Xz0=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Gz0=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Wz0=new RegExp(`^${Jf}$`);m1=class m1 extends H0{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==k.string){let Q=this._getOrReturnCtx(D);return v(Q,{code:j.invalid_type,expected:k.string,received:Q.parsedType}),a}let $=new ND,J=void 0;for(let Q of this._def.checks)if(Q.kind==="min"){if(D.data.length<Q.value)J=this._getOrReturnCtx(D,J),v(J,{code:j.too_small,minimum:Q.value,type:"string",inclusive:!0,exact:!1,message:Q.message}),$.dirty()}else if(Q.kind==="max"){if(D.data.length>Q.value)J=this._getOrReturnCtx(D,J),v(J,{code:j.too_big,maximum:Q.value,type:"string",inclusive:!0,exact:!1,message:Q.message}),$.dirty()}else if(Q.kind==="length"){let Y=D.data.length>Q.value,B=D.data.length<Q.value;if(Y||B){if(J=this._getOrReturnCtx(D,J),Y)v(J,{code:j.too_big,maximum:Q.value,type:"string",inclusive:!0,exact:!0,message:Q.message});else if(B)v(J,{code:j.too_small,minimum:Q.value,type:"string",inclusive:!0,exact:!0,message:Q.message});$.dirty()}}else if(Q.kind==="email"){if(!Fz0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"email",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="emoji"){if(!NW)NW=new RegExp($z0,"u");if(!NW.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"emoji",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="uuid"){if(!rK0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"uuid",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="nanoid"){if(!tK0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"nanoid",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="cuid"){if(!aK0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"cuid",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="cuid2"){if(!oK0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"cuid2",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="ulid"){if(!sK0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"ulid",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="url")try{new URL(D.data)}catch{J=this._getOrReturnCtx(D,J),v(J,{validation:"url",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="regex"){if(Q.regex.lastIndex=0,!Q.regex.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"regex",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="trim")D.data=D.data.trim();else if(Q.kind==="includes"){if(!D.data.includes(Q.value,Q.position))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:{includes:Q.value,position:Q.position},message:Q.message}),$.dirty()}else if(Q.kind==="toLowerCase")D.data=D.data.toLowerCase();else if(Q.kind==="toUpperCase")D.data=D.data.toUpperCase();else if(Q.kind==="startsWith"){if(!D.data.startsWith(Q.value))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:{startsWith:Q.value},message:Q.message}),$.dirty()}else if(Q.kind==="endsWith"){if(!D.data.endsWith(Q.value))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:{endsWith:Q.value},message:Q.message}),$.dirty()}else if(Q.kind==="datetime"){if(!Yf(Q).test(D.data))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:"datetime",message:Q.message}),$.dirty()}else if(Q.kind==="date"){if(!Wz0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:"date",message:Q.message}),$.dirty()}else if(Q.kind==="time"){if(!Hz0(Q).test(D.data))J=this._getOrReturnCtx(D,J),v(J,{code:j.invalid_string,validation:"time",message:Q.message}),$.dirty()}else if(Q.kind==="duration"){if(!Dz0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"duration",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="ip"){if(!qz0(D.data,Q.version))J=this._getOrReturnCtx(D,J),v(J,{validation:"ip",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="jwt"){if(!Kz0(D.data,Q.alg))J=this._getOrReturnCtx(D,J),v(J,{validation:"jwt",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="cidr"){if(!zz0(D.data,Q.version))J=this._getOrReturnCtx(D,J),v(J,{validation:"cidr",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="base64"){if(!Xz0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"base64",code:j.invalid_string,message:Q.message}),$.dirty()}else if(Q.kind==="base64url"){if(!Gz0.test(D.data))J=this._getOrReturnCtx(D,J),v(J,{validation:"base64url",code:j.invalid_string,message:Q.message}),$.dirty()}else E0.assertNever(Q);return{status:$.value,value:D.data}}_regex(D,F,$){return this.refinement((J)=>D.test(J),{validation:F,code:j.invalid_string,...l.errToObj($)})}_addCheck(D){return new m1({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",...l.errToObj(D)})}url(D){return this._addCheck({kind:"url",...l.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",...l.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",...l.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",...l.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",...l.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",...l.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",...l.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",...l.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",...l.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",...l.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",...l.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",...l.errToObj(D)})}datetime(D){if(typeof D==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:D});return this._addCheck({kind:"datetime",precision:typeof D?.precision>"u"?null:D?.precision,offset:D?.offset??!1,local:D?.local??!1,...l.errToObj(D?.message)})}date(D){return this._addCheck({kind:"date",message:D})}time(D){if(typeof D==="string")return this._addCheck({kind:"time",precision:null,message:D});return this._addCheck({kind:"time",precision:typeof D?.precision>"u"?null:D?.precision,...l.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",...l.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,...l.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,...l.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,...l.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,...l.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,...l.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,...l.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,...l.errToObj(F)})}nonempty(D){return this.min(1,l.errToObj(D))}trim(){return new m1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new m1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new m1({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((D)=>D.kind==="datetime")}get isDate(){return!!this._def.checks.find((D)=>D.kind==="date")}get isTime(){return!!this._def.checks.find((D)=>D.kind==="time")}get isDuration(){return!!this._def.checks.find((D)=>D.kind==="duration")}get isEmail(){return!!this._def.checks.find((D)=>D.kind==="email")}get isURL(){return!!this._def.checks.find((D)=>D.kind==="url")}get isEmoji(){return!!this._def.checks.find((D)=>D.kind==="emoji")}get isUUID(){return!!this._def.checks.find((D)=>D.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((D)=>D.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((D)=>D.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((D)=>D.kind==="cuid2")}get isULID(){return!!this._def.checks.find((D)=>D.kind==="ulid")}get isIP(){return!!this._def.checks.find((D)=>D.kind==="ip")}get isCIDR(){return!!this._def.checks.find((D)=>D.kind==="cidr")}get isBase64(){return!!this._def.checks.find((D)=>D.kind==="base64")}get isBase64url(){return!!this._def.checks.find((D)=>D.kind==="base64url")}get minLength(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxLength(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}};m1.create=(D)=>{return new m1({checks:[],typeName:o.ZodString,coerce:D?.coerce??!1,...B0(D)})};c6=class c6 extends H0{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(D){if(this._def.coerce)D.data=Number(D.data);if(this._getType(D)!==k.number){let Q=this._getOrReturnCtx(D);return v(Q,{code:j.invalid_type,expected:k.number,received:Q.parsedType}),a}let $=void 0,J=new ND;for(let Q of this._def.checks)if(Q.kind==="int"){if(!E0.isInteger(D.data))$=this._getOrReturnCtx(D,$),v($,{code:j.invalid_type,expected:"integer",received:"float",message:Q.message}),J.dirty()}else if(Q.kind==="min"){if(Q.inclusive?D.data<Q.value:D.data<=Q.value)$=this._getOrReturnCtx(D,$),v($,{code:j.too_small,minimum:Q.value,type:"number",inclusive:Q.inclusive,exact:!1,message:Q.message}),J.dirty()}else if(Q.kind==="max"){if(Q.inclusive?D.data>Q.value:D.data>=Q.value)$=this._getOrReturnCtx(D,$),v($,{code:j.too_big,maximum:Q.value,type:"number",inclusive:Q.inclusive,exact:!1,message:Q.message}),J.dirty()}else if(Q.kind==="multipleOf"){if(Ez0(D.data,Q.value)!==0)$=this._getOrReturnCtx(D,$),v($,{code:j.not_multiple_of,multipleOf:Q.value,message:Q.message}),J.dirty()}else if(Q.kind==="finite"){if(!Number.isFinite(D.data))$=this._getOrReturnCtx(D,$),v($,{code:j.not_finite,message:Q.message}),J.dirty()}else E0.assertNever(Q);return{status:J.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,l.toString(F))}gt(D,F){return this.setLimit("min",D,!1,l.toString(F))}lte(D,F){return this.setLimit("max",D,!0,l.toString(F))}lt(D,F){return this.setLimit("max",D,!1,l.toString(F))}setLimit(D,F,$,J){return new c6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:l.toString(J)}]})}_addCheck(D){return new c6({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:l.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:l.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:l.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:l.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:l.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:l.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:l.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:l.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:l.toString(D)})}get minValue(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxValue(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}get isInt(){return!!this._def.checks.find((D)=>D.kind==="int"||D.kind==="multipleOf"&&E0.isInteger(D.value))}get isFinite(){let D=null,F=null;for(let $ of this._def.checks)if($.kind==="finite"||$.kind==="int"||$.kind==="multipleOf")return!0;else if($.kind==="min"){if(F===null||$.value>F)F=$.value}else if($.kind==="max"){if(D===null||$.value<D)D=$.value}return Number.isFinite(F)&&Number.isFinite(D)}};c6.create=(D)=>{return new c6({checks:[],typeName:o.ZodNumber,coerce:D?.coerce||!1,...B0(D)})};n6=class n6 extends H0{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(D){if(this._def.coerce)try{D.data=BigInt(D.data)}catch{return this._getInvalidInput(D)}if(this._getType(D)!==k.bigint)return this._getInvalidInput(D);let $=void 0,J=new ND;for(let Q of this._def.checks)if(Q.kind==="min"){if(Q.inclusive?D.data<Q.value:D.data<=Q.value)$=this._getOrReturnCtx(D,$),v($,{code:j.too_small,type:"bigint",minimum:Q.value,inclusive:Q.inclusive,message:Q.message}),J.dirty()}else if(Q.kind==="max"){if(Q.inclusive?D.data>Q.value:D.data>=Q.value)$=this._getOrReturnCtx(D,$),v($,{code:j.too_big,type:"bigint",maximum:Q.value,inclusive:Q.inclusive,message:Q.message}),J.dirty()}else if(Q.kind==="multipleOf"){if(D.data%Q.value!==BigInt(0))$=this._getOrReturnCtx(D,$),v($,{code:j.not_multiple_of,multipleOf:Q.value,message:Q.message}),J.dirty()}else E0.assertNever(Q);return{status:J.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return v(F,{code:j.invalid_type,expected:k.bigint,received:F.parsedType}),a}gte(D,F){return this.setLimit("min",D,!0,l.toString(F))}gt(D,F){return this.setLimit("min",D,!1,l.toString(F))}lte(D,F){return this.setLimit("max",D,!0,l.toString(F))}lt(D,F){return this.setLimit("max",D,!1,l.toString(F))}setLimit(D,F,$,J){return new n6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:l.toString(J)}]})}_addCheck(D){return new n6({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:l.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:l.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:l.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:l.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:l.toString(F)})}get minValue(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D}get maxValue(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D}};n6.create=(D)=>{return new n6({checks:[],typeName:o.ZodBigInt,coerce:D?.coerce??!1,...B0(D)})};UF=class UF extends H0{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==k.boolean){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.boolean,received:$.parsedType}),a}return ID(D.data)}};UF.create=(D)=>{return new UF({typeName:o.ZodBoolean,coerce:D?.coerce||!1,...B0(D)})};k4=class k4 extends H0{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==k.date){let Q=this._getOrReturnCtx(D);return v(Q,{code:j.invalid_type,expected:k.date,received:Q.parsedType}),a}if(Number.isNaN(D.data.getTime())){let Q=this._getOrReturnCtx(D);return v(Q,{code:j.invalid_date}),a}let $=new ND,J=void 0;for(let Q of this._def.checks)if(Q.kind==="min"){if(D.data.getTime()<Q.value)J=this._getOrReturnCtx(D,J),v(J,{code:j.too_small,message:Q.message,inclusive:!0,exact:!1,minimum:Q.value,type:"date"}),$.dirty()}else if(Q.kind==="max"){if(D.data.getTime()>Q.value)J=this._getOrReturnCtx(D,J),v(J,{code:j.too_big,message:Q.message,inclusive:!0,exact:!1,maximum:Q.value,type:"date"}),$.dirty()}else E0.assertNever(Q);return{status:$.value,value:new Date(D.data.getTime())}}_addCheck(D){return new k4({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:l.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:l.toString(F)})}get minDate(){let D=null;for(let F of this._def.checks)if(F.kind==="min"){if(D===null||F.value>D)D=F.value}return D!=null?new Date(D):null}get maxDate(){let D=null;for(let F of this._def.checks)if(F.kind==="max"){if(D===null||F.value<D)D=F.value}return D!=null?new Date(D):null}};k4.create=(D)=>{return new k4({checks:[],coerce:D?.coerce||!1,typeName:o.ZodDate,...B0(D)})};O9=class O9 extends H0{_parse(D){if(this._getType(D)!==k.symbol){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.symbol,received:$.parsedType}),a}return ID(D.data)}};O9.create=(D)=>{return new O9({typeName:o.ZodSymbol,...B0(D)})};LF=class LF extends H0{_parse(D){if(this._getType(D)!==k.undefined){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.undefined,received:$.parsedType}),a}return ID(D.data)}};LF.create=(D)=>{return new LF({typeName:o.ZodUndefined,...B0(D)})};AF=class AF extends H0{_parse(D){if(this._getType(D)!==k.null){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.null,received:$.parsedType}),a}return ID(D.data)}};AF.create=(D)=>{return new AF({typeName:o.ZodNull,...B0(D)})};v4=class v4 extends H0{constructor(){super(...arguments);this._any=!0}_parse(D){return ID(D.data)}};v4.create=(D)=>{return new v4({typeName:o.ZodAny,...B0(D)})};d6=class d6 extends H0{constructor(){super(...arguments);this._unknown=!0}_parse(D){return ID(D.data)}};d6.create=(D)=>{return new d6({typeName:o.ZodUnknown,...B0(D)})};N8=class N8 extends H0{_parse(D){let F=this._getOrReturnCtx(D);return v(F,{code:j.invalid_type,expected:k.never,received:F.parsedType}),a}};N8.create=(D)=>{return new N8({typeName:o.ZodNever,...B0(D)})};w9=class w9 extends H0{_parse(D){if(this._getType(D)!==k.undefined){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.void,received:$.parsedType}),a}return ID(D.data)}};w9.create=(D)=>{return new w9({typeName:o.ZodVoid,...B0(D)})};l1=class l1 extends H0{_parse(D){let{ctx:F,status:$}=this._processInputParams(D),J=this._def;if(F.parsedType!==k.array)return v(F,{code:j.invalid_type,expected:k.array,received:F.parsedType}),a;if(J.exactLength!==null){let Y=F.data.length>J.exactLength.value,B=F.data.length<J.exactLength.value;if(Y||B)v(F,{code:Y?j.too_big:j.too_small,minimum:B?J.exactLength.value:void 0,maximum:Y?J.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:J.exactLength.message}),$.dirty()}if(J.minLength!==null){if(F.data.length<J.minLength.value)v(F,{code:j.too_small,minimum:J.minLength.value,type:"array",inclusive:!0,exact:!1,message:J.minLength.message}),$.dirty()}if(J.maxLength!==null){if(F.data.length>J.maxLength.value)v(F,{code:j.too_big,maximum:J.maxLength.value,type:"array",inclusive:!0,exact:!1,message:J.maxLength.message}),$.dirty()}if(F.common.async)return Promise.all([...F.data].map((Y,B)=>{return J.type._parseAsync(new d1(F,Y,F.path,B))})).then((Y)=>{return ND.mergeArray($,Y)});let Q=[...F.data].map((Y,B)=>{return J.type._parseSync(new d1(F,Y,F.path,B))});return ND.mergeArray($,Q)}get element(){return this._def.type}min(D,F){return new l1({...this._def,minLength:{value:D,message:l.toString(F)}})}max(D,F){return new l1({...this._def,maxLength:{value:D,message:l.toString(F)}})}length(D,F){return new l1({...this._def,exactLength:{value:D,message:l.toString(F)}})}nonempty(D){return this.min(1,D)}};l1.create=(D,F)=>{return new l1({type:D,minLength:null,maxLength:null,exactLength:null,typeName:o.ZodArray,...B0(F)})};s0=class s0 extends H0{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let D=this._def.shape(),F=E0.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==k.object){let G=this._getOrReturnCtx(D);return v(G,{code:j.invalid_type,expected:k.object,received:G.parsedType}),a}let{status:$,ctx:J}=this._processInputParams(D),{shape:Q,keys:Y}=this._getCached(),B=[];if(!(this._def.catchall instanceof N8&&this._def.unknownKeys==="strip")){for(let G in J.data)if(!Y.includes(G))B.push(G)}let X=[];for(let G of Y){let H=Q[G],q=J.data[G];X.push({key:{status:"valid",value:G},value:H._parse(new d1(J,q,J.path,G)),alwaysSet:G in J.data})}if(this._def.catchall instanceof N8){let G=this._def.unknownKeys;if(G==="passthrough")for(let H of B)X.push({key:{status:"valid",value:H},value:{status:"valid",value:J.data[H]}});else if(G==="strict"){if(B.length>0)v(J,{code:j.unrecognized_keys,keys:B}),$.dirty()}else if(G==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let G=this._def.catchall;for(let H of B){let q=J.data[H];X.push({key:{status:"valid",value:H},value:G._parse(new d1(J,q,J.path,H)),alwaysSet:H in J.data})}}if(J.common.async)return Promise.resolve().then(async()=>{let G=[];for(let H of X){let q=await H.key,K=await H.value;G.push({key:q,value:K,alwaysSet:H.alwaysSet})}return G}).then((G)=>{return ND.mergeObjectSync($,G)});else return ND.mergeObjectSync($,X)}get shape(){return this._def.shape()}strict(D){return l.errToObj,new s0({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,$)=>{let J=this._def.errorMap?.(F,$).message??$.defaultError;if(F.code==="unrecognized_keys")return{message:l.errToObj(D).message??J};return{message:J}}}:{}})}strip(){return new s0({...this._def,unknownKeys:"strip"})}passthrough(){return new s0({...this._def,unknownKeys:"passthrough"})}extend(D){return new s0({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new s0({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:o.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new s0({...this._def,catchall:D})}pick(D){let F={};for(let $ of E0.objectKeys(D))if(D[$]&&this.shape[$])F[$]=this.shape[$];return new s0({...this._def,shape:()=>F})}omit(D){let F={};for(let $ of E0.objectKeys(this.shape))if(!D[$])F[$]=this.shape[$];return new s0({...this._def,shape:()=>F})}deepPartial(){return VF(this)}partial(D){let F={};for(let $ of E0.objectKeys(this.shape)){let J=this.shape[$];if(D&&!D[$])F[$]=J;else F[$]=J.optional()}return new s0({...this._def,shape:()=>F})}required(D){let F={};for(let $ of E0.objectKeys(this.shape))if(D&&!D[$])F[$]=this.shape[$];else{let Q=this.shape[$];while(Q instanceof p1)Q=Q._def.innerType;F[$]=Q}return new s0({...this._def,shape:()=>F})}keyof(){return Bf(E0.objectKeys(this.shape))}};s0.create=(D,F)=>{return new s0({shape:()=>D,unknownKeys:"strip",catchall:N8.create(),typeName:o.ZodObject,...B0(F)})};s0.strictCreate=(D,F)=>{return new s0({shape:()=>D,unknownKeys:"strict",catchall:N8.create(),typeName:o.ZodObject,...B0(F)})};s0.lazycreate=(D,F)=>{return new s0({shape:D,unknownKeys:"strip",catchall:N8.create(),typeName:o.ZodObject,...B0(F)})};MF=class MF extends H0{_parse(D){let{ctx:F}=this._processInputParams(D),$=this._def.options;function J(Q){for(let B of Q)if(B.result.status==="valid")return B.result;for(let B of Q)if(B.result.status==="dirty")return F.common.issues.push(...B.ctx.common.issues),B.result;let Y=Q.map((B)=>new rD(B.ctx.common.issues));return v(F,{code:j.invalid_union,unionErrors:Y}),a}if(F.common.async)return Promise.all($.map(async(Q)=>{let Y={...F,common:{...F.common,issues:[]},parent:null};return{result:await Q._parseAsync({data:F.data,path:F.path,parent:Y}),ctx:Y}})).then(J);else{let Q=void 0,Y=[];for(let X of $){let G={...F,common:{...F.common,issues:[]},parent:null},H=X._parseSync({data:F.data,path:F.path,parent:G});if(H.status==="valid")return H;else if(H.status==="dirty"&&!Q)Q={result:H,ctx:G};if(G.common.issues.length)Y.push(G.common.issues)}if(Q)return F.common.issues.push(...Q.ctx.common.issues),Q.result;let B=Y.map((X)=>new rD(X));return v(F,{code:j.invalid_union,unionErrors:B}),a}}get options(){return this._def.options}};MF.create=(D,F)=>{return new MF({options:D,typeName:o.ZodUnion,...B0(F)})};iJ=class iJ extends H0{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==k.object)return v(F,{code:j.invalid_type,expected:k.object,received:F.parsedType}),a;let $=this.discriminator,J=F.data[$],Q=this.optionsMap.get(J);if(!Q)return v(F,{code:j.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[$]}),a;if(F.common.async)return Q._parseAsync({data:F.data,path:F.path,parent:F});else return Q._parseSync({data:F.data,path:F.path,parent:F})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(D,F,$){let J=new Map;for(let Q of F){let Y=c8(Q.shape[D]);if(!Y.length)throw Error(`A discriminator value for key \`${D}\` could not be extracted from all schema options`);for(let B of Y){if(J.has(B))throw Error(`Discriminator property ${String(D)} has duplicate value ${String(B)}`);J.set(B,Q)}}return new iJ({typeName:o.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:J,...B0($)})}};NF=class NF extends H0{_parse(D){let{status:F,ctx:$}=this._processInputParams(D),J=(Q,Y)=>{if(cJ(Q)||cJ(Y))return a;let B=RW(Q.value,Y.value);if(!B.valid)return v($,{code:j.invalid_intersection_types}),a;if(nJ(Q)||nJ(Y))F.dirty();return{status:F.value,value:B.data}};if($.common.async)return Promise.all([this._def.left._parseAsync({data:$.data,path:$.path,parent:$}),this._def.right._parseAsync({data:$.data,path:$.path,parent:$})]).then(([Q,Y])=>J(Q,Y));else return J(this._def.left._parseSync({data:$.data,path:$.path,parent:$}),this._def.right._parseSync({data:$.data,path:$.path,parent:$}))}};NF.create=(D,F,$)=>{return new NF({left:D,right:F,typeName:o.ZodIntersection,...B0($)})};R8=class R8 extends H0{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==k.array)return v($,{code:j.invalid_type,expected:k.array,received:$.parsedType}),a;if($.data.length<this._def.items.length)return v($,{code:j.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),a;if(!this._def.rest&&$.data.length>this._def.items.length)v($,{code:j.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),F.dirty();let Q=[...$.data].map((Y,B)=>{let X=this._def.items[B]||this._def.rest;if(!X)return null;return X._parse(new d1($,Y,$.path,B))}).filter((Y)=>!!Y);if($.common.async)return Promise.all(Q).then((Y)=>{return ND.mergeArray(F,Y)});else return ND.mergeArray(F,Q)}get items(){return this._def.items}rest(D){return new R8({...this._def,rest:D})}};R8.create=(D,F)=>{if(!Array.isArray(D))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new R8({items:D,typeName:o.ZodTuple,rest:null,...B0(F)})};j9=class j9 extends H0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==k.object)return v($,{code:j.invalid_type,expected:k.object,received:$.parsedType}),a;let J=[],Q=this._def.keyType,Y=this._def.valueType;for(let B in $.data)J.push({key:Q._parse(new d1($,B,$.path,B)),value:Y._parse(new d1($,$.data[B],$.path,B)),alwaysSet:B in $.data});if($.common.async)return ND.mergeObjectAsync(F,J);else return ND.mergeObjectSync(F,J)}get element(){return this._def.valueType}static create(D,F,$){if(F instanceof H0)return new j9({keyType:D,valueType:F,typeName:o.ZodRecord,...B0($)});return new j9({keyType:m1.create(),valueType:D,typeName:o.ZodRecord,...B0(F)})}};T9=class T9 extends H0{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==k.map)return v($,{code:j.invalid_type,expected:k.map,received:$.parsedType}),a;let J=this._def.keyType,Q=this._def.valueType,Y=[...$.data.entries()].map(([B,X],G)=>{return{key:J._parse(new d1($,B,$.path,[G,"key"])),value:Q._parse(new d1($,X,$.path,[G,"value"]))}});if($.common.async){let B=new Map;return Promise.resolve().then(async()=>{for(let X of Y){let G=await X.key,H=await X.value;if(G.status==="aborted"||H.status==="aborted")return a;if(G.status==="dirty"||H.status==="dirty")F.dirty();B.set(G.value,H.value)}return{status:F.value,value:B}})}else{let B=new Map;for(let X of Y){let{key:G,value:H}=X;if(G.status==="aborted"||H.status==="aborted")return a;if(G.status==="dirty"||H.status==="dirty")F.dirty();B.set(G.value,H.value)}return{status:F.value,value:B}}}};T9.create=(D,F,$)=>{return new T9({valueType:F,keyType:D,typeName:o.ZodMap,...B0($)})};y4=class y4 extends H0{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==k.set)return v($,{code:j.invalid_type,expected:k.set,received:$.parsedType}),a;let J=this._def;if(J.minSize!==null){if($.data.size<J.minSize.value)v($,{code:j.too_small,minimum:J.minSize.value,type:"set",inclusive:!0,exact:!1,message:J.minSize.message}),F.dirty()}if(J.maxSize!==null){if($.data.size>J.maxSize.value)v($,{code:j.too_big,maximum:J.maxSize.value,type:"set",inclusive:!0,exact:!1,message:J.maxSize.message}),F.dirty()}let Q=this._def.valueType;function Y(X){let G=new Set;for(let H of X){if(H.status==="aborted")return a;if(H.status==="dirty")F.dirty();G.add(H.value)}return{status:F.value,value:G}}let B=[...$.data.values()].map((X,G)=>Q._parse(new d1($,X,$.path,G)));if($.common.async)return Promise.all(B).then((X)=>Y(X));else return Y(B)}min(D,F){return new y4({...this._def,minSize:{value:D,message:l.toString(F)}})}max(D,F){return new y4({...this._def,maxSize:{value:D,message:l.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}};y4.create=(D,F)=>{return new y4({valueType:D,minSize:null,maxSize:null,typeName:o.ZodSet,...B0(F)})};ZF=class ZF extends H0{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==k.function)return v(F,{code:j.invalid_type,expected:k.function,received:F.parsedType}),a;function $(B,X){return C9({data:B,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),d8].filter((G)=>!!G),issueData:{code:j.invalid_arguments,argumentsError:X}})}function J(B,X){return C9({data:B,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),d8].filter((G)=>!!G),issueData:{code:j.invalid_return_type,returnTypeError:X}})}let Q={errorMap:F.common.contextualErrorMap},Y=F.data;if(this._def.returns instanceof x4){let B=this;return ID(async function(...X){let G=new rD([]),H=await B._def.args.parseAsync(X,Q).catch((V)=>{throw G.addIssue($(X,V)),G}),q=await Reflect.apply(Y,this,H);return await B._def.returns._def.type.parseAsync(q,Q).catch((V)=>{throw G.addIssue(J(q,V)),G})})}else{let B=this;return ID(function(...X){let G=B._def.args.safeParse(X,Q);if(!G.success)throw new rD([$(X,G.error)]);let H=Reflect.apply(Y,this,G.data),q=B._def.returns.safeParse(H,Q);if(!q.success)throw new rD([J(H,q.error)]);return q.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new ZF({...this._def,args:R8.create(D).rest(d6.create())})}returns(D){return new ZF({...this._def,returns:D})}implement(D){return this.parse(D)}strictImplement(D){return this.parse(D)}static create(D,F,$){return new ZF({args:D?D:R8.create([]).rest(d6.create()),returns:F||d6.create(),typeName:o.ZodFunction,...B0($)})}};RF=class RF extends H0{get schema(){return this._def.getter()}_parse(D){let{ctx:F}=this._processInputParams(D);return this._def.getter()._parse({data:F.data,path:F.path,parent:F})}};RF.create=(D,F)=>{return new RF({getter:D,typeName:o.ZodLazy,...B0(F)})};CF=class CF extends H0{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return v(F,{received:F.data,code:j.invalid_literal,expected:this._def.value}),a}return{status:"valid",value:D.data}}get value(){return this._def.value}};CF.create=(D,F)=>{return new CF({value:D,typeName:o.ZodLiteral,...B0(F)})};i6=class i6 extends H0{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),$=this._def.values;return v(F,{expected:E0.joinValues($),received:F.parsedType,code:j.invalid_type}),a}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(D.data)){let F=this._getOrReturnCtx(D),$=this._def.values;return v(F,{received:F.data,code:j.invalid_enum_value,options:$}),a}return ID(D.data)}get options(){return this._def.values}get enum(){let D={};for(let F of this._def.values)D[F]=F;return D}get Values(){let D={};for(let F of this._def.values)D[F]=F;return D}get Enum(){let D={};for(let F of this._def.values)D[F]=F;return D}extract(D,F=this._def){return i6.create(D,{...this._def,...F})}exclude(D,F=this._def){return i6.create(this.options.filter(($)=>!D.includes($)),{...this._def,...F})}};i6.create=Bf;OF=class OF extends H0{_parse(D){let F=E0.getValidEnumValues(this._def.values),$=this._getOrReturnCtx(D);if($.parsedType!==k.string&&$.parsedType!==k.number){let J=E0.objectValues(F);return v($,{expected:E0.joinValues(J),received:$.parsedType,code:j.invalid_type}),a}if(!this._cache)this._cache=new Set(E0.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let J=E0.objectValues(F);return v($,{received:$.data,code:j.invalid_enum_value,options:J}),a}return ID(D.data)}get enum(){return this._def.values}};OF.create=(D,F)=>{return new OF({values:D,typeName:o.ZodNativeEnum,...B0(F)})};x4=class x4 extends H0{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==k.promise&&F.common.async===!1)return v(F,{code:j.invalid_type,expected:k.promise,received:F.parsedType}),a;let $=F.parsedType===k.promise?F.data:Promise.resolve(F.data);return ID($.then((J)=>{return this._def.type.parseAsync(J,{path:F.path,errorMap:F.common.contextualErrorMap})}))}};x4.create=(D,F)=>{return new x4({type:D,typeName:o.ZodPromise,...B0(F)})};c1=class c1 extends H0{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===o.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(D){let{status:F,ctx:$}=this._processInputParams(D),J=this._def.effect||null,Q={addIssue:(Y)=>{if(v($,Y),Y.fatal)F.abort();else F.dirty()},get path(){return $.path}};if(Q.addIssue=Q.addIssue.bind(Q),J.type==="preprocess"){let Y=J.transform($.data,Q);if($.common.async)return Promise.resolve(Y).then(async(B)=>{if(F.value==="aborted")return a;let X=await this._def.schema._parseAsync({data:B,path:$.path,parent:$});if(X.status==="aborted")return a;if(X.status==="dirty")return S4(X.value);if(F.value==="dirty")return S4(X.value);return X});else{if(F.value==="aborted")return a;let B=this._def.schema._parseSync({data:Y,path:$.path,parent:$});if(B.status==="aborted")return a;if(B.status==="dirty")return S4(B.value);if(F.value==="dirty")return S4(B.value);return B}}if(J.type==="refinement"){let Y=(B)=>{let X=J.refinement(B,Q);if($.common.async)return Promise.resolve(X);if(X instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return B};if($.common.async===!1){let B=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(B.status==="aborted")return a;if(B.status==="dirty")F.dirty();return Y(B.value),{status:F.value,value:B.value}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((B)=>{if(B.status==="aborted")return a;if(B.status==="dirty")F.dirty();return Y(B.value).then(()=>{return{status:F.value,value:B.value}})})}if(J.type==="transform")if($.common.async===!1){let Y=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(!p6(Y))return a;let B=J.transform(Y.value,Q);if(B instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:F.value,value:B}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((Y)=>{if(!p6(Y))return a;return Promise.resolve(J.transform(Y.value,Q)).then((B)=>({status:F.value,value:B}))});E0.assertNever(J)}};c1.create=(D,F,$)=>{return new c1({schema:D,typeName:o.ZodEffects,effect:F,...B0($)})};c1.createWithPreprocess=(D,F,$)=>{return new c1({schema:F,effect:{type:"preprocess",transform:D},typeName:o.ZodEffects,...B0($)})};p1=class p1 extends H0{_parse(D){if(this._getType(D)===k.undefined)return ID(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}};p1.create=(D,F)=>{return new p1({innerType:D,typeName:o.ZodOptional,...B0(F)})};n8=class n8 extends H0{_parse(D){if(this._getType(D)===k.null)return ID(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}};n8.create=(D,F)=>{return new n8({innerType:D,typeName:o.ZodNullable,...B0(F)})};wF=class wF extends H0{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;if(F.parsedType===k.undefined)$=this._def.defaultValue();return this._def.innerType._parse({data:$,path:F.path,parent:F})}removeDefault(){return this._def.innerType}};wF.create=(D,F)=>{return new wF({innerType:D,typeName:o.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...B0(F)})};jF=class jF extends H0{_parse(D){let{ctx:F}=this._processInputParams(D),$={...F,common:{...F.common,issues:[]}},J=this._def.innerType._parse({data:$.data,path:$.path,parent:{...$}});if(EF(J))return J.then((Q)=>{return{status:"valid",value:Q.status==="valid"?Q.value:this._def.catchValue({get error(){return new rD($.common.issues)},input:$.data})}});else return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new rD($.common.issues)},input:$.data})}}removeCatch(){return this._def.innerType}};jF.create=(D,F)=>{return new jF({innerType:D,typeName:o.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...B0(F)})};P9=class P9 extends H0{_parse(D){if(this._getType(D)!==k.nan){let $=this._getOrReturnCtx(D);return v($,{code:j.invalid_type,expected:k.nan,received:$.parsedType}),a}return{status:"valid",value:D.data}}};P9.create=(D)=>{return new P9({typeName:o.ZodNaN,...B0(D)})};Vz0=Symbol("zod_brand");aJ=class aJ extends H0{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;return this._def.type._parse({data:$,path:F.path,parent:F})}unwrap(){return this._def.type}};I9=class I9 extends H0{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.common.async)return(async()=>{let Q=await this._def.in._parseAsync({data:$.data,path:$.path,parent:$});if(Q.status==="aborted")return a;if(Q.status==="dirty")return F.dirty(),S4(Q.value);else return this._def.out._parseAsync({data:Q.value,path:$.path,parent:$})})();else{let J=this._def.in._parseSync({data:$.data,path:$.path,parent:$});if(J.status==="aborted")return a;if(J.status==="dirty")return F.dirty(),{status:"dirty",value:J.value};else return this._def.out._parseSync({data:J.value,path:$.path,parent:$})}}static create(D,F){return new I9({in:D,out:F,typeName:o.ZodPipeline})}};TF=class TF extends H0{_parse(D){let F=this._def.innerType._parse(D),$=(J)=>{if(p6(J))J.value=Object.freeze(J.value);return J};return EF(F)?F.then((J)=>$(J)):$(F)}unwrap(){return this._def.innerType}};TF.create=(D,F)=>{return new TF({innerType:D,typeName:o.ZodReadonly,...B0(F)})};Zz0={object:s0.lazycreate};(function(D){D.ZodString="ZodString",D.ZodNumber="ZodNumber",D.ZodNaN="ZodNaN",D.ZodBigInt="ZodBigInt",D.ZodBoolean="ZodBoolean",D.ZodDate="ZodDate",D.ZodSymbol="ZodSymbol",D.ZodUndefined="ZodUndefined",D.ZodNull="ZodNull",D.ZodAny="ZodAny",D.ZodUnknown="ZodUnknown",D.ZodNever="ZodNever",D.ZodVoid="ZodVoid",D.ZodArray="ZodArray",D.ZodObject="ZodObject",D.ZodUnion="ZodUnion",D.ZodDiscriminatedUnion="ZodDiscriminatedUnion",D.ZodIntersection="ZodIntersection",D.ZodTuple="ZodTuple",D.ZodRecord="ZodRecord",D.ZodMap="ZodMap",D.ZodSet="ZodSet",D.ZodFunction="ZodFunction",D.ZodLazy="ZodLazy",D.ZodLiteral="ZodLiteral",D.ZodEnum="ZodEnum",D.ZodEffects="ZodEffects",D.ZodNativeEnum="ZodNativeEnum",D.ZodOptional="ZodOptional",D.ZodNullable="ZodNullable",D.ZodDefault="ZodDefault",D.ZodCatch="ZodCatch",D.ZodPromise="ZodPromise",D.ZodBranded="ZodBranded",D.ZodPipeline="ZodPipeline",D.ZodReadonly="ZodReadonly"})(o||(o={}));Gf=m1.create,Wf=c6.create,Lz0=P9.create,Az0=n6.create,Hf=UF.create,Mz0=k4.create,Nz0=O9.create,Rz0=LF.create,Cz0=AF.create,Oz0=v4.create,wz0=d6.create,jz0=N8.create,Tz0=w9.create,Pz0=l1.create,Iz0=s0.create,Sz0=s0.strictCreate,kz0=MF.create,vz0=iJ.create,yz0=NF.create,xz0=R8.create,_z0=j9.create,fz0=T9.create,gz0=y4.create,hz0=ZF.create,bz0=RF.create,uz0=CF.create,mz0=i6.create,lz0=OF.create,pz0=x4.create,dz0=c1.create,cz0=p1.create,nz0=n8.create,iz0=c1.createWithPreprocess,az0=I9.create,tz0={string:(D)=>m1.create({...D,coerce:!0}),number:(D)=>c6.create({...D,coerce:!0}),boolean:(D)=>UF.create({...D,coerce:!0}),bigint:(D)=>n6.create({...D,coerce:!0}),date:(D)=>k4.create({...D,coerce:!0})},ez0=a});var Q1={};i4(Q1,{void:()=>Tz0,util:()=>E0,unknown:()=>wz0,union:()=>kz0,undefined:()=>Rz0,tuple:()=>xz0,transformer:()=>dz0,symbol:()=>Nz0,string:()=>Gf,strictObject:()=>Sz0,setErrorMap:()=>nK0,set:()=>gz0,record:()=>_z0,quotelessJson:()=>dK0,promise:()=>pz0,preprocess:()=>iz0,pipeline:()=>az0,ostring:()=>oz0,optional:()=>cz0,onumber:()=>sz0,oboolean:()=>rz0,objectUtil:()=>LW,object:()=>Iz0,number:()=>Wf,nullable:()=>nz0,null:()=>Cz0,never:()=>jz0,nativeEnum:()=>lz0,nan:()=>Lz0,map:()=>fz0,makeIssue:()=>C9,literal:()=>uz0,lazy:()=>bz0,late:()=>Zz0,isValid:()=>p6,isDirty:()=>nJ,isAsync:()=>EF,isAborted:()=>cJ,intersection:()=>yz0,instanceof:()=>Uz0,getParsedType:()=>M8,getErrorMap:()=>zF,function:()=>hz0,enum:()=>mz0,effect:()=>dz0,discriminatedUnion:()=>vz0,defaultErrorMap:()=>d8,datetimeRegex:()=>Yf,date:()=>Mz0,custom:()=>Xf,coerce:()=>tz0,boolean:()=>Hf,bigint:()=>Az0,array:()=>Pz0,any:()=>Oz0,addIssueToContext:()=>v,ZodVoid:()=>w9,ZodUnknown:()=>d6,ZodUnion:()=>MF,ZodUndefined:()=>LF,ZodType:()=>H0,ZodTuple:()=>R8,ZodTransformer:()=>c1,ZodSymbol:()=>O9,ZodString:()=>m1,ZodSet:()=>y4,ZodSchema:()=>H0,ZodRecord:()=>j9,ZodReadonly:()=>TF,ZodPromise:()=>x4,ZodPipeline:()=>I9,ZodParsedType:()=>k,ZodOptional:()=>p1,ZodObject:()=>s0,ZodNumber:()=>c6,ZodNullable:()=>n8,ZodNull:()=>AF,ZodNever:()=>N8,ZodNativeEnum:()=>OF,ZodNaN:()=>P9,ZodMap:()=>T9,ZodLiteral:()=>CF,ZodLazy:()=>RF,ZodIssueCode:()=>j,ZodIntersection:()=>NF,ZodFunction:()=>ZF,ZodFirstPartyTypeKind:()=>o,ZodError:()=>rD,ZodEnum:()=>i6,ZodEffects:()=>c1,ZodDiscriminatedUnion:()=>iJ,ZodDefault:()=>wF,ZodDate:()=>k4,ZodCatch:()=>jF,ZodBranded:()=>aJ,ZodBoolean:()=>UF,ZodBigInt:()=>n6,ZodArray:()=>l1,ZodAny:()=>v4,Schema:()=>H0,ParseStatus:()=>ND,OK:()=>ID,NEVER:()=>ez0,INVALID:()=>a,EMPTY_PATH:()=>iK0,DIRTY:()=>S4,BRAND:()=>Vz0});var CW=I(()=>{dJ();MW();e_();R9();qf();pJ()});var Kf=I(()=>{CW();CW()});import{copyFileSync as DE0,existsSync as zf,mkdirSync as FE0}from"fs";import{homedir as sJ}from"os";import{join as PF}from"path";function JE0(D){let F=D.trim().replace(/\/+$/,"");try{let $=new URL(F);return $.protocol=$.protocol.toLowerCase(),$.host=$.host.toLowerCase(),$.toString().replace(/\/+$/,"")}catch{return console.error(`[nemar] could not parse stored apiUrl ${JSON.stringify(D)}; leaving as-is`),F}}function QE0(){return process.env.NEMAR_CONFIG_DIR||PF(sJ(),".config","nemar")}function YE0(D){if(process.env.NEMAR_CONFIG_DIR)return;let F=PF(D,"config.json");if(zf(F))return;let $=[];if(process.platform==="darwin")$.push(PF(sJ(),"Library","Preferences","nemar-nodejs","config.json"));if(process.platform==="win32"){let J=process.env.APPDATA||PF(sJ(),"AppData","Roaming");$.push(PF(J,"nemar-nodejs","config.json"))}$.push(PF(sJ(),".config","nemar-nodejs","config.json"));for(let J of $)if(zf(J))try{FE0(D,{recursive:!0}),DE0(J,F),console.error(`[nemar] Config migrated from ${J} to ${F}
92
92
  [nemar] You can safely remove the old file.`);return}catch(Q){console.error(`[nemar] Failed to migrate config from ${J}:`,Q,`
93
- [nemar] You can manually copy ${J} to ${F}`)}}function n1(){let D=QE0();if(oJ&&Ef===D)return oJ;if(YE0(D),oJ=new lJ({projectName:"nemar",schema:{activeAccount:{type:"string"},accounts:{type:"object"},apiKey:{type:"string"},apiUrl:{type:"string"},username:{type:"string"},email:{type:"string"},githubUsername:{type:"string"},sandboxCompleted:{type:"boolean"},sandboxDatasetId:{type:"string"}},cwd:D}),Ef=D,!Vf.has(D))Vf.add(D),XE0(),GE0();return oJ}function XE0(){let D=n1(),F=D.get("accounts");if(F&&Object.keys(F).length>0)return;let $=D.get("apiKey"),J=D.get("username");if(!$&&!J)return;try{let Q=J||"default",Y={};for(let B of BE0){let X=D.get(B);if(X!==void 0)Y[B]=X}D.store={activeAccount:Q,accounts:{[Q]:Y}}}catch(Q){console.error("Config migration failed (legacy config preserved):",Q)}}function GE0(){let D=n1(),F=D.store,$=F.accounts,J=!1;if($)for(let[Y,B]of Object.entries($)){let X=B?.apiUrl;if(!X)continue;if($E0.has(JE0(X)))$[Y]={...B,apiUrl:_4},console.error(`[nemar] migrated stored apiUrl for account "${Y}": ${X} -> ${_4}`),J=!0}let Q=F.apiUrl;if($&&Object.keys($).length>0&&Q!==void 0){let{apiUrl:Y,...B}=F;try{D.store=B,console.error(`[nemar] removed stale top-level apiUrl from config (was: ${Q})`),J=!1}catch(X){console.error("API URL cleanup failed (config file unchanged):",X)}}if(J)try{D.store={...D.store,accounts:$}}catch(Y){console.error("API URL migration failed (config file unchanged):",Y)}}function rJ(){return n1().get("activeAccount")}function IF(){return n1().get("accounts")||{}}function YD(){let D={apiUrl:_4},F=rJ();if(!F)return D;return IF()[F]||D}function Zf(){return!!YD().sandboxCompleted}function i1(D,F){let $=n1(),J=$.get("activeAccount")||"default",Q=$.get("accounts")||{};if(!Q[J])Q[J]={apiUrl:_4};Q[J][D]=F,$.store={...$.store,accounts:Q,activeAccount:J}}function OW(D){let F=rJ();if(!F)return;let $=IF();if($[F])delete $[F][D],n1().set("accounts",$)}function Uf(){let D=n1(),F=rJ();if(!F){D.clear();return}let $=IF();delete $[F];let J=Object.keys($);if(J.length>0)D.store={...D.store,accounts:$,activeAccount:J[0]};else D.clear()}function Lf(){n1().clear()}function U0(){return!!YD().apiKey}function Af(){return n1().path}function S9(){let D=IF(),F=rJ();return Object.entries(D).map(([$,J])=>({username:J.username||$,email:J.email,githubUsername:J.githubUsername,active:$===F}))}function Mf(D,F){let $=n1(),J=IF();J[D]=F,$.store={...$.store,accounts:J,activeAccount:D}}function Nf(D){let F=n1(),$=IF();if($[D])return F.store={...F.store,activeAccount:D},$[D];for(let[J,Q]of Object.entries($))if(Q.githubUsername===D)return F.store={...F.store,activeAccount:J},Q;return null}var _4="https://api.nemar.org",$E0,OS0,oJ=null,Ef=null,Vf,BE0;var f4=I(()=>{r_();Kf();$E0=new Set(["https://api.osc.earth/nemar","https://nemar-api.neuromechanist.workers.dev","https://nemar-api-dev.shirazi-10f.workers.dev"]);OS0=Q1.object({apiKey:Q1.string().optional(),apiUrl:Q1.string().url().default(_4),username:Q1.string().optional(),email:Q1.string().email().optional(),githubUsername:Q1.string().optional(),sandboxCompleted:Q1.boolean().optional(),sandboxDatasetId:Q1.string().optional(),dismissedNoticeIds:Q1.array(Q1.number()).optional()});Vf=new Set;BE0=["apiKey","apiUrl","username","email","githubUsername","sandboxCompleted","sandboxDatasetId","dismissedNoticeIds"]});function tJ(D){if(Rf)return;Rf=!0;let F=W.yellow("\u2500".repeat(60)),$=W.yellow.bold("[MAINTENANCE]"),J=W.dim(`mode: ${D.mode}`),Q=D.eta?`
93
+ [nemar] You can manually copy ${J} to ${F}`)}}function n1(){let D=QE0();if(oJ&&Ef===D)return oJ;if(YE0(D),oJ=new lJ({projectName:"nemar",schema:{activeAccount:{type:"string"},accounts:{type:"object"},apiKey:{type:"string"},apiUrl:{type:"string"},username:{type:"string"},email:{type:"string"},githubUsername:{type:"string"},sandboxCompleted:{type:"boolean"},sandboxDatasetId:{type:"string"}},cwd:D}),Ef=D,!Vf.has(D))Vf.add(D),XE0(),GE0();return oJ}function XE0(){let D=n1(),F=D.get("accounts");if(F&&Object.keys(F).length>0)return;let $=D.get("apiKey"),J=D.get("username");if(!$&&!J)return;try{let Q=J||"default",Y={};for(let B of BE0){let X=D.get(B);if(X!==void 0)Y[B]=X}D.store={activeAccount:Q,accounts:{[Q]:Y}}}catch(Q){console.error("Config migration failed (legacy config preserved):",Q)}}function GE0(){let D=n1(),F=D.store,$=F.accounts,J=!1;if($)for(let[Y,B]of Object.entries($)){let X=B?.apiUrl;if(!X)continue;if($E0.has(JE0(X)))$[Y]={...B,apiUrl:_4},console.error(`[nemar] migrated stored apiUrl for account "${Y}": ${X} -> ${_4}`),J=!0}let Q=F.apiUrl;if($&&Object.keys($).length>0&&Q!==void 0){let{apiUrl:Y,...B}=F;try{D.store=B,console.error(`[nemar] removed stale top-level apiUrl from config (was: ${Q})`),J=!1}catch(X){console.error("API URL cleanup failed (config file unchanged):",X)}}if(J)try{D.store={...D.store,accounts:$}}catch(Y){console.error("API URL migration failed (config file unchanged):",Y)}}function rJ(){return n1().get("activeAccount")}function IF(){return n1().get("accounts")||{}}function YD(){let D={apiUrl:_4},F=rJ();if(!F)return D;return IF()[F]||D}function Zf(){return!!YD().sandboxCompleted}function i1(D,F){let $=n1(),J=$.get("activeAccount")||"default",Q=$.get("accounts")||{};if(!Q[J])Q[J]={apiUrl:_4};Q[J][D]=F,$.store={...$.store,accounts:Q,activeAccount:J}}function OW(D){let F=rJ();if(!F)return;let $=IF();if($[F])delete $[F][D],n1().set("accounts",$)}function Uf(){let D=n1(),F=rJ();if(!F){D.clear();return}let $=IF();delete $[F];let J=Object.keys($);if(J.length>0)D.store={...D.store,accounts:$,activeAccount:J[0]};else D.clear()}function Lf(){n1().clear()}function U0(){return!!YD().apiKey}function Af(){return n1().path}function S9(){let D=IF(),F=rJ();return Object.entries(D).map(([$,J])=>({username:J.username||$,email:J.email,githubUsername:J.githubUsername,active:$===F}))}function Mf(D,F){let $=n1(),J=IF();J[D]=F,$.store={...$.store,accounts:J,activeAccount:D}}function Nf(D){let F=n1(),$=IF();if($[D])return F.store={...F.store,activeAccount:D},$[D];for(let[J,Q]of Object.entries($))if(Q.githubUsername===D)return F.store={...F.store,activeAccount:J},Q;return null}var _4="https://nemar-api-dev.sccn-org.workers.dev",$E0,OS0,oJ=null,Ef=null,Vf,BE0;var f4=I(()=>{r_();Kf();$E0=new Set(["https://api.osc.earth/nemar","https://nemar-api.neuromechanist.workers.dev","https://nemar-api-dev.shirazi-10f.workers.dev"]);OS0=Q1.object({apiKey:Q1.string().optional(),apiUrl:Q1.string().url().default(_4),username:Q1.string().optional(),email:Q1.string().email().optional(),githubUsername:Q1.string().optional(),sandboxCompleted:Q1.boolean().optional(),sandboxDatasetId:Q1.string().optional(),dismissedNoticeIds:Q1.array(Q1.number()).optional()});Vf=new Set;BE0=["apiKey","apiUrl","username","email","githubUsername","sandboxCompleted","sandboxDatasetId","dismissedNoticeIds"]});function tJ(D){if(Rf)return;Rf=!0;let F=W.yellow("\u2500".repeat(60)),$=W.yellow.bold("[MAINTENANCE]"),J=W.dim(`mode: ${D.mode}`),Q=D.eta?`
94
94
  ${W.dim(`eta: ${D.eta}`)}`:"";process.stderr.write(`${F}
95
95
  ${$} ${D.message}
96
96
  ${J}${Q}
97
97
  ${F}
98
- `)}var Rf=!1;var wW=I(()=>{vD()});var Of;var Cf=I(()=>{Of={name:"nemar-cli",version:"0.8.27-PR579.ffe96e8",description:"CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource) dataset management",type:"module",main:"dist/index.js",bin:{nemar:"dist/index.js"},scripts:{dev:"bun run src/index.ts",build:"bun build src/index.ts --outdir dist --target bun --minify && sed '1s|#!/usr/bin/env node|#!/usr/bin/env bun|' dist/index.js > dist/index.js.tmp && mv dist/index.js.tmp dist/index.js",test:"bun test",lint:"biome check src/","lint:fix":"biome check --fix src/",format:"biome format --write src/",typecheck:"tsc --noEmit",prepublishOnly:"bun run build","docs:generate":"bun run scripts/generate-docs.ts","docs:serve":"mkdocs serve","docs:build":"mkdocs build",prepare:"husky",deploy:"wrangler deploy",preview:"wrangler dev"},keywords:["nemar","bids","neuroimaging","eeg","emg","datalad","cli"],author:"NEMAR Team",license:"CC-BY-NC-ND-4.0",repository:{type:"git",url:"git+https://github.com/nemarOrg/nemar-cli.git"},bugs:{url:"https://github.com/nemarOrg/nemar-cli/issues"},homepage:"https://nemar-cli.pages.dev",engines:{bun:">=1.0.0"},files:["dist","README.md","LICENSE"],dependencies:{chalk:"^5.3.0",commander:"^12.1.0",conf:"^13.0.1","fuse.js":"^7.1.0",inquirer:"^9.2.15",ora:"^8.0.1",zod:"^3.23.8"},"lint-staged":{"src/**/*.{ts,tsx}":["biome check --fix"],"backend/src/**/*.{ts,tsx}":["biome check --fix"]},devDependencies:{"@biomejs/biome":"1.9.4","@types/bcryptjs":"^3.0.0","@types/bun":"latest","@types/inquirer":"^9.0.7",bcryptjs:"^3.0.3",husky:"^9.1.7","lint-staged":"^16.3.2",typescript:"^5.5.4",wrangler:"^4.70.0",yaml:"^2.8.4"}}});var g4;var eJ=I(()=>{Cf();g4=Of.version});function O0(D){if(D instanceof Error)return D.message;return String(D)}function wf(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(TW)return jW;return YD().apiUrl||jW}async function b(D,F={},$=!1){let J=`${wf()}${D}`,Q={"Content-Type":"application/json","X-CLI-Version":g4,...F.headers};if($){let X=YD();if(!X.apiKey&&$===!0)throw new h(401,"Not authenticated. Run 'nemar auth login' first.");if(X.apiKey)Q.Authorization=`Bearer ${X.apiKey}`}let Y;try{Y=await fetch(J,{...F,headers:Q})}catch(X){throw new h(0,`Network error: Could not connect to ${wf()}`,{originalError:X instanceof Error?X.message:String(X)})}let B;try{B=await Y.json()}catch{throw new h(Y.status,`Invalid response from server (status ${Y.status})`)}if(!Y.ok){if(Y.status===503&&(B.mode==="read-only"||B.mode==="full")){let X=typeof B.message==="string"?B.message:"NEMAR is in maintenance mode. Please retry shortly.",G=typeof B.eta==="string"?B.eta:null,H=new FQ(B.mode,X,G,B.details);throw tJ(H),H}throw new h(Y.status,B.error||B.message||"Request failed",B.details,typeof B.step==="string"?B.step:void 0)}return B}async function Tf(D){return b(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function Pf(D){return b(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function If(D){return b("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function Sf(D){return b("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function kf(D){return b("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function vf(D,F){return b("/auth/retrieve-key",{method:"POST",body:JSON.stringify({email:D,password:F})})}async function yf(D){return b("/auth/request-key-regeneration",{method:"POST",body:JSON.stringify({email:D})})}async function $Q(){return b("/users/me",{},!0)}async function xf(D,F){let $=new URLSearchParams;if(D)$.set("status",D);if(F)$.set("role",F);let J=$.toString()?`?${$.toString()}`:"";return b(`/admin/users${J}`,{},!0)}async function _f(D){return b(`/admin/approve/${D}`,{method:"POST"},!0)}async function ff(D){return b(`/admin/revoke/${D}`,{method:"POST"},!0)}async function gf(D,F){return b(`/admin/users/${D}/role`,{method:"POST",body:JSON.stringify({role:F})},!0)}async function PW(D,F){return b(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function hf(D){return b(`/datasets/${D}/publish`,{method:"POST"},!0)}async function bf(D){return b(`/admin/datasets/${D}/ci`,{},!0)}async function h4(D){return b(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function IW(D){return b(`/admin/datasets/${D}/ci/validate`,{method:"POST"},!0)}async function SW(D){return b(`/admin/datasets/${D}/ci/sync`,{method:"POST"},!0)}async function JQ(D){return b(`/datasets/${D}/ci/status`,{},!0)}async function uf(D){return b(`/datasets/${D}/manifest`,{},!0)}async function QQ(D,F){return b(`/datasets/${D}/manifest/${F}`,{},!0)}function mf(D){let F=D;if(!F.status)F.status="active";else if(!["active","archived","deleted"].includes(F.status))throw Error(`Invalid dataset status: ${F.status}`);if(!F.visibility)F.visibility="private";else if(!["public","private"].includes(F.visibility))throw Error(`Invalid dataset visibility: ${F.visibility}`);return F}async function v9(D={}){let F=new URLSearchParams;if(D.mine)F.set("mine","true");if(D.search)F.set("search",D.search);if(D.modality)F.set("modality",D.modality);if(D.author)F.set("author",D.author);if(D.task)F.set("task",D.task);if(D.hasDoi)F.set("has_doi","true");if(D.recent)F.set("recent",String(D.recent));if(D.sort)F.set("sort",D.sort);if(D.limit!=null)F.set("limit",String(D.limit));if(D.offset!=null)F.set("offset",String(D.offset));if(D.owner)F.set("owner",D.owner);let $=F.toString()?`?${F.toString()}`:"",J=await b(`/datasets${$}`,{},D.mine?!0:"optional");return J.datasets=J.datasets.map(mf),J}async function lf(D){return b(`/datasets/resolve/${D}`,{},"optional")}async function pf(D,F={}){let $=new URLSearchParams({q:D});if(F.modality)$.set("modality",F.modality);if(F.limit)$.set("limit",String(F.limit));return b(`/datasets/search?${$.toString()}`,{},"optional")}async function hD(D){let F=await b(`/datasets/${D}`,{},"optional");return mf(F.dataset)}async function df(D){return b(`/datasets/${D}/versions`,{},!0)}async function YQ(D){return b("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function BQ(D){return b(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function C8(D,F){return b(`/datasets/${D}/upload-credentials`,{method:"POST",body:JSON.stringify({duration_seconds:F})},!0)}async function XQ(D,F){return b(`/datasets/${D}/download-credentials`,{method:"POST",body:JSON.stringify({duration_seconds:F})},!0)}async function cf(D,F){return b(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function y9(D){return b(`/admin/datasets/${D}/doi`,{},!0)}async function kW(D,F){return b(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function vW(D){return b(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function nf(D,F){return b(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function af(D){return b(`/datasets/${D}/collaborators`,{},!0)}async function of(D){return b("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function sf(){return b("/sandbox/reset",{method:"POST"},!0)}async function rf(){return b("/sandbox/status",{},!0)}async function GQ(D){return b(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function tf(D){return b(`/datasets/${D}/publish/status`,{},!0)}async function ef(D){return b(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function Dg(D){let F=D?`?status=${D}`:"";return b(`/admin/publish/requests${F}`,{},!0)}async function Fg(D,F){return b(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}function HE0(D,F=[]){if(D){let $=k9.indexOf(D);if($>=0)return $+1}return Math.min(F.length+1,k9.length)}function qE0(D){if(!(D instanceof h))return!1;if(D.statusCode===0)return!0;if(D.statusCode===429)return!0;if(D.statusCode>=500&&D.statusCode<600)return!0;if(D.statusCode===403&&/repository has been locked/i.test(D.message))return!0;return!1}async function WQ(D,F=!1,$=!1,J=!1,Q,Y){let G,H,q=0,K=!1,V,E=F,Z=[],L;function M(A,N,w,P){if(!Y)return;Y({step:A,stepIndex:HE0(A,N),stepTotal:k9.length,s3LockLocked:w,s3LockTotal:P,s3LockResumed:A==="s3_lock"&&K?!0:void 0})}for(let A=1;A<=5;A++)try{let N,w=!0;do{if(N=await b(`/admin/publish/${D}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({resume:w?E:!0,sandbox:$,s3_lock_continuation_token:G,s3_lock_total:H,skip_ci_check:J})},!0),w=!1,N.step_results)Z.push(...N.step_results);if(N.s3_lock_total!==void 0)H=N.s3_lock_total;if(N.s3_lock_batch_count!==void 0)q+=N.s3_lock_batch_count;let P=N.step??N.step_results?.[N.step_results.length-1]?.step;if(P&&(P!==V||P==="s3_lock"))M(P,N.steps_completed??[],P==="s3_lock"?q:void 0,P==="s3_lock"?H:void 0),V=P;if(N.hasMore&&N.s3_lock_continuation_token!==void 0)G=N.s3_lock_continuation_token;else break}while(N.hasMore);if(Z.length>0)N.step_results=jf(Z);return N}catch(N){if(L=N,A===5||!qE0(N)){if(N instanceof h&&Z.length>0)N.stepResults=jf(Z);throw N}let P=N;if(Q?.({attempt:A,maxAttempts:5,delayMs:1e4,step:P.step,error:P.message}),await new Promise((O)=>setTimeout(O,1e4)),E=!0,G!==void 0)K=!0}throw L}function jf(D){let F=new Map;for(let $ of D)F.set($.step,$);return Array.from(F.values())}async function $g(D,F){return b(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function Jg(D){return b(`/admin/datasets/${D}/files`,{},!0)}async function Qg(D){let F,$=0,J=[],Q=!0;while(Q){let Y=await b(`/admin/datasets/${D}/s3-lock`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({continuation_token:F})},!0);if($+=Y.locked,Y.failed?.length)J.push(...Y.failed);if(Q=Y.hasMore,F=Y.continuation_token,Q&&!F)throw new h(500,"S3 lock paginated response missing continuation_token; aborting to avoid infinite loop")}return{locked:$,failed:J}}async function Yg(D){return b(`/admin/datasets/${D}/reset`,{method:"POST"},!0)}async function Bg(D,F=!1){return b(`/admin/datasets/${D}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({force:F})},!0)}async function Xg(D){return b("/admin/datasets/bulk-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dataset_ids:D})},!0)}async function Gg(D){return b("/admin/datasets/import",{method:"POST",body:JSON.stringify(D)},!0)}async function Wg(D){return b(`/admin/datasets/${D}/sync`,{method:"POST"},!0)}async function Hg(){return b("/admin/sync/status",{},!0)}async function HQ(D,F){return b(`/admin/datasets/${D}/reindex`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(F??{})},!0)}async function qg(D,F){return b("/admin/datasets/reindex/bulk",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filter:D,...F??{}})},!0)}async function Kg(){return b("/admin/email-preferences",{},!0)}async function zg(D){return b("/admin/email-preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(D)},!0)}async function Eg(){return b("/notices",{},"optional")}async function Vg(){return b("/admin/notices",{},!0)}async function Zg(D){return b("/admin/notices",{method:"POST",body:JSON.stringify(D)},!0)}async function Ug(D){return b(`/admin/notices/${D}`,{method:"DELETE"},!0)}async function yW(D){return b("/admin/notify",{method:"POST",body:JSON.stringify(D)},!0)}var jW="https://api.nemar.org",DQ,h,FQ,TW,k9;var i8=I(()=>{f4();wW();eJ();DQ=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;h=class h extends Error{statusCode;details;step;constructor(D,F,$,J){super(F);this.statusCode=D;this.details=$;this.step=J;this.name="ApiError"}};FQ=class FQ extends h{mode;eta;constructor(D,F,$,J){super(503,F,J);this.mode=D;this.eta=$;this.name="MaintenanceError"}};TW=jW.includes("workers.dev");k9=["ci_check","enrichment_check","repo_public","s3_public_read","tag_protect","doi_create","update_metadata","update_readme","create_tag","create_release","upload_to_zenodo","publish_doi","version_doi","s3_lock","generate_archive","sync_nemar","notify_user"]});function Ag(D){xW=D}function _W(){return xW}function x9(D){if(xW)process.stderr.write(`${D}
98
+ `)}var Rf=!1;var wW=I(()=>{vD()});var Of;var Cf=I(()=>{Of={name:"nemar-cli",version:"0.8.27-dev.1007",description:"CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource) dataset management",type:"module",main:"dist/index.js",bin:{nemar:"dist/index.js"},scripts:{dev:"bun run src/index.ts",build:"bun build src/index.ts --outdir dist --target bun --minify && sed '1s|#!/usr/bin/env node|#!/usr/bin/env bun|' dist/index.js > dist/index.js.tmp && mv dist/index.js.tmp dist/index.js",test:"bun test",lint:"biome check src/","lint:fix":"biome check --fix src/",format:"biome format --write src/",typecheck:"tsc --noEmit",prepublishOnly:"bun run build","docs:generate":"bun run scripts/generate-docs.ts","docs:serve":"mkdocs serve","docs:build":"mkdocs build",prepare:"husky",deploy:"wrangler deploy",preview:"wrangler dev"},keywords:["nemar","bids","neuroimaging","eeg","emg","datalad","cli"],author:"NEMAR Team",license:"CC-BY-NC-ND-4.0",repository:{type:"git",url:"git+https://github.com/nemarOrg/nemar-cli.git"},bugs:{url:"https://github.com/nemarOrg/nemar-cli/issues"},homepage:"https://nemar-cli.pages.dev",engines:{bun:">=1.0.0"},files:["dist","README.md","LICENSE"],dependencies:{chalk:"^5.3.0",commander:"^12.1.0",conf:"^13.0.1","fuse.js":"^7.1.0",inquirer:"^9.2.15",ora:"^8.0.1",zod:"^3.23.8"},"lint-staged":{"src/**/*.{ts,tsx}":["biome check --fix"],"backend/src/**/*.{ts,tsx}":["biome check --fix"]},devDependencies:{"@biomejs/biome":"1.9.4","@types/bcryptjs":"^3.0.0","@types/bun":"latest","@types/inquirer":"^9.0.7",bcryptjs:"^3.0.3",husky:"^9.1.7","lint-staged":"^16.3.2",typescript:"^5.5.4",wrangler:"^4.70.0",yaml:"^2.8.4"}}});var g4;var eJ=I(()=>{Cf();g4=Of.version});function O0(D){if(D instanceof Error)return D.message;return String(D)}function wf(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(TW)return jW;return YD().apiUrl||jW}async function b(D,F={},$=!1){let J=`${wf()}${D}`,Q={"Content-Type":"application/json","X-CLI-Version":g4,...F.headers};if($){let X=YD();if(!X.apiKey&&$===!0)throw new h(401,"Not authenticated. Run 'nemar auth login' first.");if(X.apiKey)Q.Authorization=`Bearer ${X.apiKey}`}let Y;try{Y=await fetch(J,{...F,headers:Q})}catch(X){throw new h(0,`Network error: Could not connect to ${wf()}`,{originalError:X instanceof Error?X.message:String(X)})}let B;try{B=await Y.json()}catch{throw new h(Y.status,`Invalid response from server (status ${Y.status})`)}if(!Y.ok){if(Y.status===503&&(B.mode==="read-only"||B.mode==="full")){let X=typeof B.message==="string"?B.message:"NEMAR is in maintenance mode. Please retry shortly.",G=typeof B.eta==="string"?B.eta:null,H=new FQ(B.mode,X,G,B.details);throw tJ(H),H}throw new h(Y.status,B.error||B.message||"Request failed",B.details,typeof B.step==="string"?B.step:void 0)}return B}async function Tf(D){return b(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function Pf(D){return b(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function If(D){return b("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function Sf(D){return b("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function kf(D){return b("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function vf(D,F){return b("/auth/retrieve-key",{method:"POST",body:JSON.stringify({email:D,password:F})})}async function yf(D){return b("/auth/request-key-regeneration",{method:"POST",body:JSON.stringify({email:D})})}async function $Q(){return b("/users/me",{},!0)}async function xf(D,F){let $=new URLSearchParams;if(D)$.set("status",D);if(F)$.set("role",F);let J=$.toString()?`?${$.toString()}`:"";return b(`/admin/users${J}`,{},!0)}async function _f(D){return b(`/admin/approve/${D}`,{method:"POST"},!0)}async function ff(D){return b(`/admin/revoke/${D}`,{method:"POST"},!0)}async function gf(D,F){return b(`/admin/users/${D}/role`,{method:"POST",body:JSON.stringify({role:F})},!0)}async function PW(D,F){return b(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function hf(D){return b(`/datasets/${D}/publish`,{method:"POST"},!0)}async function bf(D){return b(`/admin/datasets/${D}/ci`,{},!0)}async function h4(D){return b(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function IW(D){return b(`/admin/datasets/${D}/ci/validate`,{method:"POST"},!0)}async function SW(D){return b(`/admin/datasets/${D}/ci/sync`,{method:"POST"},!0)}async function JQ(D){return b(`/datasets/${D}/ci/status`,{},!0)}async function uf(D){return b(`/datasets/${D}/manifest`,{},!0)}async function QQ(D,F){return b(`/datasets/${D}/manifest/${F}`,{},!0)}function mf(D){let F=D;if(!F.status)F.status="active";else if(!["active","archived","deleted"].includes(F.status))throw Error(`Invalid dataset status: ${F.status}`);if(!F.visibility)F.visibility="private";else if(!["public","private"].includes(F.visibility))throw Error(`Invalid dataset visibility: ${F.visibility}`);return F}async function v9(D={}){let F=new URLSearchParams;if(D.mine)F.set("mine","true");if(D.search)F.set("search",D.search);if(D.modality)F.set("modality",D.modality);if(D.author)F.set("author",D.author);if(D.task)F.set("task",D.task);if(D.hasDoi)F.set("has_doi","true");if(D.recent)F.set("recent",String(D.recent));if(D.sort)F.set("sort",D.sort);if(D.limit!=null)F.set("limit",String(D.limit));if(D.offset!=null)F.set("offset",String(D.offset));if(D.owner)F.set("owner",D.owner);let $=F.toString()?`?${F.toString()}`:"",J=await b(`/datasets${$}`,{},D.mine?!0:"optional");return J.datasets=J.datasets.map(mf),J}async function lf(D){return b(`/datasets/resolve/${D}`,{},"optional")}async function pf(D,F={}){let $=new URLSearchParams({q:D});if(F.modality)$.set("modality",F.modality);if(F.limit)$.set("limit",String(F.limit));return b(`/datasets/search?${$.toString()}`,{},"optional")}async function hD(D){let F=await b(`/datasets/${D}`,{},"optional");return mf(F.dataset)}async function df(D){return b(`/datasets/${D}/versions`,{},!0)}async function YQ(D){return b("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function BQ(D){return b(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function C8(D,F){return b(`/datasets/${D}/upload-credentials`,{method:"POST",body:JSON.stringify({duration_seconds:F})},!0)}async function XQ(D,F){return b(`/datasets/${D}/download-credentials`,{method:"POST",body:JSON.stringify({duration_seconds:F})},!0)}async function cf(D,F){return b(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function y9(D){return b(`/admin/datasets/${D}/doi`,{},!0)}async function kW(D,F){return b(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function vW(D){return b(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function nf(D,F){return b(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function af(D){return b(`/datasets/${D}/collaborators`,{},!0)}async function of(D){return b("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function sf(){return b("/sandbox/reset",{method:"POST"},!0)}async function rf(){return b("/sandbox/status",{},!0)}async function GQ(D){return b(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function tf(D){return b(`/datasets/${D}/publish/status`,{},!0)}async function ef(D){return b(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function Dg(D){let F=D?`?status=${D}`:"";return b(`/admin/publish/requests${F}`,{},!0)}async function Fg(D,F){return b(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}function HE0(D,F=[]){if(D){let $=k9.indexOf(D);if($>=0)return $+1}return Math.min(F.length+1,k9.length)}function qE0(D){if(!(D instanceof h))return!1;if(D.statusCode===0)return!0;if(D.statusCode===429)return!0;if(D.statusCode>=500&&D.statusCode<600)return!0;if(D.statusCode===403&&/repository has been locked/i.test(D.message))return!0;return!1}async function WQ(D,F=!1,$=!1,J=!1,Q,Y){let G,H,q=0,K=!1,V,E=F,Z=[],L;function M(A,N,w,P){if(!Y)return;Y({step:A,stepIndex:HE0(A,N),stepTotal:k9.length,s3LockLocked:w,s3LockTotal:P,s3LockResumed:A==="s3_lock"&&K?!0:void 0})}for(let A=1;A<=5;A++)try{let N,w=!0;do{if(N=await b(`/admin/publish/${D}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({resume:w?E:!0,sandbox:$,s3_lock_continuation_token:G,s3_lock_total:H,skip_ci_check:J})},!0),w=!1,N.step_results)Z.push(...N.step_results);if(N.s3_lock_total!==void 0)H=N.s3_lock_total;if(N.s3_lock_batch_count!==void 0)q+=N.s3_lock_batch_count;let P=N.step??N.step_results?.[N.step_results.length-1]?.step;if(P&&(P!==V||P==="s3_lock"))M(P,N.steps_completed??[],P==="s3_lock"?q:void 0,P==="s3_lock"?H:void 0),V=P;if(N.hasMore&&N.s3_lock_continuation_token!==void 0)G=N.s3_lock_continuation_token;else break}while(N.hasMore);if(Z.length>0)N.step_results=jf(Z);return N}catch(N){if(L=N,A===5||!qE0(N)){if(N instanceof h&&Z.length>0)N.stepResults=jf(Z);throw N}let P=N;if(Q?.({attempt:A,maxAttempts:5,delayMs:1e4,step:P.step,error:P.message}),await new Promise((O)=>setTimeout(O,1e4)),E=!0,G!==void 0)K=!0}throw L}function jf(D){let F=new Map;for(let $ of D)F.set($.step,$);return Array.from(F.values())}async function $g(D,F){return b(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function Jg(D){return b(`/admin/datasets/${D}/files`,{},!0)}async function Qg(D){let F,$=0,J=[],Q=!0;while(Q){let Y=await b(`/admin/datasets/${D}/s3-lock`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({continuation_token:F})},!0);if($+=Y.locked,Y.failed?.length)J.push(...Y.failed);if(Q=Y.hasMore,F=Y.continuation_token,Q&&!F)throw new h(500,"S3 lock paginated response missing continuation_token; aborting to avoid infinite loop")}return{locked:$,failed:J}}async function Yg(D){return b(`/admin/datasets/${D}/reset`,{method:"POST"},!0)}async function Bg(D,F=!1){return b(`/admin/datasets/${D}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({force:F})},!0)}async function Xg(D){return b("/admin/datasets/bulk-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dataset_ids:D})},!0)}async function Gg(D){return b("/admin/datasets/import",{method:"POST",body:JSON.stringify(D)},!0)}async function Wg(D){return b(`/admin/datasets/${D}/sync`,{method:"POST"},!0)}async function Hg(){return b("/admin/sync/status",{},!0)}async function HQ(D,F){return b(`/admin/datasets/${D}/reindex`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(F??{})},!0)}async function qg(D,F){return b("/admin/datasets/reindex/bulk",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filter:D,...F??{}})},!0)}async function Kg(){return b("/admin/email-preferences",{},!0)}async function zg(D){return b("/admin/email-preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(D)},!0)}async function Eg(){return b("/notices",{},"optional")}async function Vg(){return b("/admin/notices",{},!0)}async function Zg(D){return b("/admin/notices",{method:"POST",body:JSON.stringify(D)},!0)}async function Ug(D){return b(`/admin/notices/${D}`,{method:"DELETE"},!0)}async function yW(D){return b("/admin/notify",{method:"POST",body:JSON.stringify(D)},!0)}var jW="https://nemar-api-dev.sccn-org.workers.dev",DQ,h,FQ,TW,k9;var i8=I(()=>{f4();wW();eJ();DQ=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;h=class h extends Error{statusCode;details;step;constructor(D,F,$,J){super(F);this.statusCode=D;this.details=$;this.step=J;this.name="ApiError"}};FQ=class FQ extends h{mode;eta;constructor(D,F,$,J){super(503,F,J);this.mode=D;this.eta=$;this.name="MaintenanceError"}};TW=jW.includes("workers.dev");k9=["ci_check","enrichment_check","repo_public","s3_public_read","tag_protect","doi_create","update_metadata","update_readme","create_tag","create_release","upload_to_zenodo","publish_doi","version_doi","s3_lock","generate_archive","sync_nemar","notify_user"]});function Ag(D){xW=D}function _W(){return xW}function x9(D){if(xW)process.stderr.write(`${D}
99
99
  `)}var xW=!1;function XD(D){if(D===0)return"0 B";let F=["B","KB","MB","GB","TB"],$=Math.min(Math.floor(Math.log(D)/Math.log(1024)),F.length-1);return`${(D/1024**$).toFixed($===0?0:1)} ${F[$]}`}function Mg(D){return`${XD(D)}/s`}function KE0(D){if(D<60)return`${Math.round(D)}s`;if(D<3600)return`${Math.floor(D/60)}m ${Math.round(D%60)}s`;return`${Math.floor(D/3600)}h ${Math.floor(D%3600/60)}m`}function zE0(D,F=20){let $=Math.round(D/100*F),J=F-$;return`[${"=".repeat($)}${" ".repeat(J)}]`}class qQ{filesCompleted=0;filesTotal;bytesTotal=0;inFlight=new Map;currentFile="";startTime;lastUpdateTime;lastBytesTransferred=0;totalBytesTransferred=0;speedSamples=[];lastRenderedLine="";constructor(D=0,F=0){this.filesTotal=D,this.bytesTotal=F,this.startTime=Date.now(),this.lastUpdateTime=this.startTime}inFlightBytes(){let D=0;for(let F of this.inFlight.values())D+=F.transferred;return D}processLine(D){let F=D.file??D.action?.file;if(D.ok===!0||D.success===!0){this.filesCompleted++;let $=F??this.currentFile,J=$?this.inFlight.get($):void 0,Q=J?J.total||J.transferred:0;if(this.totalBytesTransferred+=Q,$)this.inFlight.delete($);this.render();return}if(D["byte-progress"]!==void 0){let $=F??this.currentFile;if(!$)return;this.currentFile=$;let J=this.inFlight.get($)??{transferred:0,total:0};if(J.transferred=D["byte-progress"]??J.transferred,D["total-size"]!==void 0)J.total=D["total-size"];this.inFlight.set($,J);let Q=Date.now(),Y=(Q-this.lastUpdateTime)/1000;if(Y>0.5){let B=this.totalBytesTransferred+this.inFlightBytes(),G=(B-this.lastBytesTransferred)/Y;if(G>0){if(this.speedSamples.push(G),this.speedSamples.length>5)this.speedSamples.shift()}this.lastBytesTransferred=B,this.lastUpdateTime=Q}this.render()}}incrementFilesCompleted(){this.filesCompleted++}setFilesTotal(D){this.filesTotal=D}setBytesTotal(D){this.bytesTotal=D}getPercent(){let D=this.totalBytesTransferred+this.inFlightBytes();if(this.bytesTotal>0)return Math.min(100,Math.round(D/this.bytesTotal*100));if(this.filesTotal>0)return Math.min(100,Math.round(this.filesCompleted/this.filesTotal*100));return null}getProgress(){return{filesCompleted:this.filesCompleted,filesTotal:this.filesTotal,bytesTransferred:this.totalBytesTransferred+this.inFlightBytes(),bytesTotal:this.bytesTotal,currentFile:this.currentFile||void 0}}render(){let D=this.speedSamples.length>0?this.speedSamples.reduce((B,X)=>B+X,0)/this.speedSamples.length:0,F=this.totalBytesTransferred+this.inFlightBytes(),$=0,J=!1;if(this.bytesTotal>0)$=Math.min(100,Math.round(F/this.bytesTotal*100)),J=!0;else if(this.filesTotal>0)$=Math.min(100,Math.round(this.filesCompleted/this.filesTotal*100)),J=!0;let Q=this.filesTotal>0?`${this.filesCompleted}/${this.filesTotal} files`:`${this.filesCompleted} files`,Y;if(J)Y=`${zE0($)} ${$}% ${Q}`;else Y=Q;if(F>0){let B=this.bytesTotal>0?`${XD(F)}/${XD(this.bytesTotal)}`:XD(F);Y+=` | ${B}`}if(D>0)Y+=` | ${Mg(D)}`;if(D>0){let B=0;if(this.bytesTotal>0)B=Math.max(0,this.bytesTotal-F);else for(let X of this.inFlight.values())if(X.total>X.transferred)B+=X.total-X.transferred;if(B>0){let X=B/D;if(X>0)Y+=` | ETA ${KE0(X)}`}}if(Y!==this.lastRenderedLine)process.stderr.write(`\r${W.cyan(Y)}${" ".repeat(10)}`),this.lastRenderedLine=Y}finish(D){let F=(Date.now()-this.startTime)/1000;if(process.stderr.write(`\r${" ".repeat(this.lastRenderedLine.length+15)}\r`),D>0){let $=F>0?`${Mg(this.totalBytesTransferred/F)}`:"",J=[`${D} file${D!==1?"s":""} downloaded`,this.totalBytesTransferred>0?XD(this.totalBytesTransferred):"",$].filter(Boolean).join(" | ");process.stderr.write(`${W.green(J)}
100
100
  `)}}}var fW=I(()=>{vD()});var yg={};i4(yg,{verifyGitHubAuth:()=>f9,toS3Credentials:()=>RD,switchBranch:()=>CE0,setKeyPresent:()=>vg,selectAnnexS3Remote:()=>dW,saveDataset:()=>o8,runCommand:()=>S,resolveUpstreamRef:()=>tW,readRemoteHeadDatasetVersion:()=>rW,readLocalDatasetVersion:()=>sW,pushToGitHub:()=>a1,pushBranch:()=>kF,markInheritedOpenNeuroRemotesIgnored:()=>pW,listDatasetVersions:()=>nW,isWorkingTreeDirty:()=>eW,isGitAnnexDataset:()=>R1,isDataladDataset:()=>PE0,initOrEnableSpecialRemote:()=>Ig,initDataset:()=>a6,gitMergeFastForward:()=>FH,gitFetchOrigin:()=>DH,gitAnnexAdd:()=>o6,getVersionCommit:()=>iW,getRemoteUuid:()=>YH,getLocalDatasetInfo:()=>cW,getKeyHashDirs:()=>jE0,getKeyHashDir:()=>kg,getDatasetStats:()=>ME0,getDatasetIdFromRemote:()=>r8,getDatasetData:()=>VQ,getCurrentBranch:()=>s8,getAnnexWhereisAll:()=>QH,getAnnexS3Remotes:()=>h9,formatBytes:()=>XD,ensureLocalMainBranch:()=>b9,ensureGitAnnexInitialized:()=>mW,enableS3Remote:()=>u4,dropUnusedAnnexObjects:()=>$H,dropFiles:()=>lW,detectImportMarker:()=>EQ,createRevertBranch:()=>aW,createDataladDataset:()=>TE0,countPendingDownload:()=>zQ,copyToAnnexRemote:()=>w8,configureS3Remote:()=>O8,configureLargefiles:()=>b4,configureGitHubRemote:()=>a8,commitRevert:()=>oW,collectFileManifest:()=>JH,cloneDataset:()=>o1,clearAnnexCredentials:()=>SD,checkPrerequisites:()=>_9,checkGitHubSSH:()=>wg,checkGitAnnexInstalled:()=>uW,checkDownloadPrerequisites:()=>SF,checkAWSCredentials:()=>UE0,batchSetKeysPresent:()=>BH,annexRemoteExists:()=>Pg,acceptGitHubInvitation:()=>g9,NEMAR_S3_REMOTE_NAME:()=>KQ,ANNEX_REMOTE_EXISTS_RE:()=>Tg});import{existsSync as hW,readFileSync as EE0,statSync as VE0}from"fs";import{join as bW}from"path";var{spawn:Og}=globalThis.Bun;async function S(D,F={}){let $=Og({cmd:D,cwd:F.cwd,stdout:"pipe",stderr:"pipe",env:{...process.env,GIT_TERMINAL_PROMPT:"0",...F.env}}),J=!1,Q;if(F.timeout)Q=setTimeout(()=>{J=!0,$.kill()},F.timeout);if(_W()){let G=F.cwd?` (cwd=${F.cwd})`:"";x9(W.dim(`$ ${D.join(" ")}${G}`))}let Y=await new Response($.stdout).text(),B=await new Response($.stderr).text(),X=await $.exited;if(Q)clearTimeout(Q);if(_W()){if(Y.trim())x9(W.dim(Y.trimEnd()));if(B.trim())x9(W.yellow(B.trimEnd()));x9(W.dim(`(exit ${X})`))}if(J)return{stdout:Y,stderr:B||`Command timed out after ${Math.round(F.timeout/1000)}s`,exitCode:X??1};return{stdout:Y,stderr:B,exitCode:X}}function Ng(D){return D.split(".").map((F)=>{let $=Number.parseInt(F.replace(/[^0-9]/g,""),10);return Number.isNaN($)?0:$})}function ZE0(D,F){let $=Ng(D),J=Ng(F);for(let Q=0;Q<Math.max($.length,J.length);Q++){let Y=$[Q]||0,B=J[Q]||0;if(Y>B)return!0;if(Y<B)return!1}return!0}async function uW(){try{let{stdout:F,exitCode:$,stderr:J}=await S(["git-annex","version"]);if($!==0)return console.warn("git-annex version returned non-zero exit code:",$),console.warn("stderr:",J),{installed:!1,minVersion:"10.0",error:`Version check failed: ${J.trim()}`};let Q=F.match(/version:\s*(\d+\.\d+)/),Y=Q?Q[1]:void 0;if(!Y)console.warn("Could not parse git-annex version from output:",F);return{installed:!0,version:Y,minVersion:"10.0",compatible:Y?ZE0(Y,"10.0"):void 0}}catch(F){let $=F instanceof Error?F.message:String(F);if($.includes("ENOENT")||$.includes("not found"))return console.info("git-annex not found in PATH"),{installed:!1,minVersion:"10.0"};return console.error("Error checking git-annex installation:",$),{installed:!1,minVersion:"10.0",error:$}}}async function wg(){if(process.env.GH_TOKEN)return{accessible:!0,username:"token-auth",useHttps:!0};try{let{stdout:D,stderr:F}=await S(["ssh","-T","-o","BatchMode=yes","-o","StrictHostKeyChecking=accept-new","-o","ConnectTimeout=10","git@github.com"]),$=D+F,J=$.match(/Hi ([^!]+)!/);if(J)return{accessible:!0,username:J[1]};if($.includes("Permission denied"))return{accessible:!1};return{accessible:$.includes("successfully authenticated")}}catch(D){let F=D instanceof Error?D.message:String(D);if(F.includes("ENOENT")||F.includes("not found"))console.info("SSH command not found");else console.error("Error checking GitHub SSH access:",F);return{accessible:!1}}}async function UE0(){if(process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY)return{configured:!0,source:"environment"};try{let{stdout:D,exitCode:F}=await S(["aws","configure","get","aws_access_key_id"]);if(F===0&&D.trim())return{configured:!0,source:"aws-cli"}}catch(D){let F=D instanceof Error?D.message:String(D);if(F.includes("ENOENT")||F.includes("not found"))console.info("AWS CLI not found in PATH");else console.error("Error checking AWS credentials:",F)}return{configured:!1}}function jg(){let D=process.platform;if(D==="darwin")return"brew install git-annex";if(D==="linux")return"apt install git-annex (Debian/Ubuntu)";return"See https://git-annex.branchable.com/install/"}async function _9(){let[D,F]=await Promise.all([uW(),wg()]),$=[];if(!D.installed)$.push(`git-annex is not installed. Install: ${jg()}`);else if(D.compatible===!1)$.push(`git-annex version ${D.version} is too old. Required: >= ${D.minVersion}`);if(!F.accessible){if(!(await Sg()).token)$.push("GitHub authentication not configured. Run 'gh auth login' to authenticate.")}return{gitAnnex:D,githubSSH:F,allPassed:$.length===0,errors:$}}async function R1(D){if(!hW(bW(D,".git")))return!1;try{let{exitCode:F}=await S(["git","annex","info"],{cwd:D});return F===0}catch(F){let $=F instanceof Error?F.message:String(F);if(!$.includes("ENOENT")&&!$.includes("not found"))console.error(`Error checking if ${D} is a git-annex dataset:`,$);return!1}}async function a6(D,F={}){if(!F.force&&await R1(D))return{success:!0};try{let $={};if(F.author)$.GIT_AUTHOR_NAME=F.author.name,$.GIT_AUTHOR_EMAIL=F.author.email,$.GIT_COMMITTER_NAME=F.author.name,$.GIT_COMMITTER_EMAIL=F.author.email;let{stderr:J,exitCode:Q}=await S(["git","init","-b","main",D],{...Object.keys($).length>0?{env:$}:{}});if(Q!==0)return{success:!1,error:J.trim()||"Failed to initialize git repository"};let Y=Object.keys($).length>0?{env:$}:{},{stderr:B,exitCode:X}=await S(["git","annex","init"],{cwd:D,...Y});if(X!==0)return{success:!1,error:B.trim()||"Failed to initialize git-annex"};let{stderr:G,exitCode:H}=await S(["git","commit","--allow-empty","-m","Initialize dataset"],{cwd:D,...Y});if(H!==0)return{success:!1,error:G.trim()||"Failed to create initial commit"};let{stderr:q,exitCode:K}=await S(["git","annex","adjust","--unlock"],{cwd:D,...Y});if(K!==0)return{success:!1,error:q.trim()||"Failed to switch to unlocked mode"};return{success:!0}}catch($){return{success:!1,error:$.message}}}async function mW(D){try{let{exitCode:F,stderr:$}=await S(["git","annex","info"],{cwd:D});if(F===0)return{success:!0};if($.includes("First run: git-annex init")){let{stderr:J,exitCode:Q}=await S(["git","annex","init"],{cwd:D});if(Q!==0)return{success:!1,error:J.trim()||"Failed to initialize git-annex"};return{success:!0}}return{success:!1,error:$.trim()||"Failed to check git-annex status"}}catch(F){return{success:!1,error:F.message}}}async function b4(D,F){let $=["*.edf","*.bdf","*.set","*.fif","*.vhdr","*.eeg","*.cnt","*.fdt"],J=["*.tsv","*.json","*.md","*.txt","*.yml","*.yaml","README*","LICENSE*","CHANGES*",".bidsignore",".gitignore"],Q=$.map((G)=>`include=${G}`).join(" or "),Y=J.map((G)=>`exclude=${G}`).join(" and "),B=`(${Q} or largerthan=100kb) and ${Y}`,X=F||B;try{let{stderr:G,exitCode:H}=await S(["git","annex","config","--set","annex.largefiles",X],{cwd:D});if(H!==0)return{success:!1,error:G.trim()||"Failed to configure largefiles"};return{success:!0}}catch(G){return{success:!1,error:G.message}}}async function o6(D,F="."){try{let{stderr:$,exitCode:J}=await S(["git","annex","add",F],{cwd:D});if(J!==0)return{success:!1,error:$.trim()||"Failed to add files to git-annex"};return{success:!0}}catch($){return{success:!1,error:$.message}}}function RD(D){return{accessKeyId:D.access_key_id,secretAccessKey:D.secret_access_key,sessionToken:D.session_token}}function gW(D){let F=[/^\(merging .* into .*\.\.\.\)$/,/^\(recording state in git\.\.\.\)$/,/^\(scanning for /,/^\(checking /];return D.split(`
101
101
  `).filter(($)=>{let J=$.trim();if(!J)return!1;if(J.includes("setting annex-ignore"))return!1;if(F.some((Q)=>Q.test(J)))return!1;return!0}).join(`
@@ -383,7 +383,7 @@ NEMAR E2E Test (nm099999)
383
383
  Upload dir: ${$.upload_dir}`)),console.log(W.dim(`Clone dir: ${$.clone_dir}`));process.exit($.passed?0:1)});var VH=new i0("sync").description("Sync dataset metadata to nemar.org datapipeline");VH.command("run").description("Sync a dataset to nemar.org").argument("<dataset-id>","Dataset ID (e.g., nm000103)").action(async(D)=>{if(!y0())return;let F=C(`Syncing ${D} to nemar.org...`).start();try{let $=await Wg(D);if($.synced)F.succeed(`${D} synced to nemar.org`);else{F.warn(`${D} sync completed with errors:`);for(let J of $.errors)console.log(W.red(` - ${J}`))}}catch($){F.fail(`Failed to sync ${D}`),console.error(W.red(O0($)))}});VH.command("status").description("Show nemar.org sync status for all published datasets").action(async()=>{if(!y0())return;let D=C("Fetching sync status...").start();try{let F=await Hg();if(D.stop(),console.log(W.bold(`
384
384
  nemar.org Sync Status (${F.total} datasets)
385
385
  `)),console.log(` Synced: ${W.green(F.synced)} Failed: ${W.red(F.failed)} Pending: ${W.yellow(F.pending)}
386
- `),F.datasets.length===0){console.log(W.dim(" No published datasets found."));return}console.log(W.dim(` ${"ID".padEnd(12)} ${"Name".padEnd(40)} ${"Status".padEnd(10)} ${"Last Sync".padEnd(20)}`)),console.log(W.dim(` ${"\u2500".repeat(85)}`));for(let $ of F.datasets){let J=$.nemar_sync_status||"pending",Q=J==="synced"?W.green:J==="failed"?W.red:W.yellow,Y=$.nemar_sync_at?new Date($.nemar_sync_at).toLocaleDateString():"-",B=$.name||$.dataset_id,X=B.length>38?`${B.substring(0,35)}...`:B;if(console.log(` ${$.dataset_id.padEnd(12)} ${X.padEnd(40)} ${Q(J.padEnd(10))} ${Y}`),$.nemar_sync_error)console.log(W.red(` Error: ${$.nemar_sync_error}`))}}catch(F){D.fail("Failed to fetch sync status"),console.error(W.red(O0(F)))}});r0.addCommand(VH);function eg(D,F){let $=D.enrichment.status,J=$==="ok"?W.green("enrich:ok"):$==="failed"?W.red("enrich:failed"):W.dim("enrich:skipped"),Q=D.sync.status,Y=Q==="ok"?W.green("sync:ok"):Q==="failed"?W.red("sync:failed"):W.dim("sync:skipped"),B=D.sync.metadata_columns_written===!0?W.green("cols:written"):D.sync.metadata_columns_error?W.red("cols:failed"):"",X=F?.showRef&&D.enrichment.ref?W.dim(`@${D.enrichment.ref}`):"";if(console.log(` ${D.dataset_id.padEnd(12)} ${J}${X} ${Y} ${B}`),D.enrichment.error)console.log(W.red(` enrichment: ${D.enrichment.error}`));if(D.sync.errors?.length)for(let G of D.sync.errors)console.log(W.red(` sync: ${G}`));if(D.sync.metadata_columns_error)console.log(W.red(` metadata columns: ${D.sync.metadata_columns_error}`))}var Jh=new i0("reindex").description("Refresh dataset metadata: enrichment + nemar.org sync + first-class D1 columns");Jh.argument("[dataset-id]","Dataset ID to reindex (e.g., nm000103)").option("--all","Reindex every dataset with a GitHub repo").option("--missing-metadata","Reindex only datasets with NULL metadata columns").option("--stale","Reindex only datasets whose metadata is older than --older-than days").option("--older-than <days>","Threshold in days for --stale (default 30) or --missing-metadata recency guard (default 1 / 24h)","30").option("--skip-enrichment","Skip the LLM enrichment step").option("--skip-sync","Skip the nemar.org sync + D1 column refresh step").option("--ref <ref>","Ref to enrich from (single-dataset only; default: main)").option("--dry-run","List matched datasets without firing the reindex (bulk only)").action(async(D,F)=>{if(!y0())return;let $=[F.all,F.missingMetadata,F.stale].filter(Boolean).length;if(D&&$>0)console.error(W.red("Provide either a dataset-id OR a bulk flag (--all/--missing-metadata/--stale), not both")),process.exit(1);if(!D&&$===0)console.error(W.red("Provide a dataset-id or one of: --all, --missing-metadata, --stale")),process.exit(1);if($>1)console.error(W.red("Use only one of --all, --missing-metadata, --stale")),process.exit(1);if(F.skipEnrichment&&F.skipSync)console.error(W.red("--skip-enrichment and --skip-sync cannot both be set")),process.exit(1);if(D){let K=C(`Reindexing ${D}...`).start();try{let V={skip_enrichment:F.skipEnrichment===!0,skip_sync:F.skipSync===!0,...F.ref&&{ref:F.ref}},E=await HQ(D,V),Z=E.enrichment.status!=="failed"&&E.sync.status!=="failed";if(Z)K.succeed(`${D} reindexed`);else K.warn(`${D} reindexed with errors`);if(console.log(),eg(E,{showRef:!0}),!Z)process.exit(1)}catch(V){K.fail(`Failed to reindex ${D}`),console.error(W.red(O0(V))),process.exit(1)}return}let J=F.all?"all":F.missingMetadata?"missing-metadata":"stale",Q={skip_enrichment:F.skipEnrichment===!0,skip_sync:F.skipSync===!0,dry_run:F.dryRun===!0};if(F.olderThan!==void 0){let K=Number.parseInt(F.olderThan,10);if(!Number.isFinite(K)||K<0)console.error(W.red(`Invalid --older-than: "${F.olderThan}"`)),process.exit(1);Q.older_than_days=K}let Y=F.dryRun?`Listing ${J} datasets...`:`Reindexing ${J} datasets...`,B=C(Y).start(),X;try{X=await qg(J,Q)}catch(K){B.fail("Bulk reindex failed"),console.error(W.red(O0(K))),process.exit(1)}if(X.dry_run){if(B.succeed(`${X.total} datasets match filter=${J} (dry run, no changes)`),X.datasets)for(let K of X.datasets)console.log(W.dim(` - ${K}`));return}let G=X.results??[],H=G.filter((K)=>K.enrichment.status!=="failed"&&K.sync.status!=="failed").length,q=G.length-H;if(q===0)B.succeed(`${G.length}/${G.length} datasets reindexed in ${(X.elapsed_ms/1000).toFixed(1)}s`);else B.warn(`${H}/${G.length} ok; ${q} failed in ${(X.elapsed_ms/1000).toFixed(1)}s`);console.log();for(let K of G)eg(K);if(q>0)process.exit(1)});r0.addCommand(Jh);var ZH=new i0("email-preferences").description("Manage email notification preferences");ZH.command("show").description("Show current email notification preferences").action(async()=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let D=C("Fetching email preferences...").start();try{let F=await Kg();D.succeed("Email notification preferences:"),console.log();let $=[{key:"user_approval",label:"User approval notifications"},{key:"publication_request",label:"Publication request notifications"},{key:"announcements",label:"Announcement emails"}];for(let J of $){let Y=F[J.key]?W.green("enabled"):W.dim("disabled");console.log(` ${J.label.padEnd(40)} ${Y}`)}console.log(),console.log(W.dim(" Use 'nemar admin email-preferences update' to change settings."))}catch(F){D.fail("Failed to fetch preferences"),console.error(W.red(O0(F)))}});ZH.command("update").description("Update email notification preferences").option("--user-approval <bool>","Enable/disable user approval notifications").option("--publication-request <bool>","Enable/disable publication request notifications").option("--announcements <bool>","Enable/disable announcement emails").option("--all <bool>","Enable/disable all notifications").action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);function F(Q){if(Q===void 0)return;let Y=Q.toLowerCase();if(Y==="true"||Y==="1"||Y==="on"||Y==="yes")return!0;if(Y==="false"||Y==="0"||Y==="off"||Y==="no")return!1;console.error(W.red(`Invalid boolean value: "${Q}". Use true/false, on/off, yes/no.`)),process.exit(1)}let $={};if(D.all!==void 0){let Q=F(D.all);$.user_approval=Q,$.publication_request=Q,$.announcements=Q}else{let Q=F(D.userApproval),Y=F(D.publicationRequest),B=F(D.announcements);if(Q===void 0&&Y===void 0&&B===void 0)console.error(W.red("No preferences specified.")),console.log(" --user-approval <bool> User approval notifications"),console.log(" --publication-request <bool> Publication request notifications"),console.log(" --announcements <bool> Announcement emails"),console.log(" --all <bool> All notifications"),process.exit(1);if(Q!==void 0)$.user_approval=Q;if(Y!==void 0)$.publication_request=Y;if(B!==void 0)$.announcements=B}let J=C("Updating email preferences...").start();try{let Q=await zg($);J.succeed("Email preferences updated:"),console.log(),console.log(` User approval: ${Q.user_approval?W.green("enabled"):W.dim("disabled")}`),console.log(` Publication request: ${Q.publication_request?W.green("enabled"):W.dim("disabled")}`),console.log(` Announcements: ${Q.announcements?W.green("enabled"):W.dim("disabled")}`)}catch(Q){J.fail("Failed to update preferences"),console.error(W.red(O0(Q)))}});r0.addCommand(ZH);var UQ=new i0("notice").description("Manage system notices displayed to CLI users");UQ.command("list").description("List all notices (including expired)").action(async()=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let D=C("Fetching notices...").start();try{let{notices:F}=await Vg();if(F.length===0){D.succeed("No notices found.");return}D.succeed(`${F.length} notice(s):`),console.log();for(let $ of F){let Q={critical:W.red.bold,warning:W.yellow,info:W.blue}[$.level]||W.white,Y=$.expires_at&&new Date($.expires_at)<new Date?W.dim(" (expired)"):"";if(console.log(` ${W.dim(`#${$.id}`)} ${Q(`[${$.level.toUpperCase()}]`)} ${W.dim(`scope:${$.scope}`)}${Y}`),console.log(` ${$.message}`),console.log(` ${W.dim(`Created: ${$.created_at}`)}`),$.expires_at)console.log(` ${W.dim(`Expires: ${$.expires_at}`)}`);console.log()}}catch(F){FD(F,D,"Failed to fetch notices")}});UQ.command("set").description("Create a new system notice").requiredOption("-m, --message <text>","Notice message text").option("-l, --level <level>","Notice level: info, warning, critical","info").option("-s, --scope <scope>","Target scope: all, admins, members","all").option("-e, --expires <datetime>","Expiry datetime (ISO 8601)").action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);if(!["info","warning","critical"].includes(D.level))console.error(W.red(`Invalid level: ${D.level}. Use info, warning, or critical.`)),process.exit(1);if(!["all","admins","members"].includes(D.scope))console.error(W.red(`Invalid scope: ${D.scope}. Use all, admins, or members.`)),process.exit(1);let F=C("Creating notice...").start();try{let $=await Zg({message:D.message,level:D.level,scope:D.scope,expires_at:D.expires});if(F.succeed(`Notice created (ID: ${$.id})`),console.log(` Level: ${$.level}`),console.log(` Scope: ${$.scope}`),console.log(` Message: ${$.message}`),$.expires_at)console.log(` Expires: ${$.expires_at}`)}catch($){FD($,F,"Failed to create notice")}});UQ.command("clear <id>").description("Delete a notice by ID").option(w0,j0).option(g0,v0).action(async(D,F)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let $=Number.parseInt(D,10);if(Number.isNaN($))console.error(W.red("Invalid notice ID")),process.exit(1);if(!await S0(`Delete notice #${$}?`,F,!1))return;let Q=C("Deleting notice...").start();try{await Ug($),Q.succeed(`Notice #${$} deleted`)}catch(Y){FD(Y,Q,"Failed to delete notice")}});r0.addCommand(UQ);r0.command("notify").description("Send an email to a group or a single user").option("--to <group>","Recipient group: all, admins, members").option("--user <username>","Send to a single user by username").requiredOption("--subject <text>","Email subject line").option("--body <text>","Email body (markdown)").option("--body-file <path>","Read email body from file (markdown)").option("--dry-run","Preview recipients without sending").option(w0,j0).option(g0,v0).action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);if(D.to&&D.user)console.error(W.red("--to and --user are mutually exclusive. Provide exactly one.")),process.exit(1);if(!D.to&&!D.user)console.error(W.red("Provide either --to <group> or --user <username>.")),process.exit(1);if(D.to&&!["all","admins","members"].includes(D.to))console.error(W.red(`Invalid group: ${D.to}. Use all, admins, or members.`)),process.exit(1);let F;if(D.bodyFile){if(!Dh(D.bodyFile))console.error(W.red(`File not found: ${D.bodyFile}`)),process.exit(1);F=oE0(D.bodyFile,"utf-8")}else if(D.body)F=D.body;else console.error(W.red("Email body required. Use --body or --body-file.")),process.exit(1);let $=D.user?`user:${D.user}`:D.to,J=D.user?{user:D.user,subject:D.subject,body:F}:{to:D.to,subject:D.subject,body:F};if(D.dryRun){let X=C("Checking recipients...").start();try{let G=await yW({...J,dry_run:!0});if("dry_run"in G){X.succeed(`Dry run: ${G.recipient_count} recipient(s) for "${G.recipient_group}"`),console.log();for(let H of G.recipients)console.log(` ${H}`)}}catch(G){FD(G,X,"Failed to check recipients")}return}console.log(W.bold("Email preview:")),console.log(` To: ${W.cyan($)}`),console.log(` Subject: ${D.subject}`),console.log(` Body: ${F.length>100?`${F.substring(0,100)}...`:F}`),console.log();let Q=D.user?`Send this email to ${D.user}?`:"Send this broadcast email?";if(!await S0(Q,D,!1))return;let B=C(D.user?`Sending to ${D.user}...`:"Sending broadcast...").start();try{let X=await yW(J);if("broadcast_id"in X)if(X.failure_count>0){B.warn(`Email send: ${X.recipient_count} delivered, ${X.failure_count} failed`);for(let G of X.failed_recipients)console.log(W.red(` Failed: ${G}`))}else{let G=D.user?`Email sent to ${D.user}`:`Broadcast sent to ${X.recipient_count} recipient(s)`;B.succeed(`${G} (ID: ${X.broadcast_id})`)}}catch(X){FD(X,B,"Failed to send email")}});vD();y6();a3();i8();f4();import{appendFileSync as tE0,existsSync as t6,mkdirSync as Qh,readFileSync as AQ,writeFileSync as eE0}from"fs";import{homedir as DV0}from"os";import{join as LQ}from"path";var{spawn:Yh}=globalThis.Bun;function l4(){let D=LQ(DV0(),".ssh");return{sshDir:D,privateKey:LQ(D,"nemar_ed25519"),publicKey:LQ(D,"nemar_ed25519.pub"),configFile:LQ(D,"config")}}function Bh(){let D=l4();return t6(D.privateKey)&&t6(D.publicKey)}async function Xh(D){let F=l4();if(!t6(F.sshDir))try{Qh(F.sshDir,{mode:448})}catch($){return{success:!1,error:`Cannot create ~/.ssh directory: ${$.message}`}}if(t6(F.privateKey))try{return{success:!0,publicKey:AQ(F.publicKey,"utf-8").trim()}}catch($){return{success:!1,error:`NEMAR SSH key exists but cannot read public key: ${$.message}`}}try{let $=Yh({cmd:["ssh-keygen","-t","ed25519","-f",F.privateKey,"-N","","-C",`nemar-cli-${D}`],stdout:"pipe",stderr:"pipe"}),J=await new Response($.stderr).text();if(await $.exited!==0)return{success:!1,error:`ssh-keygen failed: ${J}`};return{success:!0,publicKey:AQ(F.publicKey,"utf-8").trim()}}catch($){return{success:!1,error:`Failed to generate SSH key: ${$.message}`}}}function Gh(){let D=l4();if(!t6(D.publicKey))return null;try{return AQ(D.publicKey,"utf-8").trim()}catch{return null}}function FV0(){let D=l4();if(!t6(D.configFile))return!1;try{let F=AQ(D.configFile,"utf-8");return F.includes("IdentityFile ~/.ssh/nemar_ed25519")||F.includes(`IdentityFile ${D.privateKey}`)}catch{return!1}}function Wh(){let D=l4();if(!t6(D.sshDir))try{Qh(D.sshDir,{mode:448})}catch($){return{success:!1,error:`Cannot create ~/.ssh directory: ${$.message}`}}if(FV0())return{success:!0};let F=`
386
+ `),F.datasets.length===0){console.log(W.dim(" No published datasets found."));return}console.log(W.dim(` ${"ID".padEnd(12)} ${"Name".padEnd(40)} ${"Status".padEnd(10)} ${"Last Sync".padEnd(20)}`)),console.log(W.dim(` ${"\u2500".repeat(85)}`));for(let $ of F.datasets){let J=$.nemar_sync_status||"pending",Q=J==="synced"?W.green:J==="failed"?W.red:W.yellow,Y=$.nemar_sync_at?new Date($.nemar_sync_at).toLocaleDateString():"-",B=$.name||$.dataset_id,X=B.length>38?`${B.substring(0,35)}...`:B;if(console.log(` ${$.dataset_id.padEnd(12)} ${X.padEnd(40)} ${Q(J.padEnd(10))} ${Y}`),$.nemar_sync_error)console.log(W.red(` Error: ${$.nemar_sync_error}`))}}catch(F){D.fail("Failed to fetch sync status"),console.error(W.red(O0(F)))}});r0.addCommand(VH);function eg(D,F){let $=D.enrichment.status,J=$==="ok"?W.green("enrich:ok"):$==="failed"?W.red("enrich:failed"):W.dim("enrich:skipped"),Q=D.sync.status,Y=Q==="ok"?W.green("sync:ok"):Q==="failed"?W.red("sync:failed"):W.dim("sync:skipped"),B=D.sync.metadata_columns_written===!0?W.green("cols:written"):D.sync.metadata_columns_error?W.red("cols:failed"):"",X=F?.showRef&&D.enrichment.ref?W.dim(`@${D.enrichment.ref}`):"";if(console.log(` ${D.dataset_id.padEnd(12)} ${J}${X} ${Y} ${B}`),D.enrichment.error)console.log(W.red(` enrichment: ${D.enrichment.error}`));if(D.sync.errors?.length)for(let G of D.sync.errors)console.log(W.red(` sync: ${G}`));if(D.sync.metadata_columns_error)console.log(W.red(` metadata columns: ${D.sync.metadata_columns_error}`))}var Jh=new i0("reindex").description("Refresh dataset metadata: enrichment + nemar.org sync + first-class D1 columns");Jh.argument("[dataset-id]","Dataset ID to reindex (e.g., nm000103)").option("--all","Reindex every dataset with a GitHub repo").option("--missing-metadata","Reindex only datasets with NULL metadata columns").option("--stale","Reindex only datasets whose metadata is older than --older-than days").option("--older-than <days>","Threshold for --stale (default: 30)","30").option("--skip-enrichment","Skip the LLM enrichment step").option("--skip-sync","Skip the nemar.org sync + D1 column refresh step").option("--ref <ref>","Ref to enrich from (single-dataset only; default: main)").option("--dry-run","List matched datasets without firing the reindex (bulk only)").action(async(D,F)=>{if(!y0())return;let $=[F.all,F.missingMetadata,F.stale].filter(Boolean).length;if(D&&$>0)console.error(W.red("Provide either a dataset-id OR a bulk flag (--all/--missing-metadata/--stale), not both")),process.exit(1);if(!D&&$===0)console.error(W.red("Provide a dataset-id or one of: --all, --missing-metadata, --stale")),process.exit(1);if($>1)console.error(W.red("Use only one of --all, --missing-metadata, --stale")),process.exit(1);if(F.skipEnrichment&&F.skipSync)console.error(W.red("--skip-enrichment and --skip-sync cannot both be set")),process.exit(1);if(D){let K=C(`Reindexing ${D}...`).start();try{let V={skip_enrichment:F.skipEnrichment===!0,skip_sync:F.skipSync===!0,...F.ref&&{ref:F.ref}},E=await HQ(D,V),Z=E.enrichment.status!=="failed"&&E.sync.status!=="failed";if(Z)K.succeed(`${D} reindexed`);else K.warn(`${D} reindexed with errors`);if(console.log(),eg(E,{showRef:!0}),!Z)process.exit(1)}catch(V){K.fail(`Failed to reindex ${D}`),console.error(W.red(O0(V))),process.exit(1)}return}let J=F.all?"all":F.missingMetadata?"missing-metadata":"stale",Q={skip_enrichment:F.skipEnrichment===!0,skip_sync:F.skipSync===!0,dry_run:F.dryRun===!0};if(F.olderThan!==void 0){let K=Number.parseInt(F.olderThan,10);if(!Number.isFinite(K)||K<0)console.error(W.red(`Invalid --older-than: "${F.olderThan}"`)),process.exit(1);Q.older_than_days=K}let Y=F.dryRun?`Listing ${J} datasets...`:`Reindexing ${J} datasets...`,B=C(Y).start(),X;try{X=await qg(J,Q)}catch(K){B.fail("Bulk reindex failed"),console.error(W.red(O0(K))),process.exit(1)}if(X.dry_run){if(B.succeed(`${X.total} datasets match filter=${J} (dry run, no changes)`),X.datasets)for(let K of X.datasets)console.log(W.dim(` - ${K}`));return}let G=X.results??[],H=G.filter((K)=>K.enrichment.status!=="failed"&&K.sync.status!=="failed").length,q=G.length-H;if(q===0)B.succeed(`${G.length}/${G.length} datasets reindexed in ${(X.elapsed_ms/1000).toFixed(1)}s`);else B.warn(`${H}/${G.length} ok; ${q} failed in ${(X.elapsed_ms/1000).toFixed(1)}s`);console.log();for(let K of G)eg(K);if(q>0)process.exit(1)});r0.addCommand(Jh);var ZH=new i0("email-preferences").description("Manage email notification preferences");ZH.command("show").description("Show current email notification preferences").action(async()=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let D=C("Fetching email preferences...").start();try{let F=await Kg();D.succeed("Email notification preferences:"),console.log();let $=[{key:"user_approval",label:"User approval notifications"},{key:"publication_request",label:"Publication request notifications"},{key:"announcements",label:"Announcement emails"}];for(let J of $){let Y=F[J.key]?W.green("enabled"):W.dim("disabled");console.log(` ${J.label.padEnd(40)} ${Y}`)}console.log(),console.log(W.dim(" Use 'nemar admin email-preferences update' to change settings."))}catch(F){D.fail("Failed to fetch preferences"),console.error(W.red(O0(F)))}});ZH.command("update").description("Update email notification preferences").option("--user-approval <bool>","Enable/disable user approval notifications").option("--publication-request <bool>","Enable/disable publication request notifications").option("--announcements <bool>","Enable/disable announcement emails").option("--all <bool>","Enable/disable all notifications").action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);function F(Q){if(Q===void 0)return;let Y=Q.toLowerCase();if(Y==="true"||Y==="1"||Y==="on"||Y==="yes")return!0;if(Y==="false"||Y==="0"||Y==="off"||Y==="no")return!1;console.error(W.red(`Invalid boolean value: "${Q}". Use true/false, on/off, yes/no.`)),process.exit(1)}let $={};if(D.all!==void 0){let Q=F(D.all);$.user_approval=Q,$.publication_request=Q,$.announcements=Q}else{let Q=F(D.userApproval),Y=F(D.publicationRequest),B=F(D.announcements);if(Q===void 0&&Y===void 0&&B===void 0)console.error(W.red("No preferences specified.")),console.log(" --user-approval <bool> User approval notifications"),console.log(" --publication-request <bool> Publication request notifications"),console.log(" --announcements <bool> Announcement emails"),console.log(" --all <bool> All notifications"),process.exit(1);if(Q!==void 0)$.user_approval=Q;if(Y!==void 0)$.publication_request=Y;if(B!==void 0)$.announcements=B}let J=C("Updating email preferences...").start();try{let Q=await zg($);J.succeed("Email preferences updated:"),console.log(),console.log(` User approval: ${Q.user_approval?W.green("enabled"):W.dim("disabled")}`),console.log(` Publication request: ${Q.publication_request?W.green("enabled"):W.dim("disabled")}`),console.log(` Announcements: ${Q.announcements?W.green("enabled"):W.dim("disabled")}`)}catch(Q){J.fail("Failed to update preferences"),console.error(W.red(O0(Q)))}});r0.addCommand(ZH);var UQ=new i0("notice").description("Manage system notices displayed to CLI users");UQ.command("list").description("List all notices (including expired)").action(async()=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let D=C("Fetching notices...").start();try{let{notices:F}=await Vg();if(F.length===0){D.succeed("No notices found.");return}D.succeed(`${F.length} notice(s):`),console.log();for(let $ of F){let Q={critical:W.red.bold,warning:W.yellow,info:W.blue}[$.level]||W.white,Y=$.expires_at&&new Date($.expires_at)<new Date?W.dim(" (expired)"):"";if(console.log(` ${W.dim(`#${$.id}`)} ${Q(`[${$.level.toUpperCase()}]`)} ${W.dim(`scope:${$.scope}`)}${Y}`),console.log(` ${$.message}`),console.log(` ${W.dim(`Created: ${$.created_at}`)}`),$.expires_at)console.log(` ${W.dim(`Expires: ${$.expires_at}`)}`);console.log()}}catch(F){FD(F,D,"Failed to fetch notices")}});UQ.command("set").description("Create a new system notice").requiredOption("-m, --message <text>","Notice message text").option("-l, --level <level>","Notice level: info, warning, critical","info").option("-s, --scope <scope>","Target scope: all, admins, members","all").option("-e, --expires <datetime>","Expiry datetime (ISO 8601)").action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);if(!["info","warning","critical"].includes(D.level))console.error(W.red(`Invalid level: ${D.level}. Use info, warning, or critical.`)),process.exit(1);if(!["all","admins","members"].includes(D.scope))console.error(W.red(`Invalid scope: ${D.scope}. Use all, admins, or members.`)),process.exit(1);let F=C("Creating notice...").start();try{let $=await Zg({message:D.message,level:D.level,scope:D.scope,expires_at:D.expires});if(F.succeed(`Notice created (ID: ${$.id})`),console.log(` Level: ${$.level}`),console.log(` Scope: ${$.scope}`),console.log(` Message: ${$.message}`),$.expires_at)console.log(` Expires: ${$.expires_at}`)}catch($){FD($,F,"Failed to create notice")}});UQ.command("clear <id>").description("Delete a notice by ID").option(w0,j0).option(g0,v0).action(async(D,F)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);let $=Number.parseInt(D,10);if(Number.isNaN($))console.error(W.red("Invalid notice ID")),process.exit(1);if(!await S0(`Delete notice #${$}?`,F,!1))return;let Q=C("Deleting notice...").start();try{await Ug($),Q.succeed(`Notice #${$} deleted`)}catch(Y){FD(Y,Q,"Failed to delete notice")}});r0.addCommand(UQ);r0.command("notify").description("Send an email to a group or a single user").option("--to <group>","Recipient group: all, admins, members").option("--user <username>","Send to a single user by username").requiredOption("--subject <text>","Email subject line").option("--body <text>","Email body (markdown)").option("--body-file <path>","Read email body from file (markdown)").option("--dry-run","Preview recipients without sending").option(w0,j0).option(g0,v0).action(async(D)=>{if(!U0())console.error(W.red("Not authenticated. Run: nemar auth login")),process.exit(1);if(D.to&&D.user)console.error(W.red("--to and --user are mutually exclusive. Provide exactly one.")),process.exit(1);if(!D.to&&!D.user)console.error(W.red("Provide either --to <group> or --user <username>.")),process.exit(1);if(D.to&&!["all","admins","members"].includes(D.to))console.error(W.red(`Invalid group: ${D.to}. Use all, admins, or members.`)),process.exit(1);let F;if(D.bodyFile){if(!Dh(D.bodyFile))console.error(W.red(`File not found: ${D.bodyFile}`)),process.exit(1);F=oE0(D.bodyFile,"utf-8")}else if(D.body)F=D.body;else console.error(W.red("Email body required. Use --body or --body-file.")),process.exit(1);let $=D.user?`user:${D.user}`:D.to,J=D.user?{user:D.user,subject:D.subject,body:F}:{to:D.to,subject:D.subject,body:F};if(D.dryRun){let X=C("Checking recipients...").start();try{let G=await yW({...J,dry_run:!0});if("dry_run"in G){X.succeed(`Dry run: ${G.recipient_count} recipient(s) for "${G.recipient_group}"`),console.log();for(let H of G.recipients)console.log(` ${H}`)}}catch(G){FD(G,X,"Failed to check recipients")}return}console.log(W.bold("Email preview:")),console.log(` To: ${W.cyan($)}`),console.log(` Subject: ${D.subject}`),console.log(` Body: ${F.length>100?`${F.substring(0,100)}...`:F}`),console.log();let Q=D.user?`Send this email to ${D.user}?`:"Send this broadcast email?";if(!await S0(Q,D,!1))return;let B=C(D.user?`Sending to ${D.user}...`:"Sending broadcast...").start();try{let X=await yW(J);if("broadcast_id"in X)if(X.failure_count>0){B.warn(`Email send: ${X.recipient_count} delivered, ${X.failure_count} failed`);for(let G of X.failed_recipients)console.log(W.red(` Failed: ${G}`))}else{let G=D.user?`Email sent to ${D.user}`:`Broadcast sent to ${X.recipient_count} recipient(s)`;B.succeed(`${G} (ID: ${X.broadcast_id})`)}}catch(X){FD(X,B,"Failed to send email")}});vD();y6();a3();i8();f4();import{appendFileSync as tE0,existsSync as t6,mkdirSync as Qh,readFileSync as AQ,writeFileSync as eE0}from"fs";import{homedir as DV0}from"os";import{join as LQ}from"path";var{spawn:Yh}=globalThis.Bun;function l4(){let D=LQ(DV0(),".ssh");return{sshDir:D,privateKey:LQ(D,"nemar_ed25519"),publicKey:LQ(D,"nemar_ed25519.pub"),configFile:LQ(D,"config")}}function Bh(){let D=l4();return t6(D.privateKey)&&t6(D.publicKey)}async function Xh(D){let F=l4();if(!t6(F.sshDir))try{Qh(F.sshDir,{mode:448})}catch($){return{success:!1,error:`Cannot create ~/.ssh directory: ${$.message}`}}if(t6(F.privateKey))try{return{success:!0,publicKey:AQ(F.publicKey,"utf-8").trim()}}catch($){return{success:!1,error:`NEMAR SSH key exists but cannot read public key: ${$.message}`}}try{let $=Yh({cmd:["ssh-keygen","-t","ed25519","-f",F.privateKey,"-N","","-C",`nemar-cli-${D}`],stdout:"pipe",stderr:"pipe"}),J=await new Response($.stderr).text();if(await $.exited!==0)return{success:!1,error:`ssh-keygen failed: ${J}`};return{success:!0,publicKey:AQ(F.publicKey,"utf-8").trim()}}catch($){return{success:!1,error:`Failed to generate SSH key: ${$.message}`}}}function Gh(){let D=l4();if(!t6(D.publicKey))return null;try{return AQ(D.publicKey,"utf-8").trim()}catch{return null}}function FV0(){let D=l4();if(!t6(D.configFile))return!1;try{let F=AQ(D.configFile,"utf-8");return F.includes("IdentityFile ~/.ssh/nemar_ed25519")||F.includes(`IdentityFile ${D.privateKey}`)}catch{return!1}}function Wh(){let D=l4();if(!t6(D.sshDir))try{Qh(D.sshDir,{mode:448})}catch($){return{success:!1,error:`Cannot create ~/.ssh directory: ${$.message}`}}if(FV0())return{success:!0};let F=`
387
387
  # NEMAR CLI SSH key (auto-generated)
388
388
  Host github.com
389
389
  AddKeysToAgent yes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nemar-cli",
3
- "version": "0.8.27-PR579.ffe96e8",
3
+ "version": "0.8.27-dev.1007",
4
4
  "description": "CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource) dataset management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",