nemar-cli 0.4.0-dev.199 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +2 -2
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -116,7 +116,7 @@ ${YC.default.cursorShow}`)}releaseCursor(){if(this.extraLinesUnderPrompt>0)CQ(th
116
116
  ${F}`,l8D=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),d8D=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),p8D=(D,F,$)=>{let B=$===""?"":`with ${$.trim()}() `,J=m8D.bind(null,B,F.toString());Object.defineProperty(J,"name",d8D);let{writable:Q,enumerable:X,configurable:Y}=l8D;Object.defineProperty(D,"toString",{value:J,writable:Q,enumerable:X,configurable:Y})};function j3(D,F,{ignoreNonConfigurable:$=!1}={}){let{name:B}=D;for(let J of Reflect.ownKeys(F))h8D(D,F,J,$);return u8D(D,F),p8D(D,F,B),D}var E7=new WeakMap,Xw=(D,F={})=>{if(typeof D!=="function")throw TypeError("Expected a function");let $,B=0,J=D.displayName||D.name||"<anonymous>",Q=function(...X){if(E7.set(Q,++B),B===1)$=D.apply(this,X),D=void 0;else if(F.throw===!0)throw Error(`Function \`${J}\` can only be called once`);return $};return j3(Q,D),E7.set(Q,B),Q};Xw.callCount=(D)=>{if(!E7.has(D))throw Error(`The given function \`${D.name}\` is not wrapped by the \`onetime\` package`);return E7.get(D)};var Yw=Xw;var S6=[];S6.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")S6.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")S6.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var q7=(D)=>!!D&&typeof D==="object"&&typeof D.removeListener==="function"&&typeof D.emit==="function"&&typeof D.reallyExit==="function"&&typeof D.listeners==="function"&&typeof D.kill==="function"&&typeof D.pid==="number"&&typeof D.on==="function",MX=Symbol.for("signal-exit emitter"),NX=globalThis,c8D=Object.defineProperty.bind(Object);class Gw{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(NX[MX])return NX[MX];c8D(NX,MX,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(D,F){this.listeners[D].push(F)}removeListener(D,F){let $=this.listeners[D],B=$.indexOf(F);if(B===-1)return;if(B===0&&$.length===1)$.length=0;else $.splice(B,1)}emit(D,F,$){if(this.emitted[D])return!1;this.emitted[D]=!0;let B=!1;for(let J of this.listeners[D])B=J(F,$)===!0||B;if(D==="exit")B=this.emit("afterExit",F,$)||B;return B}}class RX{}var n8D=(D)=>{return{onExit(F,$){return D.onExit(F,$)},load(){return D.load()},unload(){return D.unload()}}};class Hw extends RX{onExit(){return()=>{}}load(){}unload(){}}class Ww extends RX{#$=CX.platform==="win32"?"SIGINT":"SIGHUP";#F=new Gw;#D;#J;#q;#B={};#X=!1;constructor(D){super();this.#D=D,this.#B={};for(let F of S6)this.#B[F]=()=>{let $=this.#D.listeners(F),{count:B}=this.#F,J=D;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")B+=J.__signal_exit_emitter__.count;if($.length===B){this.unload();let Q=this.#F.emit("exit",null,F),X=F==="SIGHUP"?this.#$:F;if(!Q)D.kill(D.pid,X)}};this.#q=D.reallyExit,this.#J=D.emit}onExit(D,F){if(!q7(this.#D))return()=>{};if(this.#X===!1)this.load();let $=F?.alwaysLast?"afterExit":"exit";return this.#F.on($,D),()=>{if(this.#F.removeListener($,D),this.#F.listeners.exit.length===0&&this.#F.listeners.afterExit.length===0)this.unload()}}load(){if(this.#X)return;this.#X=!0,this.#F.count+=1;for(let D of S6)try{let F=this.#B[D];if(F)this.#D.on(D,F)}catch(F){}this.#D.emit=(D,...F)=>{return this.#K(D,...F)},this.#D.reallyExit=(D)=>{return this.#Q(D)}}unload(){if(!this.#X)return;this.#X=!1,S6.forEach((D)=>{let F=this.#B[D];if(!F)throw Error("Listener not defined for signal: "+D);try{this.#D.removeListener(D,F)}catch($){}}),this.#D.emit=this.#J,this.#D.reallyExit=this.#q,this.#F.count-=1}#Q(D){if(!q7(this.#D))return 0;return this.#D.exitCode=D||0,this.#F.emit("exit",this.#D.exitCode,null),this.#q.call(this.#D,this.#D.exitCode)}#K(D,...F){let $=this.#J;if(D==="exit"&&q7(this.#D)){if(typeof F[0]==="number")this.#D.exitCode=F[0];let B=$.call(this.#D,D,...F);return this.#F.emit("exit",this.#D.exitCode,null),B}else return $.call(this.#D,D,...F)}}var CX=globalThis.process,{onExit:Ew,load:DZD,unload:FZD}=n8D(q7(CX)?new Ww(CX):new Hw);var qw=K7.stderr.isTTY?K7.stderr:K7.stdout.isTTY?K7.stdout:void 0,i8D=qw?Yw(()=>{Ew(()=>{qw.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},Kw=i8D;var z7=!1,o4={};o4.show=(D=zw.stderr)=>{if(!D.isTTY)return;z7=!1,D.write("\x1B[?25h")};o4.hide=(D=zw.stderr)=>{if(!D.isTTY)return;Kw(),z7=!0,D.write("\x1B[?25l")};o4.toggle=(D,F)=>{if(D!==void 0)z7=D;if(z7)o4.show(F);else o4.hide(F)};var wX=o4;var P3=l(H9(),1);import Q1 from"process";function TX(){if(Q1.platform!=="win32")return Q1.env.TERM!=="linux";return Boolean(Q1.env.CI)||Boolean(Q1.env.WT_SESSION)||Boolean(Q1.env.TERMINUS_SUBLIME)||Q1.env.ConEmuTask==="{cmd::Cmder}"||Q1.env.TERM_PROGRAM==="Terminus-Sublime"||Q1.env.TERM_PROGRAM==="vscode"||Q1.env.TERM==="xterm-256color"||Q1.env.TERM==="alacritty"||Q1.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var a8D={info:E.blue("\u2139"),success:E.green("\u2714"),warning:E.yellow("\u26A0"),error:E.red("\u2716")},o8D={info:E.blue("i"),success:E.green("\u221A"),warning:E.yellow("\u203C"),error:E.red("\xD7")},s8D=TX()?a8D:o8D,O3=s8D;function jX({onlyFirst:D=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",D?void 0:"g")}var r8D=jX();function I3(D){if(typeof D!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(r8D,"")}function Vw(D){return D===161||D===164||D===167||D===168||D===170||D===173||D===174||D>=176&&D<=180||D>=182&&D<=186||D>=188&&D<=191||D===198||D===208||D===215||D===216||D>=222&&D<=225||D===230||D>=232&&D<=234||D===236||D===237||D===240||D===242||D===243||D>=247&&D<=250||D===252||D===254||D===257||D===273||D===275||D===283||D===294||D===295||D===299||D>=305&&D<=307||D===312||D>=319&&D<=322||D===324||D>=328&&D<=331||D===333||D===338||D===339||D===358||D===359||D===363||D===462||D===464||D===466||D===468||D===470||D===472||D===474||D===476||D===593||D===609||D===708||D===711||D>=713&&D<=715||D===717||D===720||D>=728&&D<=731||D===733||D===735||D>=768&&D<=879||D>=913&&D<=929||D>=931&&D<=937||D>=945&&D<=961||D>=963&&D<=969||D===1025||D>=1040&&D<=1103||D===1105||D===8208||D>=8211&&D<=8214||D===8216||D===8217||D===8220||D===8221||D>=8224&&D<=8226||D>=8228&&D<=8231||D===8240||D===8242||D===8243||D===8245||D===8251||D===8254||D===8308||D===8319||D>=8321&&D<=8324||D===8364||D===8451||D===8453||D===8457||D===8467||D===8470||D===8481||D===8482||D===8486||D===8491||D===8531||D===8532||D>=8539&&D<=8542||D>=8544&&D<=8555||D>=8560&&D<=8569||D===8585||D>=8592&&D<=8601||D===8632||D===8633||D===8658||D===8660||D===8679||D===8704||D===8706||D===8707||D===8711||D===8712||D===8715||D===8719||D===8721||D===8725||D===8730||D>=8733&&D<=8736||D===8739||D===8741||D>=8743&&D<=8748||D===8750||D>=8756&&D<=8759||D===8764||D===8765||D===8776||D===8780||D===8786||D===8800||D===8801||D>=8804&&D<=8807||D===8810||D===8811||D===8814||D===8815||D===8834||D===8835||D===8838||D===8839||D===8853||D===8857||D===8869||D===8895||D===8978||D>=9312&&D<=9449||D>=9451&&D<=9547||D>=9552&&D<=9587||D>=9600&&D<=9615||D>=9618&&D<=9621||D===9632||D===9633||D>=9635&&D<=9641||D===9650||D===9651||D===9654||D===9655||D===9660||D===9661||D===9664||D===9665||D>=9670&&D<=9672||D===9675||D>=9678&&D<=9681||D>=9698&&D<=9701||D===9711||D===9733||D===9734||D===9737||D===9742||D===9743||D===9756||D===9758||D===9792||D===9794||D===9824||D===9825||D>=9827&&D<=9829||D>=9831&&D<=9834||D===9836||D===9837||D===9839||D===9886||D===9887||D===9919||D>=9926&&D<=9933||D>=9935&&D<=9939||D>=9941&&D<=9953||D===9955||D===9960||D===9961||D>=9963&&D<=9969||D===9972||D>=9974&&D<=9977||D===9979||D===9980||D===9982||D===9983||D===10045||D>=10102&&D<=10111||D>=11094&&D<=11097||D>=12872&&D<=12879||D>=57344&&D<=63743||D>=65024&&D<=65039||D===65533||D>=127232&&D<=127242||D>=127248&&D<=127277||D>=127280&&D<=127337||D>=127344&&D<=127373||D===127375||D===127376||D>=127387&&D<=127404||D>=917760&&D<=917999||D>=983040&&D<=1048573||D>=1048576&&D<=1114109}function Aw(D){return D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510}function Zw(D){return D>=4352&&D<=4447||D===8986||D===8987||D===9001||D===9002||D>=9193&&D<=9196||D===9200||D===9203||D===9725||D===9726||D===9748||D===9749||D>=9776&&D<=9783||D>=9800&&D<=9811||D===9855||D>=9866&&D<=9871||D===9875||D===9889||D===9898||D===9899||D===9917||D===9918||D===9924||D===9925||D===9934||D===9940||D===9962||D===9970||D===9971||D===9973||D===9978||D===9981||D===9989||D===9994||D===9995||D===10024||D===10060||D===10062||D>=10067&&D<=10069||D===10071||D>=10133&&D<=10135||D===10160||D===10175||D===11035||D===11036||D===11088||D===11093||D>=11904&&D<=11929||D>=11931&&D<=12019||D>=12032&&D<=12245||D>=12272&&D<=12287||D>=12289&&D<=12350||D>=12353&&D<=12438||D>=12441&&D<=12543||D>=12549&&D<=12591||D>=12593&&D<=12686||D>=12688&&D<=12773||D>=12783&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=42124||D>=42128&&D<=42182||D>=43360&&D<=43388||D>=44032&&D<=55203||D>=63744&&D<=64255||D>=65040&&D<=65049||D>=65072&&D<=65106||D>=65108&&D<=65126||D>=65128&&D<=65131||D>=94176&&D<=94180||D>=94192&&D<=94198||D>=94208&&D<=101589||D>=101631&&D<=101662||D>=101760&&D<=101874||D>=110576&&D<=110579||D>=110581&&D<=110587||D===110589||D===110590||D>=110592&&D<=110882||D===110898||D>=110928&&D<=110930||D===110933||D>=110948&&D<=110951||D>=110960&&D<=111355||D>=119552&&D<=119638||D>=119648&&D<=119670||D===126980||D===127183||D===127374||D>=127377&&D<=127386||D>=127488&&D<=127490||D>=127504&&D<=127547||D>=127552&&D<=127560||D===127568||D===127569||D>=127584&&D<=127589||D>=127744&&D<=127776||D>=127789&&D<=127797||D>=127799&&D<=127868||D>=127870&&D<=127891||D>=127904&&D<=127946||D>=127951&&D<=127955||D>=127968&&D<=127984||D===127988||D>=127992&&D<=128062||D===128064||D>=128066&&D<=128252||D>=128255&&D<=128317||D>=128331&&D<=128334||D>=128336&&D<=128359||D===128378||D===128405||D===128406||D===128420||D>=128507&&D<=128591||D>=128640&&D<=128709||D===128716||D>=128720&&D<=128722||D>=128725&&D<=128728||D>=128732&&D<=128735||D===128747||D===128748||D>=128756&&D<=128764||D>=128992&&D<=129003||D===129008||D>=129292&&D<=129338||D>=129340&&D<=129349||D>=129351&&D<=129535||D>=129648&&D<=129660||D>=129664&&D<=129674||D>=129678&&D<=129734||D===129736||D>=129741&&D<=129756||D>=129759&&D<=129770||D>=129775&&D<=129784||D>=131072&&D<=196605||D>=196608&&D<=262141}function t8D(D){if(!Number.isSafeInteger(D))throw TypeError(`Expected a code point, got \`${typeof D}\`.`)}function Uw(D,{ambiguousAsWide:F=!1}={}){if(t8D(D),Aw(D)||Zw(D)||F&&Vw(D))return 2;return 1}var Lw=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g};var e8D=new Intl.Segmenter,D6D=/^\p{Default_Ignorable_Code_Point}$/u;function OX(D,F={}){if(typeof D!=="string"||D.length===0)return 0;let{ambiguousIsNarrow:$=!0,countAnsiEscapeCodes:B=!1}=F;if(!B)D=I3(D);if(D.length===0)return 0;let J=0,Q={ambiguousAsWide:!$};for(let{segment:X}of e8D.segment(D)){let Y=X.codePointAt(0);if(Y<=31||Y>=127&&Y<=159)continue;if(Y>=8203&&Y<=8207||Y===65279)continue;if(Y>=768&&Y<=879||Y>=6832&&Y<=6911||Y>=7616&&Y<=7679||Y>=8400&&Y<=8447||Y>=65056&&Y<=65071)continue;if(Y>=55296&&Y<=57343)continue;if(Y>=65024&&Y<=65039)continue;if(D6D.test(X))continue;if(Lw().test(X)){J+=2;continue}J+=Uw(Y,Q)}return J}function IX({stream:D=process.stdout}={}){return Boolean(D&&D.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}import Mw from"process";function PX(){let{env:D}=Mw,{TERM:F,TERM_PROGRAM:$}=D;if(Mw.platform!=="win32")return F!=="linux";return Boolean(D.WT_SESSION)||Boolean(D.TERMINUS_SUBLIME)||D.ConEmuTask==="{cmd::Cmder}"||$==="Terminus-Sublime"||$==="vscode"||F==="xterm-256color"||F==="alacritty"||F==="rxvt-unicode"||F==="rxvt-unicode-256color"||D.TERMINAL_EMULATOR==="JetBrains-JediTerm"}import g1 from"process";var F6D=3;class Nw{#$=0;start(){if(this.#$++,this.#$===1)this.#F()}stop(){if(this.#$<=0)throw Error("`stop` called more times than `start`");if(this.#$--,this.#$===0)this.#D()}#F(){if(g1.platform==="win32"||!g1.stdin.isTTY)return;g1.stdin.setRawMode(!0),g1.stdin.on("data",this.#J),g1.stdin.resume()}#D(){if(!g1.stdin.isTTY)return;g1.stdin.off("data",this.#J),g1.stdin.pause(),g1.stdin.setRawMode(!1)}#J(D){if(D[0]===F6D)g1.emit("SIGINT")}}var $6D=new Nw,SX=$6D;var B6D=l(H9(),1);class Cw{#$=0;#F=!1;#D=0;#J=-1;#q=0;#B;#X;#Q;#K;#V;#H;#W;#E;#A;#Y;#G;color;constructor(D){if(typeof D==="string")D={text:D};if(this.#B={color:"cyan",stream:V7.stderr,discardStdin:!0,hideCursor:!0,...D},this.color=this.#B.color,this.spinner=this.#B.spinner,this.#V=this.#B.interval,this.#Q=this.#B.stream,this.#H=typeof this.#B.isEnabled==="boolean"?this.#B.isEnabled:IX({stream:this.#Q}),this.#W=typeof this.#B.isSilent==="boolean"?this.#B.isSilent:!1,this.text=this.#B.text,this.prefixText=this.#B.prefixText,this.suffixText=this.#B.suffixText,this.indent=this.#B.indent,V7.env.NODE_ENV==="test")this._stream=this.#Q,this._isEnabled=this.#H,Object.defineProperty(this,"_linesToClear",{get(){return this.#$},set(F){this.#$=F}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#J}}),Object.defineProperty(this,"_lineCount",{get(){return this.#D}})}get indent(){return this.#E}set indent(D=0){if(!(D>=0&&Number.isInteger(D)))throw Error("The `indent` option must be an integer from 0 and up");this.#E=D,this.#z()}get interval(){return this.#V??this.#X.interval??100}get spinner(){return this.#X}set spinner(D){if(this.#J=-1,this.#V=void 0,typeof D==="object"){if(D.frames===void 0)throw Error("The given spinner must have a `frames` property");this.#X=D}else if(!PX())this.#X=P3.default.line;else if(D===void 0)this.#X=P3.default.dots;else if(D!=="default"&&P3.default[D])this.#X=P3.default[D];else throw Error(`There is no built-in spinner named '${D}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#A}set text(D=""){this.#A=D,this.#z()}get prefixText(){return this.#Y}set prefixText(D=""){this.#Y=D,this.#z()}get suffixText(){return this.#G}set suffixText(D=""){this.#G=D,this.#z()}get isSpinning(){return this.#K!==void 0}#Z(D=this.#Y,F=" "){if(typeof D==="string"&&D!=="")return D+F;if(typeof D==="function")return D()+F;return""}#U(D=this.#G,F=" "){if(typeof D==="string"&&D!=="")return F+D;if(typeof D==="function")return F+D();return""}#z(){let D=this.#Q.columns??80,F=this.#Z(this.#Y,"-"),$=this.#U(this.#G,"-"),B=" ".repeat(this.#E)+F+"--"+this.#A+"--"+$;this.#D=0;for(let J of I3(B).split(`
117
117
  `))this.#D+=Math.max(1,Math.ceil(OX(J,{countAnsiEscapeCodes:!0})/D))}get isEnabled(){return this.#H&&!this.#W}set isEnabled(D){if(typeof D!=="boolean")throw TypeError("The `isEnabled` option must be a boolean");this.#H=D}get isSilent(){return this.#W}set isSilent(D){if(typeof D!=="boolean")throw TypeError("The `isSilent` option must be a boolean");this.#W=D}frame(){let D=Date.now();if(this.#J===-1||D-this.#q>=this.interval)this.#J=++this.#J%this.#X.frames.length,this.#q=D;let{frames:F}=this.#X,$=F[this.#J];if(this.color)$=E[this.color]($);let B=typeof this.#Y==="string"&&this.#Y!==""?this.#Y+" ":"",J=typeof this.text==="string"?" "+this.text:"",Q=typeof this.#G==="string"&&this.#G!==""?" "+this.#G:"";return B+$+J+Q}clear(){if(!this.#H||!this.#Q.isTTY)return this;this.#Q.cursorTo(0);for(let D=0;D<this.#$;D++){if(D>0)this.#Q.moveCursor(0,-1);this.#Q.clearLine(1)}if(this.#E||this.lastIndent!==this.#E)this.#Q.cursorTo(this.#E);return this.lastIndent=this.#E,this.#$=0,this}render(){if(this.#W)return this;return this.clear(),this.#Q.write(this.frame()),this.#$=this.#D,this}start(D){if(D)this.text=D;if(this.#W)return this;if(!this.#H){if(this.text)this.#Q.write(`- ${this.text}
118
118
  `);return this}if(this.isSpinning)return this;if(this.#B.hideCursor)wX.hide(this.#Q);if(this.#B.discardStdin&&V7.stdin.isTTY)this.#F=!0,SX.start();return this.render(),this.#K=setInterval(this.render.bind(this),this.interval),this}stop(){if(!this.#H)return this;if(clearInterval(this.#K),this.#K=void 0,this.#J=0,this.clear(),this.#B.hideCursor)wX.show(this.#Q);if(this.#B.discardStdin&&V7.stdin.isTTY&&this.#F)SX.stop(),this.#F=!1;return this}succeed(D){return this.stopAndPersist({symbol:O3.success,text:D})}fail(D){return this.stopAndPersist({symbol:O3.error,text:D})}warn(D){return this.stopAndPersist({symbol:O3.warning,text:D})}info(D){return this.stopAndPersist({symbol:O3.info,text:D})}stopAndPersist(D={}){if(this.#W)return this;let F=D.prefixText??this.#Y,$=this.#Z(F," "),B=D.symbol??" ",J=D.text??this.text,X=typeof J==="string"?(B?" ":"")+J:"",Y=D.suffixText??this.#G,G=this.#U(Y," "),H=$+B+X+G+`
119
- `;return this.stop(),this.#Q.write(H),this}}function R(D){return new Cw(D)}import{isDeepStrictEqual as tYD}from"util";import tk from"process";import m6 from"fs";import ek from"path";import E5 from"crypto";import eYD from"assert";var k6=(D)=>{let F=typeof D;return D!==null&&(F==="object"||F==="function")};var kX=new Set(["__proto__","prototype","constructor"]),J6D=new Set("0123456789");function A7(D){let F=[],$="",B="start",J=!1;for(let Q of D)switch(Q){case"\\":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd")throw Error("Invalid character after an index");if(J)$+=Q;B="property",J=!J;break}case".":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd"){B="property";break}if(J){J=!1,$+=Q;break}if(kX.has($))return[];F.push($),$="",B="property";break}case"[":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd"){B="index";break}if(J){J=!1,$+=Q;break}if(B==="property"){if(kX.has($))return[];F.push($),$=""}B="index";break}case"]":{if(B==="index"){F.push(Number.parseInt($,10)),$="",B="indexEnd";break}if(B==="indexEnd")throw Error("Invalid character after an index")}default:{if(B==="index"&&!J6D.has(Q))throw Error("Invalid character in an index");if(B==="indexEnd")throw Error("Invalid character after an index");if(B==="start")B="property";if(J)J=!1,$+="\\";$+=Q}}if(J)$+="\\";switch(B){case"property":{if(kX.has($))return[];F.push($);break}case"index":throw Error("Index was not closed");case"start":{F.push("");break}}return F}function vX(D,F){if(typeof F!=="number"&&Array.isArray(D)){let $=Number.parseInt(F,10);return Number.isInteger($)&&D[$]===D[F]}return!1}function Rw(D,F){if(vX(D,F))throw Error("Cannot use string index")}function ww(D,F,$){if(!k6(D)||typeof F!=="string")return $===void 0?D:$;let B=A7(F);if(B.length===0)return $;for(let J=0;J<B.length;J++){let Q=B[J];if(vX(D,Q))D=J===B.length-1?void 0:null;else D=D[Q];if(D===void 0||D===null){if(J!==B.length-1)return $;break}}return D===void 0?$:D}function yX(D,F,$){if(!k6(D)||typeof F!=="string")return D;let B=D,J=A7(F);for(let Q=0;Q<J.length;Q++){let X=J[Q];if(Rw(D,X),Q===J.length-1)D[X]=$;else if(!k6(D[X]))D[X]=typeof J[Q+1]==="number"?[]:{};D=D[X]}return B}function Tw(D,F){if(!k6(D)||typeof F!=="string")return!1;let $=A7(F);for(let B=0;B<$.length;B++){let J=$[B];if(Rw(D,J),B===$.length-1)return delete D[J],!0;if(D=D[J],!k6(D))return!1}}function jw(D,F){if(!k6(D)||typeof F!=="string")return!1;let $=A7(F);if($.length===0)return!1;for(let B of $){if(!k6(D)||!(B in D)||vX(D,B))return!1;D=D[B]}return!0}import OD from"path";import Ow from"os";import xX from"process";var o8=Ow.homedir(),_X=Ow.tmpdir(),{env:s4}=xX,Q6D=(D)=>{let F=OD.join(o8,"Library");return{data:OD.join(F,"Application Support",D),config:OD.join(F,"Preferences",D),cache:OD.join(F,"Caches",D),log:OD.join(F,"Logs",D),temp:OD.join(_X,D)}},X6D=(D)=>{let F=s4.APPDATA||OD.join(o8,"AppData","Roaming"),$=s4.LOCALAPPDATA||OD.join(o8,"AppData","Local");return{data:OD.join($,D,"Data"),config:OD.join(F,D,"Config"),cache:OD.join($,D,"Cache"),log:OD.join($,D,"Log"),temp:OD.join(_X,D)}},Y6D=(D)=>{let F=OD.basename(o8);return{data:OD.join(s4.XDG_DATA_HOME||OD.join(o8,".local","share"),D),config:OD.join(s4.XDG_CONFIG_HOME||OD.join(o8,".config"),D),cache:OD.join(s4.XDG_CACHE_HOME||OD.join(o8,".cache"),D),log:OD.join(s4.XDG_STATE_HOME||OD.join(o8,".local","state"),D),temp:OD.join(_X,F,D)}};function fX(D,{suffix:F="nodejs"}={}){if(typeof D!=="string")throw TypeError(`Expected a string, got ${typeof D}`);if(F)D+=`-${F}`;if(xX.platform==="darwin")return Q6D(D);if(xX.platform==="win32")return X6D(D);return Y6D(D)}import V6D from"path";import WD from"fs";import{promisify as Q0}from"util";var G6D=(D,F)=>{let{onError:$}=F;return function(...J){return D.apply(void 0,J).catch($)}},h1=G6D;var H6D=(D,F)=>{let{onError:$}=F;return function(...J){try{return D.apply(void 0,J)}catch(Q){return $(Q)}}},X1=H6D;var Iw=250;var W6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=J.interval??Iw,Y=Date.now()+Q;return function G(...H){return D.apply(void 0,H).catch((W)=>{if(!$(W))throw W;if(Date.now()>=Y)throw W;let K=Math.round(X*Math.random());if(K>0)return new Promise((A)=>setTimeout(A,K)).then(()=>G.apply(void 0,H));else return G.apply(void 0,H)})}}},b1=W6D;var E6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=Date.now()+Q;return function(...G){while(!0)try{return D.apply(void 0,G)}catch(H){if(!$(H))throw H;if(Date.now()>=X)throw H;continue}}}},u1=E6D;import Sw from"process";var S3={isChangeErrorOk:(D)=>{if(!S3.isNodeError(D))return!1;let{code:F}=D;if(F==="ENOSYS")return!0;if(!Pw&&(F==="EINVAL"||F==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!S3.isNodeError(D))return!1;let{code:F}=D;if(F==="EMFILE"||F==="ENFILE"||F==="EAGAIN"||F==="EBUSY"||F==="EACCESS"||F==="EACCES"||F==="EACCS"||F==="EPERM")return!0;return!1},onChangeError:(D)=>{if(!S3.isNodeError(D))throw D;if(S3.isChangeErrorOk(D))return;throw D}},gX=S3;var k3={onError:gX.onChangeError},N0={onError:()=>{return}},Pw=Sw.getuid?!Sw.getuid():!1,tD={isRetriable:gX.isRetriableError};var q6D={attempt:{chmod:h1(Q0(WD.chmod),k3),chown:h1(Q0(WD.chown),k3),close:h1(Q0(WD.close),N0),fsync:h1(Q0(WD.fsync),N0),mkdir:h1(Q0(WD.mkdir),N0),realpath:h1(Q0(WD.realpath),N0),stat:h1(Q0(WD.stat),N0),unlink:h1(Q0(WD.unlink),N0),chmodSync:X1(WD.chmodSync,k3),chownSync:X1(WD.chownSync,k3),closeSync:X1(WD.closeSync,N0),existsSync:X1(WD.existsSync,N0),fsyncSync:X1(WD.fsync,N0),mkdirSync:X1(WD.mkdirSync,N0),realpathSync:X1(WD.realpathSync,N0),statSync:X1(WD.statSync,N0),unlinkSync:X1(WD.unlinkSync,N0)},retry:{close:b1(Q0(WD.close),tD),fsync:b1(Q0(WD.fsync),tD),open:b1(Q0(WD.open),tD),readFile:b1(Q0(WD.readFile),tD),rename:b1(Q0(WD.rename),tD),stat:b1(Q0(WD.stat),tD),write:b1(Q0(WD.write),tD),writeFile:b1(Q0(WD.writeFile),tD),closeSync:u1(WD.closeSync,tD),fsyncSync:u1(WD.fsyncSync,tD),openSync:u1(WD.openSync,tD),readFileSync:u1(WD.readFileSync,tD),renameSync:u1(WD.renameSync,tD),statSync:u1(WD.statSync,tD),writeSync:u1(WD.writeSync,tD),writeFileSync:u1(WD.writeFileSync,tD)}},pD=q6D;import v6 from"process";var kw="utf8",hX=438,vw=511;var yw={},xw=v6.geteuid?v6.geteuid():-1,_w=v6.getegid?v6.getegid():-1;var fw=1000,gw=!!v6.getuid,AUD=v6.getuid?!v6.getuid():!1,bX=128;var hw=(D)=>{return D instanceof Error&&"code"in D};var uX=(D)=>{return typeof D==="string"},Z7=(D)=>{return D===void 0};import z6D from"path";import r4 from"process";import bw from"process";var uw=bw.platform==="linux",U7=bw.platform==="win32";var mX=["SIGHUP","SIGINT","SIGTERM"];if(!U7)mX.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(uw)mX.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var mw=mX;class lw{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=(D)=>{if(this.exited)return;this.exited=!0;for(let F of this.callbacks)F();if(D)if(U7&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))r4.kill(r4.pid,"SIGTERM");else r4.kill(r4.pid,D)},this.hook=()=>{r4.once("exit",()=>this.exit());for(let D of mw)try{r4.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var dw=new lw;var K6D=dw.register,pw=K6D;var y0={store:{},create:(D)=>{let F=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),$=Date.now().toString().slice(-10),B="tmp-",J=`.tmp-${$}${F}`;return`${D}${J}`},get:(D,F,$=!0)=>{let B=y0.truncate(F(D));if(B in y0.store)return y0.get(D,F,$);return y0.store[B]=$,[B,()=>delete y0.store[B]]},purge:(D)=>{if(!y0.store[D])return;delete y0.store[D],pD.attempt.unlink(D)},purgeSync:(D)=>{if(!y0.store[D])return;delete y0.store[D],pD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in y0.store)y0.purgeSync(D)},truncate:(D)=>{let F=z6D.basename(D);if(F.length<=bX)return D;let $=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(F);if(!$)return D;let B=F.length-bX;return`${D.slice(0,-F.length)}${$[1]}${$[2].slice(0,-B)}${$[3]}`}};pw(y0.purgeSyncAll);var v3=y0;function lX(D,F,$=yw){if(uX($))return lX(D,F,{encoding:$});let J={timeout:$.timeout??fw},Q=null,X=null,Y=null;try{let G=pD.attempt.realpathSync(D),H=!!G;D=G||D,[X,Q]=v3.get(D,$.tmpCreate||v3.create,$.tmpPurge!==!1);let W=gw&&Z7($.chown),K=Z7($.mode);if(H&&(W||K)){let V=pD.attempt.statSync(D);if(V){if($={...$},W)$.chown={uid:V.uid,gid:V.gid};if(K)$.mode=V.mode}}if(!H){let V=V6D.dirname(D);pD.attempt.mkdirSync(V,{mode:vw,recursive:!0})}if(Y=pD.retry.openSync(J)(X,"w",$.mode||hX),$.tmpCreated)$.tmpCreated(X);if(uX(F))pD.retry.writeSync(J)(Y,F,0,$.encoding||kw);else if(!Z7(F))pD.retry.writeSync(J)(Y,F,0,F.length,0);if($.fsync!==!1)if($.fsyncWait!==!1)pD.retry.fsyncSync(J)(Y);else pD.attempt.fsync(Y);if(pD.retry.closeSync(J)(Y),Y=null,$.chown&&($.chown.uid!==xw||$.chown.gid!==_w))pD.attempt.chownSync(X,$.chown.uid,$.chown.gid);if($.mode&&$.mode!==hX)pD.attempt.chmodSync(X,$.mode);try{pD.retry.renameSync(J)(X,D)}catch(V){if(!hw(V))throw V;if(V.code!=="ENAMETOOLONG")throw V;pD.retry.renameSync(J)(X,v3.truncate(D))}Q(),X=null}finally{if(Y)pD.attempt.closeSync(Y);if(X)v3.purge(X)}}var Fv=l(fP(),1),$v=l(JS(),1);var tJD=(D,F={})=>{if(typeof D!=="function")throw TypeError(`Expected the first argument to be a function, got \`${typeof D}\``);let{wait:$=0,maxWait:B=Number.POSITIVE_INFINITY,before:J=!1,after:Q=!0}=F;if($<0||B<0)throw RangeError("`wait` and `maxWait` must not be negative.");if(!J&&!Q)throw Error("Both `before` and `after` are false, function wouldn't be called.");let X,Y,G,H=function(...W){let K=this,V=()=>{if(X=void 0,Y)clearTimeout(Y),Y=void 0;if(Q)G=D.apply(K,W)},A=()=>{if(Y=void 0,X)clearTimeout(X),X=void 0;if(Q)G=D.apply(K,W)},Z=J&&!X;if(clearTimeout(X),X=setTimeout(V,$),B>0&&B!==Number.POSITIVE_INFINITY&&!Y)Y=setTimeout(A,B);if(Z)G=D.apply(K,W);return G};return j3(H,D),H.cancel=()=>{if(X)clearTimeout(X),X=void 0;if(Y)clearTimeout(Y),Y=void 0},H},B2=tJD;var l6=l(ak(),1);var cYD=Object.prototype.toString;function sk(D,F,$){if(!D)return!1;if(D.constructor===F)return!0;return cYD.call(D)===$}function rk(D){return sk(D,Uint8Array,"[object Uint8Array]")}function nYD(D){return sk(D,ArrayBuffer,"[object ArrayBuffer]")}function iYD(D){return rk(D)||nYD(D)}function aYD(D){if(!rk(D))throw TypeError(`Expected \`Uint8Array\`, got \`${typeof D}\``)}function oYD(D){if(!iYD(D))throw TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof D}\``)}function L2(D,F){if(D.length===0)return new Uint8Array(0);F??=D.reduce((J,Q)=>J+Q.length,0);let $=new Uint8Array(F),B=0;for(let J of D)aYD(J),$.set(J,B),B+=J.length;return $}var ok={utf8:new globalThis.TextDecoder("utf8")};function M2(D,F="utf8"){return oYD(D),ok[F]??=new globalThis.TextDecoder(F),ok[F].decode(D)}function sYD(D){if(typeof D!=="string")throw TypeError(`Expected \`string\`, got \`${typeof D}\``)}var rYD=new globalThis.TextEncoder;function A$(D){return sYD(D),rYD.encode(D)}var $CD=Array.from({length:256},(D,F)=>F.toString(16).padStart(2,"0"));var D2D=$v.default.default,Dv="aes-256-cbc",KF=()=>Object.create(null),F2D=(D)=>D!==void 0&&D!==null,$2D=(D,F)=>{let $=new Set(["undefined","symbol","function"]),B=typeof F;if($.has(B))throw TypeError(`Setting a value of type \`${B}\` for key \`${D}\` is not allowed as it's not supported by JSON`)},Z$="__internal__",N2=`${Z$}.migrations.version`;class U${path;events;#$;#F;#D;#J={};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=fX(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 Q=new Fv.Ajv2020({allErrors:!0,useDefaults:!0,...F.ajvOptions});D2D(Q);let X={...F.rootSchema,type:"object",properties:F.schema};this.#$=Q.compile(X);for(let[Y,G]of Object.entries(F.schema??{}))if(G?.default)this.#J[Y]=G.default}if(F.defaults)this.#J={...this.#J,...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=ek.resolve(F.cwd,`${F.configName??"config"}${$}`);let B=this.store,J=Object.assign(KF(),F.defaults,B);if(F.migrations){if(!F.projectVersion)throw Error("Please specify the `projectVersion` option.");this._migrate(F.migrations,F.projectVersion,F.beforeEachMigration)}this._validate(J);try{eYD.deepEqual(B,J)}catch{this.store=J}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 ${Z$} key, as it's used to manage this module internal operations.`);let{store:$}=this,B=(J,Q)=>{if($2D(J,Q),this.#D.accessPropertiesByDotNotation)yX($,J,Q);else $[J]=Q};if(typeof D==="object"){let J=D;for(let[Q,X]of Object.entries(J))B(Q,X)}else B(D,F);this.store=$}has(D){if(this.#D.accessPropertiesByDotNotation)return jw(this.store,D);return D in this.store}reset(...D){for(let F of D)if(F2D(this.#J[F]))this.set(F,this.#J[F])}delete(D){let{store:F}=this;if(this.#D.accessPropertiesByDotNotation)Tw(F,D);else delete F[D];this.store=F}clear(){this.store=KF();for(let D of Object.keys(this.#J))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=m6.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:M2(D);try{let F=D.slice(0,16),$=E5.pbkdf2Sync(this.#F,F.toString(),1e4,32,"sha512"),B=E5.createDecipheriv(Dv,$,F),J=D.slice(17),Q=typeof J==="string"?A$(J):J;return M2(L2([B.update(Q),B.final()]))}catch{}return D.toString()}_handleChange(D,F){let $=D(),B=()=>{let J=$,Q=D();if(tYD(Q,J))return;$=Q,F.call(this,Q,J)};return this.events.addEventListener("change",B),()=>{this.events.removeEventListener("change",B)}}_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:B,message:J=""})=>`\`${B.slice(1)}\` ${J}`);throw Error("Config schema violation: "+$.join("; "))}_ensureDirectory(){m6.mkdirSync(ek.dirname(this.path),{recursive:!0})}_write(D){let F=this._serialize(D);if(this.#F){let $=E5.randomBytes(16),B=E5.pbkdf2Sync(this.#F,$.toString(),1e4,32,"sha512"),J=E5.createCipheriv(Dv,B,$);F=L2([$,A$(":"),J.update(A$(F)),J.final()])}if(tk.env.SNAP)m6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});else try{lX(this.path,F,{mode:this.#D.configFileMode})}catch($){if($?.code==="EXDEV"){m6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});return}throw $}}_watch(){if(this._ensureDirectory(),!m6.existsSync(this.path))this._write(KF());if(tk.platform==="win32")m6.watch(this.path,{persistent:!1},B2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:100}));else m6.watchFile(this.path,{persistent:!1},B2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:5000}))}_migrate(D,F,$){let B=this._get(N2,"0.0.0"),J=Object.keys(D).filter((X)=>this._shouldPerformMigration(X,B,F)),Q={...this.store};for(let X of J)try{if($)$(this,{fromVersion:B,toVersion:X,finalVersion:F,versions:J});let Y=D[X];Y?.(this),this._set(N2,X),B=X,Q={...this.store}}catch(Y){throw this.store=Q,Error(`Something went wrong during the migration! Changes applied to the store until this failed migration will be restored. ${Y}`)}if(this._isVersionInRangeFormat(B)||!l6.default.eq(B,F))this._set(N2,F)}_containsReservedKey(D){if(typeof D==="object"){if(Object.keys(D)[0]===Z$)return!0}if(typeof D!=="string")return!1;if(this.#D.accessPropertiesByDotNotation){if(D.startsWith(`${Z$}.`))return!0;return!1}return!1}_isVersionInRangeFormat(D){return l6.default.clean(D)===null}_shouldPerformMigration(D,F,$){if(this._isVersionInRangeFormat(D)){if(F!=="0.0.0"&&l6.default.satisfies(F,D))return!1;return l6.default.satisfies($,D)}if(l6.default.lte(D,F))return!1;if(l6.default.gt(D,$))return!1;return!0}_get(D,F){return ww(this.store,D,F)}_set(D,F){let{store:$}=this;yX($,D,F),this.store=$}}var L1={};d2(L1,{void:()=>u2D,util:()=>$D,unknown:()=>h2D,union:()=>p2D,undefined:()=>_2D,tuple:()=>i2D,transformer:()=>BGD,symbol:()=>x2D,string:()=>Ev,strictObject:()=>d2D,setErrorMap:()=>Q2D,set:()=>s2D,record:()=>a2D,quotelessJson:()=>B2D,promise:()=>$GD,preprocess:()=>XGD,pipeline:()=>YGD,ostring:()=>GGD,optional:()=>JGD,onumber:()=>HGD,oboolean:()=>WGD,objectUtil:()=>C2,object:()=>l2D,number:()=>qv,nullable:()=>QGD,null:()=>f2D,never:()=>b2D,nativeEnum:()=>FGD,nan:()=>k2D,map:()=>o2D,makeIssue:()=>q5,literal:()=>e2D,lazy:()=>t2D,late:()=>P2D,isValid:()=>J6,isDirty:()=>M$,isAsync:()=>VF,isAborted:()=>L$,intersection:()=>n2D,instanceof:()=>S2D,getParsedType:()=>c1,getErrorMap:()=>zF,function:()=>r2D,enum:()=>DGD,effect:()=>BGD,discriminatedUnion:()=>c2D,defaultErrorMap:()=>E8,datetimeRegex:()=>Gv,date:()=>y2D,custom:()=>Wv,coerce:()=>EGD,boolean:()=>Kv,bigint:()=>v2D,array:()=>m2D,any:()=>g2D,addIssueToContext:()=>j,ZodVoid:()=>z5,ZodUnknown:()=>Q6,ZodUnion:()=>NF,ZodUndefined:()=>LF,ZodType:()=>e,ZodTuple:()=>i1,ZodTransformer:()=>U1,ZodSymbol:()=>K5,ZodString:()=>z1,ZodSet:()=>n6,ZodSchema:()=>e,ZodRecord:()=>V5,ZodReadonly:()=>IF,ZodPromise:()=>i6,ZodPipeline:()=>U5,ZodParsedType:()=>w,ZodOptional:()=>A1,ZodObject:()=>ID,ZodNumber:()=>X6,ZodNullable:()=>K8,ZodNull:()=>MF,ZodNever:()=>n1,ZodNativeEnum:()=>TF,ZodNaN:()=>Z5,ZodMap:()=>A5,ZodLiteral:()=>wF,ZodLazy:()=>RF,ZodIssueCode:()=>C,ZodIntersection:()=>CF,ZodFunction:()=>ZF,ZodFirstPartyTypeKind:()=>h,ZodError:()=>O0,ZodEnum:()=>G6,ZodEffects:()=>U1,ZodDiscriminatedUnion:()=>N$,ZodDefault:()=>jF,ZodDate:()=>p6,ZodCatch:()=>OF,ZodBranded:()=>C$,ZodBoolean:()=>UF,ZodBigInt:()=>Y6,ZodArray:()=>V1,ZodAny:()=>c6,Schema:()=>e,ParseStatus:()=>D0,OK:()=>H0,NEVER:()=>qGD,INVALID:()=>g,EMPTY_PATH:()=>X2D,DIRTY:()=>d6,BRAND:()=>I2D});var $D;(function(D){D.assertEqual=(J)=>{};function F(J){}D.assertIs=F;function $(J){throw Error()}D.assertNever=$,D.arrayToEnum=(J)=>{let Q={};for(let X of J)Q[X]=X;return Q},D.getValidEnumValues=(J)=>{let Q=D.objectKeys(J).filter((Y)=>typeof J[J[Y]]!=="number"),X={};for(let Y of Q)X[Y]=J[Y];return D.objectValues(X)},D.objectValues=(J)=>{return D.objectKeys(J).map(function(Q){return J[Q]})},D.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let Q=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))Q.push(X);return Q},D.find=(J,Q)=>{for(let X of J)if(Q(X))return X;return},D.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function B(J,Q=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(Q)}D.joinValues=B,D.jsonStringifyReplacer=(J,Q)=>{if(typeof Q==="bigint")return Q.toString();return Q}})($D||($D={}));var C2;(function(D){D.mergeShapes=(F,$)=>{return{...F,...$}}})(C2||(C2={}));var w=$D.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),c1=(D)=>{switch(typeof D){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(D)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":if(Array.isArray(D))return w.array;if(D===null)return w.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return w.promise;if(typeof Map<"u"&&D instanceof Map)return w.map;if(typeof Set<"u"&&D instanceof Set)return w.set;if(typeof Date<"u"&&D instanceof Date)return w.date;return w.object;default:return w.unknown}};var C=$D.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"]),B2D=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")};class O0 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(J){return J.message},$={_errors:[]},B=(J)=>{for(let Q of J.issues)if(Q.code==="invalid_union")Q.unionErrors.map(B);else if(Q.code==="invalid_return_type")B(Q.returnTypeError);else if(Q.code==="invalid_arguments")B(Q.argumentsError);else if(Q.path.length===0)$._errors.push(F(Q));else{let X=$,Y=0;while(Y<Q.path.length){let G=Q.path[Y];if(Y!==Q.path.length-1)X[G]=X[G]||{_errors:[]};else X[G]=X[G]||{_errors:[]},X[G]._errors.push(F(Q));X=X[G],Y++}}};return B(this),$}static assert(D){if(!(D instanceof O0))throw Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,$D.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(D=(F)=>F.message){let F={},$=[];for(let B of this.issues)if(B.path.length>0){let J=B.path[0];F[J]=F[J]||[],F[J].push(D(B))}else $.push(D(B));return{formErrors:$,fieldErrors:F}}get formErrors(){return this.flatten()}}O0.create=(D)=>{return new O0(D)};var J2D=(D,F)=>{let $;switch(D.code){case C.invalid_type:if(D.received===w.undefined)$="Required";else $=`Expected ${D.expected}, received ${D.received}`;break;case C.invalid_literal:$=`Invalid literal value, expected ${JSON.stringify(D.expected,$D.jsonStringifyReplacer)}`;break;case C.unrecognized_keys:$=`Unrecognized key(s) in object: ${$D.joinValues(D.keys,", ")}`;break;case C.invalid_union:$="Invalid input";break;case C.invalid_union_discriminator:$=`Invalid discriminator value. Expected ${$D.joinValues(D.options)}`;break;case C.invalid_enum_value:$=`Invalid enum value. Expected ${$D.joinValues(D.options)}, received '${D.received}'`;break;case C.invalid_arguments:$="Invalid function arguments";break;case C.invalid_return_type:$="Invalid function return type";break;case C.invalid_date:$="Invalid date";break;case C.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 $D.assertNever(D.validation);else if(D.validation!=="regex")$=`Invalid ${D.validation}`;else $="Invalid";break;case C.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 C.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 C.custom:$="Invalid input";break;case C.invalid_intersection_types:$="Intersection results could not be merged";break;case C.not_multiple_of:$=`Number must be a multiple of ${D.multipleOf}`;break;case C.not_finite:$="Number must be finite";break;default:$=F.defaultError,$D.assertNever(D)}return{message:$}},E8=J2D;var Bv=E8;function Q2D(D){Bv=D}function zF(){return Bv}var q5=(D)=>{let{data:F,path:$,errorMaps:B,issueData:J}=D,Q=[...$,...J.path||[]],X={...J,path:Q};if(J.message!==void 0)return{...J,path:Q,message:J.message};let Y="",G=B.filter((H)=>!!H).slice().reverse();for(let H of G)Y=H(X,{data:F,defaultError:Y}).message;return{...J,path:Q,message:Y}},X2D=[];function j(D,F){let $=zF(),B=q5({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,$,$===E8?void 0:E8].filter((J)=>!!J)});D.common.issues.push(B)}class D0{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 B of F){if(B.status==="aborted")return g;if(B.status==="dirty")D.dirty();$.push(B.value)}return{status:D.value,value:$}}static async mergeObjectAsync(D,F){let $=[];for(let B of F){let J=await B.key,Q=await B.value;$.push({key:J,value:Q})}return D0.mergeObjectSync(D,$)}static mergeObjectSync(D,F){let $={};for(let B of F){let{key:J,value:Q}=B;if(J.status==="aborted")return g;if(Q.status==="aborted")return g;if(J.status==="dirty")D.dirty();if(Q.status==="dirty")D.dirty();if(J.value!=="__proto__"&&(typeof Q.value<"u"||B.alwaysSet))$[J.value]=Q.value}return{status:D.value,value:$}}}var g=Object.freeze({status:"aborted"}),d6=(D)=>({status:"dirty",value:D}),H0=(D)=>({status:"valid",value:D}),L$=(D)=>D.status==="aborted",M$=(D)=>D.status==="dirty",J6=(D)=>D.status==="valid",VF=(D)=>typeof Promise<"u"&&D instanceof Promise;var x;(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(x||(x={}));class Z1{constructor(D,F,$,B){this._cachedPath=[],this.parent=D,this.data=F,this._path=$,this._key=B}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var Jv=(D,F)=>{if(J6(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 O0(D.common.issues);return this._error=$,this._error}}}};function o(D){if(!D)return{};let{errorMap:F,invalid_type_error:$,required_error:B,description:J}=D;if(F&&($||B))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(F)return{errorMap:F,description:J};return{errorMap:(X,Y)=>{let{message:G}=D;if(X.code==="invalid_enum_value")return{message:G??Y.defaultError};if(typeof Y.data>"u")return{message:G??B??Y.defaultError};if(X.code!=="invalid_type")return{message:Y.defaultError};return{message:G??$??Y.defaultError}},description:J}}class e{get description(){return this._def.description}_getType(D){return c1(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:c1(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new D0,ctx:{common:D.parent.common,data:D.data,parsedType:c1(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(VF(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:c1(D)},B=this._parseSync({data:D,path:$.path,parent:$});return Jv($,B)}"~validate"(D){let F={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:c1(D)};if(!this["~standard"].async)try{let $=this._parseSync({data:D,path:[],parent:F});return J6($)?{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(($)=>J6($)?{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:c1(D)},B=this._parse({data:D,path:$.path,parent:$}),J=await(VF(B)?B:Promise.resolve(B));return Jv($,J)}refine(D,F){let $=(B)=>{if(typeof F==="string"||typeof F>"u")return{message:F};else if(typeof F==="function")return F(B);else return F};return this._refinement((B,J)=>{let Q=D(B),X=()=>J.addIssue({code:C.custom,...$(B)});if(typeof Promise<"u"&&Q instanceof Promise)return Q.then((Y)=>{if(!Y)return X(),!1;else return!0});if(!Q)return X(),!1;else return!0})}refinement(D,F){return this._refinement(($,B)=>{if(!D($))return B.addIssue(typeof F==="function"?F($,B):F),!1;else return!0})}_refinement(D){return new U1({schema:this,typeName:h.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 A1.create(this,this._def)}nullable(){return K8.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return V1.create(this)}promise(){return i6.create(this,this._def)}or(D){return NF.create([this,D],this._def)}and(D){return CF.create(this,D,this._def)}transform(D){return new U1({...o(this._def),schema:this,typeName:h.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new jF({...o(this._def),innerType:this,defaultValue:F,typeName:h.ZodDefault})}brand(){return new C$({typeName:h.ZodBranded,type:this,...o(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new OF({...o(this._def),innerType:this,catchValue:F,typeName:h.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return U5.create(this,D)}readonly(){return IF.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var Y2D=/^c[^\s-]{8,}$/i,G2D=/^[0-9a-z]+$/,H2D=/^[0-9A-HJKMNP-TV-Z]{26}$/i,W2D=/^[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,E2D=/^[a-z0-9_-]{21}$/i,q2D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,K2D=/^[-+]?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)?)??$/,z2D=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,V2D="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",R2,A2D=/^(?:(?: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])$/,Z2D=/^(?:(?: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])$/,U2D=/^(([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]))$/,L2D=/^(([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])$/,M2D=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,N2D=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Xv="((\\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])))",C2D=new RegExp(`^${Xv}$`);function Yv(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 R2D(D){return new RegExp(`^${Yv(D)}$`)}function Gv(D){let F=`${Xv}T${Yv(D)}`,$=[];if($.push(D.local?"Z?":"Z"),D.offset)$.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${$.join("|")})`,new RegExp(`^${F}$`)}function w2D(D,F){if((F==="v4"||!F)&&A2D.test(D))return!0;if((F==="v6"||!F)&&U2D.test(D))return!0;return!1}function T2D(D,F){if(!q2D.test(D))return!1;try{let[$]=D.split(".");if(!$)return!1;let B=$.replace(/-/g,"+").replace(/_/g,"/").padEnd($.length+(4-$.length%4)%4,"="),J=JSON.parse(atob(B));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(F&&J.alg!==F)return!1;return!0}catch{return!1}}function j2D(D,F){if((F==="v4"||!F)&&Z2D.test(D))return!0;if((F==="v6"||!F)&&L2D.test(D))return!0;return!1}class z1 extends e{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==w.string){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.string,received:J.parsedType}),g}let $=new D0,B=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(D.data.length<J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),$.dirty()}else if(J.kind==="max"){if(D.data.length>J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),$.dirty()}else if(J.kind==="length"){let Q=D.data.length>J.value,X=D.data.length<J.value;if(Q||X){if(B=this._getOrReturnCtx(D,B),Q)j(B,{code:C.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});else if(X)j(B,{code:C.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});$.dirty()}}else if(J.kind==="email"){if(!z2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"email",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="emoji"){if(!R2)R2=new RegExp(V2D,"u");if(!R2.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"emoji",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="uuid"){if(!W2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"uuid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="nanoid"){if(!E2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"nanoid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid"){if(!Y2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"cuid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid2"){if(!G2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"cuid2",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ulid"){if(!H2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"ulid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="url")try{new URL(D.data)}catch{B=this._getOrReturnCtx(D,B),j(B,{validation:"url",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="regex"){if(J.regex.lastIndex=0,!J.regex.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"regex",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="trim")D.data=D.data.trim();else if(J.kind==="includes"){if(!D.data.includes(J.value,J.position))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{includes:J.value,position:J.position},message:J.message}),$.dirty()}else if(J.kind==="toLowerCase")D.data=D.data.toLowerCase();else if(J.kind==="toUpperCase")D.data=D.data.toUpperCase();else if(J.kind==="startsWith"){if(!D.data.startsWith(J.value))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{startsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="endsWith"){if(!D.data.endsWith(J.value))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{endsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="datetime"){if(!Gv(J).test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"datetime",message:J.message}),$.dirty()}else if(J.kind==="date"){if(!C2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"date",message:J.message}),$.dirty()}else if(J.kind==="time"){if(!R2D(J).test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"time",message:J.message}),$.dirty()}else if(J.kind==="duration"){if(!K2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"duration",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ip"){if(!w2D(D.data,J.version))B=this._getOrReturnCtx(D,B),j(B,{validation:"ip",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="jwt"){if(!T2D(D.data,J.alg))B=this._getOrReturnCtx(D,B),j(B,{validation:"jwt",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cidr"){if(!j2D(D.data,J.version))B=this._getOrReturnCtx(D,B),j(B,{validation:"cidr",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64"){if(!M2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"base64",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64url"){if(!N2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"base64url",code:C.invalid_string,message:J.message}),$.dirty()}else $D.assertNever(J);return{status:$.value,value:D.data}}_regex(D,F,$){return this.refinement((B)=>D.test(B),{validation:F,code:C.invalid_string,...x.errToObj($)})}_addCheck(D){return new z1({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",...x.errToObj(D)})}url(D){return this._addCheck({kind:"url",...x.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",...x.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",...x.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",...x.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",...x.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",...x.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",...x.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",...x.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",...x.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",...x.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",...x.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",...x.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,...x.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,...x.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",...x.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,...x.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,...x.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,...x.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,...x.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,...x.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,...x.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,...x.errToObj(F)})}nonempty(D){return this.min(1,x.errToObj(D))}trim(){return new z1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new z1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new z1({...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}}z1.create=(D)=>{return new z1({checks:[],typeName:h.ZodString,coerce:D?.coerce??!1,...o(D)})};function O2D(D,F){let $=(D.toString().split(".")[1]||"").length,B=(F.toString().split(".")[1]||"").length,J=$>B?$:B,Q=Number.parseInt(D.toFixed(J).replace(".","")),X=Number.parseInt(F.toFixed(J).replace(".",""));return Q%X/10**J}class X6 extends e{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)!==w.number){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.number,received:J.parsedType}),g}let $=void 0,B=new D0;for(let J of this._def.checks)if(J.kind==="int"){if(!$D.isInteger(D.data))$=this._getOrReturnCtx(D,$),j($,{code:C.invalid_type,expected:"integer",received:"float",message:J.message}),B.dirty()}else if(J.kind==="min"){if(J.inclusive?D.data<J.value:D.data<=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_small,minimum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="max"){if(J.inclusive?D.data>J.value:D.data>=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(O2D(D.data,J.value)!==0)$=this._getOrReturnCtx(D,$),j($,{code:C.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(D.data))$=this._getOrReturnCtx(D,$),j($,{code:C.not_finite,message:J.message}),B.dirty()}else $D.assertNever(J);return{status:B.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,x.toString(F))}gt(D,F){return this.setLimit("min",D,!1,x.toString(F))}lte(D,F){return this.setLimit("max",D,!0,x.toString(F))}lt(D,F){return this.setLimit("max",D,!1,x.toString(F))}setLimit(D,F,$,B){return new X6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:x.toString(B)}]})}_addCheck(D){return new X6({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:x.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:x.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:x.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.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"&&$D.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)}}X6.create=(D)=>{return new X6({checks:[],typeName:h.ZodNumber,coerce:D?.coerce||!1,...o(D)})};class Y6 extends e{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)!==w.bigint)return this._getInvalidInput(D);let $=void 0,B=new D0;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?D.data<J.value:D.data<=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_small,type:"bigint",minimum:J.value,inclusive:J.inclusive,message:J.message}),B.dirty()}else if(J.kind==="max"){if(J.inclusive?D.data>J.value:D.data>=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(D.data%J.value!==BigInt(0))$=this._getOrReturnCtx(D,$),j($,{code:C.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else $D.assertNever(J);return{status:B.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return j(F,{code:C.invalid_type,expected:w.bigint,received:F.parsedType}),g}gte(D,F){return this.setLimit("min",D,!0,x.toString(F))}gt(D,F){return this.setLimit("min",D,!1,x.toString(F))}lte(D,F){return this.setLimit("max",D,!0,x.toString(F))}lt(D,F){return this.setLimit("max",D,!1,x.toString(F))}setLimit(D,F,$,B){return new Y6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:x.toString(B)}]})}_addCheck(D){return new Y6({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:x.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}}Y6.create=(D)=>{return new Y6({checks:[],typeName:h.ZodBigInt,coerce:D?.coerce??!1,...o(D)})};class UF extends e{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==w.boolean){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.boolean,received:$.parsedType}),g}return H0(D.data)}}UF.create=(D)=>{return new UF({typeName:h.ZodBoolean,coerce:D?.coerce||!1,...o(D)})};class p6 extends e{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==w.date){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.date,received:J.parsedType}),g}if(Number.isNaN(D.data.getTime())){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_date}),g}let $=new D0,B=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(D.data.getTime()<J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_small,message:J.message,inclusive:!0,exact:!1,minimum:J.value,type:"date"}),$.dirty()}else if(J.kind==="max"){if(D.data.getTime()>J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),$.dirty()}else $D.assertNever(J);return{status:$.value,value:new Date(D.data.getTime())}}_addCheck(D){return new p6({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:x.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:x.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}}p6.create=(D)=>{return new p6({checks:[],coerce:D?.coerce||!1,typeName:h.ZodDate,...o(D)})};class K5 extends e{_parse(D){if(this._getType(D)!==w.symbol){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.symbol,received:$.parsedType}),g}return H0(D.data)}}K5.create=(D)=>{return new K5({typeName:h.ZodSymbol,...o(D)})};class LF extends e{_parse(D){if(this._getType(D)!==w.undefined){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.undefined,received:$.parsedType}),g}return H0(D.data)}}LF.create=(D)=>{return new LF({typeName:h.ZodUndefined,...o(D)})};class MF extends e{_parse(D){if(this._getType(D)!==w.null){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.null,received:$.parsedType}),g}return H0(D.data)}}MF.create=(D)=>{return new MF({typeName:h.ZodNull,...o(D)})};class c6 extends e{constructor(){super(...arguments);this._any=!0}_parse(D){return H0(D.data)}}c6.create=(D)=>{return new c6({typeName:h.ZodAny,...o(D)})};class Q6 extends e{constructor(){super(...arguments);this._unknown=!0}_parse(D){return H0(D.data)}}Q6.create=(D)=>{return new Q6({typeName:h.ZodUnknown,...o(D)})};class n1 extends e{_parse(D){let F=this._getOrReturnCtx(D);return j(F,{code:C.invalid_type,expected:w.never,received:F.parsedType}),g}}n1.create=(D)=>{return new n1({typeName:h.ZodNever,...o(D)})};class z5 extends e{_parse(D){if(this._getType(D)!==w.undefined){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.void,received:$.parsedType}),g}return H0(D.data)}}z5.create=(D)=>{return new z5({typeName:h.ZodVoid,...o(D)})};class V1 extends e{_parse(D){let{ctx:F,status:$}=this._processInputParams(D),B=this._def;if(F.parsedType!==w.array)return j(F,{code:C.invalid_type,expected:w.array,received:F.parsedType}),g;if(B.exactLength!==null){let Q=F.data.length>B.exactLength.value,X=F.data.length<B.exactLength.value;if(Q||X)j(F,{code:Q?C.too_big:C.too_small,minimum:X?B.exactLength.value:void 0,maximum:Q?B.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:B.exactLength.message}),$.dirty()}if(B.minLength!==null){if(F.data.length<B.minLength.value)j(F,{code:C.too_small,minimum:B.minLength.value,type:"array",inclusive:!0,exact:!1,message:B.minLength.message}),$.dirty()}if(B.maxLength!==null){if(F.data.length>B.maxLength.value)j(F,{code:C.too_big,maximum:B.maxLength.value,type:"array",inclusive:!0,exact:!1,message:B.maxLength.message}),$.dirty()}if(F.common.async)return Promise.all([...F.data].map((Q,X)=>{return B.type._parseAsync(new Z1(F,Q,F.path,X))})).then((Q)=>{return D0.mergeArray($,Q)});let J=[...F.data].map((Q,X)=>{return B.type._parseSync(new Z1(F,Q,F.path,X))});return D0.mergeArray($,J)}get element(){return this._def.type}min(D,F){return new V1({...this._def,minLength:{value:D,message:x.toString(F)}})}max(D,F){return new V1({...this._def,maxLength:{value:D,message:x.toString(F)}})}length(D,F){return new V1({...this._def,exactLength:{value:D,message:x.toString(F)}})}nonempty(D){return this.min(1,D)}}V1.create=(D,F)=>{return new V1({type:D,minLength:null,maxLength:null,exactLength:null,typeName:h.ZodArray,...o(F)})};function AF(D){if(D instanceof ID){let F={};for(let $ in D.shape){let B=D.shape[$];F[$]=A1.create(AF(B))}return new ID({...D._def,shape:()=>F})}else if(D instanceof V1)return new V1({...D._def,type:AF(D.element)});else if(D instanceof A1)return A1.create(AF(D.unwrap()));else if(D instanceof K8)return K8.create(AF(D.unwrap()));else if(D instanceof i1)return i1.create(D.items.map((F)=>AF(F)));else return D}class ID extends e{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=$D.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==w.object){let G=this._getOrReturnCtx(D);return j(G,{code:C.invalid_type,expected:w.object,received:G.parsedType}),g}let{status:$,ctx:B}=this._processInputParams(D),{shape:J,keys:Q}=this._getCached(),X=[];if(!(this._def.catchall instanceof n1&&this._def.unknownKeys==="strip")){for(let G in B.data)if(!Q.includes(G))X.push(G)}let Y=[];for(let G of Q){let H=J[G],W=B.data[G];Y.push({key:{status:"valid",value:G},value:H._parse(new Z1(B,W,B.path,G)),alwaysSet:G in B.data})}if(this._def.catchall instanceof n1){let G=this._def.unknownKeys;if(G==="passthrough")for(let H of X)Y.push({key:{status:"valid",value:H},value:{status:"valid",value:B.data[H]}});else if(G==="strict"){if(X.length>0)j(B,{code:C.unrecognized_keys,keys:X}),$.dirty()}else if(G==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let G=this._def.catchall;for(let H of X){let W=B.data[H];Y.push({key:{status:"valid",value:H},value:G._parse(new Z1(B,W,B.path,H)),alwaysSet:H in B.data})}}if(B.common.async)return Promise.resolve().then(async()=>{let G=[];for(let H of Y){let W=await H.key,K=await H.value;G.push({key:W,value:K,alwaysSet:H.alwaysSet})}return G}).then((G)=>{return D0.mergeObjectSync($,G)});else return D0.mergeObjectSync($,Y)}get shape(){return this._def.shape()}strict(D){return x.errToObj,new ID({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,$)=>{let B=this._def.errorMap?.(F,$).message??$.defaultError;if(F.code==="unrecognized_keys")return{message:x.errToObj(D).message??B};return{message:B}}}:{}})}strip(){return new ID({...this._def,unknownKeys:"strip"})}passthrough(){return new ID({...this._def,unknownKeys:"passthrough"})}extend(D){return new ID({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new ID({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:h.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new ID({...this._def,catchall:D})}pick(D){let F={};for(let $ of $D.objectKeys(D))if(D[$]&&this.shape[$])F[$]=this.shape[$];return new ID({...this._def,shape:()=>F})}omit(D){let F={};for(let $ of $D.objectKeys(this.shape))if(!D[$])F[$]=this.shape[$];return new ID({...this._def,shape:()=>F})}deepPartial(){return AF(this)}partial(D){let F={};for(let $ of $D.objectKeys(this.shape)){let B=this.shape[$];if(D&&!D[$])F[$]=B;else F[$]=B.optional()}return new ID({...this._def,shape:()=>F})}required(D){let F={};for(let $ of $D.objectKeys(this.shape))if(D&&!D[$])F[$]=this.shape[$];else{let J=this.shape[$];while(J instanceof A1)J=J._def.innerType;F[$]=J}return new ID({...this._def,shape:()=>F})}keyof(){return Hv($D.objectKeys(this.shape))}}ID.create=(D,F)=>{return new ID({shape:()=>D,unknownKeys:"strip",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};ID.strictCreate=(D,F)=>{return new ID({shape:()=>D,unknownKeys:"strict",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};ID.lazycreate=(D,F)=>{return new ID({shape:D,unknownKeys:"strip",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};class NF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$=this._def.options;function B(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return F.common.issues.push(...X.ctx.common.issues),X.result;let Q=J.map((X)=>new O0(X.ctx.common.issues));return j(F,{code:C.invalid_union,unionErrors:Q}),g}if(F.common.async)return Promise.all($.map(async(J)=>{let Q={...F,common:{...F.common,issues:[]},parent:null};return{result:await J._parseAsync({data:F.data,path:F.path,parent:Q}),ctx:Q}})).then(B);else{let J=void 0,Q=[];for(let Y of $){let G={...F,common:{...F.common,issues:[]},parent:null},H=Y._parseSync({data:F.data,path:F.path,parent:G});if(H.status==="valid")return H;else if(H.status==="dirty"&&!J)J={result:H,ctx:G};if(G.common.issues.length)Q.push(G.common.issues)}if(J)return F.common.issues.push(...J.ctx.common.issues),J.result;let X=Q.map((Y)=>new O0(Y));return j(F,{code:C.invalid_union,unionErrors:X}),g}}get options(){return this._def.options}}NF.create=(D,F)=>{return new NF({options:D,typeName:h.ZodUnion,...o(F)})};var q8=(D)=>{if(D instanceof RF)return q8(D.schema);else if(D instanceof U1)return q8(D.innerType());else if(D instanceof wF)return[D.value];else if(D instanceof G6)return D.options;else if(D instanceof TF)return $D.objectValues(D.enum);else if(D instanceof jF)return q8(D._def.innerType);else if(D instanceof LF)return[void 0];else if(D instanceof MF)return[null];else if(D instanceof A1)return[void 0,...q8(D.unwrap())];else if(D instanceof K8)return[null,...q8(D.unwrap())];else if(D instanceof C$)return q8(D.unwrap());else if(D instanceof IF)return q8(D.unwrap());else if(D instanceof OF)return q8(D._def.innerType);else return[]};class N$ extends e{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.object)return j(F,{code:C.invalid_type,expected:w.object,received:F.parsedType}),g;let $=this.discriminator,B=F.data[$],J=this.optionsMap.get(B);if(!J)return j(F,{code:C.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[$]}),g;if(F.common.async)return J._parseAsync({data:F.data,path:F.path,parent:F});else return J._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 B=new Map;for(let J of F){let Q=q8(J.shape[D]);if(!Q.length)throw Error(`A discriminator value for key \`${D}\` could not be extracted from all schema options`);for(let X of Q){if(B.has(X))throw Error(`Discriminator property ${String(D)} has duplicate value ${String(X)}`);B.set(X,J)}}return new N$({typeName:h.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:B,...o($)})}}function w2(D,F){let $=c1(D),B=c1(F);if(D===F)return{valid:!0,data:D};else if($===w.object&&B===w.object){let J=$D.objectKeys(F),Q=$D.objectKeys(D).filter((Y)=>J.indexOf(Y)!==-1),X={...D,...F};for(let Y of Q){let G=w2(D[Y],F[Y]);if(!G.valid)return{valid:!1};X[Y]=G.data}return{valid:!0,data:X}}else if($===w.array&&B===w.array){if(D.length!==F.length)return{valid:!1};let J=[];for(let Q=0;Q<D.length;Q++){let X=D[Q],Y=F[Q],G=w2(X,Y);if(!G.valid)return{valid:!1};J.push(G.data)}return{valid:!0,data:J}}else if($===w.date&&B===w.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}class CF extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=(J,Q)=>{if(L$(J)||L$(Q))return g;let X=w2(J.value,Q.value);if(!X.valid)return j($,{code:C.invalid_intersection_types}),g;if(M$(J)||M$(Q))F.dirty();return{status:F.value,value:X.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(([J,Q])=>B(J,Q));else return B(this._def.left._parseSync({data:$.data,path:$.path,parent:$}),this._def.right._parseSync({data:$.data,path:$.path,parent:$}))}}CF.create=(D,F,$)=>{return new CF({left:D,right:F,typeName:h.ZodIntersection,...o($)})};class i1 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.array)return j($,{code:C.invalid_type,expected:w.array,received:$.parsedType}),g;if($.data.length<this._def.items.length)return j($,{code:C.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;if(!this._def.rest&&$.data.length>this._def.items.length)j($,{code:C.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),F.dirty();let J=[...$.data].map((Q,X)=>{let Y=this._def.items[X]||this._def.rest;if(!Y)return null;return Y._parse(new Z1($,Q,$.path,X))}).filter((Q)=>!!Q);if($.common.async)return Promise.all(J).then((Q)=>{return D0.mergeArray(F,Q)});else return D0.mergeArray(F,J)}get items(){return this._def.items}rest(D){return new i1({...this._def,rest:D})}}i1.create=(D,F)=>{if(!Array.isArray(D))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new i1({items:D,typeName:h.ZodTuple,rest:null,...o(F)})};class V5 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.object)return j($,{code:C.invalid_type,expected:w.object,received:$.parsedType}),g;let B=[],J=this._def.keyType,Q=this._def.valueType;for(let X in $.data)B.push({key:J._parse(new Z1($,X,$.path,X)),value:Q._parse(new Z1($,$.data[X],$.path,X)),alwaysSet:X in $.data});if($.common.async)return D0.mergeObjectAsync(F,B);else return D0.mergeObjectSync(F,B)}get element(){return this._def.valueType}static create(D,F,$){if(F instanceof e)return new V5({keyType:D,valueType:F,typeName:h.ZodRecord,...o($)});return new V5({keyType:z1.create(),valueType:D,typeName:h.ZodRecord,...o(F)})}}class A5 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.map)return j($,{code:C.invalid_type,expected:w.map,received:$.parsedType}),g;let B=this._def.keyType,J=this._def.valueType,Q=[...$.data.entries()].map(([X,Y],G)=>{return{key:B._parse(new Z1($,X,$.path,[G,"key"])),value:J._parse(new Z1($,Y,$.path,[G,"value"]))}});if($.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let Y of Q){let G=await Y.key,H=await Y.value;if(G.status==="aborted"||H.status==="aborted")return g;if(G.status==="dirty"||H.status==="dirty")F.dirty();X.set(G.value,H.value)}return{status:F.value,value:X}})}else{let X=new Map;for(let Y of Q){let{key:G,value:H}=Y;if(G.status==="aborted"||H.status==="aborted")return g;if(G.status==="dirty"||H.status==="dirty")F.dirty();X.set(G.value,H.value)}return{status:F.value,value:X}}}}A5.create=(D,F,$)=>{return new A5({valueType:F,keyType:D,typeName:h.ZodMap,...o($)})};class n6 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.set)return j($,{code:C.invalid_type,expected:w.set,received:$.parsedType}),g;let B=this._def;if(B.minSize!==null){if($.data.size<B.minSize.value)j($,{code:C.too_small,minimum:B.minSize.value,type:"set",inclusive:!0,exact:!1,message:B.minSize.message}),F.dirty()}if(B.maxSize!==null){if($.data.size>B.maxSize.value)j($,{code:C.too_big,maximum:B.maxSize.value,type:"set",inclusive:!0,exact:!1,message:B.maxSize.message}),F.dirty()}let J=this._def.valueType;function Q(Y){let G=new Set;for(let H of Y){if(H.status==="aborted")return g;if(H.status==="dirty")F.dirty();G.add(H.value)}return{status:F.value,value:G}}let X=[...$.data.values()].map((Y,G)=>J._parse(new Z1($,Y,$.path,G)));if($.common.async)return Promise.all(X).then((Y)=>Q(Y));else return Q(X)}min(D,F){return new n6({...this._def,minSize:{value:D,message:x.toString(F)}})}max(D,F){return new n6({...this._def,maxSize:{value:D,message:x.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}}n6.create=(D,F)=>{return new n6({valueType:D,minSize:null,maxSize:null,typeName:h.ZodSet,...o(F)})};class ZF extends e{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.function)return j(F,{code:C.invalid_type,expected:w.function,received:F.parsedType}),g;function $(X,Y){return q5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),E8].filter((G)=>!!G),issueData:{code:C.invalid_arguments,argumentsError:Y}})}function B(X,Y){return q5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),E8].filter((G)=>!!G),issueData:{code:C.invalid_return_type,returnTypeError:Y}})}let J={errorMap:F.common.contextualErrorMap},Q=F.data;if(this._def.returns instanceof i6){let X=this;return H0(async function(...Y){let G=new O0([]),H=await X._def.args.parseAsync(Y,J).catch((V)=>{throw G.addIssue($(Y,V)),G}),W=await Reflect.apply(Q,this,H);return await X._def.returns._def.type.parseAsync(W,J).catch((V)=>{throw G.addIssue(B(W,V)),G})})}else{let X=this;return H0(function(...Y){let G=X._def.args.safeParse(Y,J);if(!G.success)throw new O0([$(Y,G.error)]);let H=Reflect.apply(Q,this,G.data),W=X._def.returns.safeParse(H,J);if(!W.success)throw new O0([B(H,W.error)]);return W.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new ZF({...this._def,args:i1.create(D).rest(Q6.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:i1.create([]).rest(Q6.create()),returns:F||Q6.create(),typeName:h.ZodFunction,...o($)})}}class RF extends e{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:h.ZodLazy,...o(F)})};class wF extends e{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return j(F,{received:F.data,code:C.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:D.data}}get value(){return this._def.value}}wF.create=(D,F)=>{return new wF({value:D,typeName:h.ZodLiteral,...o(F)})};function Hv(D,F){return new G6({values:D,typeName:h.ZodEnum,...o(F)})}class G6 extends e{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),$=this._def.values;return j(F,{expected:$D.joinValues($),received:F.parsedType,code:C.invalid_type}),g}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 j(F,{received:F.data,code:C.invalid_enum_value,options:$}),g}return H0(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 G6.create(D,{...this._def,...F})}exclude(D,F=this._def){return G6.create(this.options.filter(($)=>!D.includes($)),{...this._def,...F})}}G6.create=Hv;class TF extends e{_parse(D){let F=$D.getValidEnumValues(this._def.values),$=this._getOrReturnCtx(D);if($.parsedType!==w.string&&$.parsedType!==w.number){let B=$D.objectValues(F);return j($,{expected:$D.joinValues(B),received:$.parsedType,code:C.invalid_type}),g}if(!this._cache)this._cache=new Set($D.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let B=$D.objectValues(F);return j($,{received:$.data,code:C.invalid_enum_value,options:B}),g}return H0(D.data)}get enum(){return this._def.values}}TF.create=(D,F)=>{return new TF({values:D,typeName:h.ZodNativeEnum,...o(F)})};class i6 extends e{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.promise&&F.common.async===!1)return j(F,{code:C.invalid_type,expected:w.promise,received:F.parsedType}),g;let $=F.parsedType===w.promise?F.data:Promise.resolve(F.data);return H0($.then((B)=>{return this._def.type.parseAsync(B,{path:F.path,errorMap:F.common.contextualErrorMap})}))}}i6.create=(D,F)=>{return new i6({type:D,typeName:h.ZodPromise,...o(F)})};class U1 extends e{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===h.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=this._def.effect||null,J={addIssue:(Q)=>{if(j($,Q),Q.fatal)F.abort();else F.dirty()},get path(){return $.path}};if(J.addIssue=J.addIssue.bind(J),B.type==="preprocess"){let Q=B.transform($.data,J);if($.common.async)return Promise.resolve(Q).then(async(X)=>{if(F.value==="aborted")return g;let Y=await this._def.schema._parseAsync({data:X,path:$.path,parent:$});if(Y.status==="aborted")return g;if(Y.status==="dirty")return d6(Y.value);if(F.value==="dirty")return d6(Y.value);return Y});else{if(F.value==="aborted")return g;let X=this._def.schema._parseSync({data:Q,path:$.path,parent:$});if(X.status==="aborted")return g;if(X.status==="dirty")return d6(X.value);if(F.value==="dirty")return d6(X.value);return X}}if(B.type==="refinement"){let Q=(X)=>{let Y=B.refinement(X,J);if($.common.async)return Promise.resolve(Y);if(Y instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if($.common.async===!1){let X=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(X.status==="aborted")return g;if(X.status==="dirty")F.dirty();return Q(X.value),{status:F.value,value:X.value}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((X)=>{if(X.status==="aborted")return g;if(X.status==="dirty")F.dirty();return Q(X.value).then(()=>{return{status:F.value,value:X.value}})})}if(B.type==="transform")if($.common.async===!1){let Q=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(!J6(Q))return g;let X=B.transform(Q.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:F.value,value:X}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((Q)=>{if(!J6(Q))return g;return Promise.resolve(B.transform(Q.value,J)).then((X)=>({status:F.value,value:X}))});$D.assertNever(B)}}U1.create=(D,F,$)=>{return new U1({schema:D,typeName:h.ZodEffects,effect:F,...o($)})};U1.createWithPreprocess=(D,F,$)=>{return new U1({schema:F,effect:{type:"preprocess",transform:D},typeName:h.ZodEffects,...o($)})};class A1 extends e{_parse(D){if(this._getType(D)===w.undefined)return H0(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}A1.create=(D,F)=>{return new A1({innerType:D,typeName:h.ZodOptional,...o(F)})};class K8 extends e{_parse(D){if(this._getType(D)===w.null)return H0(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}K8.create=(D,F)=>{return new K8({innerType:D,typeName:h.ZodNullable,...o(F)})};class jF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;if(F.parsedType===w.undefined)$=this._def.defaultValue();return this._def.innerType._parse({data:$,path:F.path,parent:F})}removeDefault(){return this._def.innerType}}jF.create=(D,F)=>{return new jF({innerType:D,typeName:h.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...o(F)})};class OF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$={...F,common:{...F.common,issues:[]}},B=this._def.innerType._parse({data:$.data,path:$.path,parent:{...$}});if(VF(B))return B.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new O0($.common.issues)},input:$.data})}});else return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new O0($.common.issues)},input:$.data})}}removeCatch(){return this._def.innerType}}OF.create=(D,F)=>{return new OF({innerType:D,typeName:h.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...o(F)})};class Z5 extends e{_parse(D){if(this._getType(D)!==w.nan){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.nan,received:$.parsedType}),g}return{status:"valid",value:D.data}}}Z5.create=(D)=>{return new Z5({typeName:h.ZodNaN,...o(D)})};var I2D=Symbol("zod_brand");class C$ extends e{_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}}class U5 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:$.data,path:$.path,parent:$});if(J.status==="aborted")return g;if(J.status==="dirty")return F.dirty(),d6(J.value);else return this._def.out._parseAsync({data:J.value,path:$.path,parent:$})})();else{let B=this._def.in._parseSync({data:$.data,path:$.path,parent:$});if(B.status==="aborted")return g;if(B.status==="dirty")return F.dirty(),{status:"dirty",value:B.value};else return this._def.out._parseSync({data:B.value,path:$.path,parent:$})}}static create(D,F){return new U5({in:D,out:F,typeName:h.ZodPipeline})}}class IF extends e{_parse(D){let F=this._def.innerType._parse(D),$=(B)=>{if(J6(B))B.value=Object.freeze(B.value);return B};return VF(F)?F.then((B)=>$(B)):$(F)}unwrap(){return this._def.innerType}}IF.create=(D,F)=>{return new IF({innerType:D,typeName:h.ZodReadonly,...o(F)})};function Qv(D,F){let $=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof $==="string"?{message:$}:$}function Wv(D,F={},$){if(D)return c6.create().superRefine((B,J)=>{let Q=D(B);if(Q instanceof Promise)return Q.then((X)=>{if(!X){let Y=Qv(F,B),G=Y.fatal??$??!0;J.addIssue({code:"custom",...Y,fatal:G})}});if(!Q){let X=Qv(F,B),Y=X.fatal??$??!0;J.addIssue({code:"custom",...X,fatal:Y})}return});return c6.create()}var P2D={object:ID.lazycreate},h;(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"})(h||(h={}));var S2D=(D,F={message:`Input not instance of ${D.name}`})=>Wv(($)=>$ instanceof D,F),Ev=z1.create,qv=X6.create,k2D=Z5.create,v2D=Y6.create,Kv=UF.create,y2D=p6.create,x2D=K5.create,_2D=LF.create,f2D=MF.create,g2D=c6.create,h2D=Q6.create,b2D=n1.create,u2D=z5.create,m2D=V1.create,l2D=ID.create,d2D=ID.strictCreate,p2D=NF.create,c2D=N$.create,n2D=CF.create,i2D=i1.create,a2D=V5.create,o2D=A5.create,s2D=n6.create,r2D=ZF.create,t2D=RF.create,e2D=wF.create,DGD=G6.create,FGD=TF.create,$GD=i6.create,BGD=U1.create,JGD=A1.create,QGD=K8.create,XGD=U1.createWithPreprocess,YGD=U5.create,GGD=()=>Ev().optional(),HGD=()=>qv().optional(),WGD=()=>Kv().optional(),EGD={string:(D)=>z1.create({...D,coerce:!0}),number:(D)=>X6.create({...D,coerce:!0}),boolean:(D)=>UF.create({...D,coerce:!0}),bigint:(D)=>Y6.create({...D,coerce:!0}),date:(D)=>p6.create({...D,coerce:!0})};var qGD=g;var pCD=L1.object({apiKey:L1.string().optional(),apiUrl:L1.string().url().default("https://nemar-api-dev.shirazi-10f.workers.dev"),username:L1.string().optional(),email:L1.string().email().optional(),githubUsername:L1.string().optional(),sandboxCompleted:L1.boolean().optional(),sandboxDatasetId:L1.string().optional()}),x0=new U$({projectName:"nemar",schema:{apiKey:{type:"string"},apiUrl:{type:"string",default:"https://nemar-api-dev.shirazi-10f.workers.dev"},username:{type:"string"},email:{type:"string"},githubUsername:{type:"string"},sandboxCompleted:{type:"boolean"},sandboxDatasetId:{type:"string"}},...process.env.NEMAR_CONFIG_DIR?{cwd:process.env.NEMAR_CONFIG_DIR}:{}});function F0(){return{apiKey:x0.get("apiKey"),apiUrl:x0.get("apiUrl"),username:x0.get("username"),email:x0.get("email"),githubUsername:x0.get("githubUsername"),sandboxCompleted:x0.get("sandboxCompleted"),sandboxDatasetId:x0.get("sandboxDatasetId")}}function zv(){return!!x0.get("sandboxCompleted")}function V0(D,F){x0.set(D,F)}function T2(D){x0.delete(D)}function Vv(){x0.clear()}function PD(){return!!x0.get("apiKey")}function Av(){return x0.path}var j2="https://nemar-api-dev.shirazi-10f.workers.dev",R$=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;function I0(D){if(D instanceof Error)return D.message;return String(D)}class c extends Error{statusCode;details;constructor(D,F,$){super(F);this.statusCode=D;this.details=$;this.name="ApiError"}}var KGD=j2.includes("workers.dev");function Zv(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(KGD)return j2;return F0().apiUrl||j2}async function t(D,F={},$=!1){let B=`${Zv()}${D}`,J={"Content-Type":"application/json",...F.headers};if($){let Y=F0();if(!Y.apiKey&&$===!0)throw new c(401,"Not authenticated. Run 'nemar auth login' first.");if(Y.apiKey)J.Authorization=`Bearer ${Y.apiKey}`}let Q;try{Q=await fetch(B,{...F,headers:J})}catch(Y){throw new c(0,`Network error: Could not connect to ${Zv()}`,{originalError:Y instanceof Error?Y.message:String(Y)})}let X;try{X=await Q.json()}catch{throw new c(Q.status,`Invalid response from server (status ${Q.status})`)}if(!Q.ok)throw new c(Q.status,X.error||X.message||"Request failed",X.details);return X}async function Uv(D){return t(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function Lv(D){return t(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function Mv(D){return t("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function Nv(D){return t("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function Cv(D){return t("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function w$(){return t("/users/me",{},!0)}async function Rv(D){let F=D?`?status=${D}`:"";return t(`/admin/users${F}`,{},!0)}async function wv(D){return t(`/admin/approve/${D}`,{method:"POST"},!0)}async function Tv(D){return t(`/admin/revoke/${D}`,{method:"POST"},!0)}async function jv(D){return t(`/admin/regenerate-iam/${D}`,{method:"POST"},!0)}async function O2(D,F){return t(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function Ov(D){return t(`/datasets/${D}/publish`,{method:"POST"},!0)}async function Iv(D){return t(`/admin/datasets/${D}/ci`,{},!0)}async function T$(D){return t(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function Pv(D){return t(`/datasets/${D}/ci/status`,{},!0)}async function Sv(D){return t(`/datasets/${D}/manifest`,{},!0)}async function kv(D,F){return t(`/datasets/${D}/manifest/${F}`,{},!0)}function vv(D){let F=D;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 yv(D=!1){let $=await t(`/datasets${D?"?mine=true":""}`,{},D?!0:"optional");return $.datasets=$.datasets.map(vv),$}async function a1(D){let F=await t(`/datasets/${D}`,{},"optional");return vv(F.dataset)}async function j$(D){return t("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function O$(D){return t(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function xv(D,F){return t(`/datasets/${D}/upload-urls`,{method:"POST",body:JSON.stringify({files:F})},!0)}async function _v(D,F){return t(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function L5(D){return t(`/admin/datasets/${D}/doi`,{},!0)}async function I2(D,F){return t(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function fv(D){return t(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function gv(D,F){return t(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function hv(D){return t(`/datasets/${D}/collaborators`,{},!0)}async function bv(D){return t("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function uv(){return t("/sandbox/reset",{method:"POST"},!0)}async function mv(){return t("/sandbox/status",{},!0)}async function lv(D){return t(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function dv(D){return t(`/datasets/${D}/publish/status`,{},!0)}async function pv(D){return t(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function cv(D){let F=D?`?status=${D}`:"";return t(`/admin/publish/requests${F}`,{},!0)}async function nv(D,F){return t(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}async function iv(D,F=!1,$=!1){let B,J;do if(J=await t(`/admin/publish/${D}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({resume:F,sandbox:$,s3_lock_offset:B})},!0),J.hasMore&&J.s3_lock_offset!==void 0)B=J.s3_lock_offset;else break;while(J.hasMore);return J}async function av(D,F){return t(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function ov(D){return t(`/admin/datasets/${D}/files`,{},!0)}async function sv(D){let F=0,$=0,B=[],J=0,Q=!0;while(Q){let X=await t(`/admin/datasets/${D}/s3-lock`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({offset:F})},!0);if($+=X.locked,B.push(...X.failed),J=X.total,Q=X.hasMore,Q)F+=40}return{locked:$,total:J,failed:B}}async function gD(D,F,$=!1){if(F.no)return"declined";if(F.yes)return"confirmed";try{let{confirmed:B}=await xD.prompt([{type:"confirm",name:"confirmed",message:D,default:$}]);return B?"confirmed":"cancelled"}catch(B){let J=B instanceof Error?B.message:String(B);if(J.includes("closed")||J.includes("TTY")||J.includes("SIGINT")||J.includes("readline"))console.error("Interactive prompt unavailable (non-interactive terminal or interrupted)"),console.error(" Use --yes or --no flags for non-interactive mode");else console.error("Prompt error:",J);return"cancelled"}}async function rv(D,F,$){if($.no)return"declined";if($.yes)return"confirmed";try{let{input:B}=await xD.prompt([{type:"input",name:"input",message:D,validate:(J)=>{if(J!==F)return`Input does not match. Expected: ${F}`;return!0}}]);return B===F?"confirmed":"cancelled"}catch(B){let J=B instanceof Error?B.message:String(B);if(J.includes("closed")||J.includes("TTY")||J.includes("SIGINT")||J.includes("readline"))console.error("Interactive prompt unavailable (non-interactive terminal or interrupted)"),console.error(" Use --yes or --no flags for non-interactive mode");else console.error("Prompt error:",J);return"cancelled"}}var vD="-y, --yes",hD="-n, --no",yD="Skip confirmation and proceed",bD="Skip confirmation and decline";import{existsSync as Dy,statSync as zGD}from"fs";import{join as P2}from"path";var{spawn:VGD}=globalThis.Bun;async function u(D,F={}){let $=VGD({cmd:D,cwd:F.cwd,stdout:"pipe",stderr:"pipe",env:{...process.env,...F.env}}),B=await new Response($.stdout).text(),J=await new Response($.stderr).text(),Q=await $.exited;return{stdout:B,stderr:J,exitCode:Q}}function tv(D){return D.split(".").map((F)=>{let $=Number.parseInt(F.replace(/[^0-9]/g,""),10);return Number.isNaN($)?0:$})}function AGD(D,F){let $=tv(D),B=tv(F);for(let J=0;J<Math.max($.length,B.length);J++){let Q=$[J]||0,X=B[J]||0;if(Q>X)return!0;if(Q<X)return!1}return!0}async function Fy(){try{let{stdout:F,exitCode:$,stderr:B}=await u(["git-annex","version"]);if($!==0)return console.warn("git-annex version returned non-zero exit code:",$),console.warn("stderr:",B),{installed:!1,minVersion:"10.0",error:`Version check failed: ${B.trim()}`};let J=F.match(/version:\s*(\d+\.\d+)/),Q=J?J[1]:void 0;if(!Q)console.warn("Could not parse git-annex version from output:",F);return{installed:!0,version:Q,minVersion:"10.0",compatible:Q?AGD(Q,"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 ZGD(){if(process.env.GH_TOKEN)return{accessible:!0,username:"token-auth",useHttps:!0};try{let{stdout:D,stderr:F}=await u(["ssh","-T","-o","BatchMode=yes","-o","StrictHostKeyChecking=accept-new","-o","ConnectTimeout=10","git@github.com"]),$=D+F,B=$.match(/Hi ([^!]+)!/);if(B)return{accessible:!0,username:B[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}}}function $y(){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 I$(){let[D,F]=await Promise.all([Fy(),ZGD()]),$=[];if(!D.installed)$.push(`git-annex is not installed. Install: ${$y()}`);else if(D.compatible===!1)$.push(`git-annex version ${D.version} is too old. Required: >= ${D.minVersion}`);if(!F.accessible)$.push("GitHub SSH access not configured. Run 'nemar auth setup-ssh' to configure automatically.");return{gitAnnex:D,githubSSH:F,allPassed:$.length===0,errors:$}}async function z8(D){if(!Dy(P2(D,".git")))return!1;try{let{exitCode:F}=await u(["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 P$(D,F={}){if(!F.force&&await z8(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:B,exitCode:J}=await u(["git","init",D],{...Object.keys($).length>0?{env:$}:{}});if(J!==0)return{success:!1,error:B.trim()||"Failed to initialize git repository"};let{stderr:Q,exitCode:X}=await u(["git","annex","init"],{cwd:D,...Object.keys($).length>0?{env:$}:{}});if(X!==0)return{success:!1,error:Q.trim()||"Failed to initialize git-annex"};return{success:!0}}catch($){return{success:!1,error:$.message}}}async function By(D){try{let{exitCode:F,stderr:$}=await u(["git","annex","info"],{cwd:D});if(F===0)return{success:!0};if($.includes("First run: git-annex init")){let{stderr:B,exitCode:J}=await u(["git","annex","init"],{cwd:D});if(J!==0)return{success:!1,error:B.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 S$(D,F){let B=F||"include=*.edf or include=*.bdf or include=*.set or include=*.fif or include=*.vhdr or include=*.eeg or include=*.cnt or include=*.fdt or largerthan=100kb";try{let{stderr:J,exitCode:Q}=await u(["git","annex","config","--set","annex.largefiles",B],{cwd:D});if(Q!==0)return{success:!1,error:J.trim()||"Failed to configure largefiles"};return{success:!0}}catch(J){return{success:!1,error:J.message}}}async function UGD(){try{let{exitCode:D,stderr:F}=await u(["ssh","-T","-o","BatchMode=yes","-o","ConnectTimeout=5","git@github.com"]),$=F.includes("successfully authenticated");if(!$)console.warn("SSH test to github.com failed:",{exitCode:D,stderr:F.trim().slice(0,500)});return{works:$,error:$?void 0:F.trim().slice(0,500)}}catch(D){let F=D instanceof Error?D.message:String(D);return console.warn("SSH test exception:",F),{works:!1,error:F}}}async function LGD(){try{let{stdout:D,exitCode:F,stderr:$}=await u(["gh","auth","token"]);if(F!==0)return console.warn("gh CLI returned non-zero exit code:",F),console.warn("stderr:",$),{token:null,error:`gh auth token failed: ${$.trim()||"unknown error"}`};if(!D.trim())return console.warn("gh auth token returned empty output"),{token:null,error:"gh CLI returned empty token"};return{token:D.trim()}}catch(D){let F=D instanceof Error?D.message:String(D);if(console.error("Failed to get GitHub token from gh CLI:",F),F.includes("ENOENT")||F.includes("not found"))return{token:null,error:"gh CLI not installed (command not found)"};return{token:null,error:`gh CLI error: ${F}`}}}async function k$(D){try{let{stdout:F,exitCode:$,stderr:B}=await u(["gh","api","user","--jq",".login"]);if($!==0){if(B.includes("not logged in")||B.includes("auth login"))return{authenticated:!1,error:"gh CLI not authenticated. Run 'gh auth login' to authenticate."};return{authenticated:!1,error:`gh CLI error: ${B.trim()||"unknown error"}`}}let J=F.trim();if(!J)return{authenticated:!1,error:"gh CLI returned empty username"};if(D){let Q=J.toLowerCase()===D.toLowerCase();return{authenticated:!0,username:J,matches:Q,error:Q?void 0:`gh CLI authenticated as '${J}', expected '${D}'`}}return{authenticated:!0,username:J}}catch(F){let $=F instanceof Error?F.message:String(F);if($.includes("ENOENT")||$.includes("not found"))return{authenticated:!1,error:"gh CLI not installed. Install from https://cli.github.com/"};return{authenticated:!1,error:`Failed to verify gh CLI: ${$}`}}}async function v$(D){if(!/^[a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+$/.test(D))return{accepted:!1,error:`Invalid repository format: ${D}`};let{stdout:F,exitCode:$,stderr:B}=await u(["gh","api","/user/repository_invitations"]);if($!==0){if(B.includes("not logged in")||B.includes("auth login"))return{accepted:!1,error:"gh CLI not authenticated. Run 'gh auth login' to authenticate."};if(B.includes("API rate limit")||B.includes("403"))return{accepted:!1,error:"GitHub API rate limit exceeded. Please try again in a few minutes."};if(B.includes("ENOENT")||B.includes("not found"))return{accepted:!1,error:"gh CLI not installed. Install from https://cli.github.com/"};return{accepted:!1,error:`Failed to list invitations: ${B.trim()||"unknown error"}`}}let J=null;try{J=JSON.parse(F||"[]").find((H)=>H.repository.full_name===D)?.id??null}catch(Y){let G=Y instanceof Error?Y.message:String(Y);return console.error("Failed to parse GitHub invitations response:",G),console.error(" Raw response (first 500 chars):",(F||"").slice(0,500)),{accepted:!1,error:`Failed to parse GitHub API response: ${G}`}}if(!J){let{exitCode:Y}=await u(["gh","api",`/repos/${D}`,"--silent"]);if(Y===0)return{accepted:!0,alreadyCollaborator:!0};return{accepted:!1,error:`No pending invitation found for ${D}. You may need to accept it manually via GitHub.`}}let{exitCode:Q,stderr:X}=await u(["gh","api","--method","PATCH",`/user/repository_invitations/${J}`]);if(Q!==0)return{accepted:!1,error:`Failed to accept invitation: ${X.trim()||"unknown error"}`};return{accepted:!0}}async function y$(D,F,$="origin"){let B=F;if(process.env.GH_TOKEN&&F.startsWith("git@github.com:")){let J=process.env.GH_TOKEN.trim();if(!J||/\s/.test(J))return{success:!1,error:"GH_TOKEN environment variable is set but appears malformed (empty or contains whitespace)"};let Q=F.replace("git@github.com:","");B=`https://${J}@github.com/${Q}`}else if(F.startsWith("git@github.com:")){let J=F.replace("git@github.com:",""),Q=await UGD();if(Q.works)B=F;else{console.warn("GitHub SSH not available, falling back to HTTPS with gh CLI token...");let X=await LGD();if(X.token)B=`https://${X.token}@github.com/${J}`,console.warn("Note: using HTTPS with gh CLI token. If the token expires, re-run 'gh auth login'.");else return{success:!1,error:`GitHub authentication not configured.
119
+ `;return this.stop(),this.#Q.write(H),this}}function R(D){return new Cw(D)}import{isDeepStrictEqual as tYD}from"util";import tk from"process";import m6 from"fs";import ek from"path";import E5 from"crypto";import eYD from"assert";var k6=(D)=>{let F=typeof D;return D!==null&&(F==="object"||F==="function")};var kX=new Set(["__proto__","prototype","constructor"]),J6D=new Set("0123456789");function A7(D){let F=[],$="",B="start",J=!1;for(let Q of D)switch(Q){case"\\":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd")throw Error("Invalid character after an index");if(J)$+=Q;B="property",J=!J;break}case".":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd"){B="property";break}if(J){J=!1,$+=Q;break}if(kX.has($))return[];F.push($),$="",B="property";break}case"[":{if(B==="index")throw Error("Invalid character in an index");if(B==="indexEnd"){B="index";break}if(J){J=!1,$+=Q;break}if(B==="property"){if(kX.has($))return[];F.push($),$=""}B="index";break}case"]":{if(B==="index"){F.push(Number.parseInt($,10)),$="",B="indexEnd";break}if(B==="indexEnd")throw Error("Invalid character after an index")}default:{if(B==="index"&&!J6D.has(Q))throw Error("Invalid character in an index");if(B==="indexEnd")throw Error("Invalid character after an index");if(B==="start")B="property";if(J)J=!1,$+="\\";$+=Q}}if(J)$+="\\";switch(B){case"property":{if(kX.has($))return[];F.push($);break}case"index":throw Error("Index was not closed");case"start":{F.push("");break}}return F}function vX(D,F){if(typeof F!=="number"&&Array.isArray(D)){let $=Number.parseInt(F,10);return Number.isInteger($)&&D[$]===D[F]}return!1}function Rw(D,F){if(vX(D,F))throw Error("Cannot use string index")}function ww(D,F,$){if(!k6(D)||typeof F!=="string")return $===void 0?D:$;let B=A7(F);if(B.length===0)return $;for(let J=0;J<B.length;J++){let Q=B[J];if(vX(D,Q))D=J===B.length-1?void 0:null;else D=D[Q];if(D===void 0||D===null){if(J!==B.length-1)return $;break}}return D===void 0?$:D}function yX(D,F,$){if(!k6(D)||typeof F!=="string")return D;let B=D,J=A7(F);for(let Q=0;Q<J.length;Q++){let X=J[Q];if(Rw(D,X),Q===J.length-1)D[X]=$;else if(!k6(D[X]))D[X]=typeof J[Q+1]==="number"?[]:{};D=D[X]}return B}function Tw(D,F){if(!k6(D)||typeof F!=="string")return!1;let $=A7(F);for(let B=0;B<$.length;B++){let J=$[B];if(Rw(D,J),B===$.length-1)return delete D[J],!0;if(D=D[J],!k6(D))return!1}}function jw(D,F){if(!k6(D)||typeof F!=="string")return!1;let $=A7(F);if($.length===0)return!1;for(let B of $){if(!k6(D)||!(B in D)||vX(D,B))return!1;D=D[B]}return!0}import OD from"path";import Ow from"os";import xX from"process";var o8=Ow.homedir(),_X=Ow.tmpdir(),{env:s4}=xX,Q6D=(D)=>{let F=OD.join(o8,"Library");return{data:OD.join(F,"Application Support",D),config:OD.join(F,"Preferences",D),cache:OD.join(F,"Caches",D),log:OD.join(F,"Logs",D),temp:OD.join(_X,D)}},X6D=(D)=>{let F=s4.APPDATA||OD.join(o8,"AppData","Roaming"),$=s4.LOCALAPPDATA||OD.join(o8,"AppData","Local");return{data:OD.join($,D,"Data"),config:OD.join(F,D,"Config"),cache:OD.join($,D,"Cache"),log:OD.join($,D,"Log"),temp:OD.join(_X,D)}},Y6D=(D)=>{let F=OD.basename(o8);return{data:OD.join(s4.XDG_DATA_HOME||OD.join(o8,".local","share"),D),config:OD.join(s4.XDG_CONFIG_HOME||OD.join(o8,".config"),D),cache:OD.join(s4.XDG_CACHE_HOME||OD.join(o8,".cache"),D),log:OD.join(s4.XDG_STATE_HOME||OD.join(o8,".local","state"),D),temp:OD.join(_X,F,D)}};function fX(D,{suffix:F="nodejs"}={}){if(typeof D!=="string")throw TypeError(`Expected a string, got ${typeof D}`);if(F)D+=`-${F}`;if(xX.platform==="darwin")return Q6D(D);if(xX.platform==="win32")return X6D(D);return Y6D(D)}import V6D from"path";import WD from"fs";import{promisify as Q0}from"util";var G6D=(D,F)=>{let{onError:$}=F;return function(...J){return D.apply(void 0,J).catch($)}},h1=G6D;var H6D=(D,F)=>{let{onError:$}=F;return function(...J){try{return D.apply(void 0,J)}catch(Q){return $(Q)}}},X1=H6D;var Iw=250;var W6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=J.interval??Iw,Y=Date.now()+Q;return function G(...H){return D.apply(void 0,H).catch((W)=>{if(!$(W))throw W;if(Date.now()>=Y)throw W;let K=Math.round(X*Math.random());if(K>0)return new Promise((A)=>setTimeout(A,K)).then(()=>G.apply(void 0,H));else return G.apply(void 0,H)})}}},b1=W6D;var E6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=Date.now()+Q;return function(...G){while(!0)try{return D.apply(void 0,G)}catch(H){if(!$(H))throw H;if(Date.now()>=X)throw H;continue}}}},u1=E6D;import Sw from"process";var S3={isChangeErrorOk:(D)=>{if(!S3.isNodeError(D))return!1;let{code:F}=D;if(F==="ENOSYS")return!0;if(!Pw&&(F==="EINVAL"||F==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!S3.isNodeError(D))return!1;let{code:F}=D;if(F==="EMFILE"||F==="ENFILE"||F==="EAGAIN"||F==="EBUSY"||F==="EACCESS"||F==="EACCES"||F==="EACCS"||F==="EPERM")return!0;return!1},onChangeError:(D)=>{if(!S3.isNodeError(D))throw D;if(S3.isChangeErrorOk(D))return;throw D}},gX=S3;var k3={onError:gX.onChangeError},N0={onError:()=>{return}},Pw=Sw.getuid?!Sw.getuid():!1,tD={isRetriable:gX.isRetriableError};var q6D={attempt:{chmod:h1(Q0(WD.chmod),k3),chown:h1(Q0(WD.chown),k3),close:h1(Q0(WD.close),N0),fsync:h1(Q0(WD.fsync),N0),mkdir:h1(Q0(WD.mkdir),N0),realpath:h1(Q0(WD.realpath),N0),stat:h1(Q0(WD.stat),N0),unlink:h1(Q0(WD.unlink),N0),chmodSync:X1(WD.chmodSync,k3),chownSync:X1(WD.chownSync,k3),closeSync:X1(WD.closeSync,N0),existsSync:X1(WD.existsSync,N0),fsyncSync:X1(WD.fsync,N0),mkdirSync:X1(WD.mkdirSync,N0),realpathSync:X1(WD.realpathSync,N0),statSync:X1(WD.statSync,N0),unlinkSync:X1(WD.unlinkSync,N0)},retry:{close:b1(Q0(WD.close),tD),fsync:b1(Q0(WD.fsync),tD),open:b1(Q0(WD.open),tD),readFile:b1(Q0(WD.readFile),tD),rename:b1(Q0(WD.rename),tD),stat:b1(Q0(WD.stat),tD),write:b1(Q0(WD.write),tD),writeFile:b1(Q0(WD.writeFile),tD),closeSync:u1(WD.closeSync,tD),fsyncSync:u1(WD.fsyncSync,tD),openSync:u1(WD.openSync,tD),readFileSync:u1(WD.readFileSync,tD),renameSync:u1(WD.renameSync,tD),statSync:u1(WD.statSync,tD),writeSync:u1(WD.writeSync,tD),writeFileSync:u1(WD.writeFileSync,tD)}},pD=q6D;import v6 from"process";var kw="utf8",hX=438,vw=511;var yw={},xw=v6.geteuid?v6.geteuid():-1,_w=v6.getegid?v6.getegid():-1;var fw=1000,gw=!!v6.getuid,AUD=v6.getuid?!v6.getuid():!1,bX=128;var hw=(D)=>{return D instanceof Error&&"code"in D};var uX=(D)=>{return typeof D==="string"},Z7=(D)=>{return D===void 0};import z6D from"path";import r4 from"process";import bw from"process";var uw=bw.platform==="linux",U7=bw.platform==="win32";var mX=["SIGHUP","SIGINT","SIGTERM"];if(!U7)mX.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(uw)mX.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var mw=mX;class lw{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=(D)=>{if(this.exited)return;this.exited=!0;for(let F of this.callbacks)F();if(D)if(U7&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))r4.kill(r4.pid,"SIGTERM");else r4.kill(r4.pid,D)},this.hook=()=>{r4.once("exit",()=>this.exit());for(let D of mw)try{r4.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var dw=new lw;var K6D=dw.register,pw=K6D;var y0={store:{},create:(D)=>{let F=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),$=Date.now().toString().slice(-10),B="tmp-",J=`.tmp-${$}${F}`;return`${D}${J}`},get:(D,F,$=!0)=>{let B=y0.truncate(F(D));if(B in y0.store)return y0.get(D,F,$);return y0.store[B]=$,[B,()=>delete y0.store[B]]},purge:(D)=>{if(!y0.store[D])return;delete y0.store[D],pD.attempt.unlink(D)},purgeSync:(D)=>{if(!y0.store[D])return;delete y0.store[D],pD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in y0.store)y0.purgeSync(D)},truncate:(D)=>{let F=z6D.basename(D);if(F.length<=bX)return D;let $=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(F);if(!$)return D;let B=F.length-bX;return`${D.slice(0,-F.length)}${$[1]}${$[2].slice(0,-B)}${$[3]}`}};pw(y0.purgeSyncAll);var v3=y0;function lX(D,F,$=yw){if(uX($))return lX(D,F,{encoding:$});let J={timeout:$.timeout??fw},Q=null,X=null,Y=null;try{let G=pD.attempt.realpathSync(D),H=!!G;D=G||D,[X,Q]=v3.get(D,$.tmpCreate||v3.create,$.tmpPurge!==!1);let W=gw&&Z7($.chown),K=Z7($.mode);if(H&&(W||K)){let V=pD.attempt.statSync(D);if(V){if($={...$},W)$.chown={uid:V.uid,gid:V.gid};if(K)$.mode=V.mode}}if(!H){let V=V6D.dirname(D);pD.attempt.mkdirSync(V,{mode:vw,recursive:!0})}if(Y=pD.retry.openSync(J)(X,"w",$.mode||hX),$.tmpCreated)$.tmpCreated(X);if(uX(F))pD.retry.writeSync(J)(Y,F,0,$.encoding||kw);else if(!Z7(F))pD.retry.writeSync(J)(Y,F,0,F.length,0);if($.fsync!==!1)if($.fsyncWait!==!1)pD.retry.fsyncSync(J)(Y);else pD.attempt.fsync(Y);if(pD.retry.closeSync(J)(Y),Y=null,$.chown&&($.chown.uid!==xw||$.chown.gid!==_w))pD.attempt.chownSync(X,$.chown.uid,$.chown.gid);if($.mode&&$.mode!==hX)pD.attempt.chmodSync(X,$.mode);try{pD.retry.renameSync(J)(X,D)}catch(V){if(!hw(V))throw V;if(V.code!=="ENAMETOOLONG")throw V;pD.retry.renameSync(J)(X,v3.truncate(D))}Q(),X=null}finally{if(Y)pD.attempt.closeSync(Y);if(X)v3.purge(X)}}var Fv=l(fP(),1),$v=l(JS(),1);var tJD=(D,F={})=>{if(typeof D!=="function")throw TypeError(`Expected the first argument to be a function, got \`${typeof D}\``);let{wait:$=0,maxWait:B=Number.POSITIVE_INFINITY,before:J=!1,after:Q=!0}=F;if($<0||B<0)throw RangeError("`wait` and `maxWait` must not be negative.");if(!J&&!Q)throw Error("Both `before` and `after` are false, function wouldn't be called.");let X,Y,G,H=function(...W){let K=this,V=()=>{if(X=void 0,Y)clearTimeout(Y),Y=void 0;if(Q)G=D.apply(K,W)},A=()=>{if(Y=void 0,X)clearTimeout(X),X=void 0;if(Q)G=D.apply(K,W)},Z=J&&!X;if(clearTimeout(X),X=setTimeout(V,$),B>0&&B!==Number.POSITIVE_INFINITY&&!Y)Y=setTimeout(A,B);if(Z)G=D.apply(K,W);return G};return j3(H,D),H.cancel=()=>{if(X)clearTimeout(X),X=void 0;if(Y)clearTimeout(Y),Y=void 0},H},B2=tJD;var l6=l(ak(),1);var cYD=Object.prototype.toString;function sk(D,F,$){if(!D)return!1;if(D.constructor===F)return!0;return cYD.call(D)===$}function rk(D){return sk(D,Uint8Array,"[object Uint8Array]")}function nYD(D){return sk(D,ArrayBuffer,"[object ArrayBuffer]")}function iYD(D){return rk(D)||nYD(D)}function aYD(D){if(!rk(D))throw TypeError(`Expected \`Uint8Array\`, got \`${typeof D}\``)}function oYD(D){if(!iYD(D))throw TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof D}\``)}function L2(D,F){if(D.length===0)return new Uint8Array(0);F??=D.reduce((J,Q)=>J+Q.length,0);let $=new Uint8Array(F),B=0;for(let J of D)aYD(J),$.set(J,B),B+=J.length;return $}var ok={utf8:new globalThis.TextDecoder("utf8")};function M2(D,F="utf8"){return oYD(D),ok[F]??=new globalThis.TextDecoder(F),ok[F].decode(D)}function sYD(D){if(typeof D!=="string")throw TypeError(`Expected \`string\`, got \`${typeof D}\``)}var rYD=new globalThis.TextEncoder;function A$(D){return sYD(D),rYD.encode(D)}var $CD=Array.from({length:256},(D,F)=>F.toString(16).padStart(2,"0"));var D2D=$v.default.default,Dv="aes-256-cbc",KF=()=>Object.create(null),F2D=(D)=>D!==void 0&&D!==null,$2D=(D,F)=>{let $=new Set(["undefined","symbol","function"]),B=typeof F;if($.has(B))throw TypeError(`Setting a value of type \`${B}\` for key \`${D}\` is not allowed as it's not supported by JSON`)},Z$="__internal__",N2=`${Z$}.migrations.version`;class U${path;events;#$;#F;#D;#J={};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=fX(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 Q=new Fv.Ajv2020({allErrors:!0,useDefaults:!0,...F.ajvOptions});D2D(Q);let X={...F.rootSchema,type:"object",properties:F.schema};this.#$=Q.compile(X);for(let[Y,G]of Object.entries(F.schema??{}))if(G?.default)this.#J[Y]=G.default}if(F.defaults)this.#J={...this.#J,...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=ek.resolve(F.cwd,`${F.configName??"config"}${$}`);let B=this.store,J=Object.assign(KF(),F.defaults,B);if(F.migrations){if(!F.projectVersion)throw Error("Please specify the `projectVersion` option.");this._migrate(F.migrations,F.projectVersion,F.beforeEachMigration)}this._validate(J);try{eYD.deepEqual(B,J)}catch{this.store=J}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 ${Z$} key, as it's used to manage this module internal operations.`);let{store:$}=this,B=(J,Q)=>{if($2D(J,Q),this.#D.accessPropertiesByDotNotation)yX($,J,Q);else $[J]=Q};if(typeof D==="object"){let J=D;for(let[Q,X]of Object.entries(J))B(Q,X)}else B(D,F);this.store=$}has(D){if(this.#D.accessPropertiesByDotNotation)return jw(this.store,D);return D in this.store}reset(...D){for(let F of D)if(F2D(this.#J[F]))this.set(F,this.#J[F])}delete(D){let{store:F}=this;if(this.#D.accessPropertiesByDotNotation)Tw(F,D);else delete F[D];this.store=F}clear(){this.store=KF();for(let D of Object.keys(this.#J))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=m6.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:M2(D);try{let F=D.slice(0,16),$=E5.pbkdf2Sync(this.#F,F.toString(),1e4,32,"sha512"),B=E5.createDecipheriv(Dv,$,F),J=D.slice(17),Q=typeof J==="string"?A$(J):J;return M2(L2([B.update(Q),B.final()]))}catch{}return D.toString()}_handleChange(D,F){let $=D(),B=()=>{let J=$,Q=D();if(tYD(Q,J))return;$=Q,F.call(this,Q,J)};return this.events.addEventListener("change",B),()=>{this.events.removeEventListener("change",B)}}_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:B,message:J=""})=>`\`${B.slice(1)}\` ${J}`);throw Error("Config schema violation: "+$.join("; "))}_ensureDirectory(){m6.mkdirSync(ek.dirname(this.path),{recursive:!0})}_write(D){let F=this._serialize(D);if(this.#F){let $=E5.randomBytes(16),B=E5.pbkdf2Sync(this.#F,$.toString(),1e4,32,"sha512"),J=E5.createCipheriv(Dv,B,$);F=L2([$,A$(":"),J.update(A$(F)),J.final()])}if(tk.env.SNAP)m6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});else try{lX(this.path,F,{mode:this.#D.configFileMode})}catch($){if($?.code==="EXDEV"){m6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});return}throw $}}_watch(){if(this._ensureDirectory(),!m6.existsSync(this.path))this._write(KF());if(tk.platform==="win32")m6.watch(this.path,{persistent:!1},B2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:100}));else m6.watchFile(this.path,{persistent:!1},B2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:5000}))}_migrate(D,F,$){let B=this._get(N2,"0.0.0"),J=Object.keys(D).filter((X)=>this._shouldPerformMigration(X,B,F)),Q={...this.store};for(let X of J)try{if($)$(this,{fromVersion:B,toVersion:X,finalVersion:F,versions:J});let Y=D[X];Y?.(this),this._set(N2,X),B=X,Q={...this.store}}catch(Y){throw this.store=Q,Error(`Something went wrong during the migration! Changes applied to the store until this failed migration will be restored. ${Y}`)}if(this._isVersionInRangeFormat(B)||!l6.default.eq(B,F))this._set(N2,F)}_containsReservedKey(D){if(typeof D==="object"){if(Object.keys(D)[0]===Z$)return!0}if(typeof D!=="string")return!1;if(this.#D.accessPropertiesByDotNotation){if(D.startsWith(`${Z$}.`))return!0;return!1}return!1}_isVersionInRangeFormat(D){return l6.default.clean(D)===null}_shouldPerformMigration(D,F,$){if(this._isVersionInRangeFormat(D)){if(F!=="0.0.0"&&l6.default.satisfies(F,D))return!1;return l6.default.satisfies($,D)}if(l6.default.lte(D,F))return!1;if(l6.default.gt(D,$))return!1;return!0}_get(D,F){return ww(this.store,D,F)}_set(D,F){let{store:$}=this;yX($,D,F),this.store=$}}var L1={};d2(L1,{void:()=>u2D,util:()=>$D,unknown:()=>h2D,union:()=>p2D,undefined:()=>_2D,tuple:()=>i2D,transformer:()=>BGD,symbol:()=>x2D,string:()=>Ev,strictObject:()=>d2D,setErrorMap:()=>Q2D,set:()=>s2D,record:()=>a2D,quotelessJson:()=>B2D,promise:()=>$GD,preprocess:()=>XGD,pipeline:()=>YGD,ostring:()=>GGD,optional:()=>JGD,onumber:()=>HGD,oboolean:()=>WGD,objectUtil:()=>C2,object:()=>l2D,number:()=>qv,nullable:()=>QGD,null:()=>f2D,never:()=>b2D,nativeEnum:()=>FGD,nan:()=>k2D,map:()=>o2D,makeIssue:()=>q5,literal:()=>e2D,lazy:()=>t2D,late:()=>P2D,isValid:()=>J6,isDirty:()=>M$,isAsync:()=>VF,isAborted:()=>L$,intersection:()=>n2D,instanceof:()=>S2D,getParsedType:()=>c1,getErrorMap:()=>zF,function:()=>r2D,enum:()=>DGD,effect:()=>BGD,discriminatedUnion:()=>c2D,defaultErrorMap:()=>E8,datetimeRegex:()=>Gv,date:()=>y2D,custom:()=>Wv,coerce:()=>EGD,boolean:()=>Kv,bigint:()=>v2D,array:()=>m2D,any:()=>g2D,addIssueToContext:()=>j,ZodVoid:()=>z5,ZodUnknown:()=>Q6,ZodUnion:()=>NF,ZodUndefined:()=>LF,ZodType:()=>e,ZodTuple:()=>i1,ZodTransformer:()=>U1,ZodSymbol:()=>K5,ZodString:()=>z1,ZodSet:()=>n6,ZodSchema:()=>e,ZodRecord:()=>V5,ZodReadonly:()=>IF,ZodPromise:()=>i6,ZodPipeline:()=>U5,ZodParsedType:()=>w,ZodOptional:()=>A1,ZodObject:()=>ID,ZodNumber:()=>X6,ZodNullable:()=>K8,ZodNull:()=>MF,ZodNever:()=>n1,ZodNativeEnum:()=>TF,ZodNaN:()=>Z5,ZodMap:()=>A5,ZodLiteral:()=>wF,ZodLazy:()=>RF,ZodIssueCode:()=>C,ZodIntersection:()=>CF,ZodFunction:()=>ZF,ZodFirstPartyTypeKind:()=>h,ZodError:()=>O0,ZodEnum:()=>G6,ZodEffects:()=>U1,ZodDiscriminatedUnion:()=>N$,ZodDefault:()=>jF,ZodDate:()=>p6,ZodCatch:()=>OF,ZodBranded:()=>C$,ZodBoolean:()=>UF,ZodBigInt:()=>Y6,ZodArray:()=>V1,ZodAny:()=>c6,Schema:()=>e,ParseStatus:()=>D0,OK:()=>H0,NEVER:()=>qGD,INVALID:()=>g,EMPTY_PATH:()=>X2D,DIRTY:()=>d6,BRAND:()=>I2D});var $D;(function(D){D.assertEqual=(J)=>{};function F(J){}D.assertIs=F;function $(J){throw Error()}D.assertNever=$,D.arrayToEnum=(J)=>{let Q={};for(let X of J)Q[X]=X;return Q},D.getValidEnumValues=(J)=>{let Q=D.objectKeys(J).filter((Y)=>typeof J[J[Y]]!=="number"),X={};for(let Y of Q)X[Y]=J[Y];return D.objectValues(X)},D.objectValues=(J)=>{return D.objectKeys(J).map(function(Q){return J[Q]})},D.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let Q=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))Q.push(X);return Q},D.find=(J,Q)=>{for(let X of J)if(Q(X))return X;return},D.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function B(J,Q=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(Q)}D.joinValues=B,D.jsonStringifyReplacer=(J,Q)=>{if(typeof Q==="bigint")return Q.toString();return Q}})($D||($D={}));var C2;(function(D){D.mergeShapes=(F,$)=>{return{...F,...$}}})(C2||(C2={}));var w=$D.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),c1=(D)=>{switch(typeof D){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(D)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":if(Array.isArray(D))return w.array;if(D===null)return w.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return w.promise;if(typeof Map<"u"&&D instanceof Map)return w.map;if(typeof Set<"u"&&D instanceof Set)return w.set;if(typeof Date<"u"&&D instanceof Date)return w.date;return w.object;default:return w.unknown}};var C=$D.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"]),B2D=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")};class O0 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(J){return J.message},$={_errors:[]},B=(J)=>{for(let Q of J.issues)if(Q.code==="invalid_union")Q.unionErrors.map(B);else if(Q.code==="invalid_return_type")B(Q.returnTypeError);else if(Q.code==="invalid_arguments")B(Q.argumentsError);else if(Q.path.length===0)$._errors.push(F(Q));else{let X=$,Y=0;while(Y<Q.path.length){let G=Q.path[Y];if(Y!==Q.path.length-1)X[G]=X[G]||{_errors:[]};else X[G]=X[G]||{_errors:[]},X[G]._errors.push(F(Q));X=X[G],Y++}}};return B(this),$}static assert(D){if(!(D instanceof O0))throw Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,$D.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(D=(F)=>F.message){let F={},$=[];for(let B of this.issues)if(B.path.length>0){let J=B.path[0];F[J]=F[J]||[],F[J].push(D(B))}else $.push(D(B));return{formErrors:$,fieldErrors:F}}get formErrors(){return this.flatten()}}O0.create=(D)=>{return new O0(D)};var J2D=(D,F)=>{let $;switch(D.code){case C.invalid_type:if(D.received===w.undefined)$="Required";else $=`Expected ${D.expected}, received ${D.received}`;break;case C.invalid_literal:$=`Invalid literal value, expected ${JSON.stringify(D.expected,$D.jsonStringifyReplacer)}`;break;case C.unrecognized_keys:$=`Unrecognized key(s) in object: ${$D.joinValues(D.keys,", ")}`;break;case C.invalid_union:$="Invalid input";break;case C.invalid_union_discriminator:$=`Invalid discriminator value. Expected ${$D.joinValues(D.options)}`;break;case C.invalid_enum_value:$=`Invalid enum value. Expected ${$D.joinValues(D.options)}, received '${D.received}'`;break;case C.invalid_arguments:$="Invalid function arguments";break;case C.invalid_return_type:$="Invalid function return type";break;case C.invalid_date:$="Invalid date";break;case C.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 $D.assertNever(D.validation);else if(D.validation!=="regex")$=`Invalid ${D.validation}`;else $="Invalid";break;case C.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 C.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 C.custom:$="Invalid input";break;case C.invalid_intersection_types:$="Intersection results could not be merged";break;case C.not_multiple_of:$=`Number must be a multiple of ${D.multipleOf}`;break;case C.not_finite:$="Number must be finite";break;default:$=F.defaultError,$D.assertNever(D)}return{message:$}},E8=J2D;var Bv=E8;function Q2D(D){Bv=D}function zF(){return Bv}var q5=(D)=>{let{data:F,path:$,errorMaps:B,issueData:J}=D,Q=[...$,...J.path||[]],X={...J,path:Q};if(J.message!==void 0)return{...J,path:Q,message:J.message};let Y="",G=B.filter((H)=>!!H).slice().reverse();for(let H of G)Y=H(X,{data:F,defaultError:Y}).message;return{...J,path:Q,message:Y}},X2D=[];function j(D,F){let $=zF(),B=q5({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,$,$===E8?void 0:E8].filter((J)=>!!J)});D.common.issues.push(B)}class D0{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 B of F){if(B.status==="aborted")return g;if(B.status==="dirty")D.dirty();$.push(B.value)}return{status:D.value,value:$}}static async mergeObjectAsync(D,F){let $=[];for(let B of F){let J=await B.key,Q=await B.value;$.push({key:J,value:Q})}return D0.mergeObjectSync(D,$)}static mergeObjectSync(D,F){let $={};for(let B of F){let{key:J,value:Q}=B;if(J.status==="aborted")return g;if(Q.status==="aborted")return g;if(J.status==="dirty")D.dirty();if(Q.status==="dirty")D.dirty();if(J.value!=="__proto__"&&(typeof Q.value<"u"||B.alwaysSet))$[J.value]=Q.value}return{status:D.value,value:$}}}var g=Object.freeze({status:"aborted"}),d6=(D)=>({status:"dirty",value:D}),H0=(D)=>({status:"valid",value:D}),L$=(D)=>D.status==="aborted",M$=(D)=>D.status==="dirty",J6=(D)=>D.status==="valid",VF=(D)=>typeof Promise<"u"&&D instanceof Promise;var x;(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(x||(x={}));class Z1{constructor(D,F,$,B){this._cachedPath=[],this.parent=D,this.data=F,this._path=$,this._key=B}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var Jv=(D,F)=>{if(J6(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 O0(D.common.issues);return this._error=$,this._error}}}};function o(D){if(!D)return{};let{errorMap:F,invalid_type_error:$,required_error:B,description:J}=D;if(F&&($||B))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(F)return{errorMap:F,description:J};return{errorMap:(X,Y)=>{let{message:G}=D;if(X.code==="invalid_enum_value")return{message:G??Y.defaultError};if(typeof Y.data>"u")return{message:G??B??Y.defaultError};if(X.code!=="invalid_type")return{message:Y.defaultError};return{message:G??$??Y.defaultError}},description:J}}class e{get description(){return this._def.description}_getType(D){return c1(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:c1(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new D0,ctx:{common:D.parent.common,data:D.data,parsedType:c1(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(VF(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:c1(D)},B=this._parseSync({data:D,path:$.path,parent:$});return Jv($,B)}"~validate"(D){let F={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:D,parsedType:c1(D)};if(!this["~standard"].async)try{let $=this._parseSync({data:D,path:[],parent:F});return J6($)?{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(($)=>J6($)?{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:c1(D)},B=this._parse({data:D,path:$.path,parent:$}),J=await(VF(B)?B:Promise.resolve(B));return Jv($,J)}refine(D,F){let $=(B)=>{if(typeof F==="string"||typeof F>"u")return{message:F};else if(typeof F==="function")return F(B);else return F};return this._refinement((B,J)=>{let Q=D(B),X=()=>J.addIssue({code:C.custom,...$(B)});if(typeof Promise<"u"&&Q instanceof Promise)return Q.then((Y)=>{if(!Y)return X(),!1;else return!0});if(!Q)return X(),!1;else return!0})}refinement(D,F){return this._refinement(($,B)=>{if(!D($))return B.addIssue(typeof F==="function"?F($,B):F),!1;else return!0})}_refinement(D){return new U1({schema:this,typeName:h.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 A1.create(this,this._def)}nullable(){return K8.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return V1.create(this)}promise(){return i6.create(this,this._def)}or(D){return NF.create([this,D],this._def)}and(D){return CF.create(this,D,this._def)}transform(D){return new U1({...o(this._def),schema:this,typeName:h.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new jF({...o(this._def),innerType:this,defaultValue:F,typeName:h.ZodDefault})}brand(){return new C$({typeName:h.ZodBranded,type:this,...o(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new OF({...o(this._def),innerType:this,catchValue:F,typeName:h.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return U5.create(this,D)}readonly(){return IF.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var Y2D=/^c[^\s-]{8,}$/i,G2D=/^[0-9a-z]+$/,H2D=/^[0-9A-HJKMNP-TV-Z]{26}$/i,W2D=/^[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,E2D=/^[a-z0-9_-]{21}$/i,q2D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,K2D=/^[-+]?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)?)??$/,z2D=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,V2D="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",R2,A2D=/^(?:(?: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])$/,Z2D=/^(?:(?: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])$/,U2D=/^(([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]))$/,L2D=/^(([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])$/,M2D=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,N2D=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Xv="((\\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])))",C2D=new RegExp(`^${Xv}$`);function Yv(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 R2D(D){return new RegExp(`^${Yv(D)}$`)}function Gv(D){let F=`${Xv}T${Yv(D)}`,$=[];if($.push(D.local?"Z?":"Z"),D.offset)$.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${$.join("|")})`,new RegExp(`^${F}$`)}function w2D(D,F){if((F==="v4"||!F)&&A2D.test(D))return!0;if((F==="v6"||!F)&&U2D.test(D))return!0;return!1}function T2D(D,F){if(!q2D.test(D))return!1;try{let[$]=D.split(".");if(!$)return!1;let B=$.replace(/-/g,"+").replace(/_/g,"/").padEnd($.length+(4-$.length%4)%4,"="),J=JSON.parse(atob(B));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(F&&J.alg!==F)return!1;return!0}catch{return!1}}function j2D(D,F){if((F==="v4"||!F)&&Z2D.test(D))return!0;if((F==="v6"||!F)&&L2D.test(D))return!0;return!1}class z1 extends e{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==w.string){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.string,received:J.parsedType}),g}let $=new D0,B=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(D.data.length<J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),$.dirty()}else if(J.kind==="max"){if(D.data.length>J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),$.dirty()}else if(J.kind==="length"){let Q=D.data.length>J.value,X=D.data.length<J.value;if(Q||X){if(B=this._getOrReturnCtx(D,B),Q)j(B,{code:C.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});else if(X)j(B,{code:C.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});$.dirty()}}else if(J.kind==="email"){if(!z2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"email",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="emoji"){if(!R2)R2=new RegExp(V2D,"u");if(!R2.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"emoji",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="uuid"){if(!W2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"uuid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="nanoid"){if(!E2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"nanoid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid"){if(!Y2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"cuid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid2"){if(!G2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"cuid2",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ulid"){if(!H2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"ulid",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="url")try{new URL(D.data)}catch{B=this._getOrReturnCtx(D,B),j(B,{validation:"url",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="regex"){if(J.regex.lastIndex=0,!J.regex.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"regex",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="trim")D.data=D.data.trim();else if(J.kind==="includes"){if(!D.data.includes(J.value,J.position))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{includes:J.value,position:J.position},message:J.message}),$.dirty()}else if(J.kind==="toLowerCase")D.data=D.data.toLowerCase();else if(J.kind==="toUpperCase")D.data=D.data.toUpperCase();else if(J.kind==="startsWith"){if(!D.data.startsWith(J.value))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{startsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="endsWith"){if(!D.data.endsWith(J.value))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:{endsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="datetime"){if(!Gv(J).test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"datetime",message:J.message}),$.dirty()}else if(J.kind==="date"){if(!C2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"date",message:J.message}),$.dirty()}else if(J.kind==="time"){if(!R2D(J).test(D.data))B=this._getOrReturnCtx(D,B),j(B,{code:C.invalid_string,validation:"time",message:J.message}),$.dirty()}else if(J.kind==="duration"){if(!K2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"duration",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ip"){if(!w2D(D.data,J.version))B=this._getOrReturnCtx(D,B),j(B,{validation:"ip",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="jwt"){if(!T2D(D.data,J.alg))B=this._getOrReturnCtx(D,B),j(B,{validation:"jwt",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cidr"){if(!j2D(D.data,J.version))B=this._getOrReturnCtx(D,B),j(B,{validation:"cidr",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64"){if(!M2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"base64",code:C.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64url"){if(!N2D.test(D.data))B=this._getOrReturnCtx(D,B),j(B,{validation:"base64url",code:C.invalid_string,message:J.message}),$.dirty()}else $D.assertNever(J);return{status:$.value,value:D.data}}_regex(D,F,$){return this.refinement((B)=>D.test(B),{validation:F,code:C.invalid_string,...x.errToObj($)})}_addCheck(D){return new z1({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",...x.errToObj(D)})}url(D){return this._addCheck({kind:"url",...x.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",...x.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",...x.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",...x.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",...x.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",...x.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",...x.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",...x.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",...x.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",...x.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",...x.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",...x.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,...x.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,...x.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",...x.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,...x.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,...x.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,...x.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,...x.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,...x.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,...x.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,...x.errToObj(F)})}nonempty(D){return this.min(1,x.errToObj(D))}trim(){return new z1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new z1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new z1({...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}}z1.create=(D)=>{return new z1({checks:[],typeName:h.ZodString,coerce:D?.coerce??!1,...o(D)})};function O2D(D,F){let $=(D.toString().split(".")[1]||"").length,B=(F.toString().split(".")[1]||"").length,J=$>B?$:B,Q=Number.parseInt(D.toFixed(J).replace(".","")),X=Number.parseInt(F.toFixed(J).replace(".",""));return Q%X/10**J}class X6 extends e{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)!==w.number){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.number,received:J.parsedType}),g}let $=void 0,B=new D0;for(let J of this._def.checks)if(J.kind==="int"){if(!$D.isInteger(D.data))$=this._getOrReturnCtx(D,$),j($,{code:C.invalid_type,expected:"integer",received:"float",message:J.message}),B.dirty()}else if(J.kind==="min"){if(J.inclusive?D.data<J.value:D.data<=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_small,minimum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="max"){if(J.inclusive?D.data>J.value:D.data>=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(O2D(D.data,J.value)!==0)$=this._getOrReturnCtx(D,$),j($,{code:C.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(D.data))$=this._getOrReturnCtx(D,$),j($,{code:C.not_finite,message:J.message}),B.dirty()}else $D.assertNever(J);return{status:B.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,x.toString(F))}gt(D,F){return this.setLimit("min",D,!1,x.toString(F))}lte(D,F){return this.setLimit("max",D,!0,x.toString(F))}lt(D,F){return this.setLimit("max",D,!1,x.toString(F))}setLimit(D,F,$,B){return new X6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:x.toString(B)}]})}_addCheck(D){return new X6({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:x.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:x.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:x.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.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"&&$D.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)}}X6.create=(D)=>{return new X6({checks:[],typeName:h.ZodNumber,coerce:D?.coerce||!1,...o(D)})};class Y6 extends e{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)!==w.bigint)return this._getInvalidInput(D);let $=void 0,B=new D0;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?D.data<J.value:D.data<=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_small,type:"bigint",minimum:J.value,inclusive:J.inclusive,message:J.message}),B.dirty()}else if(J.kind==="max"){if(J.inclusive?D.data>J.value:D.data>=J.value)$=this._getOrReturnCtx(D,$),j($,{code:C.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(D.data%J.value!==BigInt(0))$=this._getOrReturnCtx(D,$),j($,{code:C.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else $D.assertNever(J);return{status:B.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return j(F,{code:C.invalid_type,expected:w.bigint,received:F.parsedType}),g}gte(D,F){return this.setLimit("min",D,!0,x.toString(F))}gt(D,F){return this.setLimit("min",D,!1,x.toString(F))}lte(D,F){return this.setLimit("max",D,!0,x.toString(F))}lt(D,F){return this.setLimit("max",D,!1,x.toString(F))}setLimit(D,F,$,B){return new Y6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:x.toString(B)}]})}_addCheck(D){return new Y6({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:x.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}}Y6.create=(D)=>{return new Y6({checks:[],typeName:h.ZodBigInt,coerce:D?.coerce??!1,...o(D)})};class UF extends e{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==w.boolean){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.boolean,received:$.parsedType}),g}return H0(D.data)}}UF.create=(D)=>{return new UF({typeName:h.ZodBoolean,coerce:D?.coerce||!1,...o(D)})};class p6 extends e{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==w.date){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_type,expected:w.date,received:J.parsedType}),g}if(Number.isNaN(D.data.getTime())){let J=this._getOrReturnCtx(D);return j(J,{code:C.invalid_date}),g}let $=new D0,B=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(D.data.getTime()<J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_small,message:J.message,inclusive:!0,exact:!1,minimum:J.value,type:"date"}),$.dirty()}else if(J.kind==="max"){if(D.data.getTime()>J.value)B=this._getOrReturnCtx(D,B),j(B,{code:C.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),$.dirty()}else $D.assertNever(J);return{status:$.value,value:new Date(D.data.getTime())}}_addCheck(D){return new p6({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:x.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:x.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}}p6.create=(D)=>{return new p6({checks:[],coerce:D?.coerce||!1,typeName:h.ZodDate,...o(D)})};class K5 extends e{_parse(D){if(this._getType(D)!==w.symbol){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.symbol,received:$.parsedType}),g}return H0(D.data)}}K5.create=(D)=>{return new K5({typeName:h.ZodSymbol,...o(D)})};class LF extends e{_parse(D){if(this._getType(D)!==w.undefined){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.undefined,received:$.parsedType}),g}return H0(D.data)}}LF.create=(D)=>{return new LF({typeName:h.ZodUndefined,...o(D)})};class MF extends e{_parse(D){if(this._getType(D)!==w.null){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.null,received:$.parsedType}),g}return H0(D.data)}}MF.create=(D)=>{return new MF({typeName:h.ZodNull,...o(D)})};class c6 extends e{constructor(){super(...arguments);this._any=!0}_parse(D){return H0(D.data)}}c6.create=(D)=>{return new c6({typeName:h.ZodAny,...o(D)})};class Q6 extends e{constructor(){super(...arguments);this._unknown=!0}_parse(D){return H0(D.data)}}Q6.create=(D)=>{return new Q6({typeName:h.ZodUnknown,...o(D)})};class n1 extends e{_parse(D){let F=this._getOrReturnCtx(D);return j(F,{code:C.invalid_type,expected:w.never,received:F.parsedType}),g}}n1.create=(D)=>{return new n1({typeName:h.ZodNever,...o(D)})};class z5 extends e{_parse(D){if(this._getType(D)!==w.undefined){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.void,received:$.parsedType}),g}return H0(D.data)}}z5.create=(D)=>{return new z5({typeName:h.ZodVoid,...o(D)})};class V1 extends e{_parse(D){let{ctx:F,status:$}=this._processInputParams(D),B=this._def;if(F.parsedType!==w.array)return j(F,{code:C.invalid_type,expected:w.array,received:F.parsedType}),g;if(B.exactLength!==null){let Q=F.data.length>B.exactLength.value,X=F.data.length<B.exactLength.value;if(Q||X)j(F,{code:Q?C.too_big:C.too_small,minimum:X?B.exactLength.value:void 0,maximum:Q?B.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:B.exactLength.message}),$.dirty()}if(B.minLength!==null){if(F.data.length<B.minLength.value)j(F,{code:C.too_small,minimum:B.minLength.value,type:"array",inclusive:!0,exact:!1,message:B.minLength.message}),$.dirty()}if(B.maxLength!==null){if(F.data.length>B.maxLength.value)j(F,{code:C.too_big,maximum:B.maxLength.value,type:"array",inclusive:!0,exact:!1,message:B.maxLength.message}),$.dirty()}if(F.common.async)return Promise.all([...F.data].map((Q,X)=>{return B.type._parseAsync(new Z1(F,Q,F.path,X))})).then((Q)=>{return D0.mergeArray($,Q)});let J=[...F.data].map((Q,X)=>{return B.type._parseSync(new Z1(F,Q,F.path,X))});return D0.mergeArray($,J)}get element(){return this._def.type}min(D,F){return new V1({...this._def,minLength:{value:D,message:x.toString(F)}})}max(D,F){return new V1({...this._def,maxLength:{value:D,message:x.toString(F)}})}length(D,F){return new V1({...this._def,exactLength:{value:D,message:x.toString(F)}})}nonempty(D){return this.min(1,D)}}V1.create=(D,F)=>{return new V1({type:D,minLength:null,maxLength:null,exactLength:null,typeName:h.ZodArray,...o(F)})};function AF(D){if(D instanceof ID){let F={};for(let $ in D.shape){let B=D.shape[$];F[$]=A1.create(AF(B))}return new ID({...D._def,shape:()=>F})}else if(D instanceof V1)return new V1({...D._def,type:AF(D.element)});else if(D instanceof A1)return A1.create(AF(D.unwrap()));else if(D instanceof K8)return K8.create(AF(D.unwrap()));else if(D instanceof i1)return i1.create(D.items.map((F)=>AF(F)));else return D}class ID extends e{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=$D.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==w.object){let G=this._getOrReturnCtx(D);return j(G,{code:C.invalid_type,expected:w.object,received:G.parsedType}),g}let{status:$,ctx:B}=this._processInputParams(D),{shape:J,keys:Q}=this._getCached(),X=[];if(!(this._def.catchall instanceof n1&&this._def.unknownKeys==="strip")){for(let G in B.data)if(!Q.includes(G))X.push(G)}let Y=[];for(let G of Q){let H=J[G],W=B.data[G];Y.push({key:{status:"valid",value:G},value:H._parse(new Z1(B,W,B.path,G)),alwaysSet:G in B.data})}if(this._def.catchall instanceof n1){let G=this._def.unknownKeys;if(G==="passthrough")for(let H of X)Y.push({key:{status:"valid",value:H},value:{status:"valid",value:B.data[H]}});else if(G==="strict"){if(X.length>0)j(B,{code:C.unrecognized_keys,keys:X}),$.dirty()}else if(G==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let G=this._def.catchall;for(let H of X){let W=B.data[H];Y.push({key:{status:"valid",value:H},value:G._parse(new Z1(B,W,B.path,H)),alwaysSet:H in B.data})}}if(B.common.async)return Promise.resolve().then(async()=>{let G=[];for(let H of Y){let W=await H.key,K=await H.value;G.push({key:W,value:K,alwaysSet:H.alwaysSet})}return G}).then((G)=>{return D0.mergeObjectSync($,G)});else return D0.mergeObjectSync($,Y)}get shape(){return this._def.shape()}strict(D){return x.errToObj,new ID({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,$)=>{let B=this._def.errorMap?.(F,$).message??$.defaultError;if(F.code==="unrecognized_keys")return{message:x.errToObj(D).message??B};return{message:B}}}:{}})}strip(){return new ID({...this._def,unknownKeys:"strip"})}passthrough(){return new ID({...this._def,unknownKeys:"passthrough"})}extend(D){return new ID({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new ID({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:h.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new ID({...this._def,catchall:D})}pick(D){let F={};for(let $ of $D.objectKeys(D))if(D[$]&&this.shape[$])F[$]=this.shape[$];return new ID({...this._def,shape:()=>F})}omit(D){let F={};for(let $ of $D.objectKeys(this.shape))if(!D[$])F[$]=this.shape[$];return new ID({...this._def,shape:()=>F})}deepPartial(){return AF(this)}partial(D){let F={};for(let $ of $D.objectKeys(this.shape)){let B=this.shape[$];if(D&&!D[$])F[$]=B;else F[$]=B.optional()}return new ID({...this._def,shape:()=>F})}required(D){let F={};for(let $ of $D.objectKeys(this.shape))if(D&&!D[$])F[$]=this.shape[$];else{let J=this.shape[$];while(J instanceof A1)J=J._def.innerType;F[$]=J}return new ID({...this._def,shape:()=>F})}keyof(){return Hv($D.objectKeys(this.shape))}}ID.create=(D,F)=>{return new ID({shape:()=>D,unknownKeys:"strip",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};ID.strictCreate=(D,F)=>{return new ID({shape:()=>D,unknownKeys:"strict",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};ID.lazycreate=(D,F)=>{return new ID({shape:D,unknownKeys:"strip",catchall:n1.create(),typeName:h.ZodObject,...o(F)})};class NF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$=this._def.options;function B(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return F.common.issues.push(...X.ctx.common.issues),X.result;let Q=J.map((X)=>new O0(X.ctx.common.issues));return j(F,{code:C.invalid_union,unionErrors:Q}),g}if(F.common.async)return Promise.all($.map(async(J)=>{let Q={...F,common:{...F.common,issues:[]},parent:null};return{result:await J._parseAsync({data:F.data,path:F.path,parent:Q}),ctx:Q}})).then(B);else{let J=void 0,Q=[];for(let Y of $){let G={...F,common:{...F.common,issues:[]},parent:null},H=Y._parseSync({data:F.data,path:F.path,parent:G});if(H.status==="valid")return H;else if(H.status==="dirty"&&!J)J={result:H,ctx:G};if(G.common.issues.length)Q.push(G.common.issues)}if(J)return F.common.issues.push(...J.ctx.common.issues),J.result;let X=Q.map((Y)=>new O0(Y));return j(F,{code:C.invalid_union,unionErrors:X}),g}}get options(){return this._def.options}}NF.create=(D,F)=>{return new NF({options:D,typeName:h.ZodUnion,...o(F)})};var q8=(D)=>{if(D instanceof RF)return q8(D.schema);else if(D instanceof U1)return q8(D.innerType());else if(D instanceof wF)return[D.value];else if(D instanceof G6)return D.options;else if(D instanceof TF)return $D.objectValues(D.enum);else if(D instanceof jF)return q8(D._def.innerType);else if(D instanceof LF)return[void 0];else if(D instanceof MF)return[null];else if(D instanceof A1)return[void 0,...q8(D.unwrap())];else if(D instanceof K8)return[null,...q8(D.unwrap())];else if(D instanceof C$)return q8(D.unwrap());else if(D instanceof IF)return q8(D.unwrap());else if(D instanceof OF)return q8(D._def.innerType);else return[]};class N$ extends e{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.object)return j(F,{code:C.invalid_type,expected:w.object,received:F.parsedType}),g;let $=this.discriminator,B=F.data[$],J=this.optionsMap.get(B);if(!J)return j(F,{code:C.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[$]}),g;if(F.common.async)return J._parseAsync({data:F.data,path:F.path,parent:F});else return J._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 B=new Map;for(let J of F){let Q=q8(J.shape[D]);if(!Q.length)throw Error(`A discriminator value for key \`${D}\` could not be extracted from all schema options`);for(let X of Q){if(B.has(X))throw Error(`Discriminator property ${String(D)} has duplicate value ${String(X)}`);B.set(X,J)}}return new N$({typeName:h.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:B,...o($)})}}function w2(D,F){let $=c1(D),B=c1(F);if(D===F)return{valid:!0,data:D};else if($===w.object&&B===w.object){let J=$D.objectKeys(F),Q=$D.objectKeys(D).filter((Y)=>J.indexOf(Y)!==-1),X={...D,...F};for(let Y of Q){let G=w2(D[Y],F[Y]);if(!G.valid)return{valid:!1};X[Y]=G.data}return{valid:!0,data:X}}else if($===w.array&&B===w.array){if(D.length!==F.length)return{valid:!1};let J=[];for(let Q=0;Q<D.length;Q++){let X=D[Q],Y=F[Q],G=w2(X,Y);if(!G.valid)return{valid:!1};J.push(G.data)}return{valid:!0,data:J}}else if($===w.date&&B===w.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}class CF extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=(J,Q)=>{if(L$(J)||L$(Q))return g;let X=w2(J.value,Q.value);if(!X.valid)return j($,{code:C.invalid_intersection_types}),g;if(M$(J)||M$(Q))F.dirty();return{status:F.value,value:X.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(([J,Q])=>B(J,Q));else return B(this._def.left._parseSync({data:$.data,path:$.path,parent:$}),this._def.right._parseSync({data:$.data,path:$.path,parent:$}))}}CF.create=(D,F,$)=>{return new CF({left:D,right:F,typeName:h.ZodIntersection,...o($)})};class i1 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.array)return j($,{code:C.invalid_type,expected:w.array,received:$.parsedType}),g;if($.data.length<this._def.items.length)return j($,{code:C.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;if(!this._def.rest&&$.data.length>this._def.items.length)j($,{code:C.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),F.dirty();let J=[...$.data].map((Q,X)=>{let Y=this._def.items[X]||this._def.rest;if(!Y)return null;return Y._parse(new Z1($,Q,$.path,X))}).filter((Q)=>!!Q);if($.common.async)return Promise.all(J).then((Q)=>{return D0.mergeArray(F,Q)});else return D0.mergeArray(F,J)}get items(){return this._def.items}rest(D){return new i1({...this._def,rest:D})}}i1.create=(D,F)=>{if(!Array.isArray(D))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new i1({items:D,typeName:h.ZodTuple,rest:null,...o(F)})};class V5 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.object)return j($,{code:C.invalid_type,expected:w.object,received:$.parsedType}),g;let B=[],J=this._def.keyType,Q=this._def.valueType;for(let X in $.data)B.push({key:J._parse(new Z1($,X,$.path,X)),value:Q._parse(new Z1($,$.data[X],$.path,X)),alwaysSet:X in $.data});if($.common.async)return D0.mergeObjectAsync(F,B);else return D0.mergeObjectSync(F,B)}get element(){return this._def.valueType}static create(D,F,$){if(F instanceof e)return new V5({keyType:D,valueType:F,typeName:h.ZodRecord,...o($)});return new V5({keyType:z1.create(),valueType:D,typeName:h.ZodRecord,...o(F)})}}class A5 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.map)return j($,{code:C.invalid_type,expected:w.map,received:$.parsedType}),g;let B=this._def.keyType,J=this._def.valueType,Q=[...$.data.entries()].map(([X,Y],G)=>{return{key:B._parse(new Z1($,X,$.path,[G,"key"])),value:J._parse(new Z1($,Y,$.path,[G,"value"]))}});if($.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let Y of Q){let G=await Y.key,H=await Y.value;if(G.status==="aborted"||H.status==="aborted")return g;if(G.status==="dirty"||H.status==="dirty")F.dirty();X.set(G.value,H.value)}return{status:F.value,value:X}})}else{let X=new Map;for(let Y of Q){let{key:G,value:H}=Y;if(G.status==="aborted"||H.status==="aborted")return g;if(G.status==="dirty"||H.status==="dirty")F.dirty();X.set(G.value,H.value)}return{status:F.value,value:X}}}}A5.create=(D,F,$)=>{return new A5({valueType:F,keyType:D,typeName:h.ZodMap,...o($)})};class n6 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==w.set)return j($,{code:C.invalid_type,expected:w.set,received:$.parsedType}),g;let B=this._def;if(B.minSize!==null){if($.data.size<B.minSize.value)j($,{code:C.too_small,minimum:B.minSize.value,type:"set",inclusive:!0,exact:!1,message:B.minSize.message}),F.dirty()}if(B.maxSize!==null){if($.data.size>B.maxSize.value)j($,{code:C.too_big,maximum:B.maxSize.value,type:"set",inclusive:!0,exact:!1,message:B.maxSize.message}),F.dirty()}let J=this._def.valueType;function Q(Y){let G=new Set;for(let H of Y){if(H.status==="aborted")return g;if(H.status==="dirty")F.dirty();G.add(H.value)}return{status:F.value,value:G}}let X=[...$.data.values()].map((Y,G)=>J._parse(new Z1($,Y,$.path,G)));if($.common.async)return Promise.all(X).then((Y)=>Q(Y));else return Q(X)}min(D,F){return new n6({...this._def,minSize:{value:D,message:x.toString(F)}})}max(D,F){return new n6({...this._def,maxSize:{value:D,message:x.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}}n6.create=(D,F)=>{return new n6({valueType:D,minSize:null,maxSize:null,typeName:h.ZodSet,...o(F)})};class ZF extends e{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.function)return j(F,{code:C.invalid_type,expected:w.function,received:F.parsedType}),g;function $(X,Y){return q5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),E8].filter((G)=>!!G),issueData:{code:C.invalid_arguments,argumentsError:Y}})}function B(X,Y){return q5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,zF(),E8].filter((G)=>!!G),issueData:{code:C.invalid_return_type,returnTypeError:Y}})}let J={errorMap:F.common.contextualErrorMap},Q=F.data;if(this._def.returns instanceof i6){let X=this;return H0(async function(...Y){let G=new O0([]),H=await X._def.args.parseAsync(Y,J).catch((V)=>{throw G.addIssue($(Y,V)),G}),W=await Reflect.apply(Q,this,H);return await X._def.returns._def.type.parseAsync(W,J).catch((V)=>{throw G.addIssue(B(W,V)),G})})}else{let X=this;return H0(function(...Y){let G=X._def.args.safeParse(Y,J);if(!G.success)throw new O0([$(Y,G.error)]);let H=Reflect.apply(Q,this,G.data),W=X._def.returns.safeParse(H,J);if(!W.success)throw new O0([B(H,W.error)]);return W.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new ZF({...this._def,args:i1.create(D).rest(Q6.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:i1.create([]).rest(Q6.create()),returns:F||Q6.create(),typeName:h.ZodFunction,...o($)})}}class RF extends e{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:h.ZodLazy,...o(F)})};class wF extends e{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return j(F,{received:F.data,code:C.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:D.data}}get value(){return this._def.value}}wF.create=(D,F)=>{return new wF({value:D,typeName:h.ZodLiteral,...o(F)})};function Hv(D,F){return new G6({values:D,typeName:h.ZodEnum,...o(F)})}class G6 extends e{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),$=this._def.values;return j(F,{expected:$D.joinValues($),received:F.parsedType,code:C.invalid_type}),g}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 j(F,{received:F.data,code:C.invalid_enum_value,options:$}),g}return H0(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 G6.create(D,{...this._def,...F})}exclude(D,F=this._def){return G6.create(this.options.filter(($)=>!D.includes($)),{...this._def,...F})}}G6.create=Hv;class TF extends e{_parse(D){let F=$D.getValidEnumValues(this._def.values),$=this._getOrReturnCtx(D);if($.parsedType!==w.string&&$.parsedType!==w.number){let B=$D.objectValues(F);return j($,{expected:$D.joinValues(B),received:$.parsedType,code:C.invalid_type}),g}if(!this._cache)this._cache=new Set($D.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let B=$D.objectValues(F);return j($,{received:$.data,code:C.invalid_enum_value,options:B}),g}return H0(D.data)}get enum(){return this._def.values}}TF.create=(D,F)=>{return new TF({values:D,typeName:h.ZodNativeEnum,...o(F)})};class i6 extends e{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==w.promise&&F.common.async===!1)return j(F,{code:C.invalid_type,expected:w.promise,received:F.parsedType}),g;let $=F.parsedType===w.promise?F.data:Promise.resolve(F.data);return H0($.then((B)=>{return this._def.type.parseAsync(B,{path:F.path,errorMap:F.common.contextualErrorMap})}))}}i6.create=(D,F)=>{return new i6({type:D,typeName:h.ZodPromise,...o(F)})};class U1 extends e{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===h.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=this._def.effect||null,J={addIssue:(Q)=>{if(j($,Q),Q.fatal)F.abort();else F.dirty()},get path(){return $.path}};if(J.addIssue=J.addIssue.bind(J),B.type==="preprocess"){let Q=B.transform($.data,J);if($.common.async)return Promise.resolve(Q).then(async(X)=>{if(F.value==="aborted")return g;let Y=await this._def.schema._parseAsync({data:X,path:$.path,parent:$});if(Y.status==="aborted")return g;if(Y.status==="dirty")return d6(Y.value);if(F.value==="dirty")return d6(Y.value);return Y});else{if(F.value==="aborted")return g;let X=this._def.schema._parseSync({data:Q,path:$.path,parent:$});if(X.status==="aborted")return g;if(X.status==="dirty")return d6(X.value);if(F.value==="dirty")return d6(X.value);return X}}if(B.type==="refinement"){let Q=(X)=>{let Y=B.refinement(X,J);if($.common.async)return Promise.resolve(Y);if(Y instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if($.common.async===!1){let X=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(X.status==="aborted")return g;if(X.status==="dirty")F.dirty();return Q(X.value),{status:F.value,value:X.value}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((X)=>{if(X.status==="aborted")return g;if(X.status==="dirty")F.dirty();return Q(X.value).then(()=>{return{status:F.value,value:X.value}})})}if(B.type==="transform")if($.common.async===!1){let Q=this._def.schema._parseSync({data:$.data,path:$.path,parent:$});if(!J6(Q))return g;let X=B.transform(Q.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:F.value,value:X}}else return this._def.schema._parseAsync({data:$.data,path:$.path,parent:$}).then((Q)=>{if(!J6(Q))return g;return Promise.resolve(B.transform(Q.value,J)).then((X)=>({status:F.value,value:X}))});$D.assertNever(B)}}U1.create=(D,F,$)=>{return new U1({schema:D,typeName:h.ZodEffects,effect:F,...o($)})};U1.createWithPreprocess=(D,F,$)=>{return new U1({schema:F,effect:{type:"preprocess",transform:D},typeName:h.ZodEffects,...o($)})};class A1 extends e{_parse(D){if(this._getType(D)===w.undefined)return H0(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}A1.create=(D,F)=>{return new A1({innerType:D,typeName:h.ZodOptional,...o(F)})};class K8 extends e{_parse(D){if(this._getType(D)===w.null)return H0(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}K8.create=(D,F)=>{return new K8({innerType:D,typeName:h.ZodNullable,...o(F)})};class jF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;if(F.parsedType===w.undefined)$=this._def.defaultValue();return this._def.innerType._parse({data:$,path:F.path,parent:F})}removeDefault(){return this._def.innerType}}jF.create=(D,F)=>{return new jF({innerType:D,typeName:h.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...o(F)})};class OF extends e{_parse(D){let{ctx:F}=this._processInputParams(D),$={...F,common:{...F.common,issues:[]}},B=this._def.innerType._parse({data:$.data,path:$.path,parent:{...$}});if(VF(B))return B.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new O0($.common.issues)},input:$.data})}});else return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new O0($.common.issues)},input:$.data})}}removeCatch(){return this._def.innerType}}OF.create=(D,F)=>{return new OF({innerType:D,typeName:h.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...o(F)})};class Z5 extends e{_parse(D){if(this._getType(D)!==w.nan){let $=this._getOrReturnCtx(D);return j($,{code:C.invalid_type,expected:w.nan,received:$.parsedType}),g}return{status:"valid",value:D.data}}}Z5.create=(D)=>{return new Z5({typeName:h.ZodNaN,...o(D)})};var I2D=Symbol("zod_brand");class C$ extends e{_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}}class U5 extends e{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:$.data,path:$.path,parent:$});if(J.status==="aborted")return g;if(J.status==="dirty")return F.dirty(),d6(J.value);else return this._def.out._parseAsync({data:J.value,path:$.path,parent:$})})();else{let B=this._def.in._parseSync({data:$.data,path:$.path,parent:$});if(B.status==="aborted")return g;if(B.status==="dirty")return F.dirty(),{status:"dirty",value:B.value};else return this._def.out._parseSync({data:B.value,path:$.path,parent:$})}}static create(D,F){return new U5({in:D,out:F,typeName:h.ZodPipeline})}}class IF extends e{_parse(D){let F=this._def.innerType._parse(D),$=(B)=>{if(J6(B))B.value=Object.freeze(B.value);return B};return VF(F)?F.then((B)=>$(B)):$(F)}unwrap(){return this._def.innerType}}IF.create=(D,F)=>{return new IF({innerType:D,typeName:h.ZodReadonly,...o(F)})};function Qv(D,F){let $=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof $==="string"?{message:$}:$}function Wv(D,F={},$){if(D)return c6.create().superRefine((B,J)=>{let Q=D(B);if(Q instanceof Promise)return Q.then((X)=>{if(!X){let Y=Qv(F,B),G=Y.fatal??$??!0;J.addIssue({code:"custom",...Y,fatal:G})}});if(!Q){let X=Qv(F,B),Y=X.fatal??$??!0;J.addIssue({code:"custom",...X,fatal:Y})}return});return c6.create()}var P2D={object:ID.lazycreate},h;(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"})(h||(h={}));var S2D=(D,F={message:`Input not instance of ${D.name}`})=>Wv(($)=>$ instanceof D,F),Ev=z1.create,qv=X6.create,k2D=Z5.create,v2D=Y6.create,Kv=UF.create,y2D=p6.create,x2D=K5.create,_2D=LF.create,f2D=MF.create,g2D=c6.create,h2D=Q6.create,b2D=n1.create,u2D=z5.create,m2D=V1.create,l2D=ID.create,d2D=ID.strictCreate,p2D=NF.create,c2D=N$.create,n2D=CF.create,i2D=i1.create,a2D=V5.create,o2D=A5.create,s2D=n6.create,r2D=ZF.create,t2D=RF.create,e2D=wF.create,DGD=G6.create,FGD=TF.create,$GD=i6.create,BGD=U1.create,JGD=A1.create,QGD=K8.create,XGD=U1.createWithPreprocess,YGD=U5.create,GGD=()=>Ev().optional(),HGD=()=>qv().optional(),WGD=()=>Kv().optional(),EGD={string:(D)=>z1.create({...D,coerce:!0}),number:(D)=>X6.create({...D,coerce:!0}),boolean:(D)=>UF.create({...D,coerce:!0}),bigint:(D)=>Y6.create({...D,coerce:!0}),date:(D)=>p6.create({...D,coerce:!0})};var qGD=g;var pCD=L1.object({apiKey:L1.string().optional(),apiUrl:L1.string().url().default("https://api.osc.earth/nemar"),username:L1.string().optional(),email:L1.string().email().optional(),githubUsername:L1.string().optional(),sandboxCompleted:L1.boolean().optional(),sandboxDatasetId:L1.string().optional()}),x0=new U$({projectName:"nemar",schema:{apiKey:{type:"string"},apiUrl:{type:"string",default:"https://api.osc.earth/nemar"},username:{type:"string"},email:{type:"string"},githubUsername:{type:"string"},sandboxCompleted:{type:"boolean"},sandboxDatasetId:{type:"string"}},...process.env.NEMAR_CONFIG_DIR?{cwd:process.env.NEMAR_CONFIG_DIR}:{}});function F0(){return{apiKey:x0.get("apiKey"),apiUrl:x0.get("apiUrl"),username:x0.get("username"),email:x0.get("email"),githubUsername:x0.get("githubUsername"),sandboxCompleted:x0.get("sandboxCompleted"),sandboxDatasetId:x0.get("sandboxDatasetId")}}function zv(){return!!x0.get("sandboxCompleted")}function V0(D,F){x0.set(D,F)}function T2(D){x0.delete(D)}function Vv(){x0.clear()}function PD(){return!!x0.get("apiKey")}function Av(){return x0.path}var j2="https://api.osc.earth/nemar",R$=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;function I0(D){if(D instanceof Error)return D.message;return String(D)}class c extends Error{statusCode;details;constructor(D,F,$){super(F);this.statusCode=D;this.details=$;this.name="ApiError"}}var KGD=j2.includes("workers.dev");function Zv(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(KGD)return j2;return F0().apiUrl||j2}async function t(D,F={},$=!1){let B=`${Zv()}${D}`,J={"Content-Type":"application/json",...F.headers};if($){let Y=F0();if(!Y.apiKey&&$===!0)throw new c(401,"Not authenticated. Run 'nemar auth login' first.");if(Y.apiKey)J.Authorization=`Bearer ${Y.apiKey}`}let Q;try{Q=await fetch(B,{...F,headers:J})}catch(Y){throw new c(0,`Network error: Could not connect to ${Zv()}`,{originalError:Y instanceof Error?Y.message:String(Y)})}let X;try{X=await Q.json()}catch{throw new c(Q.status,`Invalid response from server (status ${Q.status})`)}if(!Q.ok)throw new c(Q.status,X.error||X.message||"Request failed",X.details);return X}async function Uv(D){return t(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function Lv(D){return t(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function Mv(D){return t("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function Nv(D){return t("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function Cv(D){return t("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function w$(){return t("/users/me",{},!0)}async function Rv(D){let F=D?`?status=${D}`:"";return t(`/admin/users${F}`,{},!0)}async function wv(D){return t(`/admin/approve/${D}`,{method:"POST"},!0)}async function Tv(D){return t(`/admin/revoke/${D}`,{method:"POST"},!0)}async function jv(D){return t(`/admin/regenerate-iam/${D}`,{method:"POST"},!0)}async function O2(D,F){return t(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function Ov(D){return t(`/datasets/${D}/publish`,{method:"POST"},!0)}async function Iv(D){return t(`/admin/datasets/${D}/ci`,{},!0)}async function T$(D){return t(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function Pv(D){return t(`/datasets/${D}/ci/status`,{},!0)}async function Sv(D){return t(`/datasets/${D}/manifest`,{},!0)}async function kv(D,F){return t(`/datasets/${D}/manifest/${F}`,{},!0)}function vv(D){let F=D;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 yv(D=!1){let $=await t(`/datasets${D?"?mine=true":""}`,{},D?!0:"optional");return $.datasets=$.datasets.map(vv),$}async function a1(D){let F=await t(`/datasets/${D}`,{},"optional");return vv(F.dataset)}async function j$(D){return t("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function O$(D){return t(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function xv(D,F){return t(`/datasets/${D}/upload-urls`,{method:"POST",body:JSON.stringify({files:F})},!0)}async function _v(D,F){return t(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function L5(D){return t(`/admin/datasets/${D}/doi`,{},!0)}async function I2(D,F){return t(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function fv(D){return t(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function gv(D,F){return t(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function hv(D){return t(`/datasets/${D}/collaborators`,{},!0)}async function bv(D){return t("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function uv(){return t("/sandbox/reset",{method:"POST"},!0)}async function mv(){return t("/sandbox/status",{},!0)}async function lv(D){return t(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function dv(D){return t(`/datasets/${D}/publish/status`,{},!0)}async function pv(D){return t(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function cv(D){let F=D?`?status=${D}`:"";return t(`/admin/publish/requests${F}`,{},!0)}async function nv(D,F){return t(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}async function iv(D,F=!1,$=!1){let B,J;do if(J=await t(`/admin/publish/${D}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({resume:F,sandbox:$,s3_lock_offset:B})},!0),J.hasMore&&J.s3_lock_offset!==void 0)B=J.s3_lock_offset;else break;while(J.hasMore);return J}async function av(D,F){return t(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function ov(D){return t(`/admin/datasets/${D}/files`,{},!0)}async function sv(D){let F=0,$=0,B=[],J=0,Q=!0;while(Q){let X=await t(`/admin/datasets/${D}/s3-lock`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({offset:F})},!0);if($+=X.locked,B.push(...X.failed),J=X.total,Q=X.hasMore,Q)F+=40}return{locked:$,total:J,failed:B}}async function gD(D,F,$=!1){if(F.no)return"declined";if(F.yes)return"confirmed";try{let{confirmed:B}=await xD.prompt([{type:"confirm",name:"confirmed",message:D,default:$}]);return B?"confirmed":"cancelled"}catch(B){let J=B instanceof Error?B.message:String(B);if(J.includes("closed")||J.includes("TTY")||J.includes("SIGINT")||J.includes("readline"))console.error("Interactive prompt unavailable (non-interactive terminal or interrupted)"),console.error(" Use --yes or --no flags for non-interactive mode");else console.error("Prompt error:",J);return"cancelled"}}async function rv(D,F,$){if($.no)return"declined";if($.yes)return"confirmed";try{let{input:B}=await xD.prompt([{type:"input",name:"input",message:D,validate:(J)=>{if(J!==F)return`Input does not match. Expected: ${F}`;return!0}}]);return B===F?"confirmed":"cancelled"}catch(B){let J=B instanceof Error?B.message:String(B);if(J.includes("closed")||J.includes("TTY")||J.includes("SIGINT")||J.includes("readline"))console.error("Interactive prompt unavailable (non-interactive terminal or interrupted)"),console.error(" Use --yes or --no flags for non-interactive mode");else console.error("Prompt error:",J);return"cancelled"}}var vD="-y, --yes",hD="-n, --no",yD="Skip confirmation and proceed",bD="Skip confirmation and decline";import{existsSync as Dy,statSync as zGD}from"fs";import{join as P2}from"path";var{spawn:VGD}=globalThis.Bun;async function u(D,F={}){let $=VGD({cmd:D,cwd:F.cwd,stdout:"pipe",stderr:"pipe",env:{...process.env,...F.env}}),B=await new Response($.stdout).text(),J=await new Response($.stderr).text(),Q=await $.exited;return{stdout:B,stderr:J,exitCode:Q}}function tv(D){return D.split(".").map((F)=>{let $=Number.parseInt(F.replace(/[^0-9]/g,""),10);return Number.isNaN($)?0:$})}function AGD(D,F){let $=tv(D),B=tv(F);for(let J=0;J<Math.max($.length,B.length);J++){let Q=$[J]||0,X=B[J]||0;if(Q>X)return!0;if(Q<X)return!1}return!0}async function Fy(){try{let{stdout:F,exitCode:$,stderr:B}=await u(["git-annex","version"]);if($!==0)return console.warn("git-annex version returned non-zero exit code:",$),console.warn("stderr:",B),{installed:!1,minVersion:"10.0",error:`Version check failed: ${B.trim()}`};let J=F.match(/version:\s*(\d+\.\d+)/),Q=J?J[1]:void 0;if(!Q)console.warn("Could not parse git-annex version from output:",F);return{installed:!0,version:Q,minVersion:"10.0",compatible:Q?AGD(Q,"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 ZGD(){if(process.env.GH_TOKEN)return{accessible:!0,username:"token-auth",useHttps:!0};try{let{stdout:D,stderr:F}=await u(["ssh","-T","-o","BatchMode=yes","-o","StrictHostKeyChecking=accept-new","-o","ConnectTimeout=10","git@github.com"]),$=D+F,B=$.match(/Hi ([^!]+)!/);if(B)return{accessible:!0,username:B[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}}}function $y(){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 I$(){let[D,F]=await Promise.all([Fy(),ZGD()]),$=[];if(!D.installed)$.push(`git-annex is not installed. Install: ${$y()}`);else if(D.compatible===!1)$.push(`git-annex version ${D.version} is too old. Required: >= ${D.minVersion}`);if(!F.accessible)$.push("GitHub SSH access not configured. Run 'nemar auth setup-ssh' to configure automatically.");return{gitAnnex:D,githubSSH:F,allPassed:$.length===0,errors:$}}async function z8(D){if(!Dy(P2(D,".git")))return!1;try{let{exitCode:F}=await u(["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 P$(D,F={}){if(!F.force&&await z8(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:B,exitCode:J}=await u(["git","init",D],{...Object.keys($).length>0?{env:$}:{}});if(J!==0)return{success:!1,error:B.trim()||"Failed to initialize git repository"};let{stderr:Q,exitCode:X}=await u(["git","annex","init"],{cwd:D,...Object.keys($).length>0?{env:$}:{}});if(X!==0)return{success:!1,error:Q.trim()||"Failed to initialize git-annex"};return{success:!0}}catch($){return{success:!1,error:$.message}}}async function By(D){try{let{exitCode:F,stderr:$}=await u(["git","annex","info"],{cwd:D});if(F===0)return{success:!0};if($.includes("First run: git-annex init")){let{stderr:B,exitCode:J}=await u(["git","annex","init"],{cwd:D});if(J!==0)return{success:!1,error:B.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 S$(D,F){let B=F||"include=*.edf or include=*.bdf or include=*.set or include=*.fif or include=*.vhdr or include=*.eeg or include=*.cnt or include=*.fdt or largerthan=100kb";try{let{stderr:J,exitCode:Q}=await u(["git","annex","config","--set","annex.largefiles",B],{cwd:D});if(Q!==0)return{success:!1,error:J.trim()||"Failed to configure largefiles"};return{success:!0}}catch(J){return{success:!1,error:J.message}}}async function UGD(){try{let{exitCode:D,stderr:F}=await u(["ssh","-T","-o","BatchMode=yes","-o","ConnectTimeout=5","git@github.com"]),$=F.includes("successfully authenticated");if(!$)console.warn("SSH test to github.com failed:",{exitCode:D,stderr:F.trim().slice(0,500)});return{works:$,error:$?void 0:F.trim().slice(0,500)}}catch(D){let F=D instanceof Error?D.message:String(D);return console.warn("SSH test exception:",F),{works:!1,error:F}}}async function LGD(){try{let{stdout:D,exitCode:F,stderr:$}=await u(["gh","auth","token"]);if(F!==0)return console.warn("gh CLI returned non-zero exit code:",F),console.warn("stderr:",$),{token:null,error:`gh auth token failed: ${$.trim()||"unknown error"}`};if(!D.trim())return console.warn("gh auth token returned empty output"),{token:null,error:"gh CLI returned empty token"};return{token:D.trim()}}catch(D){let F=D instanceof Error?D.message:String(D);if(console.error("Failed to get GitHub token from gh CLI:",F),F.includes("ENOENT")||F.includes("not found"))return{token:null,error:"gh CLI not installed (command not found)"};return{token:null,error:`gh CLI error: ${F}`}}}async function k$(D){try{let{stdout:F,exitCode:$,stderr:B}=await u(["gh","api","user","--jq",".login"]);if($!==0){if(B.includes("not logged in")||B.includes("auth login"))return{authenticated:!1,error:"gh CLI not authenticated. Run 'gh auth login' to authenticate."};return{authenticated:!1,error:`gh CLI error: ${B.trim()||"unknown error"}`}}let J=F.trim();if(!J)return{authenticated:!1,error:"gh CLI returned empty username"};if(D){let Q=J.toLowerCase()===D.toLowerCase();return{authenticated:!0,username:J,matches:Q,error:Q?void 0:`gh CLI authenticated as '${J}', expected '${D}'`}}return{authenticated:!0,username:J}}catch(F){let $=F instanceof Error?F.message:String(F);if($.includes("ENOENT")||$.includes("not found"))return{authenticated:!1,error:"gh CLI not installed. Install from https://cli.github.com/"};return{authenticated:!1,error:`Failed to verify gh CLI: ${$}`}}}async function v$(D){if(!/^[a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+$/.test(D))return{accepted:!1,error:`Invalid repository format: ${D}`};let{stdout:F,exitCode:$,stderr:B}=await u(["gh","api","/user/repository_invitations"]);if($!==0){if(B.includes("not logged in")||B.includes("auth login"))return{accepted:!1,error:"gh CLI not authenticated. Run 'gh auth login' to authenticate."};if(B.includes("API rate limit")||B.includes("403"))return{accepted:!1,error:"GitHub API rate limit exceeded. Please try again in a few minutes."};if(B.includes("ENOENT")||B.includes("not found"))return{accepted:!1,error:"gh CLI not installed. Install from https://cli.github.com/"};return{accepted:!1,error:`Failed to list invitations: ${B.trim()||"unknown error"}`}}let J=null;try{J=JSON.parse(F||"[]").find((H)=>H.repository.full_name===D)?.id??null}catch(Y){let G=Y instanceof Error?Y.message:String(Y);return console.error("Failed to parse GitHub invitations response:",G),console.error(" Raw response (first 500 chars):",(F||"").slice(0,500)),{accepted:!1,error:`Failed to parse GitHub API response: ${G}`}}if(!J){let{exitCode:Y}=await u(["gh","api",`/repos/${D}`,"--silent"]);if(Y===0)return{accepted:!0,alreadyCollaborator:!0};return{accepted:!1,error:`No pending invitation found for ${D}. You may need to accept it manually via GitHub.`}}let{exitCode:Q,stderr:X}=await u(["gh","api","--method","PATCH",`/user/repository_invitations/${J}`]);if(Q!==0)return{accepted:!1,error:`Failed to accept invitation: ${X.trim()||"unknown error"}`};return{accepted:!0}}async function y$(D,F,$="origin"){let B=F;if(process.env.GH_TOKEN&&F.startsWith("git@github.com:")){let J=process.env.GH_TOKEN.trim();if(!J||/\s/.test(J))return{success:!1,error:"GH_TOKEN environment variable is set but appears malformed (empty or contains whitespace)"};let Q=F.replace("git@github.com:","");B=`https://${J}@github.com/${Q}`}else if(F.startsWith("git@github.com:")){let J=F.replace("git@github.com:",""),Q=await UGD();if(Q.works)B=F;else{console.warn("GitHub SSH not available, falling back to HTTPS with gh CLI token...");let X=await LGD();if(X.token)B=`https://${X.token}@github.com/${J}`,console.warn("Note: using HTTPS with gh CLI token. If the token expires, re-run 'gh auth login'.");else return{success:!1,error:`GitHub authentication not configured.
120
120
 
121
121
  SSH failed: ${Q.error||"could not connect"}
122
122
  gh CLI failed: ${X.error||"could not get token"}
@@ -645,7 +645,7 @@ Examples:
645
645
  $ nemar sandbox # Run sandbox training
646
646
  $ nemar sandbox status # Check if training is completed
647
647
  $ nemar sandbox reset # Reset for re-training
648
- `).action(sGD);async function sGD(){if(console.log(),console.log(E.bold("NEMAR Sandbox Training")),console.log(E.gray("Verify your setup and learn the upload workflow")),console.log(),!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}let D=F0();if(D.sandboxCompleted){console.log(E.green("Sandbox training already completed!")),console.log(E.gray(`Dataset ID: ${D.sandboxDatasetId}`)),console.log(),console.log("You can upload real datasets with:"),console.log(E.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(E.gray("To re-run training, use: nemar sandbox reset"));return}console.log(E.bold("Step 1/6: Checking prerequisites..."));let F=R("Checking git-annex and SSH...").start(),$=await I$();if(!$.allPassed){F.fail("Prerequisites check failed"),console.log(),console.log(E.red("Missing requirements:"));for(let P of $.errors)console.log(E.yellow(` - ${P}`));if(!$.githubSSH.accessible)console.log(E.gray(" Run 'nemar auth setup-ssh' to configure SSH"));return}F.succeed("All prerequisites met");let B=R("Verifying GitHub CLI authentication...").start(),J=await k$(D.githubUsername);if(!J.authenticated){B.fail("GitHub CLI not authenticated"),console.log(E.red(` ${J.error}`)),console.log(),console.log("GitHub CLI is required for sandbox training. Install and authenticate:"),console.log(E.cyan(" brew install gh # or visit https://cli.github.com/")),console.log(E.cyan(" gh auth login"));return}if(D.githubUsername&&!J.matches)B.warn("GitHub CLI user mismatch"),console.log(E.yellow(` ${J.error}`)),console.log(),console.log("Your gh CLI is authenticated as a different GitHub account than your NEMAR account."),console.log("This may cause issues with repository access. To fix:"),console.log(E.cyan(` gh auth login # Login as ${D.githubUsername}`)),console.log(),console.log(E.yellow("WARNING: If upload fails with permission errors, this mismatch is the likely cause.")),console.log();else B.succeed(`GitHub CLI authenticated as ${J.username}`);console.log(),console.log(E.bold("Step 2/6: Generating test dataset..."));let Q=R("Creating minimal BIDS structure...").start(),X;try{let P=uy();X=P.root;let QD=my(P);Q.succeed(`Test dataset created (${PF(QD)})`),console.log(E.gray(` Location: ${X}`))}catch(P){Q.fail("Failed to generate test dataset"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`));return}console.log(),console.log(E.bold("Step 3/6: Registering sandbox dataset..."));let Y=R("Creating dataset on NEMAR...").start(),G,H,W,K,V,A;try{let P=await j$({name:"Sandbox Training Dataset",description:"Placeholder dataset for sandbox training",files:[{path:"sub-01/eeg/sub-01_task-rest_eeg.edf",size:512000,type:"data"},{path:"dataset_description.json",size:200,type:"metadata"},{path:"participants.tsv",size:50,type:"metadata"},{path:"README",size:500,type:"metadata"},{path:"sub-01/eeg/sub-01_task-rest_eeg.json",size:300,type:"metadata"}],sandbox:!0});G=P.dataset.dataset_id,H=P.dataset.ssh_url,W=P.dataset.github_url,K=P.s3_config,V=P.dataset.s3_prefix,A=P.upload_urls||{},Y.succeed(`Sandbox dataset created: ${E.cyan(G)}`),console.log(E.gray(` GitHub: ${W}`)),await new Promise((QD)=>setTimeout(QD,1e4))}catch(P){if(Y.fail("Failed to create sandbox dataset"),P instanceof c)console.log(E.red(` ${P.message}`));else console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`));N1(X);return}let Z=R("Accepting GitHub repository invitation...").start(),U=W?.match(/github\.com\/([a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+)/),L=U?U[1].replace(/\.git$/,""):null;if(!L){Z.fail("Invalid GitHub repository URL from backend"),console.log(E.red(` Received: ${W||"(empty)"}`)),console.log(E.red(" Expected format: https://github.com/owner/repo")),console.log(),console.log("This may indicate a backend issue. Please contact support."),N1(X);return}let M=await v$(L);if(M.accepted)if(M.alreadyCollaborator)Z.succeed("Already a collaborator on this repository");else Z.succeed("GitHub invitation accepted");else Z.warn("Could not auto-accept invitation"),console.log(E.yellow(` ${M.error}`)),console.log(),console.log("You may need to accept the invitation manually:"),console.log(E.cyan(` https://github.com/${L}/invitations`)),console.log();console.log(),console.log(E.bold("Step 4/6: Initializing repository..."));let N=R("Setting up git-annex...").start(),O=D.username&&D.email?{name:D.username,email:D.email}:void 0;try{await P$(X,{author:O}),await S$(X),await y$(X,H),N.succeed("Repository initialized")}catch(P){N.fail("Failed to initialize repository"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}if(console.log(),console.log(E.bold("Step 5/6: Uploading to S3...")),Object.keys(A).length===0)console.log(E.yellow(" No data files to upload (metadata only)"));else{let P=R("Uploading test data...").start();try{let fD=0,$0=Object.keys(A).length,v=await x$(X,A,{jobs:4,onProgress:(qD)=>{if(qD.status==="completed"||qD.status==="failed")fD++,P.text=`Uploading... ${fD}/${$0} files`}});if(v.failed.length>0){P.fail(`Upload failed for ${v.failed.length} file(s)`);for(let qD of v.failed)console.log(E.red(` Failed: ${qD}`));if(v.error)console.log(E.red(` Error: ${v.error}`));console.log(),console.log(E.yellow("Sandbox training aborted due to upload failures.")),console.log(E.gray("Please check your network connection and try again.")),N1(X);return}P.succeed(`Uploaded ${v.uploaded} file(s)`)}catch(fD){P.fail("Upload failed"),console.log(E.red(` ${fD instanceof Error?fD.message:"Unknown error"}`)),N1(X);return}let QD=R("Registering file URLs...").start();try{let fD={};for(let v of Object.keys(A))fD[v]=`${K.public_url}/${V}/objects/${v}`;let $0=await _$(X,fD);if(!$0.success){QD.fail(`URL registration failed for ${$0.failed.length} file(s)`);for(let v of $0.failed)console.log(E.red(` Failed: ${v}`));console.log(),console.log(E.yellow("Sandbox training aborted due to URL registration failures.")),console.log(E.gray("This may indicate a git-annex configuration issue.")),N1(X);return}QD.succeed(`Registered ${$0.registered} file URLs`)}catch(fD){QD.fail("Failed to register URLs"),console.log(E.red(` ${fD instanceof Error?fD.message:"Unknown error"}`)),N1(X);return}}console.log(),console.log(E.bold("Step 6/6: Pushing to GitHub..."));let b=R("Saving and pushing...").start();try{await M5(X,"Initial sandbox training upload",O),await N5(X),b.succeed("Pushed to GitHub")}catch(P){b.fail("Failed to push to GitHub"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}let T=R("Finalizing...").start();try{await O$(G),await bv(G),V0("sandboxCompleted",!0),V0("sandboxDatasetId",G),T.succeed("Sandbox training complete!")}catch(P){T.fail("Failed to finalize"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}N1(X),console.log(),console.log(E.green.bold("Congratulations! Sandbox training completed successfully.")),console.log(),console.log("Your setup is verified and you're ready to upload real datasets:"),console.log(E.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(E.gray(`Sandbox dataset: ${G}`))}p$.command("status").description("Check sandbox training completion status").option("--refresh","Fetch latest status from server").action(async(D)=>{if(!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}if(D.refresh){let F=R("Checking status...").start();try{let $=await mv();if(V0("sandboxCompleted",$.sandbox_completed),$.sandbox_dataset_id)V0("sandboxDatasetId",$.sandbox_dataset_id);if(F.stop(),$.sandbox_completed){if(console.log(E.green("Sandbox training: Completed")),console.log(E.gray(` Dataset ID: ${$.sandbox_dataset_id}`)),$.sandbox_completed_at)console.log(E.gray(` Completed: ${$.sandbox_completed_at}`))}else console.log(E.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(E.cyan(" nemar sandbox"))}catch($){if(F.fail("Failed to check status"),$ instanceof c)console.log(E.red(` ${$.message}`))}}else{let F=F0();if(F.sandboxCompleted)console.log(E.green("Sandbox training: Completed")),console.log(E.gray(` Dataset ID: ${F.sandboxDatasetId}`));else console.log(E.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(E.cyan(" nemar sandbox"))}});p$.command("reset").description("Reset sandbox training status for re-training").option(vD,yD).option(hD,bD).action(async(D)=>{if(!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}if(!F0().sandboxCompleted){console.log(E.yellow("Sandbox training not yet completed")),console.log(E.gray("Nothing to reset"));return}let $=await gD("Reset sandbox training status? You will need to complete training again.",D);if($!=="confirmed"){console.log(E.gray($==="declined"?"Skipped":"Cancelled"));return}let B=R("Resetting sandbox status...").start();try{await uv(),T2("sandboxCompleted"),T2("sandboxDatasetId"),B.succeed("Sandbox status reset"),console.log(),console.log("Run sandbox training again with:"),console.log(E.cyan(" nemar sandbox"))}catch(J){if(B.fail("Failed to reset"),J instanceof c)console.log(E.red(` ${J.message}`));else console.log(E.red(` ${J instanceof Error?J.message:"Unknown error"}`))}});var ly={name:"nemar-cli",version:"0.4.0-dev.199",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"},keywords:["nemar","bids","neuroimaging","eeg","emg","datalad","cli"],author:"NEMAR Team",license:"MIT",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",inquirer:"^9.2.15",ora:"^8.0.1",zod:"^3.23.8"},devDependencies:{"@biomejs/biome":"1.9.4","@types/bcryptjs":"^3.0.0","@types/bun":"latest","@types/inquirer":"^9.0.7",bcryptjs:"^3.0.3",typescript:"^5.5.4"}};var dy=ly.version;var C1=new B0;C1.name("nemar").description(`CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource)
648
+ `).action(sGD);async function sGD(){if(console.log(),console.log(E.bold("NEMAR Sandbox Training")),console.log(E.gray("Verify your setup and learn the upload workflow")),console.log(),!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}let D=F0();if(D.sandboxCompleted){console.log(E.green("Sandbox training already completed!")),console.log(E.gray(`Dataset ID: ${D.sandboxDatasetId}`)),console.log(),console.log("You can upload real datasets with:"),console.log(E.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(E.gray("To re-run training, use: nemar sandbox reset"));return}console.log(E.bold("Step 1/6: Checking prerequisites..."));let F=R("Checking git-annex and SSH...").start(),$=await I$();if(!$.allPassed){F.fail("Prerequisites check failed"),console.log(),console.log(E.red("Missing requirements:"));for(let P of $.errors)console.log(E.yellow(` - ${P}`));if(!$.githubSSH.accessible)console.log(E.gray(" Run 'nemar auth setup-ssh' to configure SSH"));return}F.succeed("All prerequisites met");let B=R("Verifying GitHub CLI authentication...").start(),J=await k$(D.githubUsername);if(!J.authenticated){B.fail("GitHub CLI not authenticated"),console.log(E.red(` ${J.error}`)),console.log(),console.log("GitHub CLI is required for sandbox training. Install and authenticate:"),console.log(E.cyan(" brew install gh # or visit https://cli.github.com/")),console.log(E.cyan(" gh auth login"));return}if(D.githubUsername&&!J.matches)B.warn("GitHub CLI user mismatch"),console.log(E.yellow(` ${J.error}`)),console.log(),console.log("Your gh CLI is authenticated as a different GitHub account than your NEMAR account."),console.log("This may cause issues with repository access. To fix:"),console.log(E.cyan(` gh auth login # Login as ${D.githubUsername}`)),console.log(),console.log(E.yellow("WARNING: If upload fails with permission errors, this mismatch is the likely cause.")),console.log();else B.succeed(`GitHub CLI authenticated as ${J.username}`);console.log(),console.log(E.bold("Step 2/6: Generating test dataset..."));let Q=R("Creating minimal BIDS structure...").start(),X;try{let P=uy();X=P.root;let QD=my(P);Q.succeed(`Test dataset created (${PF(QD)})`),console.log(E.gray(` Location: ${X}`))}catch(P){Q.fail("Failed to generate test dataset"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`));return}console.log(),console.log(E.bold("Step 3/6: Registering sandbox dataset..."));let Y=R("Creating dataset on NEMAR...").start(),G,H,W,K,V,A;try{let P=await j$({name:"Sandbox Training Dataset",description:"Placeholder dataset for sandbox training",files:[{path:"sub-01/eeg/sub-01_task-rest_eeg.edf",size:512000,type:"data"},{path:"dataset_description.json",size:200,type:"metadata"},{path:"participants.tsv",size:50,type:"metadata"},{path:"README",size:500,type:"metadata"},{path:"sub-01/eeg/sub-01_task-rest_eeg.json",size:300,type:"metadata"}],sandbox:!0});G=P.dataset.dataset_id,H=P.dataset.ssh_url,W=P.dataset.github_url,K=P.s3_config,V=P.dataset.s3_prefix,A=P.upload_urls||{},Y.succeed(`Sandbox dataset created: ${E.cyan(G)}`),console.log(E.gray(` GitHub: ${W}`)),await new Promise((QD)=>setTimeout(QD,1e4))}catch(P){if(Y.fail("Failed to create sandbox dataset"),P instanceof c)console.log(E.red(` ${P.message}`));else console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`));N1(X);return}let Z=R("Accepting GitHub repository invitation...").start(),U=W?.match(/github\.com\/([a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+)/),L=U?U[1].replace(/\.git$/,""):null;if(!L){Z.fail("Invalid GitHub repository URL from backend"),console.log(E.red(` Received: ${W||"(empty)"}`)),console.log(E.red(" Expected format: https://github.com/owner/repo")),console.log(),console.log("This may indicate a backend issue. Please contact support."),N1(X);return}let M=await v$(L);if(M.accepted)if(M.alreadyCollaborator)Z.succeed("Already a collaborator on this repository");else Z.succeed("GitHub invitation accepted");else Z.warn("Could not auto-accept invitation"),console.log(E.yellow(` ${M.error}`)),console.log(),console.log("You may need to accept the invitation manually:"),console.log(E.cyan(` https://github.com/${L}/invitations`)),console.log();console.log(),console.log(E.bold("Step 4/6: Initializing repository..."));let N=R("Setting up git-annex...").start(),O=D.username&&D.email?{name:D.username,email:D.email}:void 0;try{await P$(X,{author:O}),await S$(X),await y$(X,H),N.succeed("Repository initialized")}catch(P){N.fail("Failed to initialize repository"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}if(console.log(),console.log(E.bold("Step 5/6: Uploading to S3...")),Object.keys(A).length===0)console.log(E.yellow(" No data files to upload (metadata only)"));else{let P=R("Uploading test data...").start();try{let fD=0,$0=Object.keys(A).length,v=await x$(X,A,{jobs:4,onProgress:(qD)=>{if(qD.status==="completed"||qD.status==="failed")fD++,P.text=`Uploading... ${fD}/${$0} files`}});if(v.failed.length>0){P.fail(`Upload failed for ${v.failed.length} file(s)`);for(let qD of v.failed)console.log(E.red(` Failed: ${qD}`));if(v.error)console.log(E.red(` Error: ${v.error}`));console.log(),console.log(E.yellow("Sandbox training aborted due to upload failures.")),console.log(E.gray("Please check your network connection and try again.")),N1(X);return}P.succeed(`Uploaded ${v.uploaded} file(s)`)}catch(fD){P.fail("Upload failed"),console.log(E.red(` ${fD instanceof Error?fD.message:"Unknown error"}`)),N1(X);return}let QD=R("Registering file URLs...").start();try{let fD={};for(let v of Object.keys(A))fD[v]=`${K.public_url}/${V}/objects/${v}`;let $0=await _$(X,fD);if(!$0.success){QD.fail(`URL registration failed for ${$0.failed.length} file(s)`);for(let v of $0.failed)console.log(E.red(` Failed: ${v}`));console.log(),console.log(E.yellow("Sandbox training aborted due to URL registration failures.")),console.log(E.gray("This may indicate a git-annex configuration issue.")),N1(X);return}QD.succeed(`Registered ${$0.registered} file URLs`)}catch(fD){QD.fail("Failed to register URLs"),console.log(E.red(` ${fD instanceof Error?fD.message:"Unknown error"}`)),N1(X);return}}console.log(),console.log(E.bold("Step 6/6: Pushing to GitHub..."));let b=R("Saving and pushing...").start();try{await M5(X,"Initial sandbox training upload",O),await N5(X),b.succeed("Pushed to GitHub")}catch(P){b.fail("Failed to push to GitHub"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}let T=R("Finalizing...").start();try{await O$(G),await bv(G),V0("sandboxCompleted",!0),V0("sandboxDatasetId",G),T.succeed("Sandbox training complete!")}catch(P){T.fail("Failed to finalize"),console.log(E.red(` ${P instanceof Error?P.message:"Unknown error"}`)),N1(X);return}N1(X),console.log(),console.log(E.green.bold("Congratulations! Sandbox training completed successfully.")),console.log(),console.log("Your setup is verified and you're ready to upload real datasets:"),console.log(E.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(E.gray(`Sandbox dataset: ${G}`))}p$.command("status").description("Check sandbox training completion status").option("--refresh","Fetch latest status from server").action(async(D)=>{if(!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}if(D.refresh){let F=R("Checking status...").start();try{let $=await mv();if(V0("sandboxCompleted",$.sandbox_completed),$.sandbox_dataset_id)V0("sandboxDatasetId",$.sandbox_dataset_id);if(F.stop(),$.sandbox_completed){if(console.log(E.green("Sandbox training: Completed")),console.log(E.gray(` Dataset ID: ${$.sandbox_dataset_id}`)),$.sandbox_completed_at)console.log(E.gray(` Completed: ${$.sandbox_completed_at}`))}else console.log(E.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(E.cyan(" nemar sandbox"))}catch($){if(F.fail("Failed to check status"),$ instanceof c)console.log(E.red(` ${$.message}`))}}else{let F=F0();if(F.sandboxCompleted)console.log(E.green("Sandbox training: Completed")),console.log(E.gray(` Dataset ID: ${F.sandboxDatasetId}`));else console.log(E.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(E.cyan(" nemar sandbox"))}});p$.command("reset").description("Reset sandbox training status for re-training").option(vD,yD).option(hD,bD).action(async(D)=>{if(!PD()){console.log(E.red("Not authenticated")),console.log(E.gray("Run 'nemar auth login' first"));return}if(!F0().sandboxCompleted){console.log(E.yellow("Sandbox training not yet completed")),console.log(E.gray("Nothing to reset"));return}let $=await gD("Reset sandbox training status? You will need to complete training again.",D);if($!=="confirmed"){console.log(E.gray($==="declined"?"Skipped":"Cancelled"));return}let B=R("Resetting sandbox status...").start();try{await uv(),T2("sandboxCompleted"),T2("sandboxDatasetId"),B.succeed("Sandbox status reset"),console.log(),console.log("Run sandbox training again with:"),console.log(E.cyan(" nemar sandbox"))}catch(J){if(B.fail("Failed to reset"),J instanceof c)console.log(E.red(` ${J.message}`));else console.log(E.red(` ${J instanceof Error?J.message:"Unknown error"}`))}});var ly={name:"nemar-cli",version:"0.4.0",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"},keywords:["nemar","bids","neuroimaging","eeg","emg","datalad","cli"],author:"NEMAR Team",license:"MIT",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",inquirer:"^9.2.15",ora:"^8.0.1",zod:"^3.23.8"},devDependencies:{"@biomejs/biome":"1.9.4","@types/bcryptjs":"^3.0.0","@types/bun":"latest","@types/inquirer":"^9.0.7",bcryptjs:"^3.0.3",typescript:"^5.5.4"}};var dy=ly.version;var C1=new B0;C1.name("nemar").description(`CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource)
649
649
 
650
650
  NEMAR is a curated repository for neurophysiology data in BIDS format.
651
651
  This CLI provides tools for uploading, downloading, and managing datasets.`).version(dy,"-v, --version","Output the current version").option("--no-color","Disable colored output").option("--verbose","Enable verbose output").addHelpText("after",`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nemar-cli",
3
- "version": "0.4.0-dev.199",
3
+ "version": "0.4.0",
4
4
  "description": "CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource) dataset management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",