nemar-cli 0.5.1-dev.261 → 0.5.1-dev.262

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 @@ ${wC.default.cursorShow}`)}releaseCursor(){if(this.extraLinesUnderPrompt>0)hQ(th
116
116
  ${F}`,K6D=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),z6D=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),V6D=(D,F,$)=>{let B=$===""?"":`with ${$.trim()}() `,J=E6D.bind(null,B,F.toString());Object.defineProperty(J,"name",z6D);let{writable:Q,enumerable:X,configurable:Y}=K6D;Object.defineProperty(D,"toString",{value:J,writable:Q,enumerable:X,configurable:Y})};function kF(D,F,{ignoreNonConfigurable:$=!1}={}){let{name:B}=D;for(let J of Reflect.ownKeys(F))W6D(D,F,J,$);return q6D(D,F),V6D(D,F,B),D}var T7=new WeakMap,Oj=(D,F={})=>{if(typeof D!=="function")throw TypeError("Expected a function");let $,B=0,J=D.displayName||D.name||"<anonymous>",Q=function(...X){if(T7.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 kF(Q,D),T7.set(Q,B),Q};Oj.callCount=(D)=>{if(!T7.has(D))throw Error(`The given function \`${D.name}\` is not wrapped by the \`onetime\` package`);return T7.get(D)};var wj=Oj;var x6=[];x6.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")x6.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")x6.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var O7=(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",fX=Symbol.for("signal-exit emitter"),gX=globalThis,Z6D=Object.defineProperty.bind(Object);class Ij{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(gX[fX])return gX[fX];Z6D(gX,fX,{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 bX{}var U6D=(D)=>{return{onExit(F,$){return D.onExit(F,$)},load(){return D.load()},unload(){return D.unload()}}};class Pj extends bX{onExit(){return()=>{}}load(){}unload(){}}class Sj extends bX{#$=hX.platform==="win32"?"SIGINT":"SIGHUP";#F=new Ij;#D;#J;#E;#B={};#X=!1;constructor(D){super();this.#D=D,this.#B={};for(let F of x6)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.#E=D.reallyExit,this.#J=D.emit}onExit(D,F){if(!O7(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 x6)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,x6.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.#E,this.#F.count-=1}#Q(D){if(!O7(this.#D))return 0;return this.#D.exitCode=D||0,this.#F.emit("exit",this.#D.exitCode,null),this.#E.call(this.#D,this.#D.exitCode)}#K(D,...F){let $=this.#J;if(D==="exit"&&O7(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 hX=globalThis.process,{onExit:kj,load:vUD,unload:yUD}=U6D(O7(hX)?new Sj(hX):new Pj);var vj=w7.stderr.isTTY?w7.stderr:w7.stdout.isTTY?w7.stdout:void 0,A6D=vj?wj(()=>{kj(()=>{vj.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},yj=A6D;var I7=!1,e4={};e4.show=(D=xj.stderr)=>{if(!D.isTTY)return;I7=!1,D.write("\x1B[?25h")};e4.hide=(D=xj.stderr)=>{if(!D.isTTY)return;yj(),I7=!0,D.write("\x1B[?25l")};e4.toggle=(D,F)=>{if(D!==void 0)I7=D;if(I7)e4.show(F);else e4.hide(F)};var uX=e4;var xF=n(R9(),1);import U1 from"process";function mX(){if(U1.platform!=="win32")return U1.env.TERM!=="linux";return Boolean(U1.env.CI)||Boolean(U1.env.WT_SESSION)||Boolean(U1.env.TERMINUS_SUBLIME)||U1.env.ConEmuTask==="{cmd::Cmder}"||U1.env.TERM_PROGRAM==="Terminus-Sublime"||U1.env.TERM_PROGRAM==="vscode"||U1.env.TERM==="xterm-256color"||U1.env.TERM==="alacritty"||U1.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var L6D={info:H.blue("\u2139"),success:H.green("\u2714"),warning:H.yellow("\u26A0"),error:H.red("\u2716")},M6D={info:H.blue("i"),success:H.green("\u221A"),warning:H.yellow("\u203C"),error:H.red("\xD7")},N6D=mX()?L6D:M6D,vF=N6D;function lX({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 C6D=lX();function yF(D){if(typeof D!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(C6D,"")}function _j(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 fj(D){return D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510}function gj(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 R6D(D){if(!Number.isSafeInteger(D))throw TypeError(`Expected a code point, got \`${typeof D}\`.`)}function hj(D,{ambiguousAsWide:F=!1}={}){if(R6D(D),fj(D)||gj(D)||F&&_j(D))return 2;return 1}var bj=()=>{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 j6D=new Intl.Segmenter,T6D=/^\p{Default_Ignorable_Code_Point}$/u;function dX(D,F={}){if(typeof D!=="string"||D.length===0)return 0;let{ambiguousIsNarrow:$=!0,countAnsiEscapeCodes:B=!1}=F;if(!B)D=yF(D);if(D.length===0)return 0;let J=0,Q={ambiguousAsWide:!$};for(let{segment:X}of j6D.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(T6D.test(X))continue;if(bj().test(X)){J+=2;continue}J+=hj(Y,Q)}return J}function pX({stream:D=process.stdout}={}){return Boolean(D&&D.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}import uj from"process";function cX(){let{env:D}=uj,{TERM:F,TERM_PROGRAM:$}=D;if(uj.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 n1 from"process";var O6D=3;class mj{#$=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(n1.platform==="win32"||!n1.stdin.isTTY)return;n1.stdin.setRawMode(!0),n1.stdin.on("data",this.#J),n1.stdin.resume()}#D(){if(!n1.stdin.isTTY)return;n1.stdin.off("data",this.#J),n1.stdin.pause(),n1.stdin.setRawMode(!1)}#J(D){if(D[0]===O6D)n1.emit("SIGINT")}}var w6D=new mj,nX=w6D;var I6D=n(R9(),1);class lj{#$=0;#F=!1;#D=0;#J=-1;#E=0;#B;#X;#Q;#K;#V;#W;#H;#q;#Z;#Y;#G;color;constructor(D){if(typeof D==="string")D={text:D};if(this.#B={color:"cyan",stream:P7.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.#W=typeof this.#B.isEnabled==="boolean"?this.#B.isEnabled:pX({stream:this.#Q}),this.#H=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,P7.env.NODE_ENV==="test")this._stream=this.#Q,this._isEnabled=this.#W,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.#q}set indent(D=0){if(!(D>=0&&Number.isInteger(D)))throw Error("The `indent` option must be an integer from 0 and up");this.#q=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(!cX())this.#X=xF.default.line;else if(D===void 0)this.#X=xF.default.dots;else if(D!=="default"&&xF.default[D])this.#X=xF.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.#Z}set text(D=""){this.#Z=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}#U(D=this.#Y,F=" "){if(typeof D==="string"&&D!=="")return D+F;if(typeof D==="function")return D()+F;return""}#A(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.#U(this.#Y,"-"),$=this.#A(this.#G,"-"),B=" ".repeat(this.#q)+F+"--"+this.#Z+"--"+$;this.#D=0;for(let J of yF(B).split(`
117
117
  `))this.#D+=Math.max(1,Math.ceil(dX(J,{countAnsiEscapeCodes:!0})/D))}get isEnabled(){return this.#W&&!this.#H}set isEnabled(D){if(typeof D!=="boolean")throw TypeError("The `isEnabled` option must be a boolean");this.#W=D}get isSilent(){return this.#H}set isSilent(D){if(typeof D!=="boolean")throw TypeError("The `isSilent` option must be a boolean");this.#H=D}frame(){let D=Date.now();if(this.#J===-1||D-this.#E>=this.interval)this.#J=++this.#J%this.#X.frames.length,this.#E=D;let{frames:F}=this.#X,$=F[this.#J];if(this.color)$=H[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.#W||!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.#q||this.lastIndent!==this.#q)this.#Q.cursorTo(this.#q);return this.lastIndent=this.#q,this.#$=0,this}render(){if(this.#H)return this;return this.clear(),this.#Q.write(this.frame()),this.#$=this.#D,this}start(D){if(D)this.text=D;if(this.#H)return this;if(!this.#W){if(this.text)this.#Q.write(`- ${this.text}
118
118
  `);return this}if(this.isSpinning)return this;if(this.#B.hideCursor)uX.hide(this.#Q);if(this.#B.discardStdin&&P7.stdin.isTTY)this.#F=!0,nX.start();return this.render(),this.#K=setInterval(this.render.bind(this),this.interval),this}stop(){if(!this.#W)return this;if(clearInterval(this.#K),this.#K=void 0,this.#J=0,this.clear(),this.#B.hideCursor)uX.show(this.#Q);if(this.#B.discardStdin&&P7.stdin.isTTY&&this.#F)nX.stop(),this.#F=!1;return this}succeed(D){return this.stopAndPersist({symbol:vF.success,text:D})}fail(D){return this.stopAndPersist({symbol:vF.error,text:D})}warn(D){return this.stopAndPersist({symbol:vF.warning,text:D})}info(D){return this.stopAndPersist({symbol:vF.info,text:D})}stopAndPersist(D={}){if(this.#H)return this;let F=D.prefixText??this.#Y,$=this.#U(F," "),B=D.symbol??" ",J=D.text??this.text,X=typeof J==="string"?(B?" ":"")+J:"",Y=D.suffixText??this.#G,G=this.#A(Y," "),W=$+B+X+G+`
119
- `;return this.stop(),this.#Q.write(W),this}}function C(D){return new lj(D)}import{isDeepStrictEqual as R2D}from"util";import Av from"process";import c6 from"fs";import Lv from"path";import Z5 from"crypto";import j2D from"assert";var _6=(D)=>{let F=typeof D;return D!==null&&(F==="object"||F==="function")};var iX=new Set(["__proto__","prototype","constructor"]),P6D=new Set("0123456789");function S7(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(iX.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(iX.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"&&!P6D.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(iX.has($))return[];F.push($);break}case"index":throw Error("Index was not closed");case"start":{F.push("");break}}return F}function aX(D,F){if(typeof F!=="number"&&Array.isArray(D)){let $=Number.parseInt(F,10);return Number.isInteger($)&&D[$]===D[F]}return!1}function dj(D,F){if(aX(D,F))throw Error("Cannot use string index")}function pj(D,F,$){if(!_6(D)||typeof F!=="string")return $===void 0?D:$;let B=S7(F);if(B.length===0)return $;for(let J=0;J<B.length;J++){let Q=B[J];if(aX(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 oX(D,F,$){if(!_6(D)||typeof F!=="string")return D;let B=D,J=S7(F);for(let Q=0;Q<J.length;Q++){let X=J[Q];if(dj(D,X),Q===J.length-1)D[X]=$;else if(!_6(D[X]))D[X]=typeof J[Q+1]==="number"?[]:{};D=D[X]}return B}function cj(D,F){if(!_6(D)||typeof F!=="string")return!1;let $=S7(F);for(let B=0;B<$.length;B++){let J=$[B];if(dj(D,J),B===$.length-1)return delete D[J],!0;if(D=D[J],!_6(D))return!1}}function nj(D,F){if(!_6(D)||typeof F!=="string")return!1;let $=S7(F);if($.length===0)return!1;for(let B of $){if(!_6(D)||!(B in D)||aX(D,B))return!1;D=D[B]}return!0}import fD from"path";import ij from"os";import sX from"process";var D6=ij.homedir(),rX=ij.tmpdir(),{env:D3}=sX,S6D=(D)=>{let F=fD.join(D6,"Library");return{data:fD.join(F,"Application Support",D),config:fD.join(F,"Preferences",D),cache:fD.join(F,"Caches",D),log:fD.join(F,"Logs",D),temp:fD.join(rX,D)}},k6D=(D)=>{let F=D3.APPDATA||fD.join(D6,"AppData","Roaming"),$=D3.LOCALAPPDATA||fD.join(D6,"AppData","Local");return{data:fD.join($,D,"Data"),config:fD.join(F,D,"Config"),cache:fD.join($,D,"Cache"),log:fD.join($,D,"Log"),temp:fD.join(rX,D)}},v6D=(D)=>{let F=fD.basename(D6);return{data:fD.join(D3.XDG_DATA_HOME||fD.join(D6,".local","share"),D),config:fD.join(D3.XDG_CONFIG_HOME||fD.join(D6,".config"),D),cache:fD.join(D3.XDG_CACHE_HOME||fD.join(D6,".cache"),D),log:fD.join(D3.XDG_STATE_HOME||fD.join(D6,".local","state"),D),temp:fD.join(rX,F,D)}};function tX(D,{suffix:F="nodejs"}={}){if(typeof D!=="string")throw TypeError(`Expected a string, got ${typeof D}`);if(F)D+=`-${F}`;if(sX.platform==="darwin")return S6D(D);if(sX.platform==="win32")return k6D(D);return v6D(D)}import u6D from"path";import VD from"fs";import{promisify as E0}from"util";var y6D=(D,F)=>{let{onError:$}=F;return function(...J){return D.apply(void 0,J).catch($)}},i1=y6D;var x6D=(D,F)=>{let{onError:$}=F;return function(...J){try{return D.apply(void 0,J)}catch(Q){return $(Q)}}},A1=x6D;var aj=250;var _6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=J.interval??aj,Y=Date.now()+Q;return function G(...W){return D.apply(void 0,W).catch((q)=>{if(!$(q))throw q;if(Date.now()>=Y)throw q;let K=Math.round(X*Math.random());if(K>0)return new Promise((Z)=>setTimeout(Z,K)).then(()=>G.apply(void 0,W));else return G.apply(void 0,W)})}}},a1=_6D;var f6D=(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(W){if(!$(W))throw W;if(Date.now()>=X)throw W;continue}}}},o1=f6D;import sj from"process";var _F={isChangeErrorOk:(D)=>{if(!_F.isNodeError(D))return!1;let{code:F}=D;if(F==="ENOSYS")return!0;if(!oj&&(F==="EINVAL"||F==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!_F.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(!_F.isNodeError(D))throw D;if(_F.isChangeErrorOk(D))return;throw D}},eX=_F;var fF={onError:eX.onChangeError},P0={onError:()=>{return}},oj=sj.getuid?!sj.getuid():!1,X0={isRetriable:eX.isRetriableError};var g6D={attempt:{chmod:i1(E0(VD.chmod),fF),chown:i1(E0(VD.chown),fF),close:i1(E0(VD.close),P0),fsync:i1(E0(VD.fsync),P0),mkdir:i1(E0(VD.mkdir),P0),realpath:i1(E0(VD.realpath),P0),stat:i1(E0(VD.stat),P0),unlink:i1(E0(VD.unlink),P0),chmodSync:A1(VD.chmodSync,fF),chownSync:A1(VD.chownSync,fF),closeSync:A1(VD.closeSync,P0),existsSync:A1(VD.existsSync,P0),fsyncSync:A1(VD.fsync,P0),mkdirSync:A1(VD.mkdirSync,P0),realpathSync:A1(VD.realpathSync,P0),statSync:A1(VD.statSync,P0),unlinkSync:A1(VD.unlinkSync,P0)},retry:{close:a1(E0(VD.close),X0),fsync:a1(E0(VD.fsync),X0),open:a1(E0(VD.open),X0),readFile:a1(E0(VD.readFile),X0),rename:a1(E0(VD.rename),X0),stat:a1(E0(VD.stat),X0),write:a1(E0(VD.write),X0),writeFile:a1(E0(VD.writeFile),X0),closeSync:o1(VD.closeSync,X0),fsyncSync:o1(VD.fsyncSync,X0),openSync:o1(VD.openSync,X0),readFileSync:o1(VD.readFileSync,X0),renameSync:o1(VD.renameSync,X0),statSync:o1(VD.statSync,X0),writeSync:o1(VD.writeSync,X0),writeFileSync:o1(VD.writeFileSync,X0)}},eD=g6D;import f6 from"process";var rj="utf8",DY=438,tj=511;var ej={},DT=f6.geteuid?f6.geteuid():-1,FT=f6.getegid?f6.getegid():-1;var $T=1000,BT=!!f6.getuid,aAD=f6.getuid?!f6.getuid():!1,FY=128;var JT=(D)=>{return D instanceof Error&&"code"in D};var $Y=(D)=>{return typeof D==="string"},k7=(D)=>{return D===void 0};import b6D from"path";import F3 from"process";import QT from"process";var XT=QT.platform==="linux",v7=QT.platform==="win32";var BY=["SIGHUP","SIGINT","SIGTERM"];if(!v7)BY.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(XT)BY.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var YT=BY;class GT{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(v7&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))F3.kill(F3.pid,"SIGTERM");else F3.kill(F3.pid,D)},this.hook=()=>{F3.once("exit",()=>this.exit());for(let D of YT)try{F3.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var WT=new GT;var h6D=WT.register,HT=h6D;var m0={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=m0.truncate(F(D));if(B in m0.store)return m0.get(D,F,$);return m0.store[B]=$,[B,()=>delete m0.store[B]]},purge:(D)=>{if(!m0.store[D])return;delete m0.store[D],eD.attempt.unlink(D)},purgeSync:(D)=>{if(!m0.store[D])return;delete m0.store[D],eD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in m0.store)m0.purgeSync(D)},truncate:(D)=>{let F=b6D.basename(D);if(F.length<=FY)return D;let $=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(F);if(!$)return D;let B=F.length-FY;return`${D.slice(0,-F.length)}${$[1]}${$[2].slice(0,-B)}${$[3]}`}};HT(m0.purgeSyncAll);var gF=m0;function JY(D,F,$=ej){if($Y($))return JY(D,F,{encoding:$});let J={timeout:$.timeout??$T},Q=null,X=null,Y=null;try{let G=eD.attempt.realpathSync(D),W=!!G;D=G||D,[X,Q]=gF.get(D,$.tmpCreate||gF.create,$.tmpPurge!==!1);let q=BT&&k7($.chown),K=k7($.mode);if(W&&(q||K)){let V=eD.attempt.statSync(D);if(V){if($={...$},q)$.chown={uid:V.uid,gid:V.gid};if(K)$.mode=V.mode}}if(!W){let V=u6D.dirname(D);eD.attempt.mkdirSync(V,{mode:tj,recursive:!0})}if(Y=eD.retry.openSync(J)(X,"w",$.mode||DY),$.tmpCreated)$.tmpCreated(X);if($Y(F))eD.retry.writeSync(J)(Y,F,0,$.encoding||rj);else if(!k7(F))eD.retry.writeSync(J)(Y,F,0,F.length,0);if($.fsync!==!1)if($.fsyncWait!==!1)eD.retry.fsyncSync(J)(Y);else eD.attempt.fsync(Y);if(eD.retry.closeSync(J)(Y),Y=null,$.chown&&($.chown.uid!==DT||$.chown.gid!==FT))eD.attempt.chownSync(X,$.chown.uid,$.chown.gid);if($.mode&&$.mode!==DY)eD.attempt.chmodSync(X,$.mode);try{eD.retry.renameSync(J)(X,D)}catch(V){if(!JT(V))throw V;if(V.code!=="ENAMETOOLONG")throw V;eD.retry.renameSync(J)(X,gF.truncate(D))}Q(),X=null}finally{if(Y)eD.attempt.closeSync(Y);if(X)gF.purge(X)}}var Nv=n($S(),1),Cv=n(jS(),1);var RQD=(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,W=function(...q){let K=this,V=()=>{if(X=void 0,Y)clearTimeout(Y),Y=void 0;if(Q)G=D.apply(K,q)},Z=()=>{if(Y=void 0,X)clearTimeout(X),X=void 0;if(Q)G=D.apply(K,q)},U=J&&!X;if(clearTimeout(X),X=setTimeout(V,$),B>0&&B!==Number.POSITIVE_INFINITY&&!Y)Y=setTimeout(Z,B);if(U)G=D.apply(K,q);return G};return kF(W,D),W.cancel=()=>{if(X)clearTimeout(X),X=void 0;if(Y)clearTimeout(Y),Y=void 0},W},L2=RQD;var n6=n(zv(),1);var Z2D=Object.prototype.toString;function Zv(D,F,$){if(!D)return!1;if(D.constructor===F)return!0;return Z2D.call(D)===$}function Uv(D){return Zv(D,Uint8Array,"[object Uint8Array]")}function U2D(D){return Zv(D,ArrayBuffer,"[object ArrayBuffer]")}function A2D(D){return Uv(D)||U2D(D)}function L2D(D){if(!Uv(D))throw TypeError(`Expected \`Uint8Array\`, got \`${typeof D}\``)}function M2D(D){if(!A2D(D))throw TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof D}\``)}function _2(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)L2D(J),$.set(J,B),B+=J.length;return $}var Vv={utf8:new globalThis.TextDecoder("utf8")};function f2(D,F="utf8"){return M2D(D),Vv[F]??=new globalThis.TextDecoder(F),Vv[F].decode(D)}function N2D(D){if(typeof D!=="string")throw TypeError(`Expected \`string\`, got \`${typeof D}\``)}var C2D=new globalThis.TextEncoder;function S$(D){return N2D(D),C2D.encode(D)}var xCD=Array.from({length:256},(D,F)=>F.toString(16).padStart(2,"0"));var T2D=Cv.default.default,Mv="aes-256-cbc",U3=()=>Object.create(null),O2D=(D)=>D!==void 0&&D!==null,w2D=(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`)},k$="__internal__",g2=`${k$}.migrations.version`;class v${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=tX(F.projectName,{suffix:F.projectSuffix}).config}if(this.#D=F,F.schema??F.ajvOptions??F.rootSchema){if(F.schema&&typeof F.schema!=="object")throw TypeError("The `schema` option must be an object.");let Q=new Nv.Ajv2020({allErrors:!0,useDefaults:!0,...F.ajvOptions});T2D(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=Lv.resolve(F.cwd,`${F.configName??"config"}${$}`);let B=this.store,J=Object.assign(U3(),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{j2D.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 ${k$} key, as it's used to manage this module internal operations.`);let{store:$}=this,B=(J,Q)=>{if(w2D(J,Q),this.#D.accessPropertiesByDotNotation)oX($,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 nj(this.store,D);return D in this.store}reset(...D){for(let F of D)if(O2D(this.#J[F]))this.set(F,this.#J[F])}delete(D){let{store:F}=this;if(this.#D.accessPropertiesByDotNotation)cj(F,D);else delete F[D];this.store=F}clear(){this.store=U3();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=c6.readFileSync(this.path,this.#F?null:"utf8"),F=this._encryptData(D),$=this._deserialize(F);return this._validate($),Object.assign(U3(),$)}catch(D){if(D?.code==="ENOENT")return this._ensureDirectory(),U3();if(this.#D.clearInvalidConfig&&D.name==="SyntaxError")return U3();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:f2(D);try{let F=D.slice(0,16),$=Z5.pbkdf2Sync(this.#F,F.toString(),1e4,32,"sha512"),B=Z5.createDecipheriv(Mv,$,F),J=D.slice(17),Q=typeof J==="string"?S$(J):J;return f2(_2([B.update(Q),B.final()]))}catch{}return D.toString()}_handleChange(D,F){let $=D(),B=()=>{let J=$,Q=D();if(R2D(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(){c6.mkdirSync(Lv.dirname(this.path),{recursive:!0})}_write(D){let F=this._serialize(D);if(this.#F){let $=Z5.randomBytes(16),B=Z5.pbkdf2Sync(this.#F,$.toString(),1e4,32,"sha512"),J=Z5.createCipheriv(Mv,B,$);F=_2([$,S$(":"),J.update(S$(F)),J.final()])}if(Av.env.SNAP)c6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});else try{JY(this.path,F,{mode:this.#D.configFileMode})}catch($){if($?.code==="EXDEV"){c6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});return}throw $}}_watch(){if(this._ensureDirectory(),!c6.existsSync(this.path))this._write(U3());if(Av.platform==="win32")c6.watch(this.path,{persistent:!1},L2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:100}));else c6.watchFile(this.path,{persistent:!1},L2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:5000}))}_migrate(D,F,$){let B=this._get(g2,"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(g2,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)||!n6.default.eq(B,F))this._set(g2,F)}_containsReservedKey(D){if(typeof D==="object"){if(Object.keys(D)[0]===k$)return!0}if(typeof D!=="string")return!1;if(this.#D.accessPropertiesByDotNotation){if(D.startsWith(`${k$}.`))return!0;return!1}return!1}_isVersionInRangeFormat(D){return n6.default.clean(D)===null}_shouldPerformMigration(D,F,$){if(this._isVersionInRangeFormat(D)){if(F!=="0.0.0"&&n6.default.satisfies(F,D))return!1;return n6.default.satisfies($,D)}if(n6.default.lte(D,F))return!1;if(n6.default.gt(D,$))return!1;return!0}_get(D,F){return pj(this.store,D,F)}_set(D,F){let{store:$}=this;oX($,D,F),this.store=$}}var k1={};WG(k1,{void:()=>qGD,util:()=>YD,unknown:()=>WGD,union:()=>VGD,undefined:()=>XGD,tuple:()=>AGD,transformer:()=>IGD,symbol:()=>QGD,string:()=>kv,strictObject:()=>zGD,setErrorMap:()=>S2D,set:()=>NGD,record:()=>LGD,quotelessJson:()=>I2D,promise:()=>wGD,preprocess:()=>kGD,pipeline:()=>vGD,ostring:()=>yGD,optional:()=>PGD,onumber:()=>xGD,oboolean:()=>_GD,objectUtil:()=>h2,object:()=>KGD,number:()=>vv,nullable:()=>SGD,null:()=>YGD,never:()=>HGD,nativeEnum:()=>OGD,nan:()=>$GD,map:()=>MGD,makeIssue:()=>U5,literal:()=>jGD,lazy:()=>RGD,late:()=>DGD,isValid:()=>W6,isDirty:()=>x$,isAsync:()=>L3,isAborted:()=>y$,intersection:()=>UGD,instanceof:()=>FGD,getParsedType:()=>D8,getErrorMap:()=>A3,function:()=>CGD,enum:()=>TGD,effect:()=>IGD,discriminatedUnion:()=>ZGD,defaultErrorMap:()=>A8,datetimeRegex:()=>Iv,date:()=>JGD,custom:()=>Sv,coerce:()=>fGD,boolean:()=>yv,bigint:()=>BGD,array:()=>EGD,any:()=>GGD,addIssueToContext:()=>P,ZodVoid:()=>L5,ZodUnknown:()=>H6,ZodUnion:()=>T3,ZodUndefined:()=>R3,ZodType:()=>$D,ZodTuple:()=>$8,ZodTransformer:()=>S1,ZodSymbol:()=>A5,ZodString:()=>O1,ZodSet:()=>s6,ZodSchema:()=>$D,ZodRecord:()=>M5,ZodReadonly:()=>v3,ZodPromise:()=>r6,ZodPipeline:()=>R5,ZodParsedType:()=>T,ZodOptional:()=>I1,ZodObject:()=>gD,ZodNumber:()=>q6,ZodNullable:()=>M8,ZodNull:()=>j3,ZodNever:()=>F8,ZodNativeEnum:()=>P3,ZodNaN:()=>C5,ZodMap:()=>N5,ZodLiteral:()=>I3,ZodLazy:()=>w3,ZodIssueCode:()=>R,ZodIntersection:()=>O3,ZodFunction:()=>N3,ZodFirstPartyTypeKind:()=>m,ZodError:()=>_0,ZodEnum:()=>K6,ZodEffects:()=>S1,ZodDiscriminatedUnion:()=>_$,ZodDefault:()=>S3,ZodDate:()=>a6,ZodCatch:()=>k3,ZodBranded:()=>f$,ZodBoolean:()=>C3,ZodBigInt:()=>E6,ZodArray:()=>w1,ZodAny:()=>o6,Schema:()=>$D,ParseStatus:()=>G0,OK:()=>Z0,NEVER:()=>gGD,INVALID:()=>b,EMPTY_PATH:()=>k2D,DIRTY:()=>i6,BRAND:()=>e2D});var YD;(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}})(YD||(YD={}));var h2;(function(D){D.mergeShapes=(F,$)=>{return{...F,...$}}})(h2||(h2={}));var T=YD.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),D8=(D)=>{switch(typeof D){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(D)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":if(Array.isArray(D))return T.array;if(D===null)return T.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return T.promise;if(typeof Map<"u"&&D instanceof Map)return T.map;if(typeof Set<"u"&&D instanceof Set)return T.set;if(typeof Date<"u"&&D instanceof Date)return T.date;return T.object;default:return T.unknown}};var R=YD.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"]),I2D=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")};class _0 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 _0))throw Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,YD.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()}}_0.create=(D)=>{return new _0(D)};var P2D=(D,F)=>{let $;switch(D.code){case R.invalid_type:if(D.received===T.undefined)$="Required";else $=`Expected ${D.expected}, received ${D.received}`;break;case R.invalid_literal:$=`Invalid literal value, expected ${JSON.stringify(D.expected,YD.jsonStringifyReplacer)}`;break;case R.unrecognized_keys:$=`Unrecognized key(s) in object: ${YD.joinValues(D.keys,", ")}`;break;case R.invalid_union:$="Invalid input";break;case R.invalid_union_discriminator:$=`Invalid discriminator value. Expected ${YD.joinValues(D.options)}`;break;case R.invalid_enum_value:$=`Invalid enum value. Expected ${YD.joinValues(D.options)}, received '${D.received}'`;break;case R.invalid_arguments:$="Invalid function arguments";break;case R.invalid_return_type:$="Invalid function return type";break;case R.invalid_date:$="Invalid date";break;case R.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 YD.assertNever(D.validation);else if(D.validation!=="regex")$=`Invalid ${D.validation}`;else $="Invalid";break;case R.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 R.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 R.custom:$="Invalid input";break;case R.invalid_intersection_types:$="Intersection results could not be merged";break;case R.not_multiple_of:$=`Number must be a multiple of ${D.multipleOf}`;break;case R.not_finite:$="Number must be finite";break;default:$=F.defaultError,YD.assertNever(D)}return{message:$}},A8=P2D;var Rv=A8;function S2D(D){Rv=D}function A3(){return Rv}var U5=(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((W)=>!!W).slice().reverse();for(let W of G)Y=W(X,{data:F,defaultError:Y}).message;return{...J,path:Q,message:Y}},k2D=[];function P(D,F){let $=A3(),B=U5({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,$,$===A8?void 0:A8].filter((J)=>!!J)});D.common.issues.push(B)}class G0{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 b;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 G0.mergeObjectSync(D,$)}static mergeObjectSync(D,F){let $={};for(let B of F){let{key:J,value:Q}=B;if(J.status==="aborted")return b;if(Q.status==="aborted")return b;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 b=Object.freeze({status:"aborted"}),i6=(D)=>({status:"dirty",value:D}),Z0=(D)=>({status:"valid",value:D}),y$=(D)=>D.status==="aborted",x$=(D)=>D.status==="dirty",W6=(D)=>D.status==="valid",L3=(D)=>typeof Promise<"u"&&D instanceof Promise;var _;(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(_||(_={}));class P1{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(W6(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 _0(D.common.issues);return this._error=$,this._error}}}};function e(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 $D{get description(){return this._def.description}_getType(D){return D8(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:D8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new G0,ctx:{common:D.parent.common,data:D.data,parsedType:D8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(L3(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:D8(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:D8(D)};if(!this["~standard"].async)try{let $=this._parseSync({data:D,path:[],parent:F});return W6($)?{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(($)=>W6($)?{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:D8(D)},B=this._parse({data:D,path:$.path,parent:$}),J=await(L3(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:R.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 S1({schema:this,typeName:m.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 I1.create(this,this._def)}nullable(){return M8.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return w1.create(this)}promise(){return r6.create(this,this._def)}or(D){return T3.create([this,D],this._def)}and(D){return O3.create(this,D,this._def)}transform(D){return new S1({...e(this._def),schema:this,typeName:m.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new S3({...e(this._def),innerType:this,defaultValue:F,typeName:m.ZodDefault})}brand(){return new f$({typeName:m.ZodBranded,type:this,...e(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new k3({...e(this._def),innerType:this,catchValue:F,typeName:m.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return R5.create(this,D)}readonly(){return v3.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var v2D=/^c[^\s-]{8,}$/i,y2D=/^[0-9a-z]+$/,x2D=/^[0-9A-HJKMNP-TV-Z]{26}$/i,_2D=/^[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,f2D=/^[a-z0-9_-]{21}$/i,g2D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,h2D=/^[-+]?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)?)??$/,b2D=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u2D="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",b2,m2D=/^(?:(?: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])$/,l2D=/^(?:(?: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])$/,d2D=/^(([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]))$/,p2D=/^(([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])$/,c2D=/^([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}(=)?))?$/,Ov="((\\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])))",i2D=new RegExp(`^${Ov}$`);function wv(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 a2D(D){return new RegExp(`^${wv(D)}$`)}function Iv(D){let F=`${Ov}T${wv(D)}`,$=[];if($.push(D.local?"Z?":"Z"),D.offset)$.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${$.join("|")})`,new RegExp(`^${F}$`)}function o2D(D,F){if((F==="v4"||!F)&&m2D.test(D))return!0;if((F==="v6"||!F)&&d2D.test(D))return!0;return!1}function s2D(D,F){if(!g2D.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 r2D(D,F){if((F==="v4"||!F)&&l2D.test(D))return!0;if((F==="v6"||!F)&&p2D.test(D))return!0;return!1}class O1 extends $D{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==T.string){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.string,received:J.parsedType}),b}let $=new G0,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),P(B,{code:R.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),P(B,{code:R.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)P(B,{code:R.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});else if(X)P(B,{code:R.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});$.dirty()}}else if(J.kind==="email"){if(!b2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"email",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="emoji"){if(!b2)b2=new RegExp(u2D,"u");if(!b2.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"emoji",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="uuid"){if(!_2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"uuid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="nanoid"){if(!f2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"nanoid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid"){if(!v2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"cuid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid2"){if(!y2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"cuid2",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ulid"){if(!x2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"ulid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="url")try{new URL(D.data)}catch{B=this._getOrReturnCtx(D,B),P(B,{validation:"url",code:R.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),P(B,{validation:"regex",code:R.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),P(B,{code:R.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),P(B,{code:R.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),P(B,{code:R.invalid_string,validation:{endsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="datetime"){if(!Iv(J).test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"datetime",message:J.message}),$.dirty()}else if(J.kind==="date"){if(!i2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"date",message:J.message}),$.dirty()}else if(J.kind==="time"){if(!a2D(J).test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"time",message:J.message}),$.dirty()}else if(J.kind==="duration"){if(!h2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"duration",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ip"){if(!o2D(D.data,J.version))B=this._getOrReturnCtx(D,B),P(B,{validation:"ip",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="jwt"){if(!s2D(D.data,J.alg))B=this._getOrReturnCtx(D,B),P(B,{validation:"jwt",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cidr"){if(!r2D(D.data,J.version))B=this._getOrReturnCtx(D,B),P(B,{validation:"cidr",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64"){if(!c2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"base64",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64url"){if(!n2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"base64url",code:R.invalid_string,message:J.message}),$.dirty()}else YD.assertNever(J);return{status:$.value,value:D.data}}_regex(D,F,$){return this.refinement((B)=>D.test(B),{validation:F,code:R.invalid_string,..._.errToObj($)})}_addCheck(D){return new O1({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",..._.errToObj(D)})}url(D){return this._addCheck({kind:"url",..._.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",..._.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",..._.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",..._.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",..._.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",..._.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",..._.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",..._.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",..._.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",..._.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",..._.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",..._.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,..._.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,..._.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",..._.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,..._.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,..._.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,..._.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,..._.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,..._.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,..._.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,..._.errToObj(F)})}nonempty(D){return this.min(1,_.errToObj(D))}trim(){return new O1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new O1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new O1({...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}}O1.create=(D)=>{return new O1({checks:[],typeName:m.ZodString,coerce:D?.coerce??!1,...e(D)})};function t2D(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 q6 extends $D{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)!==T.number){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.number,received:J.parsedType}),b}let $=void 0,B=new G0;for(let J of this._def.checks)if(J.kind==="int"){if(!YD.isInteger(D.data))$=this._getOrReturnCtx(D,$),P($,{code:R.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,$),P($,{code:R.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,$),P($,{code:R.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(t2D(D.data,J.value)!==0)$=this._getOrReturnCtx(D,$),P($,{code:R.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(D.data))$=this._getOrReturnCtx(D,$),P($,{code:R.not_finite,message:J.message}),B.dirty()}else YD.assertNever(J);return{status:B.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,_.toString(F))}gt(D,F){return this.setLimit("min",D,!1,_.toString(F))}lte(D,F){return this.setLimit("max",D,!0,_.toString(F))}lt(D,F){return this.setLimit("max",D,!1,_.toString(F))}setLimit(D,F,$,B){return new q6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:_.toString(B)}]})}_addCheck(D){return new q6({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:_.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:_.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:_.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:_.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:_.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:_.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:_.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:_.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:_.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"&&YD.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)}}q6.create=(D)=>{return new q6({checks:[],typeName:m.ZodNumber,coerce:D?.coerce||!1,...e(D)})};class E6 extends $D{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)!==T.bigint)return this._getInvalidInput(D);let $=void 0,B=new G0;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,$),P($,{code:R.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,$),P($,{code:R.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,$),P($,{code:R.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else YD.assertNever(J);return{status:B.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return P(F,{code:R.invalid_type,expected:T.bigint,received:F.parsedType}),b}gte(D,F){return this.setLimit("min",D,!0,_.toString(F))}gt(D,F){return this.setLimit("min",D,!1,_.toString(F))}lte(D,F){return this.setLimit("max",D,!0,_.toString(F))}lt(D,F){return this.setLimit("max",D,!1,_.toString(F))}setLimit(D,F,$,B){return new E6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:_.toString(B)}]})}_addCheck(D){return new E6({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:_.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:_.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:_.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:_.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:_.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}}E6.create=(D)=>{return new E6({checks:[],typeName:m.ZodBigInt,coerce:D?.coerce??!1,...e(D)})};class C3 extends $D{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==T.boolean){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.boolean,received:$.parsedType}),b}return Z0(D.data)}}C3.create=(D)=>{return new C3({typeName:m.ZodBoolean,coerce:D?.coerce||!1,...e(D)})};class a6 extends $D{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==T.date){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.date,received:J.parsedType}),b}if(Number.isNaN(D.data.getTime())){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_date}),b}let $=new G0,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),P(B,{code:R.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),P(B,{code:R.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),$.dirty()}else YD.assertNever(J);return{status:$.value,value:new Date(D.data.getTime())}}_addCheck(D){return new a6({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:_.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:_.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}}a6.create=(D)=>{return new a6({checks:[],coerce:D?.coerce||!1,typeName:m.ZodDate,...e(D)})};class A5 extends $D{_parse(D){if(this._getType(D)!==T.symbol){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.symbol,received:$.parsedType}),b}return Z0(D.data)}}A5.create=(D)=>{return new A5({typeName:m.ZodSymbol,...e(D)})};class R3 extends $D{_parse(D){if(this._getType(D)!==T.undefined){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.undefined,received:$.parsedType}),b}return Z0(D.data)}}R3.create=(D)=>{return new R3({typeName:m.ZodUndefined,...e(D)})};class j3 extends $D{_parse(D){if(this._getType(D)!==T.null){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.null,received:$.parsedType}),b}return Z0(D.data)}}j3.create=(D)=>{return new j3({typeName:m.ZodNull,...e(D)})};class o6 extends $D{constructor(){super(...arguments);this._any=!0}_parse(D){return Z0(D.data)}}o6.create=(D)=>{return new o6({typeName:m.ZodAny,...e(D)})};class H6 extends $D{constructor(){super(...arguments);this._unknown=!0}_parse(D){return Z0(D.data)}}H6.create=(D)=>{return new H6({typeName:m.ZodUnknown,...e(D)})};class F8 extends $D{_parse(D){let F=this._getOrReturnCtx(D);return P(F,{code:R.invalid_type,expected:T.never,received:F.parsedType}),b}}F8.create=(D)=>{return new F8({typeName:m.ZodNever,...e(D)})};class L5 extends $D{_parse(D){if(this._getType(D)!==T.undefined){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.void,received:$.parsedType}),b}return Z0(D.data)}}L5.create=(D)=>{return new L5({typeName:m.ZodVoid,...e(D)})};class w1 extends $D{_parse(D){let{ctx:F,status:$}=this._processInputParams(D),B=this._def;if(F.parsedType!==T.array)return P(F,{code:R.invalid_type,expected:T.array,received:F.parsedType}),b;if(B.exactLength!==null){let Q=F.data.length>B.exactLength.value,X=F.data.length<B.exactLength.value;if(Q||X)P(F,{code:Q?R.too_big:R.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)P(F,{code:R.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)P(F,{code:R.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 P1(F,Q,F.path,X))})).then((Q)=>{return G0.mergeArray($,Q)});let J=[...F.data].map((Q,X)=>{return B.type._parseSync(new P1(F,Q,F.path,X))});return G0.mergeArray($,J)}get element(){return this._def.type}min(D,F){return new w1({...this._def,minLength:{value:D,message:_.toString(F)}})}max(D,F){return new w1({...this._def,maxLength:{value:D,message:_.toString(F)}})}length(D,F){return new w1({...this._def,exactLength:{value:D,message:_.toString(F)}})}nonempty(D){return this.min(1,D)}}w1.create=(D,F)=>{return new w1({type:D,minLength:null,maxLength:null,exactLength:null,typeName:m.ZodArray,...e(F)})};function M3(D){if(D instanceof gD){let F={};for(let $ in D.shape){let B=D.shape[$];F[$]=I1.create(M3(B))}return new gD({...D._def,shape:()=>F})}else if(D instanceof w1)return new w1({...D._def,type:M3(D.element)});else if(D instanceof I1)return I1.create(M3(D.unwrap()));else if(D instanceof M8)return M8.create(M3(D.unwrap()));else if(D instanceof $8)return $8.create(D.items.map((F)=>M3(F)));else return D}class gD extends $D{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=YD.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==T.object){let G=this._getOrReturnCtx(D);return P(G,{code:R.invalid_type,expected:T.object,received:G.parsedType}),b}let{status:$,ctx:B}=this._processInputParams(D),{shape:J,keys:Q}=this._getCached(),X=[];if(!(this._def.catchall instanceof F8&&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 W=J[G],q=B.data[G];Y.push({key:{status:"valid",value:G},value:W._parse(new P1(B,q,B.path,G)),alwaysSet:G in B.data})}if(this._def.catchall instanceof F8){let G=this._def.unknownKeys;if(G==="passthrough")for(let W of X)Y.push({key:{status:"valid",value:W},value:{status:"valid",value:B.data[W]}});else if(G==="strict"){if(X.length>0)P(B,{code:R.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 W of X){let q=B.data[W];Y.push({key:{status:"valid",value:W},value:G._parse(new P1(B,q,B.path,W)),alwaysSet:W in B.data})}}if(B.common.async)return Promise.resolve().then(async()=>{let G=[];for(let W of Y){let q=await W.key,K=await W.value;G.push({key:q,value:K,alwaysSet:W.alwaysSet})}return G}).then((G)=>{return G0.mergeObjectSync($,G)});else return G0.mergeObjectSync($,Y)}get shape(){return this._def.shape()}strict(D){return _.errToObj,new gD({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,$)=>{let B=this._def.errorMap?.(F,$).message??$.defaultError;if(F.code==="unrecognized_keys")return{message:_.errToObj(D).message??B};return{message:B}}}:{}})}strip(){return new gD({...this._def,unknownKeys:"strip"})}passthrough(){return new gD({...this._def,unknownKeys:"passthrough"})}extend(D){return new gD({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new gD({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:m.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new gD({...this._def,catchall:D})}pick(D){let F={};for(let $ of YD.objectKeys(D))if(D[$]&&this.shape[$])F[$]=this.shape[$];return new gD({...this._def,shape:()=>F})}omit(D){let F={};for(let $ of YD.objectKeys(this.shape))if(!D[$])F[$]=this.shape[$];return new gD({...this._def,shape:()=>F})}deepPartial(){return M3(this)}partial(D){let F={};for(let $ of YD.objectKeys(this.shape)){let B=this.shape[$];if(D&&!D[$])F[$]=B;else F[$]=B.optional()}return new gD({...this._def,shape:()=>F})}required(D){let F={};for(let $ of YD.objectKeys(this.shape))if(D&&!D[$])F[$]=this.shape[$];else{let J=this.shape[$];while(J instanceof I1)J=J._def.innerType;F[$]=J}return new gD({...this._def,shape:()=>F})}keyof(){return Pv(YD.objectKeys(this.shape))}}gD.create=(D,F)=>{return new gD({shape:()=>D,unknownKeys:"strip",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};gD.strictCreate=(D,F)=>{return new gD({shape:()=>D,unknownKeys:"strict",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};gD.lazycreate=(D,F)=>{return new gD({shape:D,unknownKeys:"strip",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};class T3 extends $D{_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 _0(X.ctx.common.issues));return P(F,{code:R.invalid_union,unionErrors:Q}),b}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},W=Y._parseSync({data:F.data,path:F.path,parent:G});if(W.status==="valid")return W;else if(W.status==="dirty"&&!J)J={result:W,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 _0(Y));return P(F,{code:R.invalid_union,unionErrors:X}),b}}get options(){return this._def.options}}T3.create=(D,F)=>{return new T3({options:D,typeName:m.ZodUnion,...e(F)})};var L8=(D)=>{if(D instanceof w3)return L8(D.schema);else if(D instanceof S1)return L8(D.innerType());else if(D instanceof I3)return[D.value];else if(D instanceof K6)return D.options;else if(D instanceof P3)return YD.objectValues(D.enum);else if(D instanceof S3)return L8(D._def.innerType);else if(D instanceof R3)return[void 0];else if(D instanceof j3)return[null];else if(D instanceof I1)return[void 0,...L8(D.unwrap())];else if(D instanceof M8)return[null,...L8(D.unwrap())];else if(D instanceof f$)return L8(D.unwrap());else if(D instanceof v3)return L8(D.unwrap());else if(D instanceof k3)return L8(D._def.innerType);else return[]};class _$ extends $D{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.object)return P(F,{code:R.invalid_type,expected:T.object,received:F.parsedType}),b;let $=this.discriminator,B=F.data[$],J=this.optionsMap.get(B);if(!J)return P(F,{code:R.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[$]}),b;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=L8(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 _$({typeName:m.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:B,...e($)})}}function u2(D,F){let $=D8(D),B=D8(F);if(D===F)return{valid:!0,data:D};else if($===T.object&&B===T.object){let J=YD.objectKeys(F),Q=YD.objectKeys(D).filter((Y)=>J.indexOf(Y)!==-1),X={...D,...F};for(let Y of Q){let G=u2(D[Y],F[Y]);if(!G.valid)return{valid:!1};X[Y]=G.data}return{valid:!0,data:X}}else if($===T.array&&B===T.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=u2(X,Y);if(!G.valid)return{valid:!1};J.push(G.data)}return{valid:!0,data:J}}else if($===T.date&&B===T.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}class O3 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=(J,Q)=>{if(y$(J)||y$(Q))return b;let X=u2(J.value,Q.value);if(!X.valid)return P($,{code:R.invalid_intersection_types}),b;if(x$(J)||x$(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:$}))}}O3.create=(D,F,$)=>{return new O3({left:D,right:F,typeName:m.ZodIntersection,...e($)})};class $8 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.array)return P($,{code:R.invalid_type,expected:T.array,received:$.parsedType}),b;if($.data.length<this._def.items.length)return P($,{code:R.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),b;if(!this._def.rest&&$.data.length>this._def.items.length)P($,{code:R.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 P1($,Q,$.path,X))}).filter((Q)=>!!Q);if($.common.async)return Promise.all(J).then((Q)=>{return G0.mergeArray(F,Q)});else return G0.mergeArray(F,J)}get items(){return this._def.items}rest(D){return new $8({...this._def,rest:D})}}$8.create=(D,F)=>{if(!Array.isArray(D))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new $8({items:D,typeName:m.ZodTuple,rest:null,...e(F)})};class M5 extends $D{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.object)return P($,{code:R.invalid_type,expected:T.object,received:$.parsedType}),b;let B=[],J=this._def.keyType,Q=this._def.valueType;for(let X in $.data)B.push({key:J._parse(new P1($,X,$.path,X)),value:Q._parse(new P1($,$.data[X],$.path,X)),alwaysSet:X in $.data});if($.common.async)return G0.mergeObjectAsync(F,B);else return G0.mergeObjectSync(F,B)}get element(){return this._def.valueType}static create(D,F,$){if(F instanceof $D)return new M5({keyType:D,valueType:F,typeName:m.ZodRecord,...e($)});return new M5({keyType:O1.create(),valueType:D,typeName:m.ZodRecord,...e(F)})}}class N5 extends $D{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.map)return P($,{code:R.invalid_type,expected:T.map,received:$.parsedType}),b;let B=this._def.keyType,J=this._def.valueType,Q=[...$.data.entries()].map(([X,Y],G)=>{return{key:B._parse(new P1($,X,$.path,[G,"key"])),value:J._parse(new P1($,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,W=await Y.value;if(G.status==="aborted"||W.status==="aborted")return b;if(G.status==="dirty"||W.status==="dirty")F.dirty();X.set(G.value,W.value)}return{status:F.value,value:X}})}else{let X=new Map;for(let Y of Q){let{key:G,value:W}=Y;if(G.status==="aborted"||W.status==="aborted")return b;if(G.status==="dirty"||W.status==="dirty")F.dirty();X.set(G.value,W.value)}return{status:F.value,value:X}}}}N5.create=(D,F,$)=>{return new N5({valueType:F,keyType:D,typeName:m.ZodMap,...e($)})};class s6 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.set)return P($,{code:R.invalid_type,expected:T.set,received:$.parsedType}),b;let B=this._def;if(B.minSize!==null){if($.data.size<B.minSize.value)P($,{code:R.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)P($,{code:R.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 W of Y){if(W.status==="aborted")return b;if(W.status==="dirty")F.dirty();G.add(W.value)}return{status:F.value,value:G}}let X=[...$.data.values()].map((Y,G)=>J._parse(new P1($,Y,$.path,G)));if($.common.async)return Promise.all(X).then((Y)=>Q(Y));else return Q(X)}min(D,F){return new s6({...this._def,minSize:{value:D,message:_.toString(F)}})}max(D,F){return new s6({...this._def,maxSize:{value:D,message:_.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}}s6.create=(D,F)=>{return new s6({valueType:D,minSize:null,maxSize:null,typeName:m.ZodSet,...e(F)})};class N3 extends $D{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.function)return P(F,{code:R.invalid_type,expected:T.function,received:F.parsedType}),b;function $(X,Y){return U5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,A3(),A8].filter((G)=>!!G),issueData:{code:R.invalid_arguments,argumentsError:Y}})}function B(X,Y){return U5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,A3(),A8].filter((G)=>!!G),issueData:{code:R.invalid_return_type,returnTypeError:Y}})}let J={errorMap:F.common.contextualErrorMap},Q=F.data;if(this._def.returns instanceof r6){let X=this;return Z0(async function(...Y){let G=new _0([]),W=await X._def.args.parseAsync(Y,J).catch((V)=>{throw G.addIssue($(Y,V)),G}),q=await Reflect.apply(Q,this,W);return await X._def.returns._def.type.parseAsync(q,J).catch((V)=>{throw G.addIssue(B(q,V)),G})})}else{let X=this;return Z0(function(...Y){let G=X._def.args.safeParse(Y,J);if(!G.success)throw new _0([$(Y,G.error)]);let W=Reflect.apply(Q,this,G.data),q=X._def.returns.safeParse(W,J);if(!q.success)throw new _0([B(W,q.error)]);return q.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new N3({...this._def,args:$8.create(D).rest(H6.create())})}returns(D){return new N3({...this._def,returns:D})}implement(D){return this.parse(D)}strictImplement(D){return this.parse(D)}static create(D,F,$){return new N3({args:D?D:$8.create([]).rest(H6.create()),returns:F||H6.create(),typeName:m.ZodFunction,...e($)})}}class w3 extends $D{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})}}w3.create=(D,F)=>{return new w3({getter:D,typeName:m.ZodLazy,...e(F)})};class I3 extends $D{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return P(F,{received:F.data,code:R.invalid_literal,expected:this._def.value}),b}return{status:"valid",value:D.data}}get value(){return this._def.value}}I3.create=(D,F)=>{return new I3({value:D,typeName:m.ZodLiteral,...e(F)})};function Pv(D,F){return new K6({values:D,typeName:m.ZodEnum,...e(F)})}class K6 extends $D{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),$=this._def.values;return P(F,{expected:YD.joinValues($),received:F.parsedType,code:R.invalid_type}),b}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 P(F,{received:F.data,code:R.invalid_enum_value,options:$}),b}return Z0(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 K6.create(D,{...this._def,...F})}exclude(D,F=this._def){return K6.create(this.options.filter(($)=>!D.includes($)),{...this._def,...F})}}K6.create=Pv;class P3 extends $D{_parse(D){let F=YD.getValidEnumValues(this._def.values),$=this._getOrReturnCtx(D);if($.parsedType!==T.string&&$.parsedType!==T.number){let B=YD.objectValues(F);return P($,{expected:YD.joinValues(B),received:$.parsedType,code:R.invalid_type}),b}if(!this._cache)this._cache=new Set(YD.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let B=YD.objectValues(F);return P($,{received:$.data,code:R.invalid_enum_value,options:B}),b}return Z0(D.data)}get enum(){return this._def.values}}P3.create=(D,F)=>{return new P3({values:D,typeName:m.ZodNativeEnum,...e(F)})};class r6 extends $D{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.promise&&F.common.async===!1)return P(F,{code:R.invalid_type,expected:T.promise,received:F.parsedType}),b;let $=F.parsedType===T.promise?F.data:Promise.resolve(F.data);return Z0($.then((B)=>{return this._def.type.parseAsync(B,{path:F.path,errorMap:F.common.contextualErrorMap})}))}}r6.create=(D,F)=>{return new r6({type:D,typeName:m.ZodPromise,...e(F)})};class S1 extends $D{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===m.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(P($,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 b;let Y=await this._def.schema._parseAsync({data:X,path:$.path,parent:$});if(Y.status==="aborted")return b;if(Y.status==="dirty")return i6(Y.value);if(F.value==="dirty")return i6(Y.value);return Y});else{if(F.value==="aborted")return b;let X=this._def.schema._parseSync({data:Q,path:$.path,parent:$});if(X.status==="aborted")return b;if(X.status==="dirty")return i6(X.value);if(F.value==="dirty")return i6(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 b;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 b;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(!W6(Q))return b;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(!W6(Q))return b;return Promise.resolve(B.transform(Q.value,J)).then((X)=>({status:F.value,value:X}))});YD.assertNever(B)}}S1.create=(D,F,$)=>{return new S1({schema:D,typeName:m.ZodEffects,effect:F,...e($)})};S1.createWithPreprocess=(D,F,$)=>{return new S1({schema:F,effect:{type:"preprocess",transform:D},typeName:m.ZodEffects,...e($)})};class I1 extends $D{_parse(D){if(this._getType(D)===T.undefined)return Z0(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}I1.create=(D,F)=>{return new I1({innerType:D,typeName:m.ZodOptional,...e(F)})};class M8 extends $D{_parse(D){if(this._getType(D)===T.null)return Z0(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}M8.create=(D,F)=>{return new M8({innerType:D,typeName:m.ZodNullable,...e(F)})};class S3 extends $D{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;if(F.parsedType===T.undefined)$=this._def.defaultValue();return this._def.innerType._parse({data:$,path:F.path,parent:F})}removeDefault(){return this._def.innerType}}S3.create=(D,F)=>{return new S3({innerType:D,typeName:m.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...e(F)})};class k3 extends $D{_parse(D){let{ctx:F}=this._processInputParams(D),$={...F,common:{...F.common,issues:[]}},B=this._def.innerType._parse({data:$.data,path:$.path,parent:{...$}});if(L3(B))return B.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new _0($.common.issues)},input:$.data})}});else return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new _0($.common.issues)},input:$.data})}}removeCatch(){return this._def.innerType}}k3.create=(D,F)=>{return new k3({innerType:D,typeName:m.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...e(F)})};class C5 extends $D{_parse(D){if(this._getType(D)!==T.nan){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.nan,received:$.parsedType}),b}return{status:"valid",value:D.data}}}C5.create=(D)=>{return new C5({typeName:m.ZodNaN,...e(D)})};var e2D=Symbol("zod_brand");class f$ extends $D{_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 R5 extends $D{_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 b;if(J.status==="dirty")return F.dirty(),i6(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 b;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 R5({in:D,out:F,typeName:m.ZodPipeline})}}class v3 extends $D{_parse(D){let F=this._def.innerType._parse(D),$=(B)=>{if(W6(B))B.value=Object.freeze(B.value);return B};return L3(F)?F.then((B)=>$(B)):$(F)}unwrap(){return this._def.innerType}}v3.create=(D,F)=>{return new v3({innerType:D,typeName:m.ZodReadonly,...e(F)})};function Tv(D,F){let $=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof $==="string"?{message:$}:$}function Sv(D,F={},$){if(D)return o6.create().superRefine((B,J)=>{let Q=D(B);if(Q instanceof Promise)return Q.then((X)=>{if(!X){let Y=Tv(F,B),G=Y.fatal??$??!0;J.addIssue({code:"custom",...Y,fatal:G})}});if(!Q){let X=Tv(F,B),Y=X.fatal??$??!0;J.addIssue({code:"custom",...X,fatal:Y})}return});return o6.create()}var DGD={object:gD.lazycreate},m;(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"})(m||(m={}));var FGD=(D,F={message:`Input not instance of ${D.name}`})=>Sv(($)=>$ instanceof D,F),kv=O1.create,vv=q6.create,$GD=C5.create,BGD=E6.create,yv=C3.create,JGD=a6.create,QGD=A5.create,XGD=R3.create,YGD=j3.create,GGD=o6.create,WGD=H6.create,HGD=F8.create,qGD=L5.create,EGD=w1.create,KGD=gD.create,zGD=gD.strictCreate,VGD=T3.create,ZGD=_$.create,UGD=O3.create,AGD=$8.create,LGD=M5.create,MGD=N5.create,NGD=s6.create,CGD=N3.create,RGD=w3.create,jGD=I3.create,TGD=K6.create,OGD=P3.create,wGD=r6.create,IGD=S1.create,PGD=I1.create,SGD=M8.create,kGD=S1.createWithPreprocess,vGD=R5.create,yGD=()=>kv().optional(),xGD=()=>vv().optional(),_GD=()=>yv().optional(),fGD={string:(D)=>O1.create({...D,coerce:!0}),number:(D)=>q6.create({...D,coerce:!0}),boolean:(D)=>C3.create({...D,coerce:!0}),bigint:(D)=>E6.create({...D,coerce:!0}),date:(D)=>a6.create({...D,coerce:!0})};var gGD=b;var CRD=k1.object({apiKey:k1.string().optional(),apiUrl:k1.string().url().default("https://nemar-api-dev.shirazi-10f.workers.dev"),username:k1.string().optional(),email:k1.string().email().optional(),githubUsername:k1.string().optional(),sandboxCompleted:k1.boolean().optional(),sandboxDatasetId:k1.string().optional()}),mD=new v$({projectName:"nemar",schema:{activeAccount:{type:"string"},accounts:{type:"object"},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}:{}}),hGD=["apiKey","apiUrl","username","email","githubUsername","sandboxCompleted","sandboxDatasetId"];function bGD(){if(mD.get("accounts"))return;let D=mD.get("apiKey"),F=mD.get("username");if(!D&&!F)return;try{let $=F||"default",B={apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"};for(let J of hGD){let Q=mD.get(J);if(Q!==void 0)B[J]=Q}mD.store={activeAccount:$,accounts:{[$]:B}}}catch{}}bGD();function j5(){return mD.get("activeAccount")}function z6(){return mD.get("accounts")||{}}function oD(){let D=j5();if(!D)return{apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"};return z6()[D]||{apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"}}function xv(){return!!oD().sandboxCompleted}function N8(D,F){let $=j5();if(!$){let J=z6(),Q="default";J.default={...J.default||{},[D]:F},mD.set("accounts",J),mD.set("activeAccount","default");return}let B=z6();if(!B[$])B[$]={apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"};B[$][D]=F,mD.set("accounts",B)}function m2(D){let F=j5();if(!F)return;let $=z6();if($[F])delete $[F][D],mD.set("accounts",$)}function _v(){let D=j5();if(!D){mD.clear();return}let F=z6();delete F[D];let $=Object.keys(F);if($.length>0)mD.set("accounts",F),mD.set("activeAccount",$[0]);else mD.clear()}function fv(){mD.clear()}function vD(){return!!oD().apiKey}function gv(){return mD.path}function T5(){let D=z6(),F=j5();return Object.entries(D).map(([$,B])=>({username:B.username||$,email:B.email,githubUsername:B.githubUsername,active:$===F}))}function hv(D,F){let $=z6();$[D]=F,mD.set("accounts",$),mD.set("activeAccount",D)}function bv(D){let F=z6();if(F[D])return mD.set("activeAccount",D),F[D];for(let[$,B]of Object.entries(F))if(B.githubUsername===D)return mD.set("activeAccount",$),B;return null}var l2="https://nemar-api-dev.shirazi-10f.workers.dev",g$=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;function f0(D){if(D instanceof Error)return D.message;return String(D)}class u extends Error{statusCode;details;constructor(D,F,$){super(F);this.statusCode=D;this.details=$;this.name="ApiError"}}var uGD=l2.includes("workers.dev");function uv(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(uGD)return l2;return oD().apiUrl||l2}async function o(D,F={},$=!1){let B=`${uv()}${D}`,J={"Content-Type":"application/json",...F.headers};if($){let Y=oD();if(!Y.apiKey&&$===!0)throw new u(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 u(0,`Network error: Could not connect to ${uv()}`,{originalError:Y instanceof Error?Y.message:String(Y)})}let X;try{X=await Q.json()}catch{throw new u(Q.status,`Invalid response from server (status ${Q.status})`)}if(!Q.ok)throw new u(Q.status,X.error||X.message||"Request failed",X.details);return X}async function mv(D){return o(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function lv(D){return o(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function dv(D){return o("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function pv(D){return o("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function cv(D){return o("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function nv(D,F){return o("/auth/retrieve-key",{method:"POST",body:JSON.stringify({email:D,password:F})})}async function iv(D){return o("/auth/request-key-regeneration",{method:"POST",body:JSON.stringify({email:D})})}async function h$(){return o("/users/me",{},!0)}async function av(D,F){let $=new URLSearchParams;if(D)$.set("status",D);if(F)$.set("role",F);let B=$.toString()?`?${$.toString()}`:"";return o(`/admin/users${B}`,{},!0)}async function ov(D){return o(`/admin/approve/${D}`,{method:"POST"},!0)}async function sv(D){return o(`/admin/revoke/${D}`,{method:"POST"},!0)}async function rv(D,F){return o(`/admin/users/${D}/role`,{method:"POST",body:JSON.stringify({role:F})},!0)}async function tv(D){return o(`/admin/regenerate-iam/${D}`,{method:"POST"},!0)}async function d2(D,F){return o(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function ev(D){return o(`/datasets/${D}/publish`,{method:"POST"},!0)}async function Dy(D){return o(`/admin/datasets/${D}/ci`,{},!0)}async function b$(D){return o(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function Fy(D){return o(`/datasets/${D}/ci/status`,{},!0)}async function $y(D){return o(`/datasets/${D}/manifest`,{},!0)}async function By(D,F){return o(`/datasets/${D}/manifest/${F}`,{},!0)}function Jy(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 Qy(D=!1){let $=await o(`/datasets${D?"?mine=true":""}`,{},D?!0:"optional");return $.datasets=$.datasets.map(Jy),$}async function l0(D){let F=await o(`/datasets/${D}`,{},"optional");return Jy(F.dataset)}async function Xy(D){return o(`/datasets/${D}/versions`,{},!0)}async function u$(D){return o("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function m$(D){return o(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function Yy(D,F){return o(`/datasets/${D}/upload-urls`,{method:"POST",body:JSON.stringify({files:F})},!0)}async function Gy(D,F){return o(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function O5(D){return o(`/admin/datasets/${D}/doi`,{},!0)}async function p2(D,F){return o(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function Wy(D){return o(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function Hy(D,F){return o(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function qy(D){return o(`/datasets/${D}/collaborators`,{},!0)}async function Ey(D){return o("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function Ky(){return o("/sandbox/reset",{method:"POST"},!0)}async function zy(){return o("/sandbox/status",{},!0)}async function Vy(D){return o(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function Zy(D){return o(`/datasets/${D}/publish/status`,{},!0)}async function Uy(D){return o(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function Ay(D){let F=D?`?status=${D}`:"";return o(`/admin/publish/requests${F}`,{},!0)}async function Ly(D,F){return o(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}async function My(D,F=!1,$=!1){let B,J;do if(J=await o(`/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 Ny(D,F){return o(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function Cy(D){return o(`/admin/datasets/${D}/files`,{},!0)}async function Ry(D){let F=0,$=0,B=[],J=0,Q=!0;while(Q){let X=await o(`/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 jy(D,F=!1){return o(`/admin/datasets/${D}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({force:F})},!0)}async function RD(D,F,$=!1){if(F.no)return"declined";if(F.yes)return"confirmed";try{let{confirmed:B}=await LD.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 Ty(D,F,$){if($.no)return"declined";if($.yes)return"confirmed";try{let{input:B}=await LD.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 yD="-y, --yes",dD="-n, --no",xD="Skip confirmation and proceed",pD="Skip confirmation and decline";import{existsSync as Iy,statSync as mGD}from"fs";import{join as c2}from"path";var{spawn:lGD}=globalThis.Bun;async function l(D,F={}){let $=lGD({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 Oy(D){return D.split(".").map((F)=>{let $=Number.parseInt(F.replace(/[^0-9]/g,""),10);return Number.isNaN($)?0:$})}function dGD(D,F){let $=Oy(D),B=Oy(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 Py(){try{let{stdout:F,exitCode:$,stderr:B}=await l(["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?dGD(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 pGD(){if(process.env.GH_TOKEN)return{accessible:!0,username:"token-auth",useHttps:!0};try{let{stdout:D,stderr:F}=await l(["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 Sy(){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 l$(){let[D,F]=await Promise.all([Py(),pGD()]),$=[];if(!D.installed)$.push(`git-annex is not installed. Install: ${Sy()}`);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 C8(D){if(!Iy(c2(D,".git")))return!1;try{let{exitCode:F}=await l(["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 d$(D,F={}){if(!F.force&&await C8(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 l(["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 l(["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 ky(D){try{let{exitCode:F,stderr:$}=await l(["git","annex","info"],{cwd:D});if(F===0)return{success:!0};if($.includes("First run: git-annex init")){let{stderr:B,exitCode:J}=await l(["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 p$(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 l(["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 cGD(){try{let{exitCode:D,stderr:F}=await l(["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 nGD(){try{let{stdout:D,exitCode:F,stderr:$}=await l(["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 c$(D){try{let{stdout:F,exitCode:$,stderr:B}=await l(["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 n$(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 l(["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((W)=>W.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 l(["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 l(["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 i$(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 cGD();if(Q.works)B=F;else{console.warn("GitHub SSH not available, falling back to HTTPS with gh CLI token...");let X=await nGD();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(W),this}}function C(D){return new lj(D)}import{isDeepStrictEqual as R2D}from"util";import Av from"process";import c6 from"fs";import Lv from"path";import Z5 from"crypto";import j2D from"assert";var _6=(D)=>{let F=typeof D;return D!==null&&(F==="object"||F==="function")};var iX=new Set(["__proto__","prototype","constructor"]),P6D=new Set("0123456789");function S7(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(iX.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(iX.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"&&!P6D.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(iX.has($))return[];F.push($);break}case"index":throw Error("Index was not closed");case"start":{F.push("");break}}return F}function aX(D,F){if(typeof F!=="number"&&Array.isArray(D)){let $=Number.parseInt(F,10);return Number.isInteger($)&&D[$]===D[F]}return!1}function dj(D,F){if(aX(D,F))throw Error("Cannot use string index")}function pj(D,F,$){if(!_6(D)||typeof F!=="string")return $===void 0?D:$;let B=S7(F);if(B.length===0)return $;for(let J=0;J<B.length;J++){let Q=B[J];if(aX(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 oX(D,F,$){if(!_6(D)||typeof F!=="string")return D;let B=D,J=S7(F);for(let Q=0;Q<J.length;Q++){let X=J[Q];if(dj(D,X),Q===J.length-1)D[X]=$;else if(!_6(D[X]))D[X]=typeof J[Q+1]==="number"?[]:{};D=D[X]}return B}function cj(D,F){if(!_6(D)||typeof F!=="string")return!1;let $=S7(F);for(let B=0;B<$.length;B++){let J=$[B];if(dj(D,J),B===$.length-1)return delete D[J],!0;if(D=D[J],!_6(D))return!1}}function nj(D,F){if(!_6(D)||typeof F!=="string")return!1;let $=S7(F);if($.length===0)return!1;for(let B of $){if(!_6(D)||!(B in D)||aX(D,B))return!1;D=D[B]}return!0}import fD from"path";import ij from"os";import sX from"process";var D6=ij.homedir(),rX=ij.tmpdir(),{env:D3}=sX,S6D=(D)=>{let F=fD.join(D6,"Library");return{data:fD.join(F,"Application Support",D),config:fD.join(F,"Preferences",D),cache:fD.join(F,"Caches",D),log:fD.join(F,"Logs",D),temp:fD.join(rX,D)}},k6D=(D)=>{let F=D3.APPDATA||fD.join(D6,"AppData","Roaming"),$=D3.LOCALAPPDATA||fD.join(D6,"AppData","Local");return{data:fD.join($,D,"Data"),config:fD.join(F,D,"Config"),cache:fD.join($,D,"Cache"),log:fD.join($,D,"Log"),temp:fD.join(rX,D)}},v6D=(D)=>{let F=fD.basename(D6);return{data:fD.join(D3.XDG_DATA_HOME||fD.join(D6,".local","share"),D),config:fD.join(D3.XDG_CONFIG_HOME||fD.join(D6,".config"),D),cache:fD.join(D3.XDG_CACHE_HOME||fD.join(D6,".cache"),D),log:fD.join(D3.XDG_STATE_HOME||fD.join(D6,".local","state"),D),temp:fD.join(rX,F,D)}};function tX(D,{suffix:F="nodejs"}={}){if(typeof D!=="string")throw TypeError(`Expected a string, got ${typeof D}`);if(F)D+=`-${F}`;if(sX.platform==="darwin")return S6D(D);if(sX.platform==="win32")return k6D(D);return v6D(D)}import u6D from"path";import VD from"fs";import{promisify as E0}from"util";var y6D=(D,F)=>{let{onError:$}=F;return function(...J){return D.apply(void 0,J).catch($)}},i1=y6D;var x6D=(D,F)=>{let{onError:$}=F;return function(...J){try{return D.apply(void 0,J)}catch(Q){return $(Q)}}},A1=x6D;var aj=250;var _6D=(D,F)=>{let{isRetriable:$}=F;return function(J){let{timeout:Q}=J,X=J.interval??aj,Y=Date.now()+Q;return function G(...W){return D.apply(void 0,W).catch((q)=>{if(!$(q))throw q;if(Date.now()>=Y)throw q;let K=Math.round(X*Math.random());if(K>0)return new Promise((Z)=>setTimeout(Z,K)).then(()=>G.apply(void 0,W));else return G.apply(void 0,W)})}}},a1=_6D;var f6D=(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(W){if(!$(W))throw W;if(Date.now()>=X)throw W;continue}}}},o1=f6D;import sj from"process";var _F={isChangeErrorOk:(D)=>{if(!_F.isNodeError(D))return!1;let{code:F}=D;if(F==="ENOSYS")return!0;if(!oj&&(F==="EINVAL"||F==="EPERM"))return!0;return!1},isNodeError:(D)=>{return D instanceof Error},isRetriableError:(D)=>{if(!_F.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(!_F.isNodeError(D))throw D;if(_F.isChangeErrorOk(D))return;throw D}},eX=_F;var fF={onError:eX.onChangeError},P0={onError:()=>{return}},oj=sj.getuid?!sj.getuid():!1,X0={isRetriable:eX.isRetriableError};var g6D={attempt:{chmod:i1(E0(VD.chmod),fF),chown:i1(E0(VD.chown),fF),close:i1(E0(VD.close),P0),fsync:i1(E0(VD.fsync),P0),mkdir:i1(E0(VD.mkdir),P0),realpath:i1(E0(VD.realpath),P0),stat:i1(E0(VD.stat),P0),unlink:i1(E0(VD.unlink),P0),chmodSync:A1(VD.chmodSync,fF),chownSync:A1(VD.chownSync,fF),closeSync:A1(VD.closeSync,P0),existsSync:A1(VD.existsSync,P0),fsyncSync:A1(VD.fsync,P0),mkdirSync:A1(VD.mkdirSync,P0),realpathSync:A1(VD.realpathSync,P0),statSync:A1(VD.statSync,P0),unlinkSync:A1(VD.unlinkSync,P0)},retry:{close:a1(E0(VD.close),X0),fsync:a1(E0(VD.fsync),X0),open:a1(E0(VD.open),X0),readFile:a1(E0(VD.readFile),X0),rename:a1(E0(VD.rename),X0),stat:a1(E0(VD.stat),X0),write:a1(E0(VD.write),X0),writeFile:a1(E0(VD.writeFile),X0),closeSync:o1(VD.closeSync,X0),fsyncSync:o1(VD.fsyncSync,X0),openSync:o1(VD.openSync,X0),readFileSync:o1(VD.readFileSync,X0),renameSync:o1(VD.renameSync,X0),statSync:o1(VD.statSync,X0),writeSync:o1(VD.writeSync,X0),writeFileSync:o1(VD.writeFileSync,X0)}},eD=g6D;import f6 from"process";var rj="utf8",DY=438,tj=511;var ej={},DT=f6.geteuid?f6.geteuid():-1,FT=f6.getegid?f6.getegid():-1;var $T=1000,BT=!!f6.getuid,aAD=f6.getuid?!f6.getuid():!1,FY=128;var JT=(D)=>{return D instanceof Error&&"code"in D};var $Y=(D)=>{return typeof D==="string"},k7=(D)=>{return D===void 0};import b6D from"path";import F3 from"process";import QT from"process";var XT=QT.platform==="linux",v7=QT.platform==="win32";var BY=["SIGHUP","SIGINT","SIGTERM"];if(!v7)BY.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(XT)BY.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var YT=BY;class GT{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(v7&&(D!=="SIGINT"&&D!=="SIGTERM"&&D!=="SIGKILL"))F3.kill(F3.pid,"SIGTERM");else F3.kill(F3.pid,D)},this.hook=()=>{F3.once("exit",()=>this.exit());for(let D of YT)try{F3.once(D,()=>this.exit(D))}catch{}},this.register=(D)=>{return this.callbacks.add(D),()=>{this.callbacks.delete(D)}},this.hook()}}var WT=new GT;var h6D=WT.register,HT=h6D;var m0={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=m0.truncate(F(D));if(B in m0.store)return m0.get(D,F,$);return m0.store[B]=$,[B,()=>delete m0.store[B]]},purge:(D)=>{if(!m0.store[D])return;delete m0.store[D],eD.attempt.unlink(D)},purgeSync:(D)=>{if(!m0.store[D])return;delete m0.store[D],eD.attempt.unlinkSync(D)},purgeSyncAll:()=>{for(let D in m0.store)m0.purgeSync(D)},truncate:(D)=>{let F=b6D.basename(D);if(F.length<=FY)return D;let $=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(F);if(!$)return D;let B=F.length-FY;return`${D.slice(0,-F.length)}${$[1]}${$[2].slice(0,-B)}${$[3]}`}};HT(m0.purgeSyncAll);var gF=m0;function JY(D,F,$=ej){if($Y($))return JY(D,F,{encoding:$});let J={timeout:$.timeout??$T},Q=null,X=null,Y=null;try{let G=eD.attempt.realpathSync(D),W=!!G;D=G||D,[X,Q]=gF.get(D,$.tmpCreate||gF.create,$.tmpPurge!==!1);let q=BT&&k7($.chown),K=k7($.mode);if(W&&(q||K)){let V=eD.attempt.statSync(D);if(V){if($={...$},q)$.chown={uid:V.uid,gid:V.gid};if(K)$.mode=V.mode}}if(!W){let V=u6D.dirname(D);eD.attempt.mkdirSync(V,{mode:tj,recursive:!0})}if(Y=eD.retry.openSync(J)(X,"w",$.mode||DY),$.tmpCreated)$.tmpCreated(X);if($Y(F))eD.retry.writeSync(J)(Y,F,0,$.encoding||rj);else if(!k7(F))eD.retry.writeSync(J)(Y,F,0,F.length,0);if($.fsync!==!1)if($.fsyncWait!==!1)eD.retry.fsyncSync(J)(Y);else eD.attempt.fsync(Y);if(eD.retry.closeSync(J)(Y),Y=null,$.chown&&($.chown.uid!==DT||$.chown.gid!==FT))eD.attempt.chownSync(X,$.chown.uid,$.chown.gid);if($.mode&&$.mode!==DY)eD.attempt.chmodSync(X,$.mode);try{eD.retry.renameSync(J)(X,D)}catch(V){if(!JT(V))throw V;if(V.code!=="ENAMETOOLONG")throw V;eD.retry.renameSync(J)(X,gF.truncate(D))}Q(),X=null}finally{if(Y)eD.attempt.closeSync(Y);if(X)gF.purge(X)}}var Nv=n($S(),1),Cv=n(jS(),1);var RQD=(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,W=function(...q){let K=this,V=()=>{if(X=void 0,Y)clearTimeout(Y),Y=void 0;if(Q)G=D.apply(K,q)},Z=()=>{if(Y=void 0,X)clearTimeout(X),X=void 0;if(Q)G=D.apply(K,q)},U=J&&!X;if(clearTimeout(X),X=setTimeout(V,$),B>0&&B!==Number.POSITIVE_INFINITY&&!Y)Y=setTimeout(Z,B);if(U)G=D.apply(K,q);return G};return kF(W,D),W.cancel=()=>{if(X)clearTimeout(X),X=void 0;if(Y)clearTimeout(Y),Y=void 0},W},L2=RQD;var n6=n(zv(),1);var Z2D=Object.prototype.toString;function Zv(D,F,$){if(!D)return!1;if(D.constructor===F)return!0;return Z2D.call(D)===$}function Uv(D){return Zv(D,Uint8Array,"[object Uint8Array]")}function U2D(D){return Zv(D,ArrayBuffer,"[object ArrayBuffer]")}function A2D(D){return Uv(D)||U2D(D)}function L2D(D){if(!Uv(D))throw TypeError(`Expected \`Uint8Array\`, got \`${typeof D}\``)}function M2D(D){if(!A2D(D))throw TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof D}\``)}function _2(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)L2D(J),$.set(J,B),B+=J.length;return $}var Vv={utf8:new globalThis.TextDecoder("utf8")};function f2(D,F="utf8"){return M2D(D),Vv[F]??=new globalThis.TextDecoder(F),Vv[F].decode(D)}function N2D(D){if(typeof D!=="string")throw TypeError(`Expected \`string\`, got \`${typeof D}\``)}var C2D=new globalThis.TextEncoder;function S$(D){return N2D(D),C2D.encode(D)}var xCD=Array.from({length:256},(D,F)=>F.toString(16).padStart(2,"0"));var T2D=Cv.default.default,Mv="aes-256-cbc",U3=()=>Object.create(null),O2D=(D)=>D!==void 0&&D!==null,w2D=(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`)},k$="__internal__",g2=`${k$}.migrations.version`;class v${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=tX(F.projectName,{suffix:F.projectSuffix}).config}if(this.#D=F,F.schema??F.ajvOptions??F.rootSchema){if(F.schema&&typeof F.schema!=="object")throw TypeError("The `schema` option must be an object.");let Q=new Nv.Ajv2020({allErrors:!0,useDefaults:!0,...F.ajvOptions});T2D(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=Lv.resolve(F.cwd,`${F.configName??"config"}${$}`);let B=this.store,J=Object.assign(U3(),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{j2D.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 ${k$} key, as it's used to manage this module internal operations.`);let{store:$}=this,B=(J,Q)=>{if(w2D(J,Q),this.#D.accessPropertiesByDotNotation)oX($,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 nj(this.store,D);return D in this.store}reset(...D){for(let F of D)if(O2D(this.#J[F]))this.set(F,this.#J[F])}delete(D){let{store:F}=this;if(this.#D.accessPropertiesByDotNotation)cj(F,D);else delete F[D];this.store=F}clear(){this.store=U3();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=c6.readFileSync(this.path,this.#F?null:"utf8"),F=this._encryptData(D),$=this._deserialize(F);return this._validate($),Object.assign(U3(),$)}catch(D){if(D?.code==="ENOENT")return this._ensureDirectory(),U3();if(this.#D.clearInvalidConfig&&D.name==="SyntaxError")return U3();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:f2(D);try{let F=D.slice(0,16),$=Z5.pbkdf2Sync(this.#F,F.toString(),1e4,32,"sha512"),B=Z5.createDecipheriv(Mv,$,F),J=D.slice(17),Q=typeof J==="string"?S$(J):J;return f2(_2([B.update(Q),B.final()]))}catch{}return D.toString()}_handleChange(D,F){let $=D(),B=()=>{let J=$,Q=D();if(R2D(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(){c6.mkdirSync(Lv.dirname(this.path),{recursive:!0})}_write(D){let F=this._serialize(D);if(this.#F){let $=Z5.randomBytes(16),B=Z5.pbkdf2Sync(this.#F,$.toString(),1e4,32,"sha512"),J=Z5.createCipheriv(Mv,B,$);F=_2([$,S$(":"),J.update(S$(F)),J.final()])}if(Av.env.SNAP)c6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});else try{JY(this.path,F,{mode:this.#D.configFileMode})}catch($){if($?.code==="EXDEV"){c6.writeFileSync(this.path,F,{mode:this.#D.configFileMode});return}throw $}}_watch(){if(this._ensureDirectory(),!c6.existsSync(this.path))this._write(U3());if(Av.platform==="win32")c6.watch(this.path,{persistent:!1},L2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:100}));else c6.watchFile(this.path,{persistent:!1},L2(()=>{this.events.dispatchEvent(new Event("change"))},{wait:5000}))}_migrate(D,F,$){let B=this._get(g2,"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(g2,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)||!n6.default.eq(B,F))this._set(g2,F)}_containsReservedKey(D){if(typeof D==="object"){if(Object.keys(D)[0]===k$)return!0}if(typeof D!=="string")return!1;if(this.#D.accessPropertiesByDotNotation){if(D.startsWith(`${k$}.`))return!0;return!1}return!1}_isVersionInRangeFormat(D){return n6.default.clean(D)===null}_shouldPerformMigration(D,F,$){if(this._isVersionInRangeFormat(D)){if(F!=="0.0.0"&&n6.default.satisfies(F,D))return!1;return n6.default.satisfies($,D)}if(n6.default.lte(D,F))return!1;if(n6.default.gt(D,$))return!1;return!0}_get(D,F){return pj(this.store,D,F)}_set(D,F){let{store:$}=this;oX($,D,F),this.store=$}}var k1={};WG(k1,{void:()=>qGD,util:()=>YD,unknown:()=>WGD,union:()=>VGD,undefined:()=>XGD,tuple:()=>AGD,transformer:()=>IGD,symbol:()=>QGD,string:()=>kv,strictObject:()=>zGD,setErrorMap:()=>S2D,set:()=>NGD,record:()=>LGD,quotelessJson:()=>I2D,promise:()=>wGD,preprocess:()=>kGD,pipeline:()=>vGD,ostring:()=>yGD,optional:()=>PGD,onumber:()=>xGD,oboolean:()=>_GD,objectUtil:()=>h2,object:()=>KGD,number:()=>vv,nullable:()=>SGD,null:()=>YGD,never:()=>HGD,nativeEnum:()=>OGD,nan:()=>$GD,map:()=>MGD,makeIssue:()=>U5,literal:()=>jGD,lazy:()=>RGD,late:()=>DGD,isValid:()=>W6,isDirty:()=>x$,isAsync:()=>L3,isAborted:()=>y$,intersection:()=>UGD,instanceof:()=>FGD,getParsedType:()=>D8,getErrorMap:()=>A3,function:()=>CGD,enum:()=>TGD,effect:()=>IGD,discriminatedUnion:()=>ZGD,defaultErrorMap:()=>A8,datetimeRegex:()=>Iv,date:()=>JGD,custom:()=>Sv,coerce:()=>fGD,boolean:()=>yv,bigint:()=>BGD,array:()=>EGD,any:()=>GGD,addIssueToContext:()=>P,ZodVoid:()=>L5,ZodUnknown:()=>H6,ZodUnion:()=>T3,ZodUndefined:()=>R3,ZodType:()=>$D,ZodTuple:()=>$8,ZodTransformer:()=>S1,ZodSymbol:()=>A5,ZodString:()=>O1,ZodSet:()=>s6,ZodSchema:()=>$D,ZodRecord:()=>M5,ZodReadonly:()=>v3,ZodPromise:()=>r6,ZodPipeline:()=>R5,ZodParsedType:()=>T,ZodOptional:()=>I1,ZodObject:()=>gD,ZodNumber:()=>q6,ZodNullable:()=>M8,ZodNull:()=>j3,ZodNever:()=>F8,ZodNativeEnum:()=>P3,ZodNaN:()=>C5,ZodMap:()=>N5,ZodLiteral:()=>I3,ZodLazy:()=>w3,ZodIssueCode:()=>R,ZodIntersection:()=>O3,ZodFunction:()=>N3,ZodFirstPartyTypeKind:()=>m,ZodError:()=>_0,ZodEnum:()=>K6,ZodEffects:()=>S1,ZodDiscriminatedUnion:()=>_$,ZodDefault:()=>S3,ZodDate:()=>a6,ZodCatch:()=>k3,ZodBranded:()=>f$,ZodBoolean:()=>C3,ZodBigInt:()=>E6,ZodArray:()=>w1,ZodAny:()=>o6,Schema:()=>$D,ParseStatus:()=>G0,OK:()=>Z0,NEVER:()=>gGD,INVALID:()=>b,EMPTY_PATH:()=>k2D,DIRTY:()=>i6,BRAND:()=>e2D});var YD;(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}})(YD||(YD={}));var h2;(function(D){D.mergeShapes=(F,$)=>{return{...F,...$}}})(h2||(h2={}));var T=YD.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),D8=(D)=>{switch(typeof D){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(D)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":if(Array.isArray(D))return T.array;if(D===null)return T.null;if(D.then&&typeof D.then==="function"&&D.catch&&typeof D.catch==="function")return T.promise;if(typeof Map<"u"&&D instanceof Map)return T.map;if(typeof Set<"u"&&D instanceof Set)return T.set;if(typeof Date<"u"&&D instanceof Date)return T.date;return T.object;default:return T.unknown}};var R=YD.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"]),I2D=(D)=>{return JSON.stringify(D,null,2).replace(/"([^"]+)":/g,"$1:")};class _0 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 _0))throw Error(`Not a ZodError: ${D}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,YD.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()}}_0.create=(D)=>{return new _0(D)};var P2D=(D,F)=>{let $;switch(D.code){case R.invalid_type:if(D.received===T.undefined)$="Required";else $=`Expected ${D.expected}, received ${D.received}`;break;case R.invalid_literal:$=`Invalid literal value, expected ${JSON.stringify(D.expected,YD.jsonStringifyReplacer)}`;break;case R.unrecognized_keys:$=`Unrecognized key(s) in object: ${YD.joinValues(D.keys,", ")}`;break;case R.invalid_union:$="Invalid input";break;case R.invalid_union_discriminator:$=`Invalid discriminator value. Expected ${YD.joinValues(D.options)}`;break;case R.invalid_enum_value:$=`Invalid enum value. Expected ${YD.joinValues(D.options)}, received '${D.received}'`;break;case R.invalid_arguments:$="Invalid function arguments";break;case R.invalid_return_type:$="Invalid function return type";break;case R.invalid_date:$="Invalid date";break;case R.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 YD.assertNever(D.validation);else if(D.validation!=="regex")$=`Invalid ${D.validation}`;else $="Invalid";break;case R.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 R.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 R.custom:$="Invalid input";break;case R.invalid_intersection_types:$="Intersection results could not be merged";break;case R.not_multiple_of:$=`Number must be a multiple of ${D.multipleOf}`;break;case R.not_finite:$="Number must be finite";break;default:$=F.defaultError,YD.assertNever(D)}return{message:$}},A8=P2D;var Rv=A8;function S2D(D){Rv=D}function A3(){return Rv}var U5=(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((W)=>!!W).slice().reverse();for(let W of G)Y=W(X,{data:F,defaultError:Y}).message;return{...J,path:Q,message:Y}},k2D=[];function P(D,F){let $=A3(),B=U5({issueData:F,data:D.data,path:D.path,errorMaps:[D.common.contextualErrorMap,D.schemaErrorMap,$,$===A8?void 0:A8].filter((J)=>!!J)});D.common.issues.push(B)}class G0{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 b;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 G0.mergeObjectSync(D,$)}static mergeObjectSync(D,F){let $={};for(let B of F){let{key:J,value:Q}=B;if(J.status==="aborted")return b;if(Q.status==="aborted")return b;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 b=Object.freeze({status:"aborted"}),i6=(D)=>({status:"dirty",value:D}),Z0=(D)=>({status:"valid",value:D}),y$=(D)=>D.status==="aborted",x$=(D)=>D.status==="dirty",W6=(D)=>D.status==="valid",L3=(D)=>typeof Promise<"u"&&D instanceof Promise;var _;(function(D){D.errToObj=(F)=>typeof F==="string"?{message:F}:F||{},D.toString=(F)=>typeof F==="string"?F:F?.message})(_||(_={}));class P1{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(W6(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 _0(D.common.issues);return this._error=$,this._error}}}};function e(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 $D{get description(){return this._def.description}_getType(D){return D8(D.data)}_getOrReturnCtx(D,F){return F||{common:D.parent.common,data:D.data,parsedType:D8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}_processInputParams(D){return{status:new G0,ctx:{common:D.parent.common,data:D.data,parsedType:D8(D.data),schemaErrorMap:this._def.errorMap,path:D.path,parent:D.parent}}}_parseSync(D){let F=this._parse(D);if(L3(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:D8(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:D8(D)};if(!this["~standard"].async)try{let $=this._parseSync({data:D,path:[],parent:F});return W6($)?{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(($)=>W6($)?{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:D8(D)},B=this._parse({data:D,path:$.path,parent:$}),J=await(L3(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:R.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 S1({schema:this,typeName:m.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 I1.create(this,this._def)}nullable(){return M8.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return w1.create(this)}promise(){return r6.create(this,this._def)}or(D){return T3.create([this,D],this._def)}and(D){return O3.create(this,D,this._def)}transform(D){return new S1({...e(this._def),schema:this,typeName:m.ZodEffects,effect:{type:"transform",transform:D}})}default(D){let F=typeof D==="function"?D:()=>D;return new S3({...e(this._def),innerType:this,defaultValue:F,typeName:m.ZodDefault})}brand(){return new f$({typeName:m.ZodBranded,type:this,...e(this._def)})}catch(D){let F=typeof D==="function"?D:()=>D;return new k3({...e(this._def),innerType:this,catchValue:F,typeName:m.ZodCatch})}describe(D){return new this.constructor({...this._def,description:D})}pipe(D){return R5.create(this,D)}readonly(){return v3.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var v2D=/^c[^\s-]{8,}$/i,y2D=/^[0-9a-z]+$/,x2D=/^[0-9A-HJKMNP-TV-Z]{26}$/i,_2D=/^[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,f2D=/^[a-z0-9_-]{21}$/i,g2D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,h2D=/^[-+]?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)?)??$/,b2D=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u2D="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",b2,m2D=/^(?:(?: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])$/,l2D=/^(?:(?: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])$/,d2D=/^(([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]))$/,p2D=/^(([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])$/,c2D=/^([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}(=)?))?$/,Ov="((\\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])))",i2D=new RegExp(`^${Ov}$`);function wv(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 a2D(D){return new RegExp(`^${wv(D)}$`)}function Iv(D){let F=`${Ov}T${wv(D)}`,$=[];if($.push(D.local?"Z?":"Z"),D.offset)$.push("([+-]\\d{2}:?\\d{2})");return F=`${F}(${$.join("|")})`,new RegExp(`^${F}$`)}function o2D(D,F){if((F==="v4"||!F)&&m2D.test(D))return!0;if((F==="v6"||!F)&&d2D.test(D))return!0;return!1}function s2D(D,F){if(!g2D.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 r2D(D,F){if((F==="v4"||!F)&&l2D.test(D))return!0;if((F==="v6"||!F)&&p2D.test(D))return!0;return!1}class O1 extends $D{_parse(D){if(this._def.coerce)D.data=String(D.data);if(this._getType(D)!==T.string){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.string,received:J.parsedType}),b}let $=new G0,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),P(B,{code:R.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),P(B,{code:R.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)P(B,{code:R.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});else if(X)P(B,{code:R.too_small,minimum:J.value,type:"string",inclusive:!0,exact:!0,message:J.message});$.dirty()}}else if(J.kind==="email"){if(!b2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"email",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="emoji"){if(!b2)b2=new RegExp(u2D,"u");if(!b2.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"emoji",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="uuid"){if(!_2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"uuid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="nanoid"){if(!f2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"nanoid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid"){if(!v2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"cuid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cuid2"){if(!y2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"cuid2",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ulid"){if(!x2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"ulid",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="url")try{new URL(D.data)}catch{B=this._getOrReturnCtx(D,B),P(B,{validation:"url",code:R.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),P(B,{validation:"regex",code:R.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),P(B,{code:R.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),P(B,{code:R.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),P(B,{code:R.invalid_string,validation:{endsWith:J.value},message:J.message}),$.dirty()}else if(J.kind==="datetime"){if(!Iv(J).test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"datetime",message:J.message}),$.dirty()}else if(J.kind==="date"){if(!i2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"date",message:J.message}),$.dirty()}else if(J.kind==="time"){if(!a2D(J).test(D.data))B=this._getOrReturnCtx(D,B),P(B,{code:R.invalid_string,validation:"time",message:J.message}),$.dirty()}else if(J.kind==="duration"){if(!h2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"duration",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="ip"){if(!o2D(D.data,J.version))B=this._getOrReturnCtx(D,B),P(B,{validation:"ip",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="jwt"){if(!s2D(D.data,J.alg))B=this._getOrReturnCtx(D,B),P(B,{validation:"jwt",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="cidr"){if(!r2D(D.data,J.version))B=this._getOrReturnCtx(D,B),P(B,{validation:"cidr",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64"){if(!c2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"base64",code:R.invalid_string,message:J.message}),$.dirty()}else if(J.kind==="base64url"){if(!n2D.test(D.data))B=this._getOrReturnCtx(D,B),P(B,{validation:"base64url",code:R.invalid_string,message:J.message}),$.dirty()}else YD.assertNever(J);return{status:$.value,value:D.data}}_regex(D,F,$){return this.refinement((B)=>D.test(B),{validation:F,code:R.invalid_string,..._.errToObj($)})}_addCheck(D){return new O1({...this._def,checks:[...this._def.checks,D]})}email(D){return this._addCheck({kind:"email",..._.errToObj(D)})}url(D){return this._addCheck({kind:"url",..._.errToObj(D)})}emoji(D){return this._addCheck({kind:"emoji",..._.errToObj(D)})}uuid(D){return this._addCheck({kind:"uuid",..._.errToObj(D)})}nanoid(D){return this._addCheck({kind:"nanoid",..._.errToObj(D)})}cuid(D){return this._addCheck({kind:"cuid",..._.errToObj(D)})}cuid2(D){return this._addCheck({kind:"cuid2",..._.errToObj(D)})}ulid(D){return this._addCheck({kind:"ulid",..._.errToObj(D)})}base64(D){return this._addCheck({kind:"base64",..._.errToObj(D)})}base64url(D){return this._addCheck({kind:"base64url",..._.errToObj(D)})}jwt(D){return this._addCheck({kind:"jwt",..._.errToObj(D)})}ip(D){return this._addCheck({kind:"ip",..._.errToObj(D)})}cidr(D){return this._addCheck({kind:"cidr",..._.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,..._.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,..._.errToObj(D?.message)})}duration(D){return this._addCheck({kind:"duration",..._.errToObj(D)})}regex(D,F){return this._addCheck({kind:"regex",regex:D,..._.errToObj(F)})}includes(D,F){return this._addCheck({kind:"includes",value:D,position:F?.position,..._.errToObj(F?.message)})}startsWith(D,F){return this._addCheck({kind:"startsWith",value:D,..._.errToObj(F)})}endsWith(D,F){return this._addCheck({kind:"endsWith",value:D,..._.errToObj(F)})}min(D,F){return this._addCheck({kind:"min",value:D,..._.errToObj(F)})}max(D,F){return this._addCheck({kind:"max",value:D,..._.errToObj(F)})}length(D,F){return this._addCheck({kind:"length",value:D,..._.errToObj(F)})}nonempty(D){return this.min(1,_.errToObj(D))}trim(){return new O1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new O1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new O1({...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}}O1.create=(D)=>{return new O1({checks:[],typeName:m.ZodString,coerce:D?.coerce??!1,...e(D)})};function t2D(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 q6 extends $D{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)!==T.number){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.number,received:J.parsedType}),b}let $=void 0,B=new G0;for(let J of this._def.checks)if(J.kind==="int"){if(!YD.isInteger(D.data))$=this._getOrReturnCtx(D,$),P($,{code:R.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,$),P($,{code:R.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,$),P($,{code:R.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="multipleOf"){if(t2D(D.data,J.value)!==0)$=this._getOrReturnCtx(D,$),P($,{code:R.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(D.data))$=this._getOrReturnCtx(D,$),P($,{code:R.not_finite,message:J.message}),B.dirty()}else YD.assertNever(J);return{status:B.value,value:D.data}}gte(D,F){return this.setLimit("min",D,!0,_.toString(F))}gt(D,F){return this.setLimit("min",D,!1,_.toString(F))}lte(D,F){return this.setLimit("max",D,!0,_.toString(F))}lt(D,F){return this.setLimit("max",D,!1,_.toString(F))}setLimit(D,F,$,B){return new q6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:_.toString(B)}]})}_addCheck(D){return new q6({...this._def,checks:[...this._def.checks,D]})}int(D){return this._addCheck({kind:"int",message:_.toString(D)})}positive(D){return this._addCheck({kind:"min",value:0,inclusive:!1,message:_.toString(D)})}negative(D){return this._addCheck({kind:"max",value:0,inclusive:!1,message:_.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:0,inclusive:!0,message:_.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:0,inclusive:!0,message:_.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:_.toString(F)})}finite(D){return this._addCheck({kind:"finite",message:_.toString(D)})}safe(D){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:_.toString(D)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:_.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"&&YD.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)}}q6.create=(D)=>{return new q6({checks:[],typeName:m.ZodNumber,coerce:D?.coerce||!1,...e(D)})};class E6 extends $D{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)!==T.bigint)return this._getInvalidInput(D);let $=void 0,B=new G0;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,$),P($,{code:R.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,$),P($,{code:R.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,$),P($,{code:R.not_multiple_of,multipleOf:J.value,message:J.message}),B.dirty()}else YD.assertNever(J);return{status:B.value,value:D.data}}_getInvalidInput(D){let F=this._getOrReturnCtx(D);return P(F,{code:R.invalid_type,expected:T.bigint,received:F.parsedType}),b}gte(D,F){return this.setLimit("min",D,!0,_.toString(F))}gt(D,F){return this.setLimit("min",D,!1,_.toString(F))}lte(D,F){return this.setLimit("max",D,!0,_.toString(F))}lt(D,F){return this.setLimit("max",D,!1,_.toString(F))}setLimit(D,F,$,B){return new E6({...this._def,checks:[...this._def.checks,{kind:D,value:F,inclusive:$,message:_.toString(B)}]})}_addCheck(D){return new E6({...this._def,checks:[...this._def.checks,D]})}positive(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:_.toString(D)})}negative(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:_.toString(D)})}nonpositive(D){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:_.toString(D)})}nonnegative(D){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:_.toString(D)})}multipleOf(D,F){return this._addCheck({kind:"multipleOf",value:D,message:_.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}}E6.create=(D)=>{return new E6({checks:[],typeName:m.ZodBigInt,coerce:D?.coerce??!1,...e(D)})};class C3 extends $D{_parse(D){if(this._def.coerce)D.data=Boolean(D.data);if(this._getType(D)!==T.boolean){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.boolean,received:$.parsedType}),b}return Z0(D.data)}}C3.create=(D)=>{return new C3({typeName:m.ZodBoolean,coerce:D?.coerce||!1,...e(D)})};class a6 extends $D{_parse(D){if(this._def.coerce)D.data=new Date(D.data);if(this._getType(D)!==T.date){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_type,expected:T.date,received:J.parsedType}),b}if(Number.isNaN(D.data.getTime())){let J=this._getOrReturnCtx(D);return P(J,{code:R.invalid_date}),b}let $=new G0,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),P(B,{code:R.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),P(B,{code:R.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),$.dirty()}else YD.assertNever(J);return{status:$.value,value:new Date(D.data.getTime())}}_addCheck(D){return new a6({...this._def,checks:[...this._def.checks,D]})}min(D,F){return this._addCheck({kind:"min",value:D.getTime(),message:_.toString(F)})}max(D,F){return this._addCheck({kind:"max",value:D.getTime(),message:_.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}}a6.create=(D)=>{return new a6({checks:[],coerce:D?.coerce||!1,typeName:m.ZodDate,...e(D)})};class A5 extends $D{_parse(D){if(this._getType(D)!==T.symbol){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.symbol,received:$.parsedType}),b}return Z0(D.data)}}A5.create=(D)=>{return new A5({typeName:m.ZodSymbol,...e(D)})};class R3 extends $D{_parse(D){if(this._getType(D)!==T.undefined){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.undefined,received:$.parsedType}),b}return Z0(D.data)}}R3.create=(D)=>{return new R3({typeName:m.ZodUndefined,...e(D)})};class j3 extends $D{_parse(D){if(this._getType(D)!==T.null){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.null,received:$.parsedType}),b}return Z0(D.data)}}j3.create=(D)=>{return new j3({typeName:m.ZodNull,...e(D)})};class o6 extends $D{constructor(){super(...arguments);this._any=!0}_parse(D){return Z0(D.data)}}o6.create=(D)=>{return new o6({typeName:m.ZodAny,...e(D)})};class H6 extends $D{constructor(){super(...arguments);this._unknown=!0}_parse(D){return Z0(D.data)}}H6.create=(D)=>{return new H6({typeName:m.ZodUnknown,...e(D)})};class F8 extends $D{_parse(D){let F=this._getOrReturnCtx(D);return P(F,{code:R.invalid_type,expected:T.never,received:F.parsedType}),b}}F8.create=(D)=>{return new F8({typeName:m.ZodNever,...e(D)})};class L5 extends $D{_parse(D){if(this._getType(D)!==T.undefined){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.void,received:$.parsedType}),b}return Z0(D.data)}}L5.create=(D)=>{return new L5({typeName:m.ZodVoid,...e(D)})};class w1 extends $D{_parse(D){let{ctx:F,status:$}=this._processInputParams(D),B=this._def;if(F.parsedType!==T.array)return P(F,{code:R.invalid_type,expected:T.array,received:F.parsedType}),b;if(B.exactLength!==null){let Q=F.data.length>B.exactLength.value,X=F.data.length<B.exactLength.value;if(Q||X)P(F,{code:Q?R.too_big:R.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)P(F,{code:R.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)P(F,{code:R.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 P1(F,Q,F.path,X))})).then((Q)=>{return G0.mergeArray($,Q)});let J=[...F.data].map((Q,X)=>{return B.type._parseSync(new P1(F,Q,F.path,X))});return G0.mergeArray($,J)}get element(){return this._def.type}min(D,F){return new w1({...this._def,minLength:{value:D,message:_.toString(F)}})}max(D,F){return new w1({...this._def,maxLength:{value:D,message:_.toString(F)}})}length(D,F){return new w1({...this._def,exactLength:{value:D,message:_.toString(F)}})}nonempty(D){return this.min(1,D)}}w1.create=(D,F)=>{return new w1({type:D,minLength:null,maxLength:null,exactLength:null,typeName:m.ZodArray,...e(F)})};function M3(D){if(D instanceof gD){let F={};for(let $ in D.shape){let B=D.shape[$];F[$]=I1.create(M3(B))}return new gD({...D._def,shape:()=>F})}else if(D instanceof w1)return new w1({...D._def,type:M3(D.element)});else if(D instanceof I1)return I1.create(M3(D.unwrap()));else if(D instanceof M8)return M8.create(M3(D.unwrap()));else if(D instanceof $8)return $8.create(D.items.map((F)=>M3(F)));else return D}class gD extends $D{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=YD.objectKeys(D);return this._cached={shape:D,keys:F},this._cached}_parse(D){if(this._getType(D)!==T.object){let G=this._getOrReturnCtx(D);return P(G,{code:R.invalid_type,expected:T.object,received:G.parsedType}),b}let{status:$,ctx:B}=this._processInputParams(D),{shape:J,keys:Q}=this._getCached(),X=[];if(!(this._def.catchall instanceof F8&&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 W=J[G],q=B.data[G];Y.push({key:{status:"valid",value:G},value:W._parse(new P1(B,q,B.path,G)),alwaysSet:G in B.data})}if(this._def.catchall instanceof F8){let G=this._def.unknownKeys;if(G==="passthrough")for(let W of X)Y.push({key:{status:"valid",value:W},value:{status:"valid",value:B.data[W]}});else if(G==="strict"){if(X.length>0)P(B,{code:R.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 W of X){let q=B.data[W];Y.push({key:{status:"valid",value:W},value:G._parse(new P1(B,q,B.path,W)),alwaysSet:W in B.data})}}if(B.common.async)return Promise.resolve().then(async()=>{let G=[];for(let W of Y){let q=await W.key,K=await W.value;G.push({key:q,value:K,alwaysSet:W.alwaysSet})}return G}).then((G)=>{return G0.mergeObjectSync($,G)});else return G0.mergeObjectSync($,Y)}get shape(){return this._def.shape()}strict(D){return _.errToObj,new gD({...this._def,unknownKeys:"strict",...D!==void 0?{errorMap:(F,$)=>{let B=this._def.errorMap?.(F,$).message??$.defaultError;if(F.code==="unrecognized_keys")return{message:_.errToObj(D).message??B};return{message:B}}}:{}})}strip(){return new gD({...this._def,unknownKeys:"strip"})}passthrough(){return new gD({...this._def,unknownKeys:"passthrough"})}extend(D){return new gD({...this._def,shape:()=>({...this._def.shape(),...D})})}merge(D){return new gD({unknownKeys:D._def.unknownKeys,catchall:D._def.catchall,shape:()=>({...this._def.shape(),...D._def.shape()}),typeName:m.ZodObject})}setKey(D,F){return this.augment({[D]:F})}catchall(D){return new gD({...this._def,catchall:D})}pick(D){let F={};for(let $ of YD.objectKeys(D))if(D[$]&&this.shape[$])F[$]=this.shape[$];return new gD({...this._def,shape:()=>F})}omit(D){let F={};for(let $ of YD.objectKeys(this.shape))if(!D[$])F[$]=this.shape[$];return new gD({...this._def,shape:()=>F})}deepPartial(){return M3(this)}partial(D){let F={};for(let $ of YD.objectKeys(this.shape)){let B=this.shape[$];if(D&&!D[$])F[$]=B;else F[$]=B.optional()}return new gD({...this._def,shape:()=>F})}required(D){let F={};for(let $ of YD.objectKeys(this.shape))if(D&&!D[$])F[$]=this.shape[$];else{let J=this.shape[$];while(J instanceof I1)J=J._def.innerType;F[$]=J}return new gD({...this._def,shape:()=>F})}keyof(){return Pv(YD.objectKeys(this.shape))}}gD.create=(D,F)=>{return new gD({shape:()=>D,unknownKeys:"strip",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};gD.strictCreate=(D,F)=>{return new gD({shape:()=>D,unknownKeys:"strict",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};gD.lazycreate=(D,F)=>{return new gD({shape:D,unknownKeys:"strip",catchall:F8.create(),typeName:m.ZodObject,...e(F)})};class T3 extends $D{_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 _0(X.ctx.common.issues));return P(F,{code:R.invalid_union,unionErrors:Q}),b}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},W=Y._parseSync({data:F.data,path:F.path,parent:G});if(W.status==="valid")return W;else if(W.status==="dirty"&&!J)J={result:W,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 _0(Y));return P(F,{code:R.invalid_union,unionErrors:X}),b}}get options(){return this._def.options}}T3.create=(D,F)=>{return new T3({options:D,typeName:m.ZodUnion,...e(F)})};var L8=(D)=>{if(D instanceof w3)return L8(D.schema);else if(D instanceof S1)return L8(D.innerType());else if(D instanceof I3)return[D.value];else if(D instanceof K6)return D.options;else if(D instanceof P3)return YD.objectValues(D.enum);else if(D instanceof S3)return L8(D._def.innerType);else if(D instanceof R3)return[void 0];else if(D instanceof j3)return[null];else if(D instanceof I1)return[void 0,...L8(D.unwrap())];else if(D instanceof M8)return[null,...L8(D.unwrap())];else if(D instanceof f$)return L8(D.unwrap());else if(D instanceof v3)return L8(D.unwrap());else if(D instanceof k3)return L8(D._def.innerType);else return[]};class _$ extends $D{_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.object)return P(F,{code:R.invalid_type,expected:T.object,received:F.parsedType}),b;let $=this.discriminator,B=F.data[$],J=this.optionsMap.get(B);if(!J)return P(F,{code:R.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[$]}),b;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=L8(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 _$({typeName:m.ZodDiscriminatedUnion,discriminator:D,options:F,optionsMap:B,...e($)})}}function u2(D,F){let $=D8(D),B=D8(F);if(D===F)return{valid:!0,data:D};else if($===T.object&&B===T.object){let J=YD.objectKeys(F),Q=YD.objectKeys(D).filter((Y)=>J.indexOf(Y)!==-1),X={...D,...F};for(let Y of Q){let G=u2(D[Y],F[Y]);if(!G.valid)return{valid:!1};X[Y]=G.data}return{valid:!0,data:X}}else if($===T.array&&B===T.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=u2(X,Y);if(!G.valid)return{valid:!1};J.push(G.data)}return{valid:!0,data:J}}else if($===T.date&&B===T.date&&+D===+F)return{valid:!0,data:D};else return{valid:!1}}class O3 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D),B=(J,Q)=>{if(y$(J)||y$(Q))return b;let X=u2(J.value,Q.value);if(!X.valid)return P($,{code:R.invalid_intersection_types}),b;if(x$(J)||x$(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:$}))}}O3.create=(D,F,$)=>{return new O3({left:D,right:F,typeName:m.ZodIntersection,...e($)})};class $8 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.array)return P($,{code:R.invalid_type,expected:T.array,received:$.parsedType}),b;if($.data.length<this._def.items.length)return P($,{code:R.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),b;if(!this._def.rest&&$.data.length>this._def.items.length)P($,{code:R.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 P1($,Q,$.path,X))}).filter((Q)=>!!Q);if($.common.async)return Promise.all(J).then((Q)=>{return G0.mergeArray(F,Q)});else return G0.mergeArray(F,J)}get items(){return this._def.items}rest(D){return new $8({...this._def,rest:D})}}$8.create=(D,F)=>{if(!Array.isArray(D))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new $8({items:D,typeName:m.ZodTuple,rest:null,...e(F)})};class M5 extends $D{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.object)return P($,{code:R.invalid_type,expected:T.object,received:$.parsedType}),b;let B=[],J=this._def.keyType,Q=this._def.valueType;for(let X in $.data)B.push({key:J._parse(new P1($,X,$.path,X)),value:Q._parse(new P1($,$.data[X],$.path,X)),alwaysSet:X in $.data});if($.common.async)return G0.mergeObjectAsync(F,B);else return G0.mergeObjectSync(F,B)}get element(){return this._def.valueType}static create(D,F,$){if(F instanceof $D)return new M5({keyType:D,valueType:F,typeName:m.ZodRecord,...e($)});return new M5({keyType:O1.create(),valueType:D,typeName:m.ZodRecord,...e(F)})}}class N5 extends $D{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.map)return P($,{code:R.invalid_type,expected:T.map,received:$.parsedType}),b;let B=this._def.keyType,J=this._def.valueType,Q=[...$.data.entries()].map(([X,Y],G)=>{return{key:B._parse(new P1($,X,$.path,[G,"key"])),value:J._parse(new P1($,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,W=await Y.value;if(G.status==="aborted"||W.status==="aborted")return b;if(G.status==="dirty"||W.status==="dirty")F.dirty();X.set(G.value,W.value)}return{status:F.value,value:X}})}else{let X=new Map;for(let Y of Q){let{key:G,value:W}=Y;if(G.status==="aborted"||W.status==="aborted")return b;if(G.status==="dirty"||W.status==="dirty")F.dirty();X.set(G.value,W.value)}return{status:F.value,value:X}}}}N5.create=(D,F,$)=>{return new N5({valueType:F,keyType:D,typeName:m.ZodMap,...e($)})};class s6 extends $D{_parse(D){let{status:F,ctx:$}=this._processInputParams(D);if($.parsedType!==T.set)return P($,{code:R.invalid_type,expected:T.set,received:$.parsedType}),b;let B=this._def;if(B.minSize!==null){if($.data.size<B.minSize.value)P($,{code:R.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)P($,{code:R.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 W of Y){if(W.status==="aborted")return b;if(W.status==="dirty")F.dirty();G.add(W.value)}return{status:F.value,value:G}}let X=[...$.data.values()].map((Y,G)=>J._parse(new P1($,Y,$.path,G)));if($.common.async)return Promise.all(X).then((Y)=>Q(Y));else return Q(X)}min(D,F){return new s6({...this._def,minSize:{value:D,message:_.toString(F)}})}max(D,F){return new s6({...this._def,maxSize:{value:D,message:_.toString(F)}})}size(D,F){return this.min(D,F).max(D,F)}nonempty(D){return this.min(1,D)}}s6.create=(D,F)=>{return new s6({valueType:D,minSize:null,maxSize:null,typeName:m.ZodSet,...e(F)})};class N3 extends $D{constructor(){super(...arguments);this.validate=this.implement}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.function)return P(F,{code:R.invalid_type,expected:T.function,received:F.parsedType}),b;function $(X,Y){return U5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,A3(),A8].filter((G)=>!!G),issueData:{code:R.invalid_arguments,argumentsError:Y}})}function B(X,Y){return U5({data:X,path:F.path,errorMaps:[F.common.contextualErrorMap,F.schemaErrorMap,A3(),A8].filter((G)=>!!G),issueData:{code:R.invalid_return_type,returnTypeError:Y}})}let J={errorMap:F.common.contextualErrorMap},Q=F.data;if(this._def.returns instanceof r6){let X=this;return Z0(async function(...Y){let G=new _0([]),W=await X._def.args.parseAsync(Y,J).catch((V)=>{throw G.addIssue($(Y,V)),G}),q=await Reflect.apply(Q,this,W);return await X._def.returns._def.type.parseAsync(q,J).catch((V)=>{throw G.addIssue(B(q,V)),G})})}else{let X=this;return Z0(function(...Y){let G=X._def.args.safeParse(Y,J);if(!G.success)throw new _0([$(Y,G.error)]);let W=Reflect.apply(Q,this,G.data),q=X._def.returns.safeParse(W,J);if(!q.success)throw new _0([B(W,q.error)]);return q.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...D){return new N3({...this._def,args:$8.create(D).rest(H6.create())})}returns(D){return new N3({...this._def,returns:D})}implement(D){return this.parse(D)}strictImplement(D){return this.parse(D)}static create(D,F,$){return new N3({args:D?D:$8.create([]).rest(H6.create()),returns:F||H6.create(),typeName:m.ZodFunction,...e($)})}}class w3 extends $D{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})}}w3.create=(D,F)=>{return new w3({getter:D,typeName:m.ZodLazy,...e(F)})};class I3 extends $D{_parse(D){if(D.data!==this._def.value){let F=this._getOrReturnCtx(D);return P(F,{received:F.data,code:R.invalid_literal,expected:this._def.value}),b}return{status:"valid",value:D.data}}get value(){return this._def.value}}I3.create=(D,F)=>{return new I3({value:D,typeName:m.ZodLiteral,...e(F)})};function Pv(D,F){return new K6({values:D,typeName:m.ZodEnum,...e(F)})}class K6 extends $D{_parse(D){if(typeof D.data!=="string"){let F=this._getOrReturnCtx(D),$=this._def.values;return P(F,{expected:YD.joinValues($),received:F.parsedType,code:R.invalid_type}),b}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 P(F,{received:F.data,code:R.invalid_enum_value,options:$}),b}return Z0(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 K6.create(D,{...this._def,...F})}exclude(D,F=this._def){return K6.create(this.options.filter(($)=>!D.includes($)),{...this._def,...F})}}K6.create=Pv;class P3 extends $D{_parse(D){let F=YD.getValidEnumValues(this._def.values),$=this._getOrReturnCtx(D);if($.parsedType!==T.string&&$.parsedType!==T.number){let B=YD.objectValues(F);return P($,{expected:YD.joinValues(B),received:$.parsedType,code:R.invalid_type}),b}if(!this._cache)this._cache=new Set(YD.getValidEnumValues(this._def.values));if(!this._cache.has(D.data)){let B=YD.objectValues(F);return P($,{received:$.data,code:R.invalid_enum_value,options:B}),b}return Z0(D.data)}get enum(){return this._def.values}}P3.create=(D,F)=>{return new P3({values:D,typeName:m.ZodNativeEnum,...e(F)})};class r6 extends $D{unwrap(){return this._def.type}_parse(D){let{ctx:F}=this._processInputParams(D);if(F.parsedType!==T.promise&&F.common.async===!1)return P(F,{code:R.invalid_type,expected:T.promise,received:F.parsedType}),b;let $=F.parsedType===T.promise?F.data:Promise.resolve(F.data);return Z0($.then((B)=>{return this._def.type.parseAsync(B,{path:F.path,errorMap:F.common.contextualErrorMap})}))}}r6.create=(D,F)=>{return new r6({type:D,typeName:m.ZodPromise,...e(F)})};class S1 extends $D{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===m.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(P($,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 b;let Y=await this._def.schema._parseAsync({data:X,path:$.path,parent:$});if(Y.status==="aborted")return b;if(Y.status==="dirty")return i6(Y.value);if(F.value==="dirty")return i6(Y.value);return Y});else{if(F.value==="aborted")return b;let X=this._def.schema._parseSync({data:Q,path:$.path,parent:$});if(X.status==="aborted")return b;if(X.status==="dirty")return i6(X.value);if(F.value==="dirty")return i6(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 b;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 b;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(!W6(Q))return b;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(!W6(Q))return b;return Promise.resolve(B.transform(Q.value,J)).then((X)=>({status:F.value,value:X}))});YD.assertNever(B)}}S1.create=(D,F,$)=>{return new S1({schema:D,typeName:m.ZodEffects,effect:F,...e($)})};S1.createWithPreprocess=(D,F,$)=>{return new S1({schema:F,effect:{type:"preprocess",transform:D},typeName:m.ZodEffects,...e($)})};class I1 extends $D{_parse(D){if(this._getType(D)===T.undefined)return Z0(void 0);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}I1.create=(D,F)=>{return new I1({innerType:D,typeName:m.ZodOptional,...e(F)})};class M8 extends $D{_parse(D){if(this._getType(D)===T.null)return Z0(null);return this._def.innerType._parse(D)}unwrap(){return this._def.innerType}}M8.create=(D,F)=>{return new M8({innerType:D,typeName:m.ZodNullable,...e(F)})};class S3 extends $D{_parse(D){let{ctx:F}=this._processInputParams(D),$=F.data;if(F.parsedType===T.undefined)$=this._def.defaultValue();return this._def.innerType._parse({data:$,path:F.path,parent:F})}removeDefault(){return this._def.innerType}}S3.create=(D,F)=>{return new S3({innerType:D,typeName:m.ZodDefault,defaultValue:typeof F.default==="function"?F.default:()=>F.default,...e(F)})};class k3 extends $D{_parse(D){let{ctx:F}=this._processInputParams(D),$={...F,common:{...F.common,issues:[]}},B=this._def.innerType._parse({data:$.data,path:$.path,parent:{...$}});if(L3(B))return B.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new _0($.common.issues)},input:$.data})}});else return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new _0($.common.issues)},input:$.data})}}removeCatch(){return this._def.innerType}}k3.create=(D,F)=>{return new k3({innerType:D,typeName:m.ZodCatch,catchValue:typeof F.catch==="function"?F.catch:()=>F.catch,...e(F)})};class C5 extends $D{_parse(D){if(this._getType(D)!==T.nan){let $=this._getOrReturnCtx(D);return P($,{code:R.invalid_type,expected:T.nan,received:$.parsedType}),b}return{status:"valid",value:D.data}}}C5.create=(D)=>{return new C5({typeName:m.ZodNaN,...e(D)})};var e2D=Symbol("zod_brand");class f$ extends $D{_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 R5 extends $D{_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 b;if(J.status==="dirty")return F.dirty(),i6(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 b;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 R5({in:D,out:F,typeName:m.ZodPipeline})}}class v3 extends $D{_parse(D){let F=this._def.innerType._parse(D),$=(B)=>{if(W6(B))B.value=Object.freeze(B.value);return B};return L3(F)?F.then((B)=>$(B)):$(F)}unwrap(){return this._def.innerType}}v3.create=(D,F)=>{return new v3({innerType:D,typeName:m.ZodReadonly,...e(F)})};function Tv(D,F){let $=typeof D==="function"?D(F):typeof D==="string"?{message:D}:D;return typeof $==="string"?{message:$}:$}function Sv(D,F={},$){if(D)return o6.create().superRefine((B,J)=>{let Q=D(B);if(Q instanceof Promise)return Q.then((X)=>{if(!X){let Y=Tv(F,B),G=Y.fatal??$??!0;J.addIssue({code:"custom",...Y,fatal:G})}});if(!Q){let X=Tv(F,B),Y=X.fatal??$??!0;J.addIssue({code:"custom",...X,fatal:Y})}return});return o6.create()}var DGD={object:gD.lazycreate},m;(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"})(m||(m={}));var FGD=(D,F={message:`Input not instance of ${D.name}`})=>Sv(($)=>$ instanceof D,F),kv=O1.create,vv=q6.create,$GD=C5.create,BGD=E6.create,yv=C3.create,JGD=a6.create,QGD=A5.create,XGD=R3.create,YGD=j3.create,GGD=o6.create,WGD=H6.create,HGD=F8.create,qGD=L5.create,EGD=w1.create,KGD=gD.create,zGD=gD.strictCreate,VGD=T3.create,ZGD=_$.create,UGD=O3.create,AGD=$8.create,LGD=M5.create,MGD=N5.create,NGD=s6.create,CGD=N3.create,RGD=w3.create,jGD=I3.create,TGD=K6.create,OGD=P3.create,wGD=r6.create,IGD=S1.create,PGD=I1.create,SGD=M8.create,kGD=S1.createWithPreprocess,vGD=R5.create,yGD=()=>kv().optional(),xGD=()=>vv().optional(),_GD=()=>yv().optional(),fGD={string:(D)=>O1.create({...D,coerce:!0}),number:(D)=>q6.create({...D,coerce:!0}),boolean:(D)=>C3.create({...D,coerce:!0}),bigint:(D)=>E6.create({...D,coerce:!0}),date:(D)=>a6.create({...D,coerce:!0})};var gGD=b;var CRD=k1.object({apiKey:k1.string().optional(),apiUrl:k1.string().url().default("https://nemar-api-dev.shirazi-10f.workers.dev"),username:k1.string().optional(),email:k1.string().email().optional(),githubUsername:k1.string().optional(),sandboxCompleted:k1.boolean().optional(),sandboxDatasetId:k1.string().optional()}),mD=new v$({projectName:"nemar",schema:{activeAccount:{type:"string"},accounts:{type:"object"},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}:{}}),hGD=["apiKey","apiUrl","username","email","githubUsername","sandboxCompleted","sandboxDatasetId"];function bGD(){let D=mD.get("accounts");if(D&&Object.keys(D).length>0)return;let F=mD.get("apiKey"),$=mD.get("username");if(!F&&!$)return;try{let B=$||"default",J={};for(let Q of hGD){let X=mD.get(Q);if(X!==void 0)J[Q]=X}mD.store={activeAccount:B,accounts:{[B]:J}}}catch{}}bGD();function j5(){return mD.get("activeAccount")}function z6(){return mD.get("accounts")||{}}function oD(){let D=j5();if(!D)return{apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"};return z6()[D]||{apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"}}function xv(){return!!oD().sandboxCompleted}function N8(D,F){let $=j5();if(!$){let J=z6(),Q="default";J.default={...J.default||{},[D]:F},mD.set("accounts",J),mD.set("activeAccount","default");return}let B=z6();if(!B[$])B[$]={apiUrl:"https://nemar-api-dev.shirazi-10f.workers.dev"};B[$][D]=F,mD.set("accounts",B)}function m2(D){let F=j5();if(!F)return;let $=z6();if($[F])delete $[F][D],mD.set("accounts",$)}function _v(){let D=j5();if(!D){mD.clear();return}let F=z6();delete F[D];let $=Object.keys(F);if($.length>0)mD.set("accounts",F),mD.set("activeAccount",$[0]);else mD.clear()}function fv(){mD.clear()}function vD(){return!!oD().apiKey}function gv(){return mD.path}function T5(){let D=z6(),F=j5();return Object.entries(D).map(([$,B])=>({username:B.username||$,email:B.email,githubUsername:B.githubUsername,active:$===F}))}function hv(D,F){let $=z6();$[D]=F,mD.set("accounts",$),mD.set("activeAccount",D)}function bv(D){let F=z6();if(F[D])return mD.set("activeAccount",D),F[D];for(let[$,B]of Object.entries(F))if(B.githubUsername===D)return mD.set("activeAccount",$),B;return null}var l2="https://nemar-api-dev.shirazi-10f.workers.dev",g$=/^\d{4}-\d{4}-\d{4}-\d{3}[\dX]$/;function f0(D){if(D instanceof Error)return D.message;return String(D)}class u extends Error{statusCode;details;constructor(D,F,$){super(F);this.statusCode=D;this.details=$;this.name="ApiError"}}var uGD=l2.includes("workers.dev");function uv(){if(process.env.TEST_API_URL)return process.env.TEST_API_URL;if(uGD)return l2;return oD().apiUrl||l2}async function o(D,F={},$=!1){let B=`${uv()}${D}`,J={"Content-Type":"application/json",...F.headers};if($){let Y=oD();if(!Y.apiKey&&$===!0)throw new u(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 u(0,`Network error: Could not connect to ${uv()}`,{originalError:Y instanceof Error?Y.message:String(Y)})}let X;try{X=await Q.json()}catch{throw new u(Q.status,`Invalid response from server (status ${Q.status})`)}if(!Q.ok)throw new u(Q.status,X.error||X.message||"Request failed",X.details);return X}async function mv(D){return o(`/auth/check-username?username=${encodeURIComponent(D)}`)}async function lv(D){return o(`/auth/check-github?username=${encodeURIComponent(D)}`)}async function dv(D){return o("/auth/signup",{method:"POST",body:JSON.stringify(D)})}async function pv(D){return o("/auth/login",{method:"POST",body:JSON.stringify({api_key:D})})}async function cv(D){return o("/auth/resend-verification",{method:"POST",body:JSON.stringify({email:D})})}async function nv(D,F){return o("/auth/retrieve-key",{method:"POST",body:JSON.stringify({email:D,password:F})})}async function iv(D){return o("/auth/request-key-regeneration",{method:"POST",body:JSON.stringify({email:D})})}async function h$(){return o("/users/me",{},!0)}async function av(D,F){let $=new URLSearchParams;if(D)$.set("status",D);if(F)$.set("role",F);let B=$.toString()?`?${$.toString()}`:"";return o(`/admin/users${B}`,{},!0)}async function ov(D){return o(`/admin/approve/${D}`,{method:"POST"},!0)}async function sv(D){return o(`/admin/revoke/${D}`,{method:"POST"},!0)}async function rv(D,F){return o(`/admin/users/${D}/role`,{method:"POST",body:JSON.stringify({role:F})},!0)}async function tv(D){return o(`/admin/regenerate-iam/${D}`,{method:"POST"},!0)}async function d2(D,F){return o(`/admin/datasets/${D}/visibility`,{method:"PATCH",body:JSON.stringify({visibility:F})},!0)}async function ev(D){return o(`/datasets/${D}/publish`,{method:"POST"},!0)}async function Dy(D){return o(`/admin/datasets/${D}/ci`,{},!0)}async function b$(D){return o(`/admin/datasets/${D}/ci`,{method:"POST"},!0)}async function Fy(D){return o(`/datasets/${D}/ci/status`,{},!0)}async function $y(D){return o(`/datasets/${D}/manifest`,{},!0)}async function By(D,F){return o(`/datasets/${D}/manifest/${F}`,{},!0)}function Jy(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 Qy(D=!1){let $=await o(`/datasets${D?"?mine=true":""}`,{},D?!0:"optional");return $.datasets=$.datasets.map(Jy),$}async function l0(D){let F=await o(`/datasets/${D}`,{},"optional");return Jy(F.dataset)}async function Xy(D){return o(`/datasets/${D}/versions`,{},!0)}async function u$(D){return o("/datasets",{method:"POST",body:JSON.stringify(D)},!0)}async function m$(D){return o(`/datasets/${D}/finalize`,{method:"POST"},!0)}async function Yy(D,F){return o(`/datasets/${D}/upload-urls`,{method:"POST",body:JSON.stringify({files:F})},!0)}async function Gy(D,F){return o(`/admin/datasets/${D}/doi/concept`,{method:"POST",body:JSON.stringify(F)},!0)}async function O5(D){return o(`/admin/datasets/${D}/doi`,{},!0)}async function p2(D,F){return o(`/admin/datasets/${D}/doi/update`,{method:"POST",body:JSON.stringify(F)},!0)}async function Wy(D){return o(`/datasets/${D}/request-access`,{method:"POST"},!0)}async function Hy(D,F){return o(`/datasets/${D}/invite`,{method:"POST",body:JSON.stringify({username:F})},!0)}async function qy(D){return o(`/datasets/${D}/collaborators`,{},!0)}async function Ey(D){return o("/sandbox/complete",{method:"POST",body:JSON.stringify({dataset_id:D})},!0)}async function Ky(){return o("/sandbox/reset",{method:"POST"},!0)}async function zy(){return o("/sandbox/status",{},!0)}async function Vy(D){return o(`/datasets/${D}/publish/request`,{method:"POST"},!0)}async function Zy(D){return o(`/datasets/${D}/publish/status`,{},!0)}async function Uy(D){return o(`/datasets/${D}/publish/resend`,{method:"POST"},!0)}async function Ay(D){let F=D?`?status=${D}`:"";return o(`/admin/publish/requests${F}`,{},!0)}async function Ly(D,F){return o(`/admin/publish/${D}/deny`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:F})},!0)}async function My(D,F=!1,$=!1){let B,J;do if(J=await o(`/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 Ny(D,F){return o(`/admin/datasets/${D}/enrichment`,{method:"POST",body:JSON.stringify(F)},!0)}async function Cy(D){return o(`/admin/datasets/${D}/files`,{},!0)}async function Ry(D){let F=0,$=0,B=[],J=0,Q=!0;while(Q){let X=await o(`/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 jy(D,F=!1){return o(`/admin/datasets/${D}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({force:F})},!0)}async function RD(D,F,$=!1){if(F.no)return"declined";if(F.yes)return"confirmed";try{let{confirmed:B}=await LD.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 Ty(D,F,$){if($.no)return"declined";if($.yes)return"confirmed";try{let{input:B}=await LD.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 yD="-y, --yes",dD="-n, --no",xD="Skip confirmation and proceed",pD="Skip confirmation and decline";import{existsSync as Iy,statSync as mGD}from"fs";import{join as c2}from"path";var{spawn:lGD}=globalThis.Bun;async function l(D,F={}){let $=lGD({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 Oy(D){return D.split(".").map((F)=>{let $=Number.parseInt(F.replace(/[^0-9]/g,""),10);return Number.isNaN($)?0:$})}function dGD(D,F){let $=Oy(D),B=Oy(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 Py(){try{let{stdout:F,exitCode:$,stderr:B}=await l(["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?dGD(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 pGD(){if(process.env.GH_TOKEN)return{accessible:!0,username:"token-auth",useHttps:!0};try{let{stdout:D,stderr:F}=await l(["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 Sy(){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 l$(){let[D,F]=await Promise.all([Py(),pGD()]),$=[];if(!D.installed)$.push(`git-annex is not installed. Install: ${Sy()}`);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 C8(D){if(!Iy(c2(D,".git")))return!1;try{let{exitCode:F}=await l(["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 d$(D,F={}){if(!F.force&&await C8(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 l(["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 l(["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 ky(D){try{let{exitCode:F,stderr:$}=await l(["git","annex","info"],{cwd:D});if(F===0)return{success:!0};if($.includes("First run: git-annex init")){let{stderr:B,exitCode:J}=await l(["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 p$(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 l(["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 cGD(){try{let{exitCode:D,stderr:F}=await l(["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 nGD(){try{let{stdout:D,exitCode:F,stderr:$}=await l(["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 c$(D){try{let{stdout:F,exitCode:$,stderr:B}=await l(["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 n$(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 l(["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((W)=>W.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 l(["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 l(["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 i$(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 cGD();if(Q.works)B=F;else{console.warn("GitHub SSH not available, falling back to HTTPS with gh CLI token...");let X=await nGD();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"}
@@ -751,7 +751,7 @@ Examples:
751
751
  $ nemar sandbox # Run sandbox training
752
752
  $ nemar sandbox status # Check if training is completed
753
753
  $ nemar sandbox reset # Reset for re-training
754
- `).action(IWD);async function IWD(){if(console.log(),console.log(H.bold("NEMAR Sandbox Training")),console.log(H.gray("Verify your setup and learn the upload workflow")),console.log(),!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}let D=oD();if(D.sandboxCompleted){console.log(H.green("Sandbox training already completed!")),console.log(H.gray(`Dataset ID: ${D.sandboxDatasetId}`)),console.log(),console.log("You can upload real datasets with:"),console.log(H.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(H.gray("To re-run training, use: nemar sandbox reset"));return}console.log(H.bold("Step 1/6: Checking prerequisites..."));let F=C("Checking git-annex and SSH...").start(),$=await l$();if(!$.allPassed){F.fail("Prerequisites check failed"),console.log(),console.log(H.red("Missing requirements:"));for(let I of $.errors)console.log(H.yellow(` - ${I}`));if(!$.githubSSH.accessible)console.log(H.gray(" Run 'nemar auth setup-ssh' to configure SSH"));return}F.succeed("All prerequisites met");let B=C("Verifying GitHub CLI authentication...").start(),J=await c$(D.githubUsername);if(!J.authenticated){B.fail("GitHub CLI not authenticated"),console.log(H.red(` ${J.error}`)),console.log(),console.log("GitHub CLI is required for sandbox training. Install and authenticate:"),console.log(H.cyan(" brew install gh # or visit https://cli.github.com/")),console.log(H.cyan(" gh auth login"));return}if(D.githubUsername&&!J.matches)B.warn("GitHub CLI user mismatch"),console.log(H.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(H.cyan(` gh auth login # Login as ${D.githubUsername}`)),console.log(),console.log(H.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(H.bold("Step 2/6: Generating test dataset..."));let Q=C("Creating minimal BIDS structure...").start(),X;try{let I=Hx();X=I.root;let w=qx(I);Q.succeed(`Test dataset created (${y3(w)})`),console.log(H.gray(` Location: ${X}`))}catch(I){Q.fail("Failed to generate test dataset"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`));return}console.log(),console.log(H.bold("Step 3/6: Registering sandbox dataset..."));let Y=C("Creating dataset on NEMAR...").start(),G,W,q,K,V,Z;try{let I=await u$({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=I.dataset.dataset_id,W=I.dataset.ssh_url,q=I.dataset.github_url,K=I.s3_config,V=I.dataset.s3_prefix,Z=I.upload_urls||{},Y.succeed(`Sandbox dataset created: ${H.cyan(G)}`),console.log(H.gray(` GitHub: ${q}`)),await new Promise((w)=>setTimeout(w,1e4))}catch(I){if(Y.fail("Failed to create sandbox dataset"),I instanceof u)console.log(H.red(` ${I.message}`));else console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`));v1(X);return}let U=C("Accepting GitHub repository invitation...").start(),A=q?.match(/github\.com\/([a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+)/),L=A?A[1].replace(/\.git$/,""):null;if(!L){U.fail("Invalid GitHub repository URL from backend"),console.log(H.red(` Received: ${q||"(empty)"}`)),console.log(H.red(" Expected format: https://github.com/owner/repo")),console.log(),console.log("This may indicate a backend issue. Please contact support."),v1(X);return}let M=await n$(L);if(M.accepted)if(M.alreadyCollaborator)U.succeed("Already a collaborator on this repository");else U.succeed("GitHub invitation accepted");else U.warn("Could not auto-accept invitation"),console.log(H.yellow(` ${M.error}`)),console.log(),console.log("You may need to accept the invitation manually:"),console.log(H.cyan(` https://github.com/${L}/invitations`)),console.log();console.log(),console.log(H.bold("Step 4/6: Initializing repository..."));let N=C("Setting up git-annex...").start(),O=D.username&&D.email?{name:D.username,email:D.email}:void 0;try{await d$(X,{author:O}),await p$(X),await i$(X,W),N.succeed("Repository initialized")}catch(I){N.fail("Failed to initialize repository"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}if(console.log(),console.log(H.bold("Step 5/6: Uploading to S3...")),Object.keys(Z).length===0)console.log(H.yellow(" No data files to upload (metadata only)"));else{let I=C("Uploading test data...").start();try{let c=0,GD=Object.keys(Z).length,S=await a$(X,Z,{jobs:4,onProgress:(JD)=>{if(JD.status==="completed"||JD.status==="failed")c++,I.text=`Uploading... ${c}/${GD} files`}});if(S.failed.length>0){I.fail(`Upload failed for ${S.failed.length} file(s)`);for(let JD of S.failed)console.log(H.red(` Failed: ${JD}`));if(S.error)console.log(H.red(` Error: ${S.error}`));console.log(),console.log(H.yellow("Sandbox training aborted due to upload failures.")),console.log(H.gray("Please check your network connection and try again.")),v1(X);return}I.succeed(`Uploaded ${S.uploaded} file(s)`)}catch(c){I.fail("Upload failed"),console.log(H.red(` ${c instanceof Error?c.message:"Unknown error"}`)),v1(X);return}let w=C("Registering file URLs...").start();try{let c={};for(let S of Object.keys(Z))c[S]=`${K.public_url}/${V}/objects/${S}`;let GD=await o$(X,c);if(!GD.success){w.fail(`URL registration failed for ${GD.failed.length} file(s)`);for(let S of GD.failed)console.log(H.red(` Failed: ${S}`));console.log(),console.log(H.yellow("Sandbox training aborted due to URL registration failures.")),console.log(H.gray("This may indicate a git-annex configuration issue.")),v1(X);return}w.succeed(`Registered ${GD.registered} file URLs`)}catch(c){w.fail("Failed to register URLs"),console.log(H.red(` ${c instanceof Error?c.message:"Unknown error"}`)),v1(X);return}}console.log(),console.log(H.bold("Step 6/6: Pushing to GitHub..."));let g=C("Saving and pushing...").start();try{await w5(X,"Initial sandbox training upload",O),await I5(X),g.succeed("Pushed to GitHub")}catch(I){g.fail("Failed to push to GitHub"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}let j=C("Finalizing...").start();try{await m$(G),await Ey(G),N8("sandboxCompleted",!0),N8("sandboxDatasetId",G),j.succeed("Sandbox training complete!")}catch(I){j.fail("Failed to finalize"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}v1(X),console.log(),console.log(H.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(H.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(H.gray(`Sandbox dataset: ${G}`))}XB.command("status").description("Check sandbox training completion status").option("--refresh","Fetch latest status from server").action(async(D)=>{if(!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}if(D.refresh){let F=C("Checking status...").start();try{let $=await zy();if(N8("sandboxCompleted",$.sandbox_completed),$.sandbox_dataset_id)N8("sandboxDatasetId",$.sandbox_dataset_id);if(F.stop(),$.sandbox_completed){if(console.log(H.green("Sandbox training: Completed")),console.log(H.gray(` Dataset ID: ${$.sandbox_dataset_id}`)),$.sandbox_completed_at)console.log(H.gray(` Completed: ${$.sandbox_completed_at}`))}else console.log(H.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(H.cyan(" nemar sandbox"))}catch($){if(F.fail("Failed to check status"),$ instanceof u)console.log(H.red(` ${$.message}`))}}else{let F=oD();if(F.sandboxCompleted)console.log(H.green("Sandbox training: Completed")),console.log(H.gray(` Dataset ID: ${F.sandboxDatasetId}`));else console.log(H.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(H.cyan(" nemar sandbox"))}});XB.command("reset").description("Reset sandbox training status for re-training").option(yD,xD).option(dD,pD).action(async(D)=>{if(!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}if(!oD().sandboxCompleted){console.log(H.yellow("Sandbox training not yet completed")),console.log(H.gray("Nothing to reset"));return}let $=await RD("Reset sandbox training status? You will need to complete training again.",D);if($!=="confirmed"){console.log(H.gray($==="declined"?"Skipped":"Cancelled"));return}let B=C("Resetting sandbox status...").start();try{await Ky(),m2("sandboxCompleted"),m2("sandboxDatasetId"),B.succeed("Sandbox status reset"),console.log(),console.log("Run sandbox training again with:"),console.log(H.cyan(" nemar sandbox"))}catch(J){if(B.fail("Failed to reset"),J instanceof u)console.log(H.red(` ${J.message}`));else console.log(H.red(` ${J instanceof Error?J.message:"Unknown error"}`))}});var Ex={name:"nemar-cli",version:"0.5.1-dev.261",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 Kx=Ex.version;var G1=new H0;G1.name("nemar").description(`CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource)
754
+ `).action(IWD);async function IWD(){if(console.log(),console.log(H.bold("NEMAR Sandbox Training")),console.log(H.gray("Verify your setup and learn the upload workflow")),console.log(),!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}let D=oD();if(D.sandboxCompleted){console.log(H.green("Sandbox training already completed!")),console.log(H.gray(`Dataset ID: ${D.sandboxDatasetId}`)),console.log(),console.log("You can upload real datasets with:"),console.log(H.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(H.gray("To re-run training, use: nemar sandbox reset"));return}console.log(H.bold("Step 1/6: Checking prerequisites..."));let F=C("Checking git-annex and SSH...").start(),$=await l$();if(!$.allPassed){F.fail("Prerequisites check failed"),console.log(),console.log(H.red("Missing requirements:"));for(let I of $.errors)console.log(H.yellow(` - ${I}`));if(!$.githubSSH.accessible)console.log(H.gray(" Run 'nemar auth setup-ssh' to configure SSH"));return}F.succeed("All prerequisites met");let B=C("Verifying GitHub CLI authentication...").start(),J=await c$(D.githubUsername);if(!J.authenticated){B.fail("GitHub CLI not authenticated"),console.log(H.red(` ${J.error}`)),console.log(),console.log("GitHub CLI is required for sandbox training. Install and authenticate:"),console.log(H.cyan(" brew install gh # or visit https://cli.github.com/")),console.log(H.cyan(" gh auth login"));return}if(D.githubUsername&&!J.matches)B.warn("GitHub CLI user mismatch"),console.log(H.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(H.cyan(` gh auth login # Login as ${D.githubUsername}`)),console.log(),console.log(H.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(H.bold("Step 2/6: Generating test dataset..."));let Q=C("Creating minimal BIDS structure...").start(),X;try{let I=Hx();X=I.root;let w=qx(I);Q.succeed(`Test dataset created (${y3(w)})`),console.log(H.gray(` Location: ${X}`))}catch(I){Q.fail("Failed to generate test dataset"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`));return}console.log(),console.log(H.bold("Step 3/6: Registering sandbox dataset..."));let Y=C("Creating dataset on NEMAR...").start(),G,W,q,K,V,Z;try{let I=await u$({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=I.dataset.dataset_id,W=I.dataset.ssh_url,q=I.dataset.github_url,K=I.s3_config,V=I.dataset.s3_prefix,Z=I.upload_urls||{},Y.succeed(`Sandbox dataset created: ${H.cyan(G)}`),console.log(H.gray(` GitHub: ${q}`)),await new Promise((w)=>setTimeout(w,1e4))}catch(I){if(Y.fail("Failed to create sandbox dataset"),I instanceof u)console.log(H.red(` ${I.message}`));else console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`));v1(X);return}let U=C("Accepting GitHub repository invitation...").start(),A=q?.match(/github\.com\/([a-zA-Z0-9_.-]+\/[a-zA-Z0-9_.-]+)/),L=A?A[1].replace(/\.git$/,""):null;if(!L){U.fail("Invalid GitHub repository URL from backend"),console.log(H.red(` Received: ${q||"(empty)"}`)),console.log(H.red(" Expected format: https://github.com/owner/repo")),console.log(),console.log("This may indicate a backend issue. Please contact support."),v1(X);return}let M=await n$(L);if(M.accepted)if(M.alreadyCollaborator)U.succeed("Already a collaborator on this repository");else U.succeed("GitHub invitation accepted");else U.warn("Could not auto-accept invitation"),console.log(H.yellow(` ${M.error}`)),console.log(),console.log("You may need to accept the invitation manually:"),console.log(H.cyan(` https://github.com/${L}/invitations`)),console.log();console.log(),console.log(H.bold("Step 4/6: Initializing repository..."));let N=C("Setting up git-annex...").start(),O=D.username&&D.email?{name:D.username,email:D.email}:void 0;try{await d$(X,{author:O}),await p$(X),await i$(X,W),N.succeed("Repository initialized")}catch(I){N.fail("Failed to initialize repository"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}if(console.log(),console.log(H.bold("Step 5/6: Uploading to S3...")),Object.keys(Z).length===0)console.log(H.yellow(" No data files to upload (metadata only)"));else{let I=C("Uploading test data...").start();try{let c=0,GD=Object.keys(Z).length,S=await a$(X,Z,{jobs:4,onProgress:(JD)=>{if(JD.status==="completed"||JD.status==="failed")c++,I.text=`Uploading... ${c}/${GD} files`}});if(S.failed.length>0){I.fail(`Upload failed for ${S.failed.length} file(s)`);for(let JD of S.failed)console.log(H.red(` Failed: ${JD}`));if(S.error)console.log(H.red(` Error: ${S.error}`));console.log(),console.log(H.yellow("Sandbox training aborted due to upload failures.")),console.log(H.gray("Please check your network connection and try again.")),v1(X);return}I.succeed(`Uploaded ${S.uploaded} file(s)`)}catch(c){I.fail("Upload failed"),console.log(H.red(` ${c instanceof Error?c.message:"Unknown error"}`)),v1(X);return}let w=C("Registering file URLs...").start();try{let c={};for(let S of Object.keys(Z))c[S]=`${K.public_url}/${V}/objects/${S}`;let GD=await o$(X,c);if(!GD.success){w.fail(`URL registration failed for ${GD.failed.length} file(s)`);for(let S of GD.failed)console.log(H.red(` Failed: ${S}`));console.log(),console.log(H.yellow("Sandbox training aborted due to URL registration failures.")),console.log(H.gray("This may indicate a git-annex configuration issue.")),v1(X);return}w.succeed(`Registered ${GD.registered} file URLs`)}catch(c){w.fail("Failed to register URLs"),console.log(H.red(` ${c instanceof Error?c.message:"Unknown error"}`)),v1(X);return}}console.log(),console.log(H.bold("Step 6/6: Pushing to GitHub..."));let g=C("Saving and pushing...").start();try{await w5(X,"Initial sandbox training upload",O),await I5(X),g.succeed("Pushed to GitHub")}catch(I){g.fail("Failed to push to GitHub"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}let j=C("Finalizing...").start();try{await m$(G),await Ey(G),N8("sandboxCompleted",!0),N8("sandboxDatasetId",G),j.succeed("Sandbox training complete!")}catch(I){j.fail("Failed to finalize"),console.log(H.red(` ${I instanceof Error?I.message:"Unknown error"}`)),v1(X);return}v1(X),console.log(),console.log(H.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(H.cyan(" nemar dataset upload ./your-dataset")),console.log(),console.log(H.gray(`Sandbox dataset: ${G}`))}XB.command("status").description("Check sandbox training completion status").option("--refresh","Fetch latest status from server").action(async(D)=>{if(!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}if(D.refresh){let F=C("Checking status...").start();try{let $=await zy();if(N8("sandboxCompleted",$.sandbox_completed),$.sandbox_dataset_id)N8("sandboxDatasetId",$.sandbox_dataset_id);if(F.stop(),$.sandbox_completed){if(console.log(H.green("Sandbox training: Completed")),console.log(H.gray(` Dataset ID: ${$.sandbox_dataset_id}`)),$.sandbox_completed_at)console.log(H.gray(` Completed: ${$.sandbox_completed_at}`))}else console.log(H.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(H.cyan(" nemar sandbox"))}catch($){if(F.fail("Failed to check status"),$ instanceof u)console.log(H.red(` ${$.message}`))}}else{let F=oD();if(F.sandboxCompleted)console.log(H.green("Sandbox training: Completed")),console.log(H.gray(` Dataset ID: ${F.sandboxDatasetId}`));else console.log(H.yellow("Sandbox training: Not completed")),console.log(),console.log("Run sandbox training with:"),console.log(H.cyan(" nemar sandbox"))}});XB.command("reset").description("Reset sandbox training status for re-training").option(yD,xD).option(dD,pD).action(async(D)=>{if(!vD()){console.log(H.red("Not authenticated")),console.log(H.gray("Run 'nemar auth login' first"));return}if(!oD().sandboxCompleted){console.log(H.yellow("Sandbox training not yet completed")),console.log(H.gray("Nothing to reset"));return}let $=await RD("Reset sandbox training status? You will need to complete training again.",D);if($!=="confirmed"){console.log(H.gray($==="declined"?"Skipped":"Cancelled"));return}let B=C("Resetting sandbox status...").start();try{await Ky(),m2("sandboxCompleted"),m2("sandboxDatasetId"),B.succeed("Sandbox status reset"),console.log(),console.log("Run sandbox training again with:"),console.log(H.cyan(" nemar sandbox"))}catch(J){if(B.fail("Failed to reset"),J instanceof u)console.log(H.red(` ${J.message}`));else console.log(H.red(` ${J instanceof Error?J.message:"Unknown error"}`))}});var Ex={name:"nemar-cli",version:"0.5.1-dev.262",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 Kx=Ex.version;var G1=new H0;G1.name("nemar").description(`CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource)
755
755
 
756
756
  NEMAR is a curated repository for neurophysiology data in BIDS format.
757
757
  This CLI provides tools for uploading, downloading, and managing datasets.`).version(Kx,"-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.5.1-dev.261",
3
+ "version": "0.5.1-dev.262",
4
4
  "description": "CLI for NEMAR (Neuroelectromagnetic Data Archive and Tools Resource) dataset management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",