@anthropic-ai/claude-code 0.2.67 → 0.2.68
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.
- package/cli.js +37 -27
- package/package.json +1 -1
package/cli.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
// (c) Anthropic PBC. All rights reserved. Use is subject to Anthropic's Commercial Terms of Service (https://www.anthropic.com/legal/commercial-terms).
|
|
10
10
|
|
|
11
|
-
// Version: 0.2.
|
|
11
|
+
// Version: 0.2.68
|
|
12
12
|
|
|
13
13
|
import{createRequire as bt2}from"node:module";var vt2=Object.create;var{getPrototypeOf:gt2,defineProperty:u71,getOwnPropertyNames:Tt2}=Object;var yt2=Object.prototype.hasOwnProperty;var J1=(I,Z,G)=>{G=I!=null?vt2(gt2(I)):{};let W=Z||!I||!I.__esModule?u71(G,"default",{value:I,enumerable:!0}):G;for(let B of Tt2(I))if(!yt2.call(W,B))u71(W,B,{get:()=>I[B],enumerable:!0});return W};var _=(I,Z)=>()=>(Z||I((Z={exports:{}}).exports,Z),Z.exports);var Vf=(I,Z)=>{for(var G in Z)u71(I,G,{get:Z[G],enumerable:!0,configurable:!0,set:(W)=>Z[G]=()=>W})};var CA=(I,Z)=>()=>(I&&(Z=I(I=0)),Z);var N1=bt2(import.meta.url);var jw=_((aT1)=>{Object.defineProperty(aT1,"__esModule",{value:!0});var cT1=Object.prototype.toString;function jt2(I){switch(cT1.call(I)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return Fl(I,Error)}}function Yf(I,Z){return cT1.call(I)===`[object ${Z}]`}function mt2(I){return Yf(I,"ErrorEvent")}function kt2(I){return Yf(I,"DOMError")}function xt2(I){return Yf(I,"DOMException")}function ut2(I){return Yf(I,"String")}function iT1(I){return typeof I==="object"&&I!==null&&"__sentry_template_string__"in I&&"__sentry_template_values__"in I}function ht2(I){return I===null||iT1(I)||typeof I!=="object"&&typeof I!=="function"}function nT1(I){return Yf(I,"Object")}function pt2(I){return typeof Event!=="undefined"&&Fl(I,Event)}function lt2(I){return typeof Element!=="undefined"&&Fl(I,Element)}function ct2(I){return Yf(I,"RegExp")}function it2(I){return Boolean(I&&I.then&&typeof I.then==="function")}function nt2(I){return nT1(I)&&"nativeEvent"in I&&"preventDefault"in I&&"stopPropagation"in I}function at2(I){return typeof I==="number"&&I!==I}function Fl(I,Z){try{return I instanceof Z}catch(G){return!1}}function rt2(I){return!!(typeof I==="object"&&I!==null&&(I.__isVue||I._isVue))}aT1.isDOMError=kt2;aT1.isDOMException=xt2;aT1.isElement=lt2;aT1.isError=jt2;aT1.isErrorEvent=mt2;aT1.isEvent=pt2;aT1.isInstanceOf=Fl;aT1.isNaN=at2;aT1.isParameterizedString=iT1;aT1.isPlainObject=nT1;aT1.isPrimitive=ht2;aT1.isRegExp=ct2;aT1.isString=ut2;aT1.isSyntheticEvent=nt2;aT1.isThenable=it2;aT1.isVueViewModel=rt2});var mg=_((sT1)=>{Object.defineProperty(sT1,"__esModule",{value:!0});var Ql=jw();function _e2(I,Z=0){if(typeof I!=="string"||Z===0)return I;return I.length<=Z?I:`${I.slice(0,Z)}...`}function Ke2(I,Z){let G=I,W=G.length;if(W<=150)return G;if(Z>W)Z=W;let B=Math.max(Z-60,0);if(B<5)B=0;let V=Math.min(B+140,W);if(V>W-5)V=W;if(V===W)B=Math.max(V-140,0);if(G=G.slice(B,V),B>0)G=`'{snip} ${G}`;if(V<W)G+=" {snip}";return G}function De2(I,Z){if(!Array.isArray(I))return"";let G=[];for(let W=0;W<I.length;W++){let B=I[W];try{if(Ql.isVueViewModel(B))G.push("[VueViewModel]");else G.push(String(B))}catch(V){G.push("[value cannot be serialized]")}}return G.join(Z)}function rT1(I,Z,G=!1){if(!Ql.isString(I))return!1;if(Ql.isRegExp(Z))return Z.test(I);if(Ql.isString(Z))return G?I===Z:I.includes(Z);return!1}function Ce2(I,Z=[],G=!1){return Z.some((W)=>rT1(I,W,G))}sT1.isMatchingPattern=rT1;sT1.safeJoin=De2;sT1.snipLine=Ke2;sT1.stringMatchesSomePattern=Ce2;sT1.truncate=_e2});var Iy1=_((eT1)=>{Object.defineProperty(eT1,"__esModule",{value:!0});var h71=jw(),Ne2=mg();function $e2(I,Z,G=250,W,B,V,Y){if(!V.exception||!V.exception.values||!Y||!h71.isInstanceOf(Y.originalException,Error))return;let w=V.exception.values.length>0?V.exception.values[V.exception.values.length-1]:void 0;if(w)V.exception.values=Re2(p71(I,Z,B,Y.originalException,W,V.exception.values,w,0),G)}function p71(I,Z,G,W,B,V,Y,w){if(V.length>=G+1)return V;let X=[...V];if(h71.isInstanceOf(W[B],Error)){oT1(Y,w);let H=I(Z,W[B]),J=X.length;tT1(H,B,J,w),X=p71(I,Z,G,W[B],B,[H,...X],H,J)}if(Array.isArray(W.errors))W.errors.forEach((H,J)=>{if(h71.isInstanceOf(H,Error)){oT1(Y,w);let A=I(Z,H),K=X.length;tT1(A,`errors[${J}]`,K,w),X=p71(I,Z,G,H,B,[A,...X],A,K)}});return X}function oT1(I,Z){I.mechanism=I.mechanism||{type:"generic",handled:!0},I.mechanism={...I.mechanism,...I.type==="AggregateError"&&{is_exception_group:!0},exception_id:Z}}function tT1(I,Z,G,W){I.mechanism=I.mechanism||{type:"generic",handled:!0},I.mechanism={...I.mechanism,type:"chained",source:Z,exception_id:G,parent_id:W}}function Re2(I,Z){return I.map((G)=>{if(G.value)G.value=Ne2.truncate(G.value,Z);return G})}eT1.applyAggregateErrorsToEvent=$e2});var HW=_((Zy1)=>{Object.defineProperty(Zy1,"__esModule",{value:!0});function zl(I){return I&&I.Math==Math?I:void 0}var l71=typeof globalThis=="object"&&zl(globalThis)||typeof window=="object"&&zl(window)||typeof self=="object"&&zl(self)||typeof global=="object"&&zl(global)||function(){return this}()||{};function Me2(){return l71}function fe2(I,Z,G){let W=G||l71,B=W.__SENTRY__=W.__SENTRY__||{};return B[I]||(B[I]=Z())}Zy1.GLOBAL_OBJ=l71;Zy1.getGlobalObject=Me2;Zy1.getGlobalSingleton=fe2});var c71=_((Gy1)=>{Object.defineProperty(Gy1,"__esModule",{value:!0});var de2=jw(),Oe2=HW(),wf=Oe2.getGlobalObject(),ve2=80;function ge2(I,Z={}){if(!I)return"<unknown>";try{let G=I,W=5,B=[],V=0,Y=0,w=" > ",X=w.length,H,J=Array.isArray(Z)?Z:Z.keyAttrs,A=!Array.isArray(Z)&&Z.maxStringLength||ve2;while(G&&V++<W){if(H=Te2(G,J),H==="html"||V>1&&Y+B.length*X+H.length>=A)break;B.push(H),Y+=H.length,G=G.parentNode}return B.reverse().join(w)}catch(G){return"<unknown>"}}function Te2(I,Z){let G=I,W=[],B,V,Y,w,X;if(!G||!G.tagName)return"";if(wf.HTMLElement){if(G instanceof HTMLElement&&G.dataset&&G.dataset.sentryComponent)return G.dataset.sentryComponent}W.push(G.tagName.toLowerCase());let H=Z&&Z.length?Z.filter((A)=>G.getAttribute(A)).map((A)=>[A,G.getAttribute(A)]):null;if(H&&H.length)H.forEach((A)=>{W.push(`[${A[0]}="${A[1]}"]`)});else{if(G.id)W.push(`#${G.id}`);if(B=G.className,B&&de2.isString(B)){V=B.split(/\s+/);for(X=0;X<V.length;X++)W.push(`.${V[X]}`)}}let J=["aria-label","type","name","title","alt"];for(X=0;X<J.length;X++)if(Y=J[X],w=G.getAttribute(Y),w)W.push(`[${Y}="${w}"]`);return W.join("")}function ye2(){try{return wf.document.location.href}catch(I){return""}}function be2(I){if(wf.document&&wf.document.querySelector)return wf.document.querySelector(I);return null}function je2(I){if(!wf.HTMLElement)return null;let Z=I,G=5;for(let W=0;W<G;W++){if(!Z)return null;if(Z instanceof HTMLElement&&Z.dataset.sentryComponent)return Z.dataset.sentryComponent;Z=Z.parentNode}return null}Gy1.getComponentName=je2;Gy1.getDomElement=be2;Gy1.getLocationHref=ye2;Gy1.htmlTreeAsString=ge2});var FA=_((Wy1)=>{Object.defineProperty(Wy1,"__esModule",{value:!0});var he2=typeof __SENTRY_DEBUG__==="undefined"||__SENTRY_DEBUG__;Wy1.DEBUG_BUILD=he2});var zH=_((Vy1)=>{Object.defineProperty(Vy1,"__esModule",{value:!0});var le2=FA(),i71=HW(),ce2="Sentry Logger ",n71=["debug","info","warn","error","log","assert","trace"],a71={};function By1(I){if(!("console"in i71.GLOBAL_OBJ))return I();let Z=i71.GLOBAL_OBJ.console,G={},W=Object.keys(a71);W.forEach((B)=>{let V=a71[B];G[B]=Z[B],Z[B]=V});try{return I()}finally{W.forEach((B)=>{Z[B]=G[B]})}}function ie2(){let I=!1,Z={enable:()=>{I=!0},disable:()=>{I=!1},isEnabled:()=>I};if(le2.DEBUG_BUILD)n71.forEach((G)=>{Z[G]=(...W)=>{if(I)By1(()=>{i71.GLOBAL_OBJ.console[G](`${ce2}[${G}]:`,...W)})}});else n71.forEach((G)=>{Z[G]=()=>{return}});return Z}var ne2=ie2();Vy1.CONSOLE_LEVELS=n71;Vy1.consoleSandbox=By1;Vy1.logger=ne2;Vy1.originalConsoleMethods=a71});var r71=_((Xy1)=>{Object.defineProperty(Xy1,"__esModule",{value:!0});var te2=FA(),kg=zH(),ee2=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function I14(I){return I==="http"||I==="https"}function Z14(I,Z=!1){let{host:G,path:W,pass:B,port:V,projectId:Y,protocol:w,publicKey:X}=I;return`${w}://${X}${Z&&B?`:${B}`:""}@${G}${V?`:${V}`:""}/${W?`${W}/`:W}${Y}`}function Yy1(I){let Z=ee2.exec(I);if(!Z){kg.consoleSandbox(()=>{console.error(`Invalid Sentry Dsn: ${I}`)});return}let[G,W,B="",V,Y="",w]=Z.slice(1),X="",H=w,J=H.split("/");if(J.length>1)X=J.slice(0,-1).join("/"),H=J.pop();if(H){let A=H.match(/^\d+/);if(A)H=A[0]}return wy1({host:V,pass:B,path:X,projectId:H,port:Y,protocol:G,publicKey:W})}function wy1(I){return{protocol:I.protocol,publicKey:I.publicKey||"",pass:I.pass||"",host:I.host,port:I.port||"",path:I.path||"",projectId:I.projectId}}function G14(I){if(!te2.DEBUG_BUILD)return!0;let{port:Z,projectId:G,protocol:W}=I;if(["protocol","publicKey","host","projectId"].find((Y)=>{if(!I[Y])return kg.logger.error(`Invalid Sentry Dsn: ${Y} missing`),!0;return!1}))return!1;if(!G.match(/^\d+$/))return kg.logger.error(`Invalid Sentry Dsn: Invalid projectId ${G}`),!1;if(!I14(W))return kg.logger.error(`Invalid Sentry Dsn: Invalid protocol ${W}`),!1;if(Z&&isNaN(parseInt(Z,10)))return kg.logger.error(`Invalid Sentry Dsn: Invalid port ${Z}`),!1;return!0}function W14(I){let Z=typeof I==="string"?Yy1(I):wy1(I);if(!Z||!G14(Z))return;return Z}Xy1.dsnFromString=Yy1;Xy1.dsnToString=Z14;Xy1.makeDsn=W14});var s71=_((Jy1)=>{Object.defineProperty(Jy1,"__esModule",{value:!0});class Hy1 extends Error{constructor(I,Z="warn"){super(I);this.message=I,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=Z}}Jy1.SentryError=Hy1});var mw=_((Qy1)=>{Object.defineProperty(Qy1,"__esModule",{value:!0});var X14=c71(),H14=FA(),Xf=jw(),J14=zH(),Ay1=mg();function A14(I,Z,G){if(!(Z in I))return;let W=I[Z],B=G(W);if(typeof B==="function")Cy1(B,W);I[Z]=B}function Dy1(I,Z,G){try{Object.defineProperty(I,Z,{value:G,writable:!0,configurable:!0})}catch(W){H14.DEBUG_BUILD&&J14.logger.log(`Failed to add non-enumerable property "${Z}" to object`,I)}}function Cy1(I,Z){try{let G=Z.prototype||{};I.prototype=Z.prototype=G,Dy1(I,"__sentry_original__",Z)}catch(G){}}function _14(I){return I.__sentry_original__}function K14(I){return Object.keys(I).map((Z)=>`${encodeURIComponent(Z)}=${encodeURIComponent(I[Z])}`).join("&")}function Fy1(I){if(Xf.isError(I))return{message:I.message,name:I.name,stack:I.stack,...Ky1(I)};else if(Xf.isEvent(I)){let Z={type:I.type,target:_y1(I.target),currentTarget:_y1(I.currentTarget),...Ky1(I)};if(typeof CustomEvent!=="undefined"&&Xf.isInstanceOf(I,CustomEvent))Z.detail=I.detail;return Z}else return I}function _y1(I){try{return Xf.isElement(I)?X14.htmlTreeAsString(I):Object.prototype.toString.call(I)}catch(Z){return"<unknown>"}}function Ky1(I){if(typeof I==="object"&&I!==null){let Z={};for(let G in I)if(Object.prototype.hasOwnProperty.call(I,G))Z[G]=I[G];return Z}else return{}}function D14(I,Z=40){let G=Object.keys(Fy1(I));if(G.sort(),!G.length)return"[object has no keys]";if(G[0].length>=Z)return Ay1.truncate(G[0],Z);for(let W=G.length;W>0;W--){let B=G.slice(0,W).join(", ");if(B.length>Z)continue;if(W===G.length)return B;return Ay1.truncate(B,Z)}return""}function C14(I){return o71(I,new Map)}function o71(I,Z){if(F14(I)){let G=Z.get(I);if(G!==void 0)return G;let W={};Z.set(I,W);for(let B of Object.keys(I))if(typeof I[B]!=="undefined")W[B]=o71(I[B],Z);return W}if(Array.isArray(I)){let G=Z.get(I);if(G!==void 0)return G;let W=[];return Z.set(I,W),I.forEach((B)=>{W.push(o71(B,Z))}),W}return I}function F14(I){if(!Xf.isPlainObject(I))return!1;try{let Z=Object.getPrototypeOf(I).constructor.name;return!Z||Z==="Object"}catch(Z){return!0}}function Q14(I){let Z;switch(!0){case(I===void 0||I===null):Z=new String(I);break;case(typeof I==="symbol"||typeof I==="bigint"):Z=Object(I);break;case Xf.isPrimitive(I):Z=new I.constructor(I);break;default:Z=I;break}return Z}Qy1.addNonEnumerableProperty=Dy1;Qy1.convertToPlainObject=Fy1;Qy1.dropUndefinedKeys=C14;Qy1.extractExceptionKeysForMessage=D14;Qy1.fill=A14;Qy1.getOriginalFunction=_14;Qy1.markFunctionWrapped=Cy1;Qy1.objectify=Q14;Qy1.urlEncode=K14});var ql=_((qy1)=>{Object.defineProperty(qy1,"__esModule",{value:!0});function zy1(I,Z=!1){return!(Z||I&&!I.startsWith("/")&&!I.match(/^[A-Z]:/)&&!I.startsWith(".")&&!I.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&I!==void 0&&!I.includes("node_modules/")}function P14(I){let Z=/^\s*[-]{4,}$/,G=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(W)=>{let B=W.match(G);if(B){let V,Y,w,X,H;if(B[1]){w=B[1];let K=w.lastIndexOf(".");if(w[K-1]===".")K--;if(K>0){V=w.slice(0,K),Y=w.slice(K+1);let D=V.indexOf(".Module");if(D>0)w=w.slice(D+1),V=V.slice(0,D)}X=void 0}if(Y)X=V,H=Y;if(Y==="<anonymous>")H=void 0,w=void 0;if(w===void 0)H=H||"<anonymous>",w=X?`${X}.${H}`:H;let J=B[2]&&B[2].startsWith("file://")?B[2].slice(7):B[2],A=B[5]==="native";if(J&&J.match(/\/[A-Z]:/))J=J.slice(1);if(!J&&B[5]&&!A)J=B[5];return{filename:J,module:I?I(J):void 0,function:w,lineno:parseInt(B[3],10)||void 0,colno:parseInt(B[4],10)||void 0,in_app:zy1(J,A)}}if(W.match(Z))return{filename:W};return}}qy1.filenameIsInApp=zy1;qy1.node=P14});var Ul=_((fy1)=>{Object.defineProperty(fy1,"__esModule",{value:!0});var $y1=ql(),Ry1=50,Uy1=/\(error: (.*)\)/,Ny1=/captureMessage|captureException/;function Ey1(...I){let Z=I.sort((G,W)=>G[0]-W[0]).map((G)=>G[1]);return(G,W=0)=>{let B=[],V=G.split(`
|
|
14
14
|
`);for(let Y=W;Y<V.length;Y++){let w=V[Y];if(w.length>1024)continue;let X=Uy1.test(w)?w.replace(Uy1,"$1"):w;if(X.match(/\S*Error: /))continue;for(let H of Z){let J=H(X);if(J){B.push(J);break}}if(B.length>=Ry1)break}return My1(B)}}function d14(I){if(Array.isArray(I))return Ey1(...I);return I}function My1(I){if(!I.length)return[];let Z=Array.from(I);if(/sentryWrapped/.test(Z[Z.length-1].function||""))Z.pop();if(Z.reverse(),Ny1.test(Z[Z.length-1].function||"")){if(Z.pop(),Ny1.test(Z[Z.length-1].function||""))Z.pop()}return Z.slice(0,Ry1).map((G)=>({...G,filename:G.filename||Z[Z.length-1].filename,function:G.function||"?"}))}var t71="<anonymous>";function O14(I){try{if(!I||typeof I!=="function")return t71;return I.name||t71}catch(Z){return t71}}function v14(I){return[90,$y1.node(I)]}fy1.filenameIsInApp=$y1.filenameIsInApp;fy1.createStackParser=Ey1;fy1.getFunctionName=O14;fy1.nodeStackLineParser=v14;fy1.stackParserFromStackParserOptions=d14;fy1.stripSentryFramesAndReverse=My1});var tK=_((Ly1)=>{Object.defineProperty(Ly1,"__esModule",{value:!0});var k14=FA(),x14=zH(),u14=Ul(),Hf={},Py1={};function h14(I,Z){Hf[I]=Hf[I]||[],Hf[I].push(Z)}function p14(){Object.keys(Hf).forEach((I)=>{Hf[I]=void 0})}function l14(I,Z){if(!Py1[I])Z(),Py1[I]=!0}function c14(I,Z){let G=I&&Hf[I];if(!G)return;for(let W of G)try{W(Z)}catch(B){k14.DEBUG_BUILD&&x14.logger.error(`Error while triggering instrumentation handler.
|
|
@@ -440,7 +440,7 @@ Expecting one of '${G.join("', '")}'`);let W=`${I}Help`;return this.on(W,(B)=>{l
|
|
|
440
440
|
`,ny4=eT.encode(SQ),ay4=2;class Vt1{constructor(I,Z){let{escapeName:G}=this.constructor,W=s1.isString(Z),B=`Content-Disposition: form-data; name="${G(I)}"${!W&&Z.name?`; filename="${G(Z.name)}"`:""}${SQ}`;if(W)Z=eT.encode(String(Z).replace(/\r?\n|\r\n?/g,SQ));else B+=`Content-Type: ${Z.type||"application/octet-stream"}${SQ}`;this.headers=eT.encode(B+SQ),this.contentLength=W?Z.byteLength:Z.size,this.size=this.headers.byteLength+this.contentLength+ay4,this.name=I,this.value=Z}async*encode(){yield this.headers;let{value:I}=this;if(s1.isTypedArray(I))yield I;else yield*$n(I);yield ny4}static escapeName(I){return String(I).replace(/[\r\n"]/g,(Z)=>({"\r":"%0D","\n":"%0A",'"':"%22"})[Z])}}var ry4=(I,Z,G)=>{let{tag:W="form-data-boundary",size:B=25,boundary:V=W+"-"+s1.generateString(B,iy4)}=G||{};if(!s1.isFormData(I))throw TypeError("FormData instance required");if(V.length<1||V.length>70)throw Error("boundary must be 10-70 characters long");let Y=eT.encode("--"+V+SQ),w=eT.encode("--"+V+"--"+SQ+SQ),X=w.byteLength,H=Array.from(I.entries()).map(([A,K])=>{let D=new Vt1(A,K);return X+=D.size,D});X+=Y.byteLength*H.length,X=s1.toFiniteNumber(X);let J={"Content-Type":`multipart/form-data; boundary=${V}`};if(Number.isFinite(X))J["Content-Length"]=X;return Z&&Z(J),cy4.from(async function*(){for(let A of H)yield Y,yield*A.encode();yield w}())},Yt1=ry4;import sy4 from"stream";class wt1 extends sy4.Transform{__transform(I,Z,G){this.push(I),G()}_transform(I,Z,G){if(I.length!==0){if(this._transform=this.__transform,I[0]!==120){let W=Buffer.alloc(2);W[0]=120,W[1]=156,this.push(W,Z)}}this.__transform(I,Z,G)}}var Xt1=wt1;var oy4=(I,Z)=>{return s1.isAsyncFn(I)?function(...G){let W=G.pop();I.apply(this,G).then((B)=>{try{Z?W(null,...Z(B)):W(null,B)}catch(V){W(V)}},W)}:I},Ht1=oy4;function ty4(I,Z){I=I||10;let G=new Array(I),W=new Array(I),B=0,V=0,Y;return Z=Z!==void 0?Z:1000,function w(X){let H=Date.now(),J=W[V];if(!Y)Y=H;G[B]=X,W[B]=H;let A=V,K=0;while(A!==B)K+=G[A++],A=A%I;if(B=(B+1)%I,B===V)V=(V+1)%I;if(H-Y<Z)return;let D=J&&H-J;return D?Math.round(K*1000/D):void 0}}var Jt1=ty4;function ey4(I,Z){let G=0,W=1000/Z,B,V,Y=(H,J=Date.now())=>{if(G=J,B=null,V)clearTimeout(V),V=null;I.apply(null,H)};return[(...H)=>{let J=Date.now(),A=J-G;if(A>=W)Y(H,J);else if(B=H,!V)V=setTimeout(()=>{V=null,Y(B)},W-A)},()=>B&&Y(B)]}var At1=ey4;var FD=(I,Z,G=3)=>{let W=0,B=Jt1(50,250);return At1((V)=>{let Y=V.loaded,w=V.lengthComputable?V.total:void 0,X=Y-W,H=B(X),J=Y<=w;W=Y;let A={loaded:Y,total:w,progress:w?Y/w:void 0,bytes:X,rate:H?H:void 0,estimated:H&&w&&J?(w-Y)/H:void 0,event:V,lengthComputable:w!=null,[Z?"download":"upload"]:!0};I(A)},G)},$P=(I,Z)=>{let G=I!=null;return[(W)=>Z[0]({lengthComputable:G,total:I,loaded:W}),Z[1]]},RP=(I)=>(...Z)=>s1.asap(()=>I(...Z));var _t1={flush:dQ.constants.Z_SYNC_FLUSH,finishFlush:dQ.constants.Z_SYNC_FLUSH},Bb4={flush:dQ.constants.BROTLI_OPERATION_FLUSH,finishFlush:dQ.constants.BROTLI_OPERATION_FLUSH},Kt1=s1.isFunction(dQ.createBrotliDecompress),{http:Vb4,https:Yb4}=zt1.default,wb4=/https:?/,Dt1=H6.protocols.map((I)=>{return I+":"}),Ct1=(I,[Z,G])=>{return I.on("end",G).on("error",G),Z};function Xb4(I,Z){if(I.beforeRedirects.proxy)I.beforeRedirects.proxy(I);if(I.beforeRedirects.config)I.beforeRedirects.config(I,Z)}function qt1(I,Z,G){let W=Z;if(!W&&W!==!1){let B=Qt1.default.getProxyForUrl(G);if(B)W=new URL(B)}if(W){if(W.username)W.auth=(W.username||"")+":"+(W.password||"");if(W.auth){if(W.auth.username||W.auth.password)W.auth=(W.auth.username||"")+":"+(W.auth.password||"");let V=Buffer.from(W.auth,"utf8").toString("base64");I.headers["Proxy-Authorization"]="Basic "+V}I.headers.host=I.hostname+(I.port?":"+I.port:"");let B=W.hostname||W.host;if(I.hostname=B,I.host=B,I.port=W.port,I.path=G,W.protocol)I.protocol=W.protocol.includes(":")?W.protocol:`${W.protocol}:`}I.beforeRedirects.proxy=function B(V){qt1(V,Z,V.href)}}var Hb4=typeof process!=="undefined"&&s1.kindOf(process)==="process",Jb4=(I)=>{return new Promise((Z,G)=>{let W,B,V=(X,H)=>{if(B)return;B=!0,W&&W(X,H)},Y=(X)=>{V(X),Z(X)},w=(X)=>{V(X,!0),G(X)};I(Y,w,(X)=>W=X).catch(w)})},Ab4=({address:I,family:Z})=>{if(!s1.isString(I))throw TypeError("address must be a string");return{address:I,family:Z||(I.indexOf(".")<0?6:4)}},Ft1=(I,Z)=>Ab4(s1.isObject(I)?I:{address:I,family:Z}),Ut1=Hb4&&function I(Z){return Jb4(async function G(W,B,V){let{data:Y,lookup:w,family:X}=Z,{responseType:H,responseEncoding:J}=Z,A=Z.method.toUpperCase(),K,D=!1,z;if(w){let h1=Ht1(w,(r1)=>s1.isArray(r1)?r1:[r1]);w=(r1,M0,l0)=>{h1(r1,M0,(R0,X2,H1)=>{if(R0)return l0(R0);let y1=s1.isArray(X2)?X2.map((O1)=>Ft1(O1)):[Ft1(X2,H1)];M0.all?l0(R0,y1):l0(R0,y1[0].address,y1[0].family)})}}let U=new Wb4,N=()=>{if(Z.cancelToken)Z.cancelToken.unsubscribe(L);if(Z.signal)Z.signal.removeEventListener("abort",L);U.removeAllListeners()};V((h1,r1)=>{if(K=!0,r1)D=!0,N()});function L(h1){U.emit("abort",!h1||h1.type?new qY(null,Z,z):h1)}if(U.once("abort",B),Z.cancelToken||Z.signal){if(Z.cancelToken&&Z.cancelToken.subscribe(L),Z.signal)Z.signal.aborted?L():Z.signal.addEventListener("abort",L)}let g=U$(Z.baseURL,Z.url),f=new URL(g,H6.hasBrowserEnv?H6.origin:void 0),P=f.protocol||Dt1[0];if(P==="data:"){let h1;if(A!=="GET")return TA(W,B,{status:405,statusText:"method not allowed",headers:{},config:Z});try{h1=eW1(Z.url,H==="blob",{Blob:Z.env&&Z.env.Blob})}catch(r1){throw j2.from(r1,j2.ERR_BAD_REQUEST,Z)}if(H==="text"){if(h1=h1.toString(J),!J||J==="utf8")h1=s1.stripBOM(h1)}else if(H==="stream")h1=EP.Readable.from(h1);return TA(W,B,{data:h1,status:200,statusText:"OK",headers:new e8,config:Z})}if(Dt1.indexOf(P)===-1)return B(new j2("Unsupported protocol "+P,j2.ERR_BAD_REQUEST,Z));let M=e8.from(Z.headers).normalize();M.set("User-Agent","axios/"+M$,!1);let{onUploadProgress:d,onDownloadProgress:k}=Z,a=Z.maxRate,m=void 0,X1=void 0;if(s1.isSpecCompliantForm(Y)){let h1=M.getContentType(/boundary=([-_\w\d]{10,70})/i);Y=Yt1(Y,(r1)=>{M.set(r1)},{tag:`axios-${M$}-boundary`,boundary:h1&&h1[1]||void 0})}else if(s1.isFormData(Y)&&s1.isFunction(Y.getHeaders)){if(M.set(Y.getHeaders()),!M.hasContentLength())try{let h1=await Gb4.promisify(Y.getLength).call(Y);Number.isFinite(h1)&&h1>=0&&M.setContentLength(h1)}catch(h1){}}else if(s1.isBlob(Y)||s1.isFile(Y))Y.size&&M.setContentType(Y.type||"application/octet-stream"),M.setContentLength(Y.size||0),Y=EP.Readable.from($n(Y));else if(Y&&!s1.isStream(Y)){if(Buffer.isBuffer(Y));else if(s1.isArrayBuffer(Y))Y=Buffer.from(new Uint8Array(Y));else if(s1.isString(Y))Y=Buffer.from(Y,"utf-8");else return B(new j2("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",j2.ERR_BAD_REQUEST,Z));if(M.setContentLength(Y.length,!1),Z.maxBodyLength>-1&&Y.length>Z.maxBodyLength)return B(new j2("Request body larger than maxBodyLength limit",j2.ERR_BAD_REQUEST,Z))}let Z1=s1.toFiniteNumber(M.getContentLength());if(s1.isArray(a))m=a[0],X1=a[1];else m=X1=a;if(Y&&(d||m)){if(!s1.isStream(Y))Y=EP.Readable.from(Y,{objectMode:!1});Y=EP.pipeline([Y,new ZB1({maxRate:s1.toFiniteNumber(m)})],s1.noop),d&&Y.on("progress",Ct1(Y,$P(Z1,FD(RP(d),!1,3))))}let $1=void 0;if(Z.auth){let h1=Z.auth.username||"",r1=Z.auth.password||"";$1=h1+":"+r1}if(!$1&&f.username){let{username:h1,password:r1}=f;$1=h1+":"+r1}$1&&M.delete("authorization");let z1;try{z1=q$(f.pathname+f.search,Z.params,Z.paramsSerializer).replace(/^\?/,"")}catch(h1){let r1=new Error(h1.message);return r1.config=Z,r1.url=Z.url,r1.exists=!0,B(r1)}M.set("Accept-Encoding","gzip, compress, deflate"+(Kt1?", br":""),!1);let x={path:z1,method:A,headers:M.toJSON(),agents:{http:Z.httpAgent,https:Z.httpsAgent},auth:$1,protocol:P,family:X,beforeRedirect:Xb4,beforeRedirects:{}};if(!s1.isUndefined(w)&&(x.lookup=w),Z.socketPath)x.socketPath=Z.socketPath;else x.hostname=f.hostname.startsWith("[")?f.hostname.slice(1,-1):f.hostname,x.port=f.port,qt1(x,Z.proxy,P+"//"+f.hostname+(f.port?":"+f.port:"")+x.path);let w1,P1=wb4.test(x.protocol);if(x.agent=P1?Z.httpsAgent:Z.httpAgent,Z.transport)w1=Z.transport;else if(Z.maxRedirects===0)w1=P1?Zb4:Ib4;else{if(Z.maxRedirects)x.maxRedirects=Z.maxRedirects;if(Z.beforeRedirect)x.beforeRedirects.config=Z.beforeRedirect;w1=P1?Yb4:Vb4}if(Z.maxBodyLength>-1)x.maxBodyLength=Z.maxBodyLength;else x.maxBodyLength=1/0;if(Z.insecureHTTPParser)x.insecureHTTPParser=Z.insecureHTTPParser;if(z=w1.request(x,function h1(r1){if(z.destroyed)return;let M0=[r1],l0=+r1.headers["content-length"];if(k||X1){let O1=new ZB1({maxRate:s1.toFiniteNumber(X1)});k&&O1.on("progress",Ct1(O1,$P(l0,FD(RP(k),!0,3)))),M0.push(O1)}let R0=r1,X2=r1.req||z;if(Z.decompress!==!1&&r1.headers["content-encoding"]){if(A==="HEAD"||r1.statusCode===204)delete r1.headers["content-encoding"];switch((r1.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":M0.push(dQ.createUnzip(_t1)),delete r1.headers["content-encoding"];break;case"deflate":M0.push(new Xt1),M0.push(dQ.createUnzip(_t1)),delete r1.headers["content-encoding"];break;case"br":if(Kt1)M0.push(dQ.createBrotliDecompress(Bb4)),delete r1.headers["content-encoding"]}}R0=M0.length>1?EP.pipeline(M0,s1.noop):M0[0];let H1=EP.finished(R0,()=>{H1(),N()}),y1={status:r1.statusCode,statusText:r1.statusMessage,headers:new e8(r1.headers),config:Z,request:X2};if(H==="stream")y1.data=R0,TA(W,B,y1);else{let O1=[],t1=0;R0.on("data",function H0(z0){if(O1.push(z0),t1+=z0.length,Z.maxContentLength>-1&&t1>Z.maxContentLength)D=!0,R0.destroy(),B(new j2("maxContentLength size of "+Z.maxContentLength+" exceeded",j2.ERR_BAD_RESPONSE,Z,X2))}),R0.on("aborted",function H0(){if(D)return;let z0=new j2("stream has been aborted",j2.ERR_BAD_RESPONSE,Z,X2);R0.destroy(z0),B(z0)}),R0.on("error",function H0(z0){if(z.destroyed)return;B(j2.from(z0,null,Z,X2))}),R0.on("end",function H0(){try{let z0=O1.length===1?O1[0]:Buffer.concat(O1);if(H!=="arraybuffer"){if(z0=z0.toString(J),!J||J==="utf8")z0=s1.stripBOM(z0)}y1.data=z0}catch(z0){return B(j2.from(z0,null,Z,y1.request,y1))}TA(W,B,y1)})}U.once("abort",(O1)=>{if(!R0.destroyed)R0.emit("error",O1),R0.destroy()})}),U.once("abort",(h1)=>{B(h1),z.destroy(h1)}),z.on("error",function h1(r1){B(j2.from(r1,null,Z,z))}),z.on("socket",function h1(r1){r1.setKeepAlive(!0,60000)}),Z.timeout){let h1=parseInt(Z.timeout,10);if(Number.isNaN(h1)){B(new j2("error trying to parse `config.timeout` to int",j2.ERR_BAD_OPTION_VALUE,Z,z));return}z.setTimeout(h1,function r1(){if(K)return;let M0=Z.timeout?"timeout of "+Z.timeout+"ms exceeded":"timeout exceeded",l0=Z.transitional||CP;if(Z.timeoutErrorMessage)M0=Z.timeoutErrorMessage;B(new j2(M0,l0.clarifyTimeoutError?j2.ETIMEDOUT:j2.ECONNABORTED,Z,z)),L()})}if(s1.isStream(Y)){let h1=!1,r1=!1;Y.on("end",()=>{h1=!0}),Y.once("error",(M0)=>{r1=!0,z.destroy(M0)}),Y.on("close",()=>{if(!h1&&!r1)L(new qY("Request stream has been aborted",Z,z))}),Y.pipe(z)}else z.end(Y)})};var Nt1=H6.hasStandardBrowserEnv?((I,Z)=>(G)=>{return G=new URL(G,H6.origin),I.protocol===G.protocol&&I.host===G.host&&(Z||I.port===G.port)})(new URL(H6.origin),H6.navigator&&/(msie|trident)/i.test(H6.navigator.userAgent)):()=>!0;var $t1=H6.hasStandardBrowserEnv?{write(I,Z,G,W,B,V){let Y=[I+"="+encodeURIComponent(Z)];s1.isNumber(G)&&Y.push("expires="+new Date(G).toGMTString()),s1.isString(W)&&Y.push("path="+W),s1.isString(B)&&Y.push("domain="+B),V===!0&&Y.push("secure"),document.cookie=Y.join("; ")},read(I){let Z=document.cookie.match(new RegExp("(^|;\\s*)("+I+")=([^;]*)"));return Z?decodeURIComponent(Z[3]):null},remove(I){this.write(I,"",Date.now()-86400000)}}:{write(){},read(){return null},remove(){}};var Rt1=(I)=>I instanceof e8?{...I}:I;function fH(I,Z){Z=Z||{};let G={};function W(H,J,A,K){if(s1.isPlainObject(H)&&s1.isPlainObject(J))return s1.merge.call({caseless:K},H,J);else if(s1.isPlainObject(J))return s1.merge({},J);else if(s1.isArray(J))return J.slice();return J}function B(H,J,A,K){if(!s1.isUndefined(J))return W(H,J,A,K);else if(!s1.isUndefined(H))return W(void 0,H,A,K)}function V(H,J){if(!s1.isUndefined(J))return W(void 0,J)}function Y(H,J){if(!s1.isUndefined(J))return W(void 0,J);else if(!s1.isUndefined(H))return W(void 0,H)}function w(H,J,A){if(A in Z)return W(H,J);else if(A in I)return W(void 0,H)}let X={url:V,method:V,data:V,baseURL:Y,transformRequest:Y,transformResponse:Y,paramsSerializer:Y,timeout:Y,timeoutMessage:Y,withCredentials:Y,withXSRFToken:Y,adapter:Y,responseType:Y,xsrfCookieName:Y,xsrfHeaderName:Y,onUploadProgress:Y,onDownloadProgress:Y,decompress:Y,maxContentLength:Y,maxBodyLength:Y,beforeRedirect:Y,transport:Y,httpAgent:Y,httpsAgent:Y,cancelToken:Y,socketPath:Y,responseEncoding:Y,validateStatus:w,headers:(H,J,A)=>B(Rt1(H),Rt1(J),A,!0)};return s1.forEach(Object.keys(Object.assign({},I,Z)),function H(J){let A=X[J]||B,K=A(I[J],Z[J],J);s1.isUndefined(K)&&A!==w||(G[J]=K)}),G}var Rn=(I)=>{let Z=fH({},I),{data:G,withXSRFToken:W,xsrfHeaderName:B,xsrfCookieName:V,headers:Y,auth:w}=Z;if(Z.headers=Y=e8.from(Y),Z.url=q$(U$(Z.baseURL,Z.url),I.params,I.paramsSerializer),w)Y.set("Authorization","Basic "+btoa((w.username||"")+":"+(w.password?unescape(encodeURIComponent(w.password)):"")));let X;if(s1.isFormData(G)){if(H6.hasStandardBrowserEnv||H6.hasStandardBrowserWebWorkerEnv)Y.setContentType(void 0);else if((X=Y.getContentType())!==!1){let[H,...J]=X?X.split(";").map((A)=>A.trim()).filter(Boolean):[];Y.setContentType([H||"multipart/form-data",...J].join("; "))}}if(H6.hasStandardBrowserEnv){if(W&&s1.isFunction(W)&&(W=W(Z)),W||W!==!1&&Nt1(Z.url)){let H=B&&V&&$t1.read(V);if(H)Y.set(B,H)}}return Z};var _b4=typeof XMLHttpRequest!=="undefined",Et1=_b4&&function(I){return new Promise(function Z(G,W){let B=Rn(I),V=B.data,Y=e8.from(B.headers).normalize(),{responseType:w,onUploadProgress:X,onDownloadProgress:H}=B,J,A,K,D,z;function U(){D&&D(),z&&z(),B.cancelToken&&B.cancelToken.unsubscribe(J),B.signal&&B.signal.removeEventListener("abort",J)}let N=new XMLHttpRequest;N.open(B.method.toUpperCase(),B.url,!0),N.timeout=B.timeout;function L(){if(!N)return;let f=e8.from("getAllResponseHeaders"in N&&N.getAllResponseHeaders()),M={data:!w||w==="text"||w==="json"?N.responseText:N.response,status:N.status,statusText:N.statusText,headers:f,config:I,request:N};TA(function d(k){G(k),U()},function d(k){W(k),U()},M),N=null}if("onloadend"in N)N.onloadend=L;else N.onreadystatechange=function f(){if(!N||N.readyState!==4)return;if(N.status===0&&!(N.responseURL&&N.responseURL.indexOf("file:")===0))return;setTimeout(L)};if(N.onabort=function f(){if(!N)return;W(new j2("Request aborted",j2.ECONNABORTED,I,N)),N=null},N.onerror=function f(){W(new j2("Network Error",j2.ERR_NETWORK,I,N)),N=null},N.ontimeout=function f(){let P=B.timeout?"timeout of "+B.timeout+"ms exceeded":"timeout exceeded",M=B.transitional||CP;if(B.timeoutErrorMessage)P=B.timeoutErrorMessage;W(new j2(P,M.clarifyTimeoutError?j2.ETIMEDOUT:j2.ECONNABORTED,I,N)),N=null},V===void 0&&Y.setContentType(null),"setRequestHeader"in N)s1.forEach(Y.toJSON(),function f(P,M){N.setRequestHeader(M,P)});if(!s1.isUndefined(B.withCredentials))N.withCredentials=!!B.withCredentials;if(w&&w!=="json")N.responseType=B.responseType;if(H)[K,z]=FD(H,!0),N.addEventListener("progress",K);if(X&&N.upload)[A,D]=FD(X),N.upload.addEventListener("progress",A),N.upload.addEventListener("loadend",D);if(B.cancelToken||B.signal){if(J=(f)=>{if(!N)return;W(!f||f.type?new qY(null,I,N):f),N.abort(),N=null},B.cancelToken&&B.cancelToken.subscribe(J),B.signal)B.signal.aborted?J():B.signal.addEventListener("abort",J)}let g=tT(B.url);if(g&&H6.protocols.indexOf(g)===-1){W(new j2("Unsupported protocol "+g+":",j2.ERR_BAD_REQUEST,I));return}N.send(V||null)})};var Kb4=(I,Z)=>{let{length:G}=I=I?I.filter(Boolean):[];if(Z||G){let W=new AbortController,B,V=function(H){if(!B){B=!0,w();let J=H instanceof Error?H:this.reason;W.abort(J instanceof j2?J:new qY(J instanceof Error?J.message:J))}},Y=Z&&setTimeout(()=>{Y=null,V(new j2(`timeout ${Z} of ms exceeded`,j2.ETIMEDOUT))},Z),w=()=>{if(I)Y&&clearTimeout(Y),Y=null,I.forEach((H)=>{H.unsubscribe?H.unsubscribe(V):H.removeEventListener("abort",V)}),I=null};I.forEach((H)=>H.addEventListener("abort",V));let{signal:X}=W;return X.unsubscribe=()=>s1.asap(w),X}},Mt1=Kb4;var Db4=function*(I,Z){let G=I.byteLength;if(!Z||G<Z){yield I;return}let W=0,B;while(W<G)B=W+Z,yield I.slice(W,B),W=B},Cb4=async function*(I,Z){for await(let G of Fb4(I))yield*Db4(G,Z)},Fb4=async function*(I){if(I[Symbol.asyncIterator]){yield*I;return}let Z=I.getReader();try{for(;;){let{done:G,value:W}=await Z.read();if(G)break;yield W}}finally{await Z.cancel()}},GB1=(I,Z,G,W)=>{let B=Cb4(I,Z),V=0,Y,w=(X)=>{if(!Y)Y=!0,W&&W(X)};return new ReadableStream({async pull(X){try{let{done:H,value:J}=await B.next();if(H){w(),X.close();return}let A=J.byteLength;if(G){let K=V+=A;G(K)}X.enqueue(new Uint8Array(J))}catch(H){throw w(H),H}},cancel(X){return w(X),B.return()}},{highWaterMark:2})};var Mn=typeof fetch==="function"&&typeof Request==="function"&&typeof Response==="function",Pt1=Mn&&typeof ReadableStream==="function",Qb4=Mn&&(typeof TextEncoder==="function"?((I)=>(Z)=>I.encode(Z))(new TextEncoder):async(I)=>new Uint8Array(await new Response(I).arrayBuffer())),Lt1=(I,...Z)=>{try{return!!I(...Z)}catch(G){return!1}},zb4=Pt1&&Lt1(()=>{let I=!1,Z=new Request(H6.origin,{body:new ReadableStream,method:"POST",get duplex(){return I=!0,"half"}}).headers.has("Content-Type");return I&&!Z}),ft1=65536,WB1=Pt1&&Lt1(()=>s1.isReadableStream(new Response("").body)),En={stream:WB1&&((I)=>I.body)};Mn&&((I)=>{["text","arrayBuffer","blob","formData","stream"].forEach((Z)=>{!En[Z]&&(En[Z]=s1.isFunction(I[Z])?(G)=>G[Z]():(G,W)=>{throw new j2(`Response type '${Z}' is not supported`,j2.ERR_NOT_SUPPORT,W)})})})(new Response);var qb4=async(I)=>{if(I==null)return 0;if(s1.isBlob(I))return I.size;if(s1.isSpecCompliantForm(I))return(await new Request(H6.origin,{method:"POST",body:I}).arrayBuffer()).byteLength;if(s1.isArrayBufferView(I)||s1.isArrayBuffer(I))return I.byteLength;if(s1.isURLSearchParams(I))I=I+"";if(s1.isString(I))return(await Qb4(I)).byteLength},Ub4=async(I,Z)=>{let G=s1.toFiniteNumber(I.getContentLength());return G==null?qb4(Z):G},St1=Mn&&(async(I)=>{let{url:Z,method:G,data:W,signal:B,cancelToken:V,timeout:Y,onDownloadProgress:w,onUploadProgress:X,responseType:H,headers:J,withCredentials:A="same-origin",fetchOptions:K}=Rn(I);H=H?(H+"").toLowerCase():"text";let D=Mt1([B,V&&V.toAbortSignal()],Y),z,U=D&&D.unsubscribe&&(()=>{D.unsubscribe()}),N;try{if(X&&zb4&&G!=="get"&&G!=="head"&&(N=await Ub4(J,W))!==0){let M=new Request(Z,{method:"POST",body:W,duplex:"half"}),d;if(s1.isFormData(W)&&(d=M.headers.get("content-type")))J.setContentType(d);if(M.body){let[k,a]=$P(N,FD(RP(X)));W=GB1(M.body,ft1,k,a)}}if(!s1.isString(A))A=A?"include":"omit";let L="credentials"in Request.prototype;z=new Request(Z,{...K,signal:D,method:G.toUpperCase(),headers:J.normalize().toJSON(),body:W,duplex:"half",credentials:L?A:void 0});let g=await fetch(z),f=WB1&&(H==="stream"||H==="response");if(WB1&&(w||f&&U)){let M={};["status","statusText","headers"].forEach((m)=>{M[m]=g[m]});let d=s1.toFiniteNumber(g.headers.get("content-length")),[k,a]=w&&$P(d,FD(RP(w),!0))||[];g=new Response(GB1(g.body,ft1,k,()=>{a&&a(),U&&U()}),M)}H=H||"text";let P=await En[s1.findKey(En,H)||"text"](g,I);return!f&&U&&U(),await new Promise((M,d)=>{TA(M,d,{data:P,headers:e8.from(g.headers),status:g.status,statusText:g.statusText,config:I,request:z})})}catch(L){if(U&&U(),L&&L.name==="TypeError"&&/fetch/i.test(L.message))throw Object.assign(new j2("Network Error",j2.ERR_NETWORK,I,z),{cause:L.cause||L});throw j2.from(L,L&&L.code,I,z)}});var BB1={http:Ut1,xhr:Et1,fetch:St1};s1.forEach(BB1,(I,Z)=>{if(I){try{Object.defineProperty(I,"name",{value:Z})}catch(G){}Object.defineProperty(I,"adapterName",{value:Z})}});var dt1=(I)=>`- ${I}`,Nb4=(I)=>s1.isFunction(I)||I===null||I===!1,fn={getAdapter:(I)=>{I=s1.isArray(I)?I:[I];let{length:Z}=I,G,W,B={};for(let V=0;V<Z;V++){G=I[V];let Y;if(W=G,!Nb4(G)){if(W=BB1[(Y=String(G)).toLowerCase()],W===void 0)throw new j2(`Unknown adapter '${Y}'`)}if(W)break;B[Y||"#"+V]=W}if(!W){let V=Object.entries(B).map(([w,X])=>`adapter ${w} `+(X===!1?"is not supported by the environment":"is not available in the build")),Y=Z?V.length>1?`since :
|
|
441
441
|
`+V.map(dt1).join(`
|
|
442
442
|
`):" "+dt1(V[0]):"as no adapter specified";throw new j2("There is no suitable adapter to dispatch the request "+Y,"ERR_NOT_SUPPORT")}return W},adapters:BB1};function VB1(I){if(I.cancelToken)I.cancelToken.throwIfRequested();if(I.signal&&I.signal.aborted)throw new qY(null,I)}function Pn(I){if(VB1(I),I.headers=e8.from(I.headers),I.data=iT.call(I,I.transformRequest),["post","put","patch"].indexOf(I.method)!==-1)I.headers.setContentType("application/x-www-form-urlencoded",!1);return fn.getAdapter(I.adapter||FP.adapter)(I).then(function G(W){return VB1(I),W.data=iT.call(I,I.transformResponse,W),W.headers=e8.from(W.headers),W},function G(W){if(!nT(W)){if(VB1(I),W&&W.response)W.response.data=iT.call(I,I.transformResponse,W.response),W.response.headers=e8.from(W.response.headers)}return Promise.reject(W)})}var Ln={};["object","boolean","number","function","string","symbol"].forEach((I,Z)=>{Ln[I]=function G(W){return typeof W===I||"a"+(Z<1?"n ":" ")+I}});var Ot1={};Ln.transitional=function I(Z,G,W){function B(V,Y){return"[Axios v"+M$+"] Transitional option '"+V+"'"+Y+(W?". "+W:"")}return(V,Y,w)=>{if(Z===!1)throw new j2(B(Y," has been removed"+(G?" in "+G:"")),j2.ERR_DEPRECATED);if(G&&!Ot1[Y])Ot1[Y]=!0,console.warn(B(Y," has been deprecated since v"+G+" and will be removed in the near future"));return Z?Z(V,Y,w):!0}};Ln.spelling=function I(Z){return(G,W)=>{return console.warn(`${W} is likely a misspelling of ${Z}`),!0}};function $b4(I,Z,G){if(typeof I!=="object")throw new j2("options must be an object",j2.ERR_BAD_OPTION_VALUE);let W=Object.keys(I),B=W.length;while(B-- >0){let V=W[B],Y=Z[V];if(Y){let w=I[V],X=w===void 0||Y(w,V,I);if(X!==!0)throw new j2("option "+V+" must be "+X,j2.ERR_BAD_OPTION_VALUE);continue}if(G!==!0)throw new j2("Unknown option "+V,j2.ERR_BAD_OPTION)}}var Iy={assertOptions:$b4,validators:Ln};var yA=Iy.validators;class Zy{constructor(I){this.defaults=I,this.interceptors={request:new fW1,response:new fW1}}async request(I,Z){try{return await this._request(I,Z)}catch(G){if(G instanceof Error){let W={};Error.captureStackTrace?Error.captureStackTrace(W):W=new Error;let B=W.stack?W.stack.replace(/^.+\n/,""):"";try{if(!G.stack)G.stack=B;else if(B&&!String(G.stack).endsWith(B.replace(/^.+\n.+\n/,"")))G.stack+=`
|
|
443
|
-
`+B}catch(V){}}throw G}}_request(I,Z){if(typeof I==="string")Z=Z||{},Z.url=I;else Z=I||{};Z=fH(this.defaults,Z);let{transitional:G,paramsSerializer:W,headers:B}=Z;if(G!==void 0)Iy.assertOptions(G,{silentJSONParsing:yA.transitional(yA.boolean),forcedJSONParsing:yA.transitional(yA.boolean),clarifyTimeoutError:yA.transitional(yA.boolean)},!1);if(W!=null)if(s1.isFunction(W))Z.paramsSerializer={serialize:W};else Iy.assertOptions(W,{encode:yA.function,serialize:yA.function},!0);Iy.assertOptions(Z,{baseUrl:yA.spelling("baseURL"),withXsrfToken:yA.spelling("withXSRFToken")},!0),Z.method=(Z.method||this.defaults.method||"get").toLowerCase();let V=B&&s1.merge(B.common,B[Z.method]);B&&s1.forEach(["delete","get","head","post","put","patch","common"],(D)=>{delete B[D]}),Z.headers=e8.concat(V,B);let Y=[],w=!0;this.interceptors.request.forEach(function D(z){if(typeof z.runWhen==="function"&&z.runWhen(Z)===!1)return;w=w&&z.synchronous,Y.unshift(z.fulfilled,z.rejected)});let X=[];this.interceptors.response.forEach(function D(z){X.push(z.fulfilled,z.rejected)});let H,J=0,A;if(!w){let D=[Pn.bind(this),void 0];D.unshift.apply(D,Y),D.push.apply(D,X),A=D.length,H=Promise.resolve(Z);while(J<A)H=H.then(D[J++],D[J++]);return H}A=Y.length;let K=Z;J=0;while(J<A){let D=Y[J++],z=Y[J++];try{K=D(K)}catch(U){z.call(this,U);break}}try{H=Pn.call(this,K)}catch(D){return Promise.reject(D)}J=0,A=X.length;while(J<A)H=H.then(X[J++],X[J++]);return H}getUri(I){I=fH(this.defaults,I);let Z=U$(I.baseURL,I.url);return q$(Z,I.params,I.paramsSerializer)}}s1.forEach(["delete","get","head","options"],function I(Z){Zy.prototype[Z]=function(G,W){return this.request(fH(W||{},{method:Z,url:G,data:(W||{}).data}))}});s1.forEach(["post","put","patch"],function I(Z){function G(W){return function B(V,Y,w){return this.request(fH(w||{},{method:Z,headers:W?{"Content-Type":"multipart/form-data"}:{},url:V,data:Y}))}}Zy.prototype[Z]=G(),Zy.prototype[Z+"Form"]=G(!0)});var Gy=Zy;class YB1{constructor(I){if(typeof I!=="function")throw new TypeError("executor must be a function.");let Z;this.promise=new Promise(function W(B){Z=B});let G=this;this.promise.then((W)=>{if(!G._listeners)return;let B=G._listeners.length;while(B-- >0)G._listeners[B](W);G._listeners=null}),this.promise.then=(W)=>{let B,V=new Promise((Y)=>{G.subscribe(Y),B=Y}).then(W);return V.cancel=function Y(){G.unsubscribe(B)},V},I(function W(B,V,Y){if(G.reason)return;G.reason=new qY(B,V,Y),Z(G.reason)})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(I){if(this.reason){I(this.reason);return}if(this._listeners)this._listeners.push(I);else this._listeners=[I]}unsubscribe(I){if(!this._listeners)return;let Z=this._listeners.indexOf(I);if(Z!==-1)this._listeners.splice(Z,1)}toAbortSignal(){let I=new AbortController,Z=(G)=>{I.abort(G)};return this.subscribe(Z),I.signal.unsubscribe=()=>this.unsubscribe(Z),I.signal}static source(){let I;return{token:new YB1(function G(W){I=W}),cancel:I}}}var vt1=YB1;function wB1(I){return function Z(G){return I.apply(null,G)}}function XB1(I){return s1.isObject(I)&&I.isAxiosError===!0}var HB1={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HB1).forEach(([I,Z])=>{HB1[Z]=I});var gt1=HB1;function Tt1(I){let Z=new Gy(I),G=uT(Gy.prototype.request,Z);return s1.extend(G,Gy.prototype,Z,{allOwnKeys:!0}),s1.extend(G,Z,null,{allOwnKeys:!0}),G.create=function W(B){return Tt1(fH(I,B))},G}var yI=Tt1(FP);yI.Axios=Gy;yI.CanceledError=qY;yI.CancelToken=vt1;yI.isCancel=nT;yI.VERSION=M$;yI.toFormData=PQ;yI.AxiosError=j2;yI.Cancel=yI.CanceledError;yI.all=function I(Z){return Promise.all(Z)};yI.spread=wB1;yI.isAxiosError=XB1;yI.mergeConfig=fH;yI.AxiosHeaders=e8;yI.formToJSON=(I)=>Dn(s1.isHTMLForm(I)?new FormData(I):I);yI.getAdapter=fn.getAdapter;yI.HttpStatusCode=gt1;yI.default=yI;var bI=yI;var Xa=J1(D00(),1);var vk4={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,Z)=>{}},gk4={document:vk4,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,Z)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof Z==="function")Z({});else Z.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},Tk4={sendBeacon:(I,Z)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window==="undefined")global.window=gk4;if(typeof navigator==="undefined")global.navigator=Tk4;import*as PH from"fs";import*as _y from"path";import{homedir as yk4}from"os";import{existsSync as bk4,unlinkSync as jk4}from"fs";var O$=_y.join(yk4(),".claude","statsig");try{PH.mkdirSync(O$,{recursive:!0})}catch(I){c1(I)}class iB1{cache=new Map;ready=!1;constructor(){try{if(!PH.existsSync(O$))PH.mkdirSync(O$,{recursive:!0});let I=PH.readdirSync(O$);for(let Z of I){let G=decodeURIComponent(Z),W=PH.readFileSync(_y.join(O$,Z),"utf8");this.cache.set(G,W)}this.ready=!0}catch(I){c1(I),this.ready=!0}}isReady(){return this.ready}isReadyResolver(){return this.ready?Promise.resolve():null}getProviderName(){return"FileSystemStorageProvider"}getItem(I){return this.cache.get(I)??null}setItem(I,Z){this.cache.set(I,Z);try{let G=encodeURIComponent(I);PH.writeFileSync(_y.join(O$,G),Z,"utf8")}catch(G){c1(G)}}removeItem(I){this.cache.delete(I);let Z=encodeURIComponent(I),G=_y.join(O$,Z);if(!bk4(G))return;try{jk4(G)}catch(W){c1(W)}}getAllKeys(){return Array.from(this.cache.keys())}}var C00="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504",F00="client-RRNS7R65EAtReO5XA4xDC3eU6ZdJQi6lLEP6b5j32Me";var Q00="tengu-token-efficient-tools",z00="token-efficient-tools-2025-02-19",q00="claude-code-20250219";var wa=O2(async()=>{let I=[q00];if(process.env.SWE_BENCH){if(await v$(Q00))I.push(z00)}return I});var y3=!!process.env.CLAUDE_CODE_USE_BEDROCK,a3=!!process.env.CLAUDE_CODE_USE_VERTEX,N00="claude-3-7-sonnet-20250219",U00={firstParty:N00,bedrock:"us.anthropic.claude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219"},mk4={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.claude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022"},$00=()=>y3?"bedrock":a3?"vertex":"firstParty",LH=process.env.ANTHROPIC_SMALL_FAST_MODEL||mk4[$00()];async function kk4(){try{return await BB("tengu-capable-model-config",U00)}catch(I){return c1(I),U00}}var JZ=O2(async()=>{if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return(await kk4())[$00()]});function R00(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET}var E00={},xP=null,uP=O2(async()=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return null;let I=await Ha(),Z={networkConfig:{api:"https://statsig.anthropic.com/v1/"},environment:{tier:["test","dev"].includes("production")?"dev":"production"},logLevel:Xa.LogLevel.None,storageProvider:new iB1};return xP=new Xa.StatsigClient(F00,I,Z),xP.on("error",()=>{bI.head("https://api.anthropic.com/api/hello").catch(()=>{})}),await xP.initializeAsync(),process.on("beforeExit",async()=>{await xP?.flush()}),process.on("exit",()=>{xP?.flush()}),xP});async function x1(I,Z){if(y3||a3||process.env.DISABLE_TELEMETRY)return;try{let[G,W,B,V,Y]=await Promise.all([uP(),wa(),Z.model?Promise.resolve(String(Z.model)):JZ(),z2.getPackageManagers(),z2.getRuntimes()]);if(!G)return;let w={...Z,model:B,sessionId:UY,userType:"external",...{},...W.length>0?{betas:W.join(",")}:{},env:JSON.stringify({platform:z2.platform,nodeVersion:z2.nodeVersion,terminal:z2.terminal,packageManagers:V.join(","),runtimes:Y.join(","),isRunningWithBun:z2.isRunningWithBun(),isCi:!1==="true",isGithubAction:process.env.GITHUB_ACTIONS==="true",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION})},X={eventName:I,metadata:w};G.logEvent(X),await G.flush()}catch(G){}}var v$=O2(async(I)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return!1;let Z=await uP();if(!Z)return!1;let G=Z.checkGate(I);return E00[I]=G,G});var g$=(I,Z)=>{let[G,W]=nB1.default.useState(Z);return nB1.default.useEffect(()=>{BB(I,Z).then(W)},[I,Z]),G};function M00(){return{...E00}}var XX3=O2(async(I,Z)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return Z;let G=await uP();if(!G)return Z;let W=G.getExperiment(I);if(Object.keys(W.value).length===0)return Z;return W.value}),BB=async(I,Z)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return Z;let G=await uP();if(!G)return Z;let W=G.getDynamicConfig(I);if(Object.keys(W.value).length===0)return Z;return W.value};import{readFileSync as g69,writeFileSync as T69,openSync as nw1,readSync as gG0,closeSync as aw1,existsSync as TG0,readdirSync as y69,opendirSync as b69,fsyncSync as j69}from"fs";import{isAbsolute as rw1,normalize as LG0,resolve as sw1,resolve as SG0,relative as yG0,sep as Ar,basename as dG0,dirname as m69,extname as OG0,join as k69}from"path";var i00=J1(m00(),1);var Dy=(I)=>{if(typeof I!=="string")throw new TypeError("invalid pattern");if(I.length>65536)throw new TypeError("pattern is too long")};var nk4={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Cy=(I)=>I.replace(/[[\]\\-]/g,"\\$&"),ak4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),k00=(I)=>I.join(""),x00=(I,Z)=>{let G=Z;if(I.charAt(G)!=="[")throw new Error("not in a brace expression");let W=[],B=[],V=G+1,Y=!1,w=!1,X=!1,H=!1,J=G,A="";I:while(V<I.length){let U=I.charAt(V);if((U==="!"||U==="^")&&V===G+1){H=!0,V++;continue}if(U==="]"&&Y&&!X){J=V+1;break}if(Y=!0,U==="\\"){if(!X){X=!0,V++;continue}}if(U==="["&&!X){for(let[N,[L,g,f]]of Object.entries(nk4))if(I.startsWith(N,V)){if(A)return["$.",!1,I.length-G,!0];if(V+=N.length,f)B.push(L);else W.push(L);w=w||g;continue I}}if(X=!1,A){if(U>A)W.push(Cy(A)+"-"+Cy(U));else if(U===A)W.push(Cy(U));A="",V++;continue}if(I.startsWith("-]",V+1)){W.push(Cy(U+"-")),V+=2;continue}if(I.startsWith("-",V+1)){A=U,V+=2;continue}W.push(Cy(U)),V++}if(J<V)return["",!1,0,!1];if(!W.length&&!B.length)return["$.",!1,I.length-G,!0];if(B.length===0&&W.length===1&&/^\\?.$/.test(W[0])&&!H){let U=W[0].length===2?W[0].slice(-1):W[0];return[ak4(U),!1,J-G,!1]}let K="["+(H?"^":"")+k00(W)+"]",D="["+(H?"":"^")+k00(B)+"]";return[W.length&&B.length?"("+K+"|"+D+")":W.length?K:D,w,J-G,!0]};var SH=(I,{windowsPathsNoEscape:Z=!1}={})=>{return Z?I.replace(/\[([^\/\\])\]/g,"$1"):I.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var rk4=new Set(["!","?","+","*","@"]),u00=(I)=>rk4.has(I),sk4="(?!(?:^|/)\\.\\.?(?:$|/))",Ja="(?!\\.)",ok4=new Set(["[","."]),tk4=new Set(["..","."]),ek4=new Set("().*{}+?[]^$\\!"),Ix4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sB1="[^/]",h00=sB1+"*?",p00=sB1+"+?";class NG{type;#I;#Z;#V=!1;#W=[];#Y;#U;#H;#A=!1;#w;#X;#B=!1;constructor(I,Z,G={}){if(this.type=I,I)this.#Z=!0;if(this.#Y=Z,this.#I=this.#Y?this.#Y.#I:this,this.#w=this.#I===this?G:this.#I.#w,this.#H=this.#I===this?[]:this.#I.#H,I==="!"&&!this.#I.#A)this.#H.push(this);this.#U=this.#Y?this.#Y.#W.length:0}get hasMagic(){if(this.#Z!==void 0)return this.#Z;for(let I of this.#W){if(typeof I==="string")continue;if(I.type||I.hasMagic)return this.#Z=!0}return this.#Z}toString(){if(this.#X!==void 0)return this.#X;if(!this.type)return this.#X=this.#W.map((I)=>String(I)).join("");else return this.#X=this.type+"("+this.#W.map((I)=>String(I)).join("|")+")"}#F(){if(this!==this.#I)throw new Error("should only call on root");if(this.#A)return this;this.toString(),this.#A=!0;let I;while(I=this.#H.pop()){if(I.type!=="!")continue;let Z=I,G=Z.#Y;while(G){for(let W=Z.#U+1;!G.type&&W<G.#W.length;W++)for(let B of I.#W){if(typeof B==="string")throw new Error("string part in extglob AST??");B.copyIn(G.#W[W])}Z=G,G=Z.#Y}}return this}push(...I){for(let Z of I){if(Z==="")continue;if(typeof Z!=="string"&&!(Z instanceof NG&&Z.#Y===this))throw new Error("invalid part: "+Z);this.#W.push(Z)}}toJSON(){let I=this.type===null?this.#W.slice().map((Z)=>typeof Z==="string"?Z:Z.toJSON()):[this.type,...this.#W.map((Z)=>Z.toJSON())];if(this.isStart()&&!this.type)I.unshift([]);if(this.isEnd()&&(this===this.#I||this.#I.#A&&this.#Y?.type==="!"))I.push({});return I}isStart(){if(this.#I===this)return!0;if(!this.#Y?.isStart())return!1;if(this.#U===0)return!0;let I=this.#Y;for(let Z=0;Z<this.#U;Z++){let G=I.#W[Z];if(!(G instanceof NG&&G.type==="!"))return!1}return!0}isEnd(){if(this.#I===this)return!0;if(this.#Y?.type==="!")return!0;if(!this.#Y?.isEnd())return!1;if(!this.type)return this.#Y?.isEnd();let I=this.#Y?this.#Y.#W.length:0;return this.#U===I-1}copyIn(I){if(typeof I==="string")this.push(I);else this.push(I.clone(this))}clone(I){let Z=new NG(this.type,I);for(let G of this.#W)Z.copyIn(G);return Z}static#Q(I,Z,G,W){let B=!1,V=!1,Y=-1,w=!1;if(Z.type===null){let K=G,D="";while(K<I.length){let z=I.charAt(K++);if(B||z==="\\"){B=!B,D+=z;continue}if(V){if(K===Y+1){if(z==="^"||z==="!")w=!0}else if(z==="]"&&!(K===Y+2&&w))V=!1;D+=z;continue}else if(z==="["){V=!0,Y=K,w=!1,D+=z;continue}if(!W.noext&&u00(z)&&I.charAt(K)==="("){Z.push(D),D="";let U=new NG(z,Z);K=NG.#Q(I,U,K,W),Z.push(U);continue}D+=z}return Z.push(D),K}let X=G+1,H=new NG(null,Z),J=[],A="";while(X<I.length){let K=I.charAt(X++);if(B||K==="\\"){B=!B,A+=K;continue}if(V){if(X===Y+1){if(K==="^"||K==="!")w=!0}else if(K==="]"&&!(X===Y+2&&w))V=!1;A+=K;continue}else if(K==="["){V=!0,Y=X,w=!1,A+=K;continue}if(u00(K)&&I.charAt(X)==="("){H.push(A),A="";let D=new NG(K,H);H.push(D),X=NG.#Q(I,D,X,W);continue}if(K==="|"){H.push(A),A="",J.push(H),H=new NG(null,Z);continue}if(K===")"){if(A===""&&Z.#W.length===0)Z.#B=!0;return H.push(A),A="",Z.push(...J,H),X}A+=K}return Z.type=null,Z.#Z=void 0,Z.#W=[I.substring(G-1)],X}static fromGlob(I,Z={}){let G=new NG(null,void 0,Z);return NG.#Q(I,G,0,Z),G}toMMPattern(){if(this!==this.#I)return this.#I.toMMPattern();let I=this.toString(),[Z,G,W,B]=this.toRegExpSource();if(!(W||this.#Z||this.#w.nocase&&!this.#w.nocaseMagicOnly&&I.toUpperCase()!==I.toLowerCase()))return G;let Y=(this.#w.nocase?"i":"")+(B?"u":"");return Object.assign(new RegExp(`^${Z}$`,Y),{_src:Z,_glob:I})}get options(){return this.#w}toRegExpSource(I){let Z=I??!!this.#w.dot;if(this.#I===this)this.#F();if(!this.type){let w=this.isStart()&&this.isEnd(),X=this.#W.map((K)=>{let[D,z,U,N]=typeof K==="string"?NG.#_(K,this.#Z,w):K.toRegExpSource(I);return this.#Z=this.#Z||U,this.#V=this.#V||N,D}).join(""),H="";if(this.isStart()){if(typeof this.#W[0]==="string"){if(!(this.#W.length===1&&tk4.has(this.#W[0]))){let D=ok4,z=Z&&D.has(X.charAt(0))||X.startsWith("\\.")&&D.has(X.charAt(2))||X.startsWith("\\.\\.")&&D.has(X.charAt(4)),U=!Z&&!I&&D.has(X.charAt(0));H=z?sk4:U?Ja:""}}}let J="";if(this.isEnd()&&this.#I.#A&&this.#Y?.type==="!")J="(?:$|\\/)";return[H+X+J,SH(X),this.#Z=!!this.#Z,this.#V]}let G=this.type==="*"||this.type==="+",W=this.type==="!"?"(?:(?!(?:":"(?:",B=this.#K(Z);if(this.isStart()&&this.isEnd()&&!B&&this.type!=="!"){let w=this.toString();return this.#W=[w],this.type=null,this.#Z=void 0,[w,SH(this.toString()),!1,!1]}let V=!G||I||Z||!Ja?"":this.#K(!0);if(V===B)V="";if(V)B=`(?:${B})(?:${V})*?`;let Y="";if(this.type==="!"&&this.#B)Y=(this.isStart()&&!Z?Ja:"")+p00;else{let w=this.type==="!"?"))"+(this.isStart()&&!Z&&!I?Ja:"")+h00+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&V?")":this.type==="*"&&V?")?":`)${this.type}`;Y=W+B+w}return[Y,SH(B),this.#Z=!!this.#Z,this.#V]}#K(I){return this.#W.map((Z)=>{if(typeof Z==="string")throw new Error("string type in extglob ast??");let[G,W,B,V]=Z.toRegExpSource(I);return this.#V=this.#V||V,G}).filter((Z)=>!(this.isStart()&&this.isEnd())||!!Z).join("|")}static#_(I,Z,G=!1){let W=!1,B="",V=!1;for(let Y=0;Y<I.length;Y++){let w=I.charAt(Y);if(W){W=!1,B+=(ek4.has(w)?"\\":"")+w;continue}if(w==="\\"){if(Y===I.length-1)B+="\\\\";else W=!0;continue}if(w==="["){let[X,H,J,A]=x00(I,Y);if(J){B+=X,V=V||H,Y+=J-1,Z=Z||A;continue}}if(w==="*"){if(G&&I==="*")B+=p00;else B+=h00;Z=!0;continue}if(w==="?"){B+=sB1,Z=!0;continue}B+=Ix4(w)}return[B,SH(I),!!Z,V]}}var hP=(I,{windowsPathsNoEscape:Z=!1}={})=>{return Z?I.replace(/[?*()[\]]/g,"[$&]"):I.replace(/[?*()[\]\\]/g,"\\$&")};var VB=(I,Z,G={})=>{if(Dy(Z),!G.nocomment&&Z.charAt(0)==="#")return!1;return new rw(Z,G).match(I)},Zx4=/^\*+([^+@!?\*\[\(]*)$/,Gx4=(I)=>(Z)=>!Z.startsWith(".")&&Z.endsWith(I),Wx4=(I)=>(Z)=>Z.endsWith(I),Bx4=(I)=>{return I=I.toLowerCase(),(Z)=>!Z.startsWith(".")&&Z.toLowerCase().endsWith(I)},Vx4=(I)=>{return I=I.toLowerCase(),(Z)=>Z.toLowerCase().endsWith(I)},Yx4=/^\*+\.\*+$/,wx4=(I)=>!I.startsWith(".")&&I.includes("."),Xx4=(I)=>I!=="."&&I!==".."&&I.includes("."),Hx4=/^\.\*+$/,Jx4=(I)=>I!=="."&&I!==".."&&I.startsWith("."),Ax4=/^\*+$/,_x4=(I)=>I.length!==0&&!I.startsWith("."),Kx4=(I)=>I.length!==0&&I!=="."&&I!=="..",Dx4=/^\?+([^+@!?\*\[\(]*)?$/,Cx4=([I,Z=""])=>{let G=n00([I]);if(!Z)return G;return Z=Z.toLowerCase(),(W)=>G(W)&&W.toLowerCase().endsWith(Z)},Fx4=([I,Z=""])=>{let G=a00([I]);if(!Z)return G;return Z=Z.toLowerCase(),(W)=>G(W)&&W.toLowerCase().endsWith(Z)},Qx4=([I,Z=""])=>{let G=a00([I]);return!Z?G:(W)=>G(W)&&W.endsWith(Z)},zx4=([I,Z=""])=>{let G=n00([I]);return!Z?G:(W)=>G(W)&&W.endsWith(Z)},n00=([I])=>{let Z=I.length;return(G)=>G.length===Z&&!G.startsWith(".")},a00=([I])=>{let Z=I.length;return(G)=>G.length===Z&&G!=="."&&G!==".."},r00=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",l00={win32:{sep:"\\"},posix:{sep:"/"}},qx4=r00==="win32"?l00.win32.sep:l00.posix.sep;VB.sep=qx4;var $G=Symbol("globstar **");VB.GLOBSTAR=$G;var Ux4="[^/]",Nx4=Ux4+"*?",$x4="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Rx4="(?:(?!(?:\\/|^)\\.).)*?",Ex4=(I,Z={})=>(G)=>VB(G,I,Z);VB.filter=Ex4;var aw=(I,Z={})=>Object.assign({},I,Z),Mx4=(I)=>{if(!I||typeof I!=="object"||!Object.keys(I).length)return VB;let Z=VB;return Object.assign((W,B,V={})=>Z(W,B,aw(I,V)),{Minimatch:class W extends Z.Minimatch{constructor(B,V={}){super(B,aw(I,V))}static defaults(B){return Z.defaults(aw(I,B)).Minimatch}},AST:class W extends Z.AST{constructor(B,V,Y={}){super(B,V,aw(I,Y))}static fromGlob(B,V={}){return Z.AST.fromGlob(B,aw(I,V))}},unescape:(W,B={})=>Z.unescape(W,aw(I,B)),escape:(W,B={})=>Z.escape(W,aw(I,B)),filter:(W,B={})=>Z.filter(W,aw(I,B)),defaults:(W)=>Z.defaults(aw(I,W)),makeRe:(W,B={})=>Z.makeRe(W,aw(I,B)),braceExpand:(W,B={})=>Z.braceExpand(W,aw(I,B)),match:(W,B,V={})=>Z.match(W,B,aw(I,V)),sep:Z.sep,GLOBSTAR:$G})};VB.defaults=Mx4;var s00=(I,Z={})=>{if(Dy(I),Z.nobrace||!/\{(?:(?!\{).)*\}/.test(I))return[I];return i00.default(I)};VB.braceExpand=s00;var fx4=(I,Z={})=>new rw(I,Z).makeRe();VB.makeRe=fx4;var Px4=(I,Z,G={})=>{let W=new rw(Z,G);if(I=I.filter((B)=>W.match(B)),W.options.nonull&&!I.length)I.push(Z);return I};VB.match=Px4;var c00=/[?*]|[+@!]\(.*?\)|\[|\]/,Lx4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class rw{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(I,Z={}){if(Dy(I),Z=Z||{},this.options=Z,this.pattern=I,this.platform=Z.platform||r00,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Z.windowsPathsNoEscape||Z.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Z.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Z.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Z.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Z.windowsNoMagicRoot!==void 0?Z.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let I of this.set)for(let Z of I)if(typeof Z!=="string")return!0;return!1}debug(...I){}make(){let I=this.pattern,Z=this.options;if(!Z.nocomment&&I.charAt(0)==="#"){this.comment=!0;return}if(!I){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Z.debug)this.debug=(...B)=>console.error(...B);this.debug(this.pattern,this.globSet);let G=this.globSet.map((B)=>this.slashSplit(B));this.globParts=this.preprocess(G),this.debug(this.pattern,this.globParts);let W=this.globParts.map((B,V,Y)=>{if(this.isWindows&&this.windowsNoMagicRoot){let w=B[0]===""&&B[1]===""&&(B[2]==="?"||!c00.test(B[2]))&&!c00.test(B[3]),X=/^[a-z]:/i.test(B[0]);if(w)return[...B.slice(0,4),...B.slice(4).map((H)=>this.parse(H))];else if(X)return[B[0],...B.slice(1).map((H)=>this.parse(H))]}return B.map((w)=>this.parse(w))});if(this.debug(this.pattern,W),this.set=W.filter((B)=>B.indexOf(!1)===-1),this.isWindows)for(let B=0;B<this.set.length;B++){let V=this.set[B];if(V[0]===""&&V[1]===""&&this.globParts[B][2]==="?"&&typeof V[3]==="string"&&/^[a-z]:$/i.test(V[3]))V[2]="?"}this.debug(this.pattern,this.set)}preprocess(I){if(this.options.noglobstar){for(let G=0;G<I.length;G++)for(let W=0;W<I[G].length;W++)if(I[G][W]==="**")I[G][W]="*"}let{optimizationLevel:Z=1}=this.options;if(Z>=2)I=this.firstPhasePreProcess(I),I=this.secondPhasePreProcess(I);else if(Z>=1)I=this.levelOneOptimize(I);else I=this.adjascentGlobstarOptimize(I);return I}adjascentGlobstarOptimize(I){return I.map((Z)=>{let G=-1;while((G=Z.indexOf("**",G+1))!==-1){let W=G;while(Z[W+1]==="**")W++;if(W!==G)Z.splice(G,W-G)}return Z})}levelOneOptimize(I){return I.map((Z)=>{return Z=Z.reduce((G,W)=>{let B=G[G.length-1];if(W==="**"&&B==="**")return G;if(W===".."){if(B&&B!==".."&&B!=="."&&B!=="**")return G.pop(),G}return G.push(W),G},[]),Z.length===0?[""]:Z})}levelTwoFileOptimize(I){if(!Array.isArray(I))I=this.slashSplit(I);let Z=!1;do{if(Z=!1,!this.preserveMultipleSlashes){for(let W=1;W<I.length-1;W++){let B=I[W];if(W===1&&B===""&&I[0]==="")continue;if(B==="."||B==="")Z=!0,I.splice(W,1),W--}if(I[0]==="."&&I.length===2&&(I[1]==="."||I[1]===""))Z=!0,I.pop()}let G=0;while((G=I.indexOf("..",G+1))!==-1){let W=I[G-1];if(W&&W!=="."&&W!==".."&&W!=="**")Z=!0,I.splice(G-1,2),G-=2}}while(Z);return I.length===0?[""]:I}firstPhasePreProcess(I){let Z=!1;do{Z=!1;for(let G of I){let W=-1;while((W=G.indexOf("**",W+1))!==-1){let V=W;while(G[V+1]==="**")V++;if(V>W)G.splice(W+1,V-W);let Y=G[W+1],w=G[W+2],X=G[W+3];if(Y!=="..")continue;if(!w||w==="."||w===".."||!X||X==="."||X==="..")continue;Z=!0,G.splice(W,1);let H=G.slice(0);H[W]="**",I.push(H),W--}if(!this.preserveMultipleSlashes){for(let V=1;V<G.length-1;V++){let Y=G[V];if(V===1&&Y===""&&G[0]==="")continue;if(Y==="."||Y==="")Z=!0,G.splice(V,1),V--}if(G[0]==="."&&G.length===2&&(G[1]==="."||G[1]===""))Z=!0,G.pop()}let B=0;while((B=G.indexOf("..",B+1))!==-1){let V=G[B-1];if(V&&V!=="."&&V!==".."&&V!=="**"){Z=!0;let w=B===1&&G[B+1]==="**"?["."]:[];if(G.splice(B-1,2,...w),G.length===0)G.push("");B-=2}}}}while(Z);return I}secondPhasePreProcess(I){for(let Z=0;Z<I.length-1;Z++)for(let G=Z+1;G<I.length;G++){let W=this.partsMatch(I[Z],I[G],!this.preserveMultipleSlashes);if(W){I[Z]=[],I[G]=W;break}}return I.filter((Z)=>Z.length)}partsMatch(I,Z,G=!1){let W=0,B=0,V=[],Y="";while(W<I.length&&B<Z.length)if(I[W]===Z[B])V.push(Y==="b"?Z[B]:I[W]),W++,B++;else if(G&&I[W]==="**"&&Z[B]===I[W+1])V.push(I[W]),W++;else if(G&&Z[B]==="**"&&I[W]===Z[B+1])V.push(Z[B]),B++;else if(I[W]==="*"&&Z[B]&&(this.options.dot||!Z[B].startsWith("."))&&Z[B]!=="**"){if(Y==="b")return!1;Y="a",V.push(I[W]),W++,B++}else if(Z[B]==="*"&&I[W]&&(this.options.dot||!I[W].startsWith("."))&&I[W]!=="**"){if(Y==="a")return!1;Y="b",V.push(Z[B]),W++,B++}else return!1;return I.length===Z.length&&V}parseNegate(){if(this.nonegate)return;let I=this.pattern,Z=!1,G=0;for(let W=0;W<I.length&&I.charAt(W)==="!";W++)Z=!Z,G++;if(G)this.pattern=I.slice(G);this.negate=Z}matchOne(I,Z,G=!1){let W=this.options;if(this.isWindows){let z=typeof I[0]==="string"&&/^[a-z]:$/i.test(I[0]),U=!z&&I[0]===""&&I[1]===""&&I[2]==="?"&&/^[a-z]:$/i.test(I[3]),N=typeof Z[0]==="string"&&/^[a-z]:$/i.test(Z[0]),L=!N&&Z[0]===""&&Z[1]===""&&Z[2]==="?"&&typeof Z[3]==="string"&&/^[a-z]:$/i.test(Z[3]),g=U?3:z?0:void 0,f=L?3:N?0:void 0;if(typeof g==="number"&&typeof f==="number"){let[P,M]=[I[g],Z[f]];if(P.toLowerCase()===M.toLowerCase()){if(Z[f]=P,f>g)Z=Z.slice(f);else if(g>f)I=I.slice(g)}}}let{optimizationLevel:B=1}=this.options;if(B>=2)I=this.levelTwoFileOptimize(I);this.debug("matchOne",this,{file:I,pattern:Z}),this.debug("matchOne",I.length,Z.length);for(var V=0,Y=0,w=I.length,X=Z.length;V<w&&Y<X;V++,Y++){this.debug("matchOne loop");var H=Z[Y],J=I[V];if(this.debug(Z,H,J),H===!1)return!1;if(H===$G){this.debug("GLOBSTAR",[Z,H,J]);var A=V,K=Y+1;if(K===X){this.debug("** at the end");for(;V<w;V++)if(I[V]==="."||I[V]===".."||!W.dot&&I[V].charAt(0)===".")return!1;return!0}while(A<w){var D=I[A];if(this.debug(`
|
|
443
|
+
`+B}catch(V){}}throw G}}_request(I,Z){if(typeof I==="string")Z=Z||{},Z.url=I;else Z=I||{};Z=fH(this.defaults,Z);let{transitional:G,paramsSerializer:W,headers:B}=Z;if(G!==void 0)Iy.assertOptions(G,{silentJSONParsing:yA.transitional(yA.boolean),forcedJSONParsing:yA.transitional(yA.boolean),clarifyTimeoutError:yA.transitional(yA.boolean)},!1);if(W!=null)if(s1.isFunction(W))Z.paramsSerializer={serialize:W};else Iy.assertOptions(W,{encode:yA.function,serialize:yA.function},!0);Iy.assertOptions(Z,{baseUrl:yA.spelling("baseURL"),withXsrfToken:yA.spelling("withXSRFToken")},!0),Z.method=(Z.method||this.defaults.method||"get").toLowerCase();let V=B&&s1.merge(B.common,B[Z.method]);B&&s1.forEach(["delete","get","head","post","put","patch","common"],(D)=>{delete B[D]}),Z.headers=e8.concat(V,B);let Y=[],w=!0;this.interceptors.request.forEach(function D(z){if(typeof z.runWhen==="function"&&z.runWhen(Z)===!1)return;w=w&&z.synchronous,Y.unshift(z.fulfilled,z.rejected)});let X=[];this.interceptors.response.forEach(function D(z){X.push(z.fulfilled,z.rejected)});let H,J=0,A;if(!w){let D=[Pn.bind(this),void 0];D.unshift.apply(D,Y),D.push.apply(D,X),A=D.length,H=Promise.resolve(Z);while(J<A)H=H.then(D[J++],D[J++]);return H}A=Y.length;let K=Z;J=0;while(J<A){let D=Y[J++],z=Y[J++];try{K=D(K)}catch(U){z.call(this,U);break}}try{H=Pn.call(this,K)}catch(D){return Promise.reject(D)}J=0,A=X.length;while(J<A)H=H.then(X[J++],X[J++]);return H}getUri(I){I=fH(this.defaults,I);let Z=U$(I.baseURL,I.url);return q$(Z,I.params,I.paramsSerializer)}}s1.forEach(["delete","get","head","options"],function I(Z){Zy.prototype[Z]=function(G,W){return this.request(fH(W||{},{method:Z,url:G,data:(W||{}).data}))}});s1.forEach(["post","put","patch"],function I(Z){function G(W){return function B(V,Y,w){return this.request(fH(w||{},{method:Z,headers:W?{"Content-Type":"multipart/form-data"}:{},url:V,data:Y}))}}Zy.prototype[Z]=G(),Zy.prototype[Z+"Form"]=G(!0)});var Gy=Zy;class YB1{constructor(I){if(typeof I!=="function")throw new TypeError("executor must be a function.");let Z;this.promise=new Promise(function W(B){Z=B});let G=this;this.promise.then((W)=>{if(!G._listeners)return;let B=G._listeners.length;while(B-- >0)G._listeners[B](W);G._listeners=null}),this.promise.then=(W)=>{let B,V=new Promise((Y)=>{G.subscribe(Y),B=Y}).then(W);return V.cancel=function Y(){G.unsubscribe(B)},V},I(function W(B,V,Y){if(G.reason)return;G.reason=new qY(B,V,Y),Z(G.reason)})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(I){if(this.reason){I(this.reason);return}if(this._listeners)this._listeners.push(I);else this._listeners=[I]}unsubscribe(I){if(!this._listeners)return;let Z=this._listeners.indexOf(I);if(Z!==-1)this._listeners.splice(Z,1)}toAbortSignal(){let I=new AbortController,Z=(G)=>{I.abort(G)};return this.subscribe(Z),I.signal.unsubscribe=()=>this.unsubscribe(Z),I.signal}static source(){let I;return{token:new YB1(function G(W){I=W}),cancel:I}}}var vt1=YB1;function wB1(I){return function Z(G){return I.apply(null,G)}}function XB1(I){return s1.isObject(I)&&I.isAxiosError===!0}var HB1={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HB1).forEach(([I,Z])=>{HB1[Z]=I});var gt1=HB1;function Tt1(I){let Z=new Gy(I),G=uT(Gy.prototype.request,Z);return s1.extend(G,Gy.prototype,Z,{allOwnKeys:!0}),s1.extend(G,Z,null,{allOwnKeys:!0}),G.create=function W(B){return Tt1(fH(I,B))},G}var yI=Tt1(FP);yI.Axios=Gy;yI.CanceledError=qY;yI.CancelToken=vt1;yI.isCancel=nT;yI.VERSION=M$;yI.toFormData=PQ;yI.AxiosError=j2;yI.Cancel=yI.CanceledError;yI.all=function I(Z){return Promise.all(Z)};yI.spread=wB1;yI.isAxiosError=XB1;yI.mergeConfig=fH;yI.AxiosHeaders=e8;yI.formToJSON=(I)=>Dn(s1.isHTMLForm(I)?new FormData(I):I);yI.getAdapter=fn.getAdapter;yI.HttpStatusCode=gt1;yI.default=yI;var bI=yI;var Xa=J1(D00(),1);var vk4={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,Z)=>{}},gk4={document:vk4,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,Z)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof Z==="function")Z({});else Z.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},Tk4={sendBeacon:(I,Z)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window==="undefined")global.window=gk4;if(typeof navigator==="undefined")global.navigator=Tk4;import*as PH from"fs";import*as _y from"path";import{homedir as yk4}from"os";import{existsSync as bk4,unlinkSync as jk4}from"fs";var O$=_y.join(yk4(),".claude","statsig");try{PH.mkdirSync(O$,{recursive:!0})}catch(I){c1(I)}class iB1{cache=new Map;ready=!1;constructor(){try{if(!PH.existsSync(O$))PH.mkdirSync(O$,{recursive:!0});let I=PH.readdirSync(O$);for(let Z of I){let G=decodeURIComponent(Z),W=PH.readFileSync(_y.join(O$,Z),"utf8");this.cache.set(G,W)}this.ready=!0}catch(I){c1(I),this.ready=!0}}isReady(){return this.ready}isReadyResolver(){return this.ready?Promise.resolve():null}getProviderName(){return"FileSystemStorageProvider"}getItem(I){return this.cache.get(I)??null}setItem(I,Z){this.cache.set(I,Z);try{let G=encodeURIComponent(I);PH.writeFileSync(_y.join(O$,G),Z,"utf8")}catch(G){c1(G)}}removeItem(I){this.cache.delete(I);let Z=encodeURIComponent(I),G=_y.join(O$,Z);if(!bk4(G))return;try{jk4(G)}catch(W){c1(W)}}getAllKeys(){return Array.from(this.cache.keys())}}var C00="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504",F00="client-RRNS7R65EAtReO5XA4xDC3eU6ZdJQi6lLEP6b5j32Me";var Q00="tengu-token-efficient-tools",z00="token-efficient-tools-2025-02-19",q00="claude-code-20250219";var wa=O2(async()=>{let I=[q00];if(process.env.SWE_BENCH){if(await v$(Q00))I.push(z00)}return I});var y3=!!process.env.CLAUDE_CODE_USE_BEDROCK,a3=!!process.env.CLAUDE_CODE_USE_VERTEX,N00="claude-3-7-sonnet-20250219",U00={firstParty:N00,bedrock:"us.anthropic.claude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219"},mk4={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.claude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022"},$00=()=>y3?"bedrock":a3?"vertex":"firstParty",LH=process.env.ANTHROPIC_SMALL_FAST_MODEL||mk4[$00()];async function kk4(){try{return await BB("tengu-capable-model-config",U00)}catch(I){return c1(I),U00}}var JZ=O2(async()=>{if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return(await kk4())[$00()]});function R00(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET}var E00={},xP=null,uP=O2(async()=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return null;let I=await Ha(),Z={networkConfig:{api:"https://statsig.anthropic.com/v1/"},environment:{tier:["test","dev"].includes("production")?"dev":"production"},logLevel:Xa.LogLevel.None,storageProvider:new iB1};return xP=new Xa.StatsigClient(F00,I,Z),xP.on("error",()=>{bI.head("https://api.anthropic.com/api/hello").catch(()=>{})}),await xP.initializeAsync(),process.on("beforeExit",async()=>{await xP?.flush()}),process.on("exit",()=>{xP?.flush()}),xP});async function x1(I,Z){if(y3||a3||process.env.DISABLE_TELEMETRY)return;try{let[G,W,B,V,Y]=await Promise.all([uP(),wa(),Z.model?Promise.resolve(String(Z.model)):JZ(),z2.getPackageManagers(),z2.getRuntimes()]);if(!G)return;let w={...Z,model:B,sessionId:UY,userType:"external",...{},...W.length>0?{betas:W.join(",")}:{},env:JSON.stringify({platform:z2.platform,nodeVersion:z2.nodeVersion,terminal:z2.terminal,packageManagers:V.join(","),runtimes:Y.join(","),isRunningWithBun:z2.isRunningWithBun(),isCi:!1==="true",isGithubAction:process.env.GITHUB_ACTIONS==="true",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION})},X={eventName:I,metadata:w};G.logEvent(X),await G.flush()}catch(G){}}var v$=O2(async(I)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return!1;let Z=await uP();if(!Z)return!1;let G=Z.checkGate(I);return E00[I]=G,G});var g$=(I,Z)=>{let[G,W]=nB1.default.useState(Z);return nB1.default.useEffect(()=>{BB(I,Z).then(W)},[I,Z]),G};function M00(){return{...E00}}var XX3=O2(async(I,Z)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return Z;let G=await uP();if(!G)return Z;let W=G.getExperiment(I);if(Object.keys(W.value).length===0)return Z;return W.value}),BB=async(I,Z)=>{if(y3||a3||process.env.DISABLE_TELEMETRY)return Z;let G=await uP();if(!G)return Z;let W=G.getDynamicConfig(I);if(Object.keys(W.value).length===0)return Z;return W.value};import{readFileSync as g69,writeFileSync as T69,openSync as nw1,readSync as gG0,closeSync as aw1,existsSync as TG0,readdirSync as y69,opendirSync as b69,fsyncSync as j69}from"fs";import{isAbsolute as rw1,normalize as LG0,resolve as sw1,resolve as SG0,relative as yG0,sep as Ar,basename as dG0,dirname as m69,extname as OG0,join as k69}from"path";var i00=J1(m00(),1);var Dy=(I)=>{if(typeof I!=="string")throw new TypeError("invalid pattern");if(I.length>65536)throw new TypeError("pattern is too long")};var nk4={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Cy=(I)=>I.replace(/[[\]\\-]/g,"\\$&"),ak4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),k00=(I)=>I.join(""),x00=(I,Z)=>{let G=Z;if(I.charAt(G)!=="[")throw new Error("not in a brace expression");let W=[],B=[],V=G+1,Y=!1,w=!1,X=!1,H=!1,J=G,A="";I:while(V<I.length){let U=I.charAt(V);if((U==="!"||U==="^")&&V===G+1){H=!0,V++;continue}if(U==="]"&&Y&&!X){J=V+1;break}if(Y=!0,U==="\\"){if(!X){X=!0,V++;continue}}if(U==="["&&!X){for(let[N,[L,g,f]]of Object.entries(nk4))if(I.startsWith(N,V)){if(A)return["$.",!1,I.length-G,!0];if(V+=N.length,f)B.push(L);else W.push(L);w=w||g;continue I}}if(X=!1,A){if(U>A)W.push(Cy(A)+"-"+Cy(U));else if(U===A)W.push(Cy(U));A="",V++;continue}if(I.startsWith("-]",V+1)){W.push(Cy(U+"-")),V+=2;continue}if(I.startsWith("-",V+1)){A=U,V+=2;continue}W.push(Cy(U)),V++}if(J<V)return["",!1,0,!1];if(!W.length&&!B.length)return["$.",!1,I.length-G,!0];if(B.length===0&&W.length===1&&/^\\?.$/.test(W[0])&&!H){let U=W[0].length===2?W[0].slice(-1):W[0];return[ak4(U),!1,J-G,!1]}let K="["+(H?"^":"")+k00(W)+"]",D="["+(H?"":"^")+k00(B)+"]";return[W.length&&B.length?"("+K+"|"+D+")":W.length?K:D,w,J-G,!0]};var SH=(I,{windowsPathsNoEscape:Z=!1}={})=>{return Z?I.replace(/\[([^\/\\])\]/g,"$1"):I.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var rk4=new Set(["!","?","+","*","@"]),u00=(I)=>rk4.has(I),sk4="(?!(?:^|/)\\.\\.?(?:$|/))",Ja="(?!\\.)",ok4=new Set(["[","."]),tk4=new Set(["..","."]),ek4=new Set("().*{}+?[]^$\\!"),Ix4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sB1="[^/]",h00=sB1+"*?",p00=sB1+"+?";class NG{type;#I;#Z;#V=!1;#W=[];#Y;#U;#H;#A=!1;#w;#X;#B=!1;constructor(I,Z,G={}){if(this.type=I,I)this.#Z=!0;if(this.#Y=Z,this.#I=this.#Y?this.#Y.#I:this,this.#w=this.#I===this?G:this.#I.#w,this.#H=this.#I===this?[]:this.#I.#H,I==="!"&&!this.#I.#A)this.#H.push(this);this.#U=this.#Y?this.#Y.#W.length:0}get hasMagic(){if(this.#Z!==void 0)return this.#Z;for(let I of this.#W){if(typeof I==="string")continue;if(I.type||I.hasMagic)return this.#Z=!0}return this.#Z}toString(){if(this.#X!==void 0)return this.#X;if(!this.type)return this.#X=this.#W.map((I)=>String(I)).join("");else return this.#X=this.type+"("+this.#W.map((I)=>String(I)).join("|")+")"}#F(){if(this!==this.#I)throw new Error("should only call on root");if(this.#A)return this;this.toString(),this.#A=!0;let I;while(I=this.#H.pop()){if(I.type!=="!")continue;let Z=I,G=Z.#Y;while(G){for(let W=Z.#U+1;!G.type&&W<G.#W.length;W++)for(let B of I.#W){if(typeof B==="string")throw new Error("string part in extglob AST??");B.copyIn(G.#W[W])}Z=G,G=Z.#Y}}return this}push(...I){for(let Z of I){if(Z==="")continue;if(typeof Z!=="string"&&!(Z instanceof NG&&Z.#Y===this))throw new Error("invalid part: "+Z);this.#W.push(Z)}}toJSON(){let I=this.type===null?this.#W.slice().map((Z)=>typeof Z==="string"?Z:Z.toJSON()):[this.type,...this.#W.map((Z)=>Z.toJSON())];if(this.isStart()&&!this.type)I.unshift([]);if(this.isEnd()&&(this===this.#I||this.#I.#A&&this.#Y?.type==="!"))I.push({});return I}isStart(){if(this.#I===this)return!0;if(!this.#Y?.isStart())return!1;if(this.#U===0)return!0;let I=this.#Y;for(let Z=0;Z<this.#U;Z++){let G=I.#W[Z];if(!(G instanceof NG&&G.type==="!"))return!1}return!0}isEnd(){if(this.#I===this)return!0;if(this.#Y?.type==="!")return!0;if(!this.#Y?.isEnd())return!1;if(!this.type)return this.#Y?.isEnd();let I=this.#Y?this.#Y.#W.length:0;return this.#U===I-1}copyIn(I){if(typeof I==="string")this.push(I);else this.push(I.clone(this))}clone(I){let Z=new NG(this.type,I);for(let G of this.#W)Z.copyIn(G);return Z}static#Q(I,Z,G,W){let B=!1,V=!1,Y=-1,w=!1;if(Z.type===null){let K=G,D="";while(K<I.length){let z=I.charAt(K++);if(B||z==="\\"){B=!B,D+=z;continue}if(V){if(K===Y+1){if(z==="^"||z==="!")w=!0}else if(z==="]"&&!(K===Y+2&&w))V=!1;D+=z;continue}else if(z==="["){V=!0,Y=K,w=!1,D+=z;continue}if(!W.noext&&u00(z)&&I.charAt(K)==="("){Z.push(D),D="";let U=new NG(z,Z);K=NG.#Q(I,U,K,W),Z.push(U);continue}D+=z}return Z.push(D),K}let X=G+1,H=new NG(null,Z),J=[],A="";while(X<I.length){let K=I.charAt(X++);if(B||K==="\\"){B=!B,A+=K;continue}if(V){if(X===Y+1){if(K==="^"||K==="!")w=!0}else if(K==="]"&&!(X===Y+2&&w))V=!1;A+=K;continue}else if(K==="["){V=!0,Y=X,w=!1,A+=K;continue}if(u00(K)&&I.charAt(X)==="("){H.push(A),A="";let D=new NG(K,H);H.push(D),X=NG.#Q(I,D,X,W);continue}if(K==="|"){H.push(A),A="",J.push(H),H=new NG(null,Z);continue}if(K===")"){if(A===""&&Z.#W.length===0)Z.#B=!0;return H.push(A),A="",Z.push(...J,H),X}A+=K}return Z.type=null,Z.#Z=void 0,Z.#W=[I.substring(G-1)],X}static fromGlob(I,Z={}){let G=new NG(null,void 0,Z);return NG.#Q(I,G,0,Z),G}toMMPattern(){if(this!==this.#I)return this.#I.toMMPattern();let I=this.toString(),[Z,G,W,B]=this.toRegExpSource();if(!(W||this.#Z||this.#w.nocase&&!this.#w.nocaseMagicOnly&&I.toUpperCase()!==I.toLowerCase()))return G;let Y=(this.#w.nocase?"i":"")+(B?"u":"");return Object.assign(new RegExp(`^${Z}$`,Y),{_src:Z,_glob:I})}get options(){return this.#w}toRegExpSource(I){let Z=I??!!this.#w.dot;if(this.#I===this)this.#F();if(!this.type){let w=this.isStart()&&this.isEnd(),X=this.#W.map((K)=>{let[D,z,U,N]=typeof K==="string"?NG.#_(K,this.#Z,w):K.toRegExpSource(I);return this.#Z=this.#Z||U,this.#V=this.#V||N,D}).join(""),H="";if(this.isStart()){if(typeof this.#W[0]==="string"){if(!(this.#W.length===1&&tk4.has(this.#W[0]))){let D=ok4,z=Z&&D.has(X.charAt(0))||X.startsWith("\\.")&&D.has(X.charAt(2))||X.startsWith("\\.\\.")&&D.has(X.charAt(4)),U=!Z&&!I&&D.has(X.charAt(0));H=z?sk4:U?Ja:""}}}let J="";if(this.isEnd()&&this.#I.#A&&this.#Y?.type==="!")J="(?:$|\\/)";return[H+X+J,SH(X),this.#Z=!!this.#Z,this.#V]}let G=this.type==="*"||this.type==="+",W=this.type==="!"?"(?:(?!(?:":"(?:",B=this.#K(Z);if(this.isStart()&&this.isEnd()&&!B&&this.type!=="!"){let w=this.toString();return this.#W=[w],this.type=null,this.#Z=void 0,[w,SH(this.toString()),!1,!1]}let V=!G||I||Z||!Ja?"":this.#K(!0);if(V===B)V="";if(V)B=`(?:${B})(?:${V})*?`;let Y="";if(this.type==="!"&&this.#B)Y=(this.isStart()&&!Z?Ja:"")+p00;else{let w=this.type==="!"?"))"+(this.isStart()&&!Z&&!I?Ja:"")+h00+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&V?")":this.type==="*"&&V?")?":`)${this.type}`;Y=W+B+w}return[Y,SH(B),this.#Z=!!this.#Z,this.#V]}#K(I){return this.#W.map((Z)=>{if(typeof Z==="string")throw new Error("string type in extglob ast??");let[G,W,B,V]=Z.toRegExpSource(I);return this.#V=this.#V||V,G}).filter((Z)=>!(this.isStart()&&this.isEnd())||!!Z).join("|")}static#_(I,Z,G=!1){let W=!1,B="",V=!1;for(let Y=0;Y<I.length;Y++){let w=I.charAt(Y);if(W){W=!1,B+=(ek4.has(w)?"\\":"")+w;continue}if(w==="\\"){if(Y===I.length-1)B+="\\\\";else W=!0;continue}if(w==="["){let[X,H,J,A]=x00(I,Y);if(J){B+=X,V=V||H,Y+=J-1,Z=Z||A;continue}}if(w==="*"){if(G&&I==="*")B+=p00;else B+=h00;Z=!0;continue}if(w==="?"){B+=sB1,Z=!0;continue}B+=Ix4(w)}return[B,SH(I),!!Z,V]}}var hP=(I,{windowsPathsNoEscape:Z=!1}={})=>{return Z?I.replace(/[?*()[\]]/g,"[$&]"):I.replace(/[?*()[\]\\]/g,"\\$&")};var VB=(I,Z,G={})=>{if(Dy(Z),!G.nocomment&&Z.charAt(0)==="#")return!1;return new rw(Z,G).match(I)},Zx4=/^\*+([^+@!?\*\[\(]*)$/,Gx4=(I)=>(Z)=>!Z.startsWith(".")&&Z.endsWith(I),Wx4=(I)=>(Z)=>Z.endsWith(I),Bx4=(I)=>{return I=I.toLowerCase(),(Z)=>!Z.startsWith(".")&&Z.toLowerCase().endsWith(I)},Vx4=(I)=>{return I=I.toLowerCase(),(Z)=>Z.toLowerCase().endsWith(I)},Yx4=/^\*+\.\*+$/,wx4=(I)=>!I.startsWith(".")&&I.includes("."),Xx4=(I)=>I!=="."&&I!==".."&&I.includes("."),Hx4=/^\.\*+$/,Jx4=(I)=>I!=="."&&I!==".."&&I.startsWith("."),Ax4=/^\*+$/,_x4=(I)=>I.length!==0&&!I.startsWith("."),Kx4=(I)=>I.length!==0&&I!=="."&&I!=="..",Dx4=/^\?+([^+@!?\*\[\(]*)?$/,Cx4=([I,Z=""])=>{let G=n00([I]);if(!Z)return G;return Z=Z.toLowerCase(),(W)=>G(W)&&W.toLowerCase().endsWith(Z)},Fx4=([I,Z=""])=>{let G=a00([I]);if(!Z)return G;return Z=Z.toLowerCase(),(W)=>G(W)&&W.toLowerCase().endsWith(Z)},Qx4=([I,Z=""])=>{let G=a00([I]);return!Z?G:(W)=>G(W)&&W.endsWith(Z)},zx4=([I,Z=""])=>{let G=n00([I]);return!Z?G:(W)=>G(W)&&W.endsWith(Z)},n00=([I])=>{let Z=I.length;return(G)=>G.length===Z&&!G.startsWith(".")},a00=([I])=>{let Z=I.length;return(G)=>G.length===Z&&G!=="."&&G!==".."},r00=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",l00={win32:{sep:"\\"},posix:{sep:"/"}},qx4=r00==="win32"?l00.win32.sep:l00.posix.sep;VB.sep=qx4;var $G=Symbol("globstar **");VB.GLOBSTAR=$G;var Ux4="[^/]",Nx4=Ux4+"*?",$x4="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Rx4="(?:(?!(?:\\/|^)\\.).)*?",Ex4=(I,Z={})=>(G)=>VB(G,I,Z);VB.filter=Ex4;var aw=(I,Z={})=>Object.assign({},I,Z),Mx4=(I)=>{if(!I||typeof I!=="object"||!Object.keys(I).length)return VB;let Z=VB;return Object.assign((W,B,V={})=>Z(W,B,aw(I,V)),{Minimatch:class W extends Z.Minimatch{constructor(B,V={}){super(B,aw(I,V))}static defaults(B){return Z.defaults(aw(I,B)).Minimatch}},AST:class W extends Z.AST{constructor(B,V,Y={}){super(B,V,aw(I,Y))}static fromGlob(B,V={}){return Z.AST.fromGlob(B,aw(I,V))}},unescape:(W,B={})=>Z.unescape(W,aw(I,B)),escape:(W,B={})=>Z.escape(W,aw(I,B)),filter:(W,B={})=>Z.filter(W,aw(I,B)),defaults:(W)=>Z.defaults(aw(I,W)),makeRe:(W,B={})=>Z.makeRe(W,aw(I,B)),braceExpand:(W,B={})=>Z.braceExpand(W,aw(I,B)),match:(W,B,V={})=>Z.match(W,B,aw(I,V)),sep:Z.sep,GLOBSTAR:$G})};VB.defaults=Mx4;var s00=(I,Z={})=>{if(Dy(I),Z.nobrace||!/\{(?:(?!\{).)*\}/.test(I))return[I];return i00.default(I)};VB.braceExpand=s00;var fx4=(I,Z={})=>new rw(I,Z).makeRe();VB.makeRe=fx4;var Px4=(I,Z,G={})=>{let W=new rw(Z,G);if(I=I.filter((B)=>W.match(B)),W.options.nonull&&!I.length)I.push(Z);return I};VB.match=Px4;var c00=/[?*]|[+@!]\(.*?\)|\[|\]/,Lx4=(I)=>I.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class rw{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(I,Z={}){if(Dy(I),Z=Z||{},this.options=Z,this.pattern=I,this.platform=Z.platform||r00,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Z.windowsPathsNoEscape||Z.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Z.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Z.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Z.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Z.windowsNoMagicRoot!==void 0?Z.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let I of this.set)for(let Z of I)if(typeof Z!=="string")return!0;return!1}debug(...I){}make(){let I=this.pattern,Z=this.options;if(!Z.nocomment&&I.charAt(0)==="#"){this.comment=!0;return}if(!I){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Z.debug)this.debug=(...B)=>console.error(...B);this.debug(this.pattern,this.globSet);let G=this.globSet.map((B)=>this.slashSplit(B));this.globParts=this.preprocess(G),this.debug(this.pattern,this.globParts);let W=this.globParts.map((B,V,Y)=>{if(this.isWindows&&this.windowsNoMagicRoot){let w=B[0]===""&&B[1]===""&&(B[2]==="?"||!c00.test(B[2]))&&!c00.test(B[3]),X=/^[a-z]:/i.test(B[0]);if(w)return[...B.slice(0,4),...B.slice(4).map((H)=>this.parse(H))];else if(X)return[B[0],...B.slice(1).map((H)=>this.parse(H))]}return B.map((w)=>this.parse(w))});if(this.debug(this.pattern,W),this.set=W.filter((B)=>B.indexOf(!1)===-1),this.isWindows)for(let B=0;B<this.set.length;B++){let V=this.set[B];if(V[0]===""&&V[1]===""&&this.globParts[B][2]==="?"&&typeof V[3]==="string"&&/^[a-z]:$/i.test(V[3]))V[2]="?"}this.debug(this.pattern,this.set)}preprocess(I){if(this.options.noglobstar){for(let G=0;G<I.length;G++)for(let W=0;W<I[G].length;W++)if(I[G][W]==="**")I[G][W]="*"}let{optimizationLevel:Z=1}=this.options;if(Z>=2)I=this.firstPhasePreProcess(I),I=this.secondPhasePreProcess(I);else if(Z>=1)I=this.levelOneOptimize(I);else I=this.adjascentGlobstarOptimize(I);return I}adjascentGlobstarOptimize(I){return I.map((Z)=>{let G=-1;while((G=Z.indexOf("**",G+1))!==-1){let W=G;while(Z[W+1]==="**")W++;if(W!==G)Z.splice(G,W-G)}return Z})}levelOneOptimize(I){return I.map((Z)=>{return Z=Z.reduce((G,W)=>{let B=G[G.length-1];if(W==="**"&&B==="**")return G;if(W===".."){if(B&&B!==".."&&B!=="."&&B!=="**")return G.pop(),G}return G.push(W),G},[]),Z.length===0?[""]:Z})}levelTwoFileOptimize(I){if(!Array.isArray(I))I=this.slashSplit(I);let Z=!1;do{if(Z=!1,!this.preserveMultipleSlashes){for(let W=1;W<I.length-1;W++){let B=I[W];if(W===1&&B===""&&I[0]==="")continue;if(B==="."||B==="")Z=!0,I.splice(W,1),W--}if(I[0]==="."&&I.length===2&&(I[1]==="."||I[1]===""))Z=!0,I.pop()}let G=0;while((G=I.indexOf("..",G+1))!==-1){let W=I[G-1];if(W&&W!=="."&&W!==".."&&W!=="**")Z=!0,I.splice(G-1,2),G-=2}}while(Z);return I.length===0?[""]:I}firstPhasePreProcess(I){let Z=!1;do{Z=!1;for(let G of I){let W=-1;while((W=G.indexOf("**",W+1))!==-1){let V=W;while(G[V+1]==="**")V++;if(V>W)G.splice(W+1,V-W);let Y=G[W+1],w=G[W+2],X=G[W+3];if(Y!=="..")continue;if(!w||w==="."||w===".."||!X||X==="."||X==="..")continue;Z=!0,G.splice(W,1);let H=G.slice(0);H[W]="**",I.push(H),W--}if(!this.preserveMultipleSlashes){for(let V=1;V<G.length-1;V++){let Y=G[V];if(V===1&&Y===""&&G[0]==="")continue;if(Y==="."||Y==="")Z=!0,G.splice(V,1),V--}if(G[0]==="."&&G.length===2&&(G[1]==="."||G[1]===""))Z=!0,G.pop()}let B=0;while((B=G.indexOf("..",B+1))!==-1){let V=G[B-1];if(V&&V!=="."&&V!==".."&&V!=="**"){Z=!0;let w=B===1&&G[B+1]==="**"?["."]:[];if(G.splice(B-1,2,...w),G.length===0)G.push("");B-=2}}}}while(Z);return I}secondPhasePreProcess(I){for(let Z=0;Z<I.length-1;Z++)for(let G=Z+1;G<I.length;G++){let W=this.partsMatch(I[Z],I[G],!this.preserveMultipleSlashes);if(W){I[Z]=[],I[G]=W;break}}return I.filter((Z)=>Z.length)}partsMatch(I,Z,G=!1){let W=0,B=0,V=[],Y="";while(W<I.length&&B<Z.length)if(I[W]===Z[B])V.push(Y==="b"?Z[B]:I[W]),W++,B++;else if(G&&I[W]==="**"&&Z[B]===I[W+1])V.push(I[W]),W++;else if(G&&Z[B]==="**"&&I[W]===Z[B+1])V.push(Z[B]),B++;else if(I[W]==="*"&&Z[B]&&(this.options.dot||!Z[B].startsWith("."))&&Z[B]!=="**"){if(Y==="b")return!1;Y="a",V.push(I[W]),W++,B++}else if(Z[B]==="*"&&I[W]&&(this.options.dot||!I[W].startsWith("."))&&I[W]!=="**"){if(Y==="a")return!1;Y="b",V.push(Z[B]),W++,B++}else return!1;return I.length===Z.length&&V}parseNegate(){if(this.nonegate)return;let I=this.pattern,Z=!1,G=0;for(let W=0;W<I.length&&I.charAt(W)==="!";W++)Z=!Z,G++;if(G)this.pattern=I.slice(G);this.negate=Z}matchOne(I,Z,G=!1){let W=this.options;if(this.isWindows){let z=typeof I[0]==="string"&&/^[a-z]:$/i.test(I[0]),U=!z&&I[0]===""&&I[1]===""&&I[2]==="?"&&/^[a-z]:$/i.test(I[3]),N=typeof Z[0]==="string"&&/^[a-z]:$/i.test(Z[0]),L=!N&&Z[0]===""&&Z[1]===""&&Z[2]==="?"&&typeof Z[3]==="string"&&/^[a-z]:$/i.test(Z[3]),g=U?3:z?0:void 0,f=L?3:N?0:void 0;if(typeof g==="number"&&typeof f==="number"){let[P,M]=[I[g],Z[f]];if(P.toLowerCase()===M.toLowerCase()){if(Z[f]=P,f>g)Z=Z.slice(f);else if(g>f)I=I.slice(g)}}}let{optimizationLevel:B=1}=this.options;if(B>=2)I=this.levelTwoFileOptimize(I);this.debug("matchOne",this,{file:I,pattern:Z}),this.debug("matchOne",I.length,Z.length);for(var V=0,Y=0,w=I.length,X=Z.length;V<w&&Y<X;V++,Y++){this.debug("matchOne loop");var H=Z[Y],J=I[V];if(this.debug(Z,H,J),H===!1)return!1;if(H===$G){this.debug("GLOBSTAR",[Z,H,J]);var A=V,K=Y+1;if(K===X){this.debug("** at the end");for(;V<w;V++)if(I[V]==="."||I[V]===".."||!W.dot&&I[V].charAt(0)===".")return!1;return!0}while(A<w){var D=I[A];if(this.debug(`
|
|
444
444
|
globstar while`,I,A,Z,K,D),this.matchOne(I.slice(A),Z.slice(K),G))return this.debug("globstar found match!",A,w,D),!0;else{if(D==="."||D===".."||!W.dot&&D.charAt(0)==="."){this.debug("dot detected!",I,A,Z,K);break}this.debug("globstar swallow a segment, and continue"),A++}}if(G){if(this.debug(`
|
|
445
445
|
>>> no match, partial?`,I,A,Z,K),A===w)return!0}return!1}let z;if(typeof H==="string")z=J===H,this.debug("string match",H,J,z);else z=H.test(J),this.debug("pattern match",H,J,z);if(!z)return!1}if(V===w&&Y===X)return!0;else if(V===w)return G;else if(Y===X)return V===w-1&&I[V]==="";else throw new Error("wtf?")}braceExpand(){return s00(this.pattern,this.options)}parse(I){Dy(I);let Z=this.options;if(I==="**")return $G;if(I==="")return"";let G,W=null;if(G=I.match(Ax4))W=Z.dot?Kx4:_x4;else if(G=I.match(Zx4))W=(Z.nocase?Z.dot?Vx4:Bx4:Z.dot?Wx4:Gx4)(G[1]);else if(G=I.match(Dx4))W=(Z.nocase?Z.dot?Fx4:Cx4:Z.dot?Qx4:zx4)(G);else if(G=I.match(Yx4))W=Z.dot?Xx4:wx4;else if(G=I.match(Hx4))W=Jx4;let B=NG.fromGlob(I,this.options).toMMPattern();if(W&&typeof B==="object")Reflect.defineProperty(B,"test",{value:W});return B}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let I=this.set;if(!I.length)return this.regexp=!1,this.regexp;let Z=this.options,G=Z.noglobstar?Nx4:Z.dot?$x4:Rx4,W=new Set(Z.nocase?["i"]:[]),B=I.map((w)=>{let X=w.map((H)=>{if(H instanceof RegExp)for(let J of H.flags.split(""))W.add(J);return typeof H==="string"?Lx4(H):H===$G?$G:H._src});return X.forEach((H,J)=>{let A=X[J+1],K=X[J-1];if(H!==$G||K===$G)return;if(K===void 0)if(A!==void 0&&A!==$G)X[J+1]="(?:\\/|"+G+"\\/)?"+A;else X[J]=G;else if(A===void 0)X[J-1]=K+"(?:\\/|"+G+")?";else if(A!==$G)X[J-1]=K+"(?:\\/|\\/"+G+"\\/)"+A,X[J+1]=$G}),X.filter((H)=>H!==$G).join("/")}).join("|"),[V,Y]=I.length>1?["(?:",")"]:["",""];if(B="^"+V+B+Y+"$",this.negate)B="^(?!"+B+").+$";try{this.regexp=new RegExp(B,[...W].join(""))}catch(w){this.regexp=!1}return this.regexp}slashSplit(I){if(this.preserveMultipleSlashes)return I.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(I))return["",...I.split(/\/+/)];else return I.split(/\/+/)}match(I,Z=this.partial){if(this.debug("match",I,this.pattern),this.comment)return!1;if(this.empty)return I==="";if(I==="/"&&Z)return!0;let G=this.options;if(this.isWindows)I=I.split("\\").join("/");let W=this.slashSplit(I);this.debug(this.pattern,"split",W);let B=this.set;this.debug(this.pattern,"set",B);let V=W[W.length-1];if(!V)for(let Y=W.length-2;!V&&Y>=0;Y--)V=W[Y];for(let Y=0;Y<B.length;Y++){let w=B[Y],X=W;if(G.matchBase&&w.length===1)X=[V];if(this.matchOne(X,w,Z)){if(G.flipNegate)return!0;return!this.negate}}if(G.flipNegate)return!1;return this.negate}static defaults(I){return VB.defaults(I).Minimatch}}VB.AST=NG;VB.Minimatch=rw;VB.escape=hP;VB.unescape=SH;import{fileURLToPath as Yu4}from"node:url";var pP=typeof performance==="object"&&performance&&typeof performance.now==="function"?performance:Date,t00=new Set,oB1=typeof process==="object"&&!!process?process:{},e00=(I,Z,G,W)=>{typeof oB1.emitWarning==="function"?oB1.emitWarning(I,Z,G,W):console.error(`[${G}] ${Z}: ${I}`)},Aa=globalThis.AbortController,o00=globalThis.AbortSignal;if(typeof Aa==="undefined"){o00=class G{onabort;_onabort=[];reason;aborted=!1;addEventListener(W,B){this._onabort.push(B)}},Aa=class G{constructor(){Z()}signal=new o00;abort(W){if(this.signal.aborted)return;this.signal.reason=W,this.signal.aborted=!0;for(let B of this.signal._onabort)B(W);this.signal.onabort?.(W)}};let I=oB1.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Z=()=>{if(!I)return;I=!1,e00("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Z)}}var Sx4=(I)=>!t00.has(I),PX3=Symbol("type"),bQ=(I)=>I&&I===Math.floor(I)&&I>0&&isFinite(I),I20=(I)=>!bQ(I)?null:I<=Math.pow(2,8)?Uint8Array:I<=Math.pow(2,16)?Uint16Array:I<=Math.pow(2,32)?Uint32Array:I<=Number.MAX_SAFE_INTEGER?Fy:null;class Fy extends Array{constructor(I){super(I);this.fill(0)}}class lP{heap;length;static#I=!1;static create(I){let Z=I20(I);if(!Z)return[];lP.#I=!0;let G=new lP(I,Z);return lP.#I=!1,G}constructor(I,Z){if(!lP.#I)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new Z(I),this.length=0}push(I){this.heap[this.length++]=I}pop(){return this.heap[--this.length]}}class Qy{#I;#Z;#V;#W;#Y;#U;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#H;#A;#w;#X;#B;#F;#Q;#K;#_;#R;#C;#E;#M;#q;#N;#$;#D;static unsafeExposeInternals(I){return{starts:I.#M,ttls:I.#q,sizes:I.#E,keyMap:I.#w,keyList:I.#X,valList:I.#B,next:I.#F,prev:I.#Q,get head(){return I.#K},get tail(){return I.#_},free:I.#R,isBackgroundFetch:(Z)=>I.#J(Z),backgroundFetch:(Z,G,W,B)=>I.#m(Z,G,W,B),moveToTail:(Z)=>I.#x(Z),indexes:(Z)=>I.#P(Z),rindexes:(Z)=>I.#L(Z),isStale:(Z)=>I.#z(Z)}}get max(){return this.#I}get maxSize(){return this.#Z}get calculatedSize(){return this.#A}get size(){return this.#H}get fetchMethod(){return this.#Y}get memoMethod(){return this.#U}get dispose(){return this.#V}get disposeAfter(){return this.#W}constructor(I){let{max:Z=0,ttl:G,ttlResolution:W=1,ttlAutopurge:B,updateAgeOnGet:V,updateAgeOnHas:Y,allowStale:w,dispose:X,disposeAfter:H,noDisposeOnSet:J,noUpdateTTL:A,maxSize:K=0,maxEntrySize:D=0,sizeCalculation:z,fetchMethod:U,memoMethod:N,noDeleteOnFetchRejection:L,noDeleteOnStaleGet:g,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:P,ignoreFetchAbort:M}=I;if(Z!==0&&!bQ(Z))throw new TypeError("max option must be a nonnegative integer");let d=Z?I20(Z):Array;if(!d)throw new Error("invalid max value: "+Z);if(this.#I=Z,this.#Z=K,this.maxEntrySize=D||this.#Z,this.sizeCalculation=z,this.sizeCalculation){if(!this.#Z&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw new TypeError("sizeCalculation set to non-function")}if(N!==void 0&&typeof N!=="function")throw new TypeError("memoMethod must be a function if defined");if(this.#U=N,U!==void 0&&typeof U!=="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#Y=U,this.#$=!!U,this.#w=new Map,this.#X=new Array(Z).fill(void 0),this.#B=new Array(Z).fill(void 0),this.#F=new d(Z),this.#Q=new d(Z),this.#K=0,this.#_=0,this.#R=lP.create(Z),this.#H=0,this.#A=0,typeof X==="function")this.#V=X;if(typeof H==="function")this.#W=H,this.#C=[];else this.#W=void 0,this.#C=void 0;if(this.#N=!!this.#V,this.#D=!!this.#W,this.noDisposeOnSet=!!J,this.noUpdateTTL=!!A,this.noDeleteOnFetchRejection=!!L,this.allowStaleOnFetchRejection=!!f,this.allowStaleOnFetchAbort=!!P,this.ignoreFetchAbort=!!M,this.maxEntrySize!==0){if(this.#Z!==0){if(!bQ(this.#Z))throw new TypeError("maxSize must be a positive integer if specified")}if(!bQ(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#d()}if(this.allowStale=!!w,this.noDeleteOnStaleGet=!!g,this.updateAgeOnGet=!!V,this.updateAgeOnHas=!!Y,this.ttlResolution=bQ(W)||W===0?W:1,this.ttlAutopurge=!!B,this.ttl=G||0,this.ttl){if(!bQ(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#S()}if(this.#I===0&&this.ttl===0&&this.#Z===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#I&&!this.#Z){if(Sx4("LRU_CACHE_UNBOUNDED"))t00.add("LRU_CACHE_UNBOUNDED"),e00("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",Qy)}}getRemainingTTL(I){return this.#w.has(I)?1/0:0}#S(){let I=new Fy(this.#I),Z=new Fy(this.#I);this.#q=I,this.#M=Z,this.#v=(B,V,Y=pP.now())=>{if(Z[B]=V!==0?Y:0,I[B]=V,V!==0&&this.ttlAutopurge){let w=setTimeout(()=>{if(this.#z(B))this.#O(this.#X[B],"expire")},V+1);if(w.unref)w.unref()}},this.#f=(B)=>{Z[B]=I[B]!==0?pP.now():0},this.#G=(B,V)=>{if(I[V]){let Y=I[V],w=Z[V];if(!Y||!w)return;B.ttl=Y,B.start=w,B.now=G||W();let X=B.now-w;B.remainingTTL=Y-X}};let G=0,W=()=>{let B=pP.now();if(this.ttlResolution>0){G=B;let V=setTimeout(()=>G=0,this.ttlResolution);if(V.unref)V.unref()}return B};this.getRemainingTTL=(B)=>{let V=this.#w.get(B);if(V===void 0)return 0;let Y=I[V],w=Z[V];if(!Y||!w)return 1/0;let X=(G||W())-w;return Y-X},this.#z=(B)=>{let V=Z[B],Y=I[B];return!!Y&&!!V&&(G||W())-V>Y}}#f=()=>{};#G=()=>{};#v=()=>{};#z=()=>!1;#d(){let I=new Fy(this.#I);this.#A=0,this.#E=I,this.#g=(Z)=>{this.#A-=I[Z],I[Z]=0},this.#y=(Z,G,W,B)=>{if(this.#J(G))return 0;if(!bQ(W))if(B){if(typeof B!=="function")throw new TypeError("sizeCalculation must be a function");if(W=B(G,Z),!bQ(W))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return W},this.#T=(Z,G,W)=>{if(I[Z]=G,this.#Z){let B=this.#Z-I[Z];while(this.#A>B)this.#j(!0)}if(this.#A+=I[Z],W)W.entrySize=G,W.totalCalculatedSize=this.#A}}#g=(I)=>{};#T=(I,Z,G)=>{};#y=(I,Z,G,W)=>{if(G||W)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#P({allowStale:I=this.allowStale}={}){if(this.#H)for(let Z=this.#_;;){if(!this.#b(Z))break;if(I||!this.#z(Z))yield Z;if(Z===this.#K)break;else Z=this.#Q[Z]}}*#L({allowStale:I=this.allowStale}={}){if(this.#H)for(let Z=this.#K;;){if(!this.#b(Z))break;if(I||!this.#z(Z))yield Z;if(Z===this.#_)break;else Z=this.#F[Z]}}#b(I){return I!==void 0&&this.#w.get(this.#X[I])===I}*entries(){for(let I of this.#P())if(this.#B[I]!==void 0&&this.#X[I]!==void 0&&!this.#J(this.#B[I]))yield[this.#X[I],this.#B[I]]}*rentries(){for(let I of this.#L())if(this.#B[I]!==void 0&&this.#X[I]!==void 0&&!this.#J(this.#B[I]))yield[this.#X[I],this.#B[I]]}*keys(){for(let I of this.#P()){let Z=this.#X[I];if(Z!==void 0&&!this.#J(this.#B[I]))yield Z}}*rkeys(){for(let I of this.#L()){let Z=this.#X[I];if(Z!==void 0&&!this.#J(this.#B[I]))yield Z}}*values(){for(let I of this.#P())if(this.#B[I]!==void 0&&!this.#J(this.#B[I]))yield this.#B[I]}*rvalues(){for(let I of this.#L())if(this.#B[I]!==void 0&&!this.#J(this.#B[I]))yield this.#B[I]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(I,Z={}){for(let G of this.#P()){let W=this.#B[G],B=this.#J(W)?W.__staleWhileFetching:W;if(B===void 0)continue;if(I(B,this.#X[G],this))return this.get(this.#X[G],Z)}}forEach(I,Z=this){for(let G of this.#P()){let W=this.#B[G],B=this.#J(W)?W.__staleWhileFetching:W;if(B===void 0)continue;I.call(Z,B,this.#X[G],this)}}rforEach(I,Z=this){for(let G of this.#L()){let W=this.#B[G],B=this.#J(W)?W.__staleWhileFetching:W;if(B===void 0)continue;I.call(Z,B,this.#X[G],this)}}purgeStale(){let I=!1;for(let Z of this.#L({allowStale:!0}))if(this.#z(Z))this.#O(this.#X[Z],"expire"),I=!0;return I}info(I){let Z=this.#w.get(I);if(Z===void 0)return;let G=this.#B[Z],W=this.#J(G)?G.__staleWhileFetching:G;if(W===void 0)return;let B={value:W};if(this.#q&&this.#M){let V=this.#q[Z],Y=this.#M[Z];if(V&&Y){let w=V-(pP.now()-Y);B.ttl=w,B.start=Date.now()}}if(this.#E)B.size=this.#E[Z];return B}dump(){let I=[];for(let Z of this.#P({allowStale:!0})){let G=this.#X[Z],W=this.#B[Z],B=this.#J(W)?W.__staleWhileFetching:W;if(B===void 0||G===void 0)continue;let V={value:B};if(this.#q&&this.#M){V.ttl=this.#q[Z];let Y=pP.now()-this.#M[Z];V.start=Math.floor(Date.now()-Y)}if(this.#E)V.size=this.#E[Z];I.unshift([G,V])}return I}load(I){this.clear();for(let[Z,G]of I){if(G.start){let W=Date.now()-G.start;G.start=pP.now()-W}this.set(Z,G.value,G)}}set(I,Z,G={}){if(Z===void 0)return this.delete(I),this;let{ttl:W=this.ttl,start:B,noDisposeOnSet:V=this.noDisposeOnSet,sizeCalculation:Y=this.sizeCalculation,status:w}=G,{noUpdateTTL:X=this.noUpdateTTL}=G,H=this.#y(I,Z,G.size||0,Y);if(this.maxEntrySize&&H>this.maxEntrySize){if(w)w.set="miss",w.maxEntrySizeExceeded=!0;return this.#O(I,"set"),this}let J=this.#H===0?void 0:this.#w.get(I);if(J===void 0){if(J=this.#H===0?this.#_:this.#R.length!==0?this.#R.pop():this.#H===this.#I?this.#j(!1):this.#H,this.#X[J]=I,this.#B[J]=Z,this.#w.set(I,J),this.#F[this.#_]=J,this.#Q[J]=this.#_,this.#_=J,this.#H++,this.#T(J,H,w),w)w.set="add";X=!1}else{this.#x(J);let A=this.#B[J];if(Z!==A){if(this.#$&&this.#J(A)){A.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:K}=A;if(K!==void 0&&!V){if(this.#N)this.#V?.(K,I,"set");if(this.#D)this.#C?.push([K,I,"set"])}}else if(!V){if(this.#N)this.#V?.(A,I,"set");if(this.#D)this.#C?.push([A,I,"set"])}if(this.#g(J),this.#T(J,H,w),this.#B[J]=Z,w){w.set="replace";let K=A&&this.#J(A)?A.__staleWhileFetching:A;if(K!==void 0)w.oldValue=K}}else if(w)w.set="update"}if(W!==0&&!this.#q)this.#S();if(this.#q){if(!X)this.#v(J,W,B);if(w)this.#G(w,J)}if(!V&&this.#D&&this.#C){let A=this.#C,K;while(K=A?.shift())this.#W?.(...K)}return this}pop(){try{while(this.#H){let I=this.#B[this.#K];if(this.#j(!0),this.#J(I)){if(I.__staleWhileFetching)return I.__staleWhileFetching}else if(I!==void 0)return I}}finally{if(this.#D&&this.#C){let I=this.#C,Z;while(Z=I?.shift())this.#W?.(...Z)}}}#j(I){let Z=this.#K,G=this.#X[Z],W=this.#B[Z];if(this.#$&&this.#J(W))W.__abortController.abort(new Error("evicted"));else if(this.#N||this.#D){if(this.#N)this.#V?.(W,G,"evict");if(this.#D)this.#C?.push([W,G,"evict"])}if(this.#g(Z),I)this.#X[Z]=void 0,this.#B[Z]=void 0,this.#R.push(Z);if(this.#H===1)this.#K=this.#_=0,this.#R.length=0;else this.#K=this.#F[Z];return this.#w.delete(G),this.#H--,Z}has(I,Z={}){let{updateAgeOnHas:G=this.updateAgeOnHas,status:W}=Z,B=this.#w.get(I);if(B!==void 0){let V=this.#B[B];if(this.#J(V)&&V.__staleWhileFetching===void 0)return!1;if(!this.#z(B)){if(G)this.#f(B);if(W)W.has="hit",this.#G(W,B);return!0}else if(W)W.has="stale",this.#G(W,B)}else if(W)W.has="miss";return!1}peek(I,Z={}){let{allowStale:G=this.allowStale}=Z,W=this.#w.get(I);if(W===void 0||!G&&this.#z(W))return;let B=this.#B[W];return this.#J(B)?B.__staleWhileFetching:B}#m(I,Z,G,W){let B=Z===void 0?void 0:this.#B[Z];if(this.#J(B))return B;let V=new Aa,{signal:Y}=G;Y?.addEventListener("abort",()=>V.abort(Y.reason),{signal:V.signal});let w={signal:V.signal,options:G,context:W},X=(z,U=!1)=>{let{aborted:N}=V.signal,L=G.ignoreFetchAbort&&z!==void 0;if(G.status)if(N&&!U){if(G.status.fetchAborted=!0,G.status.fetchError=V.signal.reason,L)G.status.fetchAbortIgnored=!0}else G.status.fetchResolved=!0;if(N&&!L&&!U)return J(V.signal.reason);let g=K;if(this.#B[Z]===K)if(z===void 0)if(g.__staleWhileFetching)this.#B[Z]=g.__staleWhileFetching;else this.#O(I,"fetch");else{if(G.status)G.status.fetchUpdated=!0;this.set(I,z,w.options)}return z},H=(z)=>{if(G.status)G.status.fetchRejected=!0,G.status.fetchError=z;return J(z)},J=(z)=>{let{aborted:U}=V.signal,N=U&&G.allowStaleOnFetchAbort,L=N||G.allowStaleOnFetchRejection,g=L||G.noDeleteOnFetchRejection,f=K;if(this.#B[Z]===K){if(!g||f.__staleWhileFetching===void 0)this.#O(I,"fetch");else if(!N)this.#B[Z]=f.__staleWhileFetching}if(L){if(G.status&&f.__staleWhileFetching!==void 0)G.status.returnedStale=!0;return f.__staleWhileFetching}else if(f.__returned===f)throw z},A=(z,U)=>{let N=this.#Y?.(I,B,w);if(N&&N instanceof Promise)N.then((L)=>z(L===void 0?void 0:L),U);V.signal.addEventListener("abort",()=>{if(!G.ignoreFetchAbort||G.allowStaleOnFetchAbort){if(z(void 0),G.allowStaleOnFetchAbort)z=(L)=>X(L,!0)}})};if(G.status)G.status.fetchDispatched=!0;let K=new Promise(A).then(X,H),D=Object.assign(K,{__abortController:V,__staleWhileFetching:B,__returned:void 0});if(Z===void 0)this.set(I,D,{...w.options,status:void 0}),Z=this.#w.get(I);else this.#B[Z]=D;return D}#J(I){if(!this.#$)return!1;let Z=I;return!!Z&&Z instanceof Promise&&Z.hasOwnProperty("__staleWhileFetching")&&Z.__abortController instanceof Aa}async fetch(I,Z={}){let{allowStale:G=this.allowStale,updateAgeOnGet:W=this.updateAgeOnGet,noDeleteOnStaleGet:B=this.noDeleteOnStaleGet,ttl:V=this.ttl,noDisposeOnSet:Y=this.noDisposeOnSet,size:w=0,sizeCalculation:X=this.sizeCalculation,noUpdateTTL:H=this.noUpdateTTL,noDeleteOnFetchRejection:J=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:A=this.allowStaleOnFetchRejection,ignoreFetchAbort:K=this.ignoreFetchAbort,allowStaleOnFetchAbort:D=this.allowStaleOnFetchAbort,context:z,forceRefresh:U=!1,status:N,signal:L}=Z;if(!this.#$){if(N)N.fetch="get";return this.get(I,{allowStale:G,updateAgeOnGet:W,noDeleteOnStaleGet:B,status:N})}let g={allowStale:G,updateAgeOnGet:W,noDeleteOnStaleGet:B,ttl:V,noDisposeOnSet:Y,size:w,sizeCalculation:X,noUpdateTTL:H,noDeleteOnFetchRejection:J,allowStaleOnFetchRejection:A,allowStaleOnFetchAbort:D,ignoreFetchAbort:K,status:N,signal:L},f=this.#w.get(I);if(f===void 0){if(N)N.fetch="miss";let P=this.#m(I,f,g,z);return P.__returned=P}else{let P=this.#B[f];if(this.#J(P)){let m=G&&P.__staleWhileFetching!==void 0;if(N){if(N.fetch="inflight",m)N.returnedStale=!0}return m?P.__staleWhileFetching:P.__returned=P}let M=this.#z(f);if(!U&&!M){if(N)N.fetch="hit";if(this.#x(f),W)this.#f(f);if(N)this.#G(N,f);return P}let d=this.#m(I,f,g,z),a=d.__staleWhileFetching!==void 0&&G;if(N){if(N.fetch=M?"stale":"refresh",a&&M)N.returnedStale=!0}return a?d.__staleWhileFetching:d.__returned=d}}async forceFetch(I,Z={}){let G=await this.fetch(I,Z);if(G===void 0)throw new Error("fetch() returned undefined");return G}memo(I,Z={}){let G=this.#U;if(!G)throw new Error("no memoMethod provided to constructor");let{context:W,forceRefresh:B,...V}=Z,Y=this.get(I,V);if(!B&&Y!==void 0)return Y;let w=G(I,Y,{options:V,context:W});return this.set(I,w,V),w}get(I,Z={}){let{allowStale:G=this.allowStale,updateAgeOnGet:W=this.updateAgeOnGet,noDeleteOnStaleGet:B=this.noDeleteOnStaleGet,status:V}=Z,Y=this.#w.get(I);if(Y!==void 0){let w=this.#B[Y],X=this.#J(w);if(V)this.#G(V,Y);if(this.#z(Y)){if(V)V.get="stale";if(!X){if(!B)this.#O(I,"expire");if(V&&G)V.returnedStale=!0;return G?w:void 0}else{if(V&&G&&w.__staleWhileFetching!==void 0)V.returnedStale=!0;return G?w.__staleWhileFetching:void 0}}else{if(V)V.get="hit";if(X)return w.__staleWhileFetching;if(this.#x(Y),W)this.#f(Y);return w}}else if(V)V.get="miss"}#k(I,Z){this.#Q[Z]=I,this.#F[I]=Z}#x(I){if(I!==this.#_){if(I===this.#K)this.#K=this.#F[I];else this.#k(this.#Q[I],this.#F[I]);this.#k(this.#_,I),this.#_=I}}delete(I){return this.#O(I,"delete")}#O(I,Z){let G=!1;if(this.#H!==0){let W=this.#w.get(I);if(W!==void 0)if(G=!0,this.#H===1)this.#u(Z);else{this.#g(W);let B=this.#B[W];if(this.#J(B))B.__abortController.abort(new Error("deleted"));else if(this.#N||this.#D){if(this.#N)this.#V?.(B,I,Z);if(this.#D)this.#C?.push([B,I,Z])}if(this.#w.delete(I),this.#X[W]=void 0,this.#B[W]=void 0,W===this.#_)this.#_=this.#Q[W];else if(W===this.#K)this.#K=this.#F[W];else{let V=this.#Q[W];this.#F[V]=this.#F[W];let Y=this.#F[W];this.#Q[Y]=this.#Q[W]}this.#H--,this.#R.push(W)}}if(this.#D&&this.#C?.length){let W=this.#C,B;while(B=W?.shift())this.#W?.(...B)}return G}clear(){return this.#u("delete")}#u(I){for(let Z of this.#L({allowStale:!0})){let G=this.#B[Z];if(this.#J(G))G.__abortController.abort(new Error("deleted"));else{let W=this.#X[Z];if(this.#N)this.#V?.(G,W,I);if(this.#D)this.#C?.push([G,W,I])}}if(this.#w.clear(),this.#B.fill(void 0),this.#X.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#E)this.#E.fill(0);if(this.#K=0,this.#_=0,this.#R.length=0,this.#A=0,this.#H=0,this.#D&&this.#C){let Z=this.#C,G;while(G=Z?.shift())this.#W?.(...G)}}}import{posix as xx4,win32 as wV1}from"node:path";import{fileURLToPath as ux4}from"node:url";import{lstatSync as hx4,readdir as px4,readdirSync as lx4,readlinkSync as cx4,realpathSync as ix4}from"fs";import*as nx4 from"node:fs";import{lstat as rx4,readdir as sx4,readlink as ox4,realpath as tx4}from"node:fs/promises";import{EventEmitter as WV1}from"node:events";import V20 from"node:stream";import{StringDecoder as dx4}from"node:string_decoder";var Z20=typeof process==="object"&&process?process:{stdout:null,stderr:null},Ox4=(I)=>!!I&&typeof I==="object"&&(I instanceof y$||I instanceof V20||vx4(I)||gx4(I)),vx4=(I)=>!!I&&typeof I==="object"&&I instanceof WV1&&typeof I.pipe==="function"&&I.pipe!==V20.Writable.prototype.pipe,gx4=(I)=>!!I&&typeof I==="object"&&I instanceof WV1&&typeof I.write==="function"&&typeof I.end==="function",qD=Symbol("EOF"),UD=Symbol("maybeEmitEnd"),jQ=Symbol("emittedEnd"),_a=Symbol("emittingEnd"),zy=Symbol("emittedError"),Ka=Symbol("closed"),G20=Symbol("read"),Da=Symbol("flush"),W20=Symbol("flushChunk"),dH=Symbol("encoding"),cP=Symbol("decoder"),pZ=Symbol("flowing"),qy=Symbol("paused"),iP=Symbol("resume"),lZ=Symbol("buffer"),YB=Symbol("pipes"),cZ=Symbol("bufferLength"),tB1=Symbol("bufferPush"),Ca=Symbol("bufferShift"),CW=Symbol("objectMode"),e7=Symbol("destroyed"),eB1=Symbol("error"),IV1=Symbol("emitData"),B20=Symbol("emitEnd"),ZV1=Symbol("emitEnd2"),kA=Symbol("async"),GV1=Symbol("abort"),Fa=Symbol("aborted"),Uy=Symbol("signal"),T$=Symbol("dataListeners"),NY=Symbol("discarded"),Ny=(I)=>Promise.resolve().then(I),Tx4=(I)=>I(),yx4=(I)=>I==="end"||I==="finish"||I==="prefinish",bx4=(I)=>I instanceof ArrayBuffer||!!I&&typeof I==="object"&&I.constructor&&I.constructor.name==="ArrayBuffer"&&I.byteLength>=0,jx4=(I)=>!Buffer.isBuffer(I)&&ArrayBuffer.isView(I);class BV1{src;dest;opts;ondrain;constructor(I,Z,G){this.src=I,this.dest=Z,this.opts=G,this.ondrain=()=>I[iP](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(I){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class Y20 extends BV1{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(I,Z,G){super(I,Z,G);this.proxyErrors=(W)=>Z.emit("error",W),I.on("error",this.proxyErrors)}}var mx4=(I)=>!!I.objectMode,kx4=(I)=>!I.objectMode&&!!I.encoding&&I.encoding!=="buffer";class y$ extends WV1{[pZ]=!1;[qy]=!1;[YB]=[];[lZ]=[];[CW];[dH];[kA];[cP];[qD]=!1;[jQ]=!1;[_a]=!1;[Ka]=!1;[zy]=null;[cZ]=0;[e7]=!1;[Uy];[Fa]=!1;[T$]=0;[NY]=!1;writable=!0;readable=!0;constructor(...I){let Z=I[0]||{};super();if(Z.objectMode&&typeof Z.encoding==="string")throw new TypeError("Encoding and objectMode may not be used together");if(mx4(Z))this[CW]=!0,this[dH]=null;else if(kx4(Z))this[dH]=Z.encoding,this[CW]=!1;else this[CW]=!1,this[dH]=null;if(this[kA]=!!Z.async,this[cP]=this[dH]?new dx4(this[dH]):null,Z&&Z.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[lZ]});if(Z&&Z.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[YB]});let{signal:G}=Z;if(G)if(this[Uy]=G,G.aborted)this[GV1]();else G.addEventListener("abort",()=>this[GV1]())}get bufferLength(){return this[cZ]}get encoding(){return this[dH]}set encoding(I){throw new Error("Encoding must be set at instantiation time")}setEncoding(I){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[CW]}set objectMode(I){throw new Error("objectMode must be set at instantiation time")}get["async"](){return this[kA]}set["async"](I){this[kA]=this[kA]||!!I}[GV1](){this[Fa]=!0,this.emit("abort",this[Uy]?.reason),this.destroy(this[Uy]?.reason)}get aborted(){return this[Fa]}set aborted(I){}write(I,Z,G){if(this[Fa])return!1;if(this[qD])throw new Error("write after end");if(this[e7])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Z==="function")G=Z,Z="utf8";if(!Z)Z="utf8";let W=this[kA]?Ny:Tx4;if(!this[CW]&&!Buffer.isBuffer(I)){if(jx4(I))I=Buffer.from(I.buffer,I.byteOffset,I.byteLength);else if(bx4(I))I=Buffer.from(I);else if(typeof I!=="string")throw new Error("Non-contiguous data written to non-objectMode stream")}if(this[CW]){if(this[pZ]&&this[cZ]!==0)this[Da](!0);if(this[pZ])this.emit("data",I);else this[tB1](I);if(this[cZ]!==0)this.emit("readable");if(G)W(G);return this[pZ]}if(!I.length){if(this[cZ]!==0)this.emit("readable");if(G)W(G);return this[pZ]}if(typeof I==="string"&&!(Z===this[dH]&&!this[cP]?.lastNeed))I=Buffer.from(I,Z);if(Buffer.isBuffer(I)&&this[dH])I=this[cP].write(I);if(this[pZ]&&this[cZ]!==0)this[Da](!0);if(this[pZ])this.emit("data",I);else this[tB1](I);if(this[cZ]!==0)this.emit("readable");if(G)W(G);return this[pZ]}read(I){if(this[e7])return null;if(this[NY]=!1,this[cZ]===0||I===0||I&&I>this[cZ])return this[UD](),null;if(this[CW])I=null;if(this[lZ].length>1&&!this[CW])this[lZ]=[this[dH]?this[lZ].join(""):Buffer.concat(this[lZ],this[cZ])];let Z=this[G20](I||null,this[lZ][0]);return this[UD](),Z}[G20](I,Z){if(this[CW])this[Ca]();else{let G=Z;if(I===G.length||I===null)this[Ca]();else if(typeof G==="string")this[lZ][0]=G.slice(I),Z=G.slice(0,I),this[cZ]-=I;else this[lZ][0]=G.subarray(I),Z=G.subarray(0,I),this[cZ]-=I}if(this.emit("data",Z),!this[lZ].length&&!this[qD])this.emit("drain");return Z}end(I,Z,G){if(typeof I==="function")G=I,I=void 0;if(typeof Z==="function")G=Z,Z="utf8";if(I!==void 0)this.write(I,Z);if(G)this.once("end",G);if(this[qD]=!0,this.writable=!1,this[pZ]||!this[qy])this[UD]();return this}[iP](){if(this[e7])return;if(!this[T$]&&!this[YB].length)this[NY]=!0;if(this[qy]=!1,this[pZ]=!0,this.emit("resume"),this[lZ].length)this[Da]();else if(this[qD])this[UD]();else this.emit("drain")}resume(){return this[iP]()}pause(){this[pZ]=!1,this[qy]=!0,this[NY]=!1}get destroyed(){return this[e7]}get flowing(){return this[pZ]}get paused(){return this[qy]}[tB1](I){if(this[CW])this[cZ]+=1;else this[cZ]+=I.length;this[lZ].push(I)}[Ca](){if(this[CW])this[cZ]-=1;else this[cZ]-=this[lZ][0].length;return this[lZ].shift()}[Da](I=!1){do;while(this[W20](this[Ca]())&&this[lZ].length);if(!I&&!this[lZ].length&&!this[qD])this.emit("drain")}[W20](I){return this.emit("data",I),this[pZ]}pipe(I,Z){if(this[e7])return I;this[NY]=!1;let G=this[jQ];if(Z=Z||{},I===Z20.stdout||I===Z20.stderr)Z.end=!1;else Z.end=Z.end!==!1;if(Z.proxyErrors=!!Z.proxyErrors,G){if(Z.end)I.end()}else if(this[YB].push(!Z.proxyErrors?new BV1(this,I,Z):new Y20(this,I,Z)),this[kA])Ny(()=>this[iP]());else this[iP]();return I}unpipe(I){let Z=this[YB].find((G)=>G.dest===I);if(Z){if(this[YB].length===1){if(this[pZ]&&this[T$]===0)this[pZ]=!1;this[YB]=[]}else this[YB].splice(this[YB].indexOf(Z),1);Z.unpipe()}}addListener(I,Z){return this.on(I,Z)}on(I,Z){let G=super.on(I,Z);if(I==="data"){if(this[NY]=!1,this[T$]++,!this[YB].length&&!this[pZ])this[iP]()}else if(I==="readable"&&this[cZ]!==0)super.emit("readable");else if(yx4(I)&&this[jQ])super.emit(I),this.removeAllListeners(I);else if(I==="error"&&this[zy]){let W=Z;if(this[kA])Ny(()=>W.call(this,this[zy]));else W.call(this,this[zy])}return G}removeListener(I,Z){return this.off(I,Z)}off(I,Z){let G=super.off(I,Z);if(I==="data"){if(this[T$]=this.listeners("data").length,this[T$]===0&&!this[NY]&&!this[YB].length)this[pZ]=!1}return G}removeAllListeners(I){let Z=super.removeAllListeners(I);if(I==="data"||I===void 0){if(this[T$]=0,!this[NY]&&!this[YB].length)this[pZ]=!1}return Z}get emittedEnd(){return this[jQ]}[UD](){if(!this[_a]&&!this[jQ]&&!this[e7]&&this[lZ].length===0&&this[qD]){if(this[_a]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Ka])this.emit("close");this[_a]=!1}}emit(I,...Z){let G=Z[0];if(I!=="error"&&I!=="close"&&I!==e7&&this[e7])return!1;else if(I==="data")return!this[CW]&&!G?!1:this[kA]?(Ny(()=>this[IV1](G)),!0):this[IV1](G);else if(I==="end")return this[B20]();else if(I==="close"){if(this[Ka]=!0,!this[jQ]&&!this[e7])return!1;let B=super.emit("close");return this.removeAllListeners("close"),B}else if(I==="error"){this[zy]=G,super.emit(eB1,G);let B=!this[Uy]||this.listeners("error").length?super.emit("error",G):!1;return this[UD](),B}else if(I==="resume"){let B=super.emit("resume");return this[UD](),B}else if(I==="finish"||I==="prefinish"){let B=super.emit(I);return this.removeAllListeners(I),B}let W=super.emit(I,...Z);return this[UD](),W}[IV1](I){for(let G of this[YB])if(G.dest.write(I)===!1)this.pause();let Z=this[NY]?!1:super.emit("data",I);return this[UD](),Z}[B20](){if(this[jQ])return!1;return this[jQ]=!0,this.readable=!1,this[kA]?(Ny(()=>this[ZV1]()),!0):this[ZV1]()}[ZV1](){if(this[cP]){let Z=this[cP].end();if(Z){for(let G of this[YB])G.dest.write(Z);if(!this[NY])super.emit("data",Z)}}for(let Z of this[YB])Z.end();let I=super.emit("end");return this.removeAllListeners("end"),I}async collect(){let I=Object.assign([],{dataLength:0});if(!this[CW])I.dataLength=0;let Z=this.promise();return this.on("data",(G)=>{if(I.push(G),!this[CW])I.dataLength+=G.length}),await Z,I}async concat(){if(this[CW])throw new Error("cannot concat in objectMode");let I=await this.collect();return this[dH]?I.join(""):Buffer.concat(I,I.dataLength)}async promise(){return new Promise((I,Z)=>{this.on(e7,()=>Z(new Error("stream destroyed"))),this.on("error",(G)=>Z(G)),this.on("end",()=>I())})}[Symbol.asyncIterator](){this[NY]=!1;let I=!1,Z=async()=>{return this.pause(),I=!0,{value:void 0,done:!0}};return{next:()=>{if(I)return Z();let W=this.read();if(W!==null)return Promise.resolve({done:!1,value:W});if(this[qD])return Z();let B,V,Y=(J)=>{this.off("data",w),this.off("end",X),this.off(e7,H),Z(),V(J)},w=(J)=>{this.off("error",Y),this.off("end",X),this.off(e7,H),this.pause(),B({value:J,done:!!this[qD]})},X=()=>{this.off("error",Y),this.off("data",w),this.off(e7,H),Z(),B({done:!0,value:void 0})},H=()=>Y(new Error("stream destroyed"));return new Promise((J,A)=>{V=A,B=J,this.once(e7,H),this.once("error",Y),this.once("end",X),this.once("data",w)})},throw:Z,return:Z,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[NY]=!1;let I=!1,Z=()=>{return this.pause(),this.off(eB1,Z),this.off(e7,Z),this.off("end",Z),I=!0,{done:!0,value:void 0}},G=()=>{if(I)return Z();let W=this.read();return W===null?Z():{done:!1,value:W}};return this.once("end",Z),this.once(eB1,Z),this.once(e7,Z),{next:G,throw:Z,return:Z,[Symbol.iterator](){return this}}}destroy(I){if(this[e7]){if(I)this.emit("error",I);else this.emit(e7);return this}this[e7]=!0,this[NY]=!0,this[lZ].length=0,this[cZ]=0;let Z=this;if(typeof Z.close==="function"&&!this[Ka])Z.close();if(I)this.emit("error",I);else this.emit(e7);return this}static get isStream(){return Ox4}}var ax4=ix4.native,Ry={lstatSync:hx4,readdir:px4,readdirSync:lx4,readlinkSync:cx4,realpathSync:ax4,promises:{lstat:rx4,readdir:sx4,readlink:ox4,realpath:tx4}},A20=(I)=>!I||I===Ry||I===nx4?Ry:{...Ry,...I,promises:{...Ry.promises,...I.promises||{}}},_20=/^\\\\\?\\([a-z]:)\\?$/i,ex4=(I)=>I.replace(/\//g,"\\").replace(_20,"$1\\"),Iu4=/[\\\/]/,ow=0,K20=1,D20=2,xA=4,C20=6,F20=8,b$=10,Q20=12,sw=15,$y=~sw,VV1=16,w20=32,Ey=64,OH=128,Qa=256,qa=512,X20=Ey|OH|qa,Zu4=1023,YV1=(I)=>I.isFile()?F20:I.isDirectory()?xA:I.isSymbolicLink()?b$:I.isCharacterDevice()?D20:I.isBlockDevice()?C20:I.isSocket()?Q20:I.isFIFO()?K20:ow,H20=new Map,My=(I)=>{let Z=H20.get(I);if(Z)return Z;let G=I.normalize("NFKD");return H20.set(I,G),G},J20=new Map,za=(I)=>{let Z=J20.get(I);if(Z)return Z;let G=My(I.toLowerCase());return J20.set(I,G),G};class XV1 extends Qy{constructor(){super({max:256})}}class z20 extends Qy{constructor(I=16384){super({maxSize:I,sizeCalculation:(Z)=>Z.length+1})}}var q20=Symbol("PathScurry setAsCwd");class wB{name;root;roots;parent;nocase;isCWD=!1;#I;#Z;get dev(){return this.#Z}#V;get mode(){return this.#V}#W;get nlink(){return this.#W}#Y;get uid(){return this.#Y}#U;get gid(){return this.#U}#H;get rdev(){return this.#H}#A;get blksize(){return this.#A}#w;get ino(){return this.#w}#X;get size(){return this.#X}#B;get blocks(){return this.#B}#F;get atimeMs(){return this.#F}#Q;get mtimeMs(){return this.#Q}#K;get ctimeMs(){return this.#K}#_;get birthtimeMs(){return this.#_}#R;get atime(){return this.#R}#C;get mtime(){return this.#C}#E;get ctime(){return this.#E}#M;get birthtime(){return this.#M}#q;#N;#$;#D;#S;#f;#G;#v;#z;#d;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(I,Z=ow,G,W,B,V,Y){if(this.name=I,this.#q=B?za(I):My(I),this.#G=Z&Zu4,this.nocase=B,this.roots=W,this.root=G||this,this.#v=V,this.#$=Y.fullpath,this.#S=Y.relative,this.#f=Y.relativePosix,this.parent=Y.parent,this.parent)this.#I=this.parent.#I;else this.#I=A20(Y.fs)}depth(){if(this.#N!==void 0)return this.#N;if(!this.parent)return this.#N=0;return this.#N=this.parent.depth()+1}childrenCache(){return this.#v}resolve(I){if(!I)return this;let Z=this.getRootString(I),W=I.substring(Z.length).split(this.splitSep);return Z?this.getRoot(Z).#g(W):this.#g(W)}#g(I){let Z=this;for(let G of I)Z=Z.child(G);return Z}children(){let I=this.#v.get(this);if(I)return I;let Z=Object.assign([],{provisional:0});return this.#v.set(this,Z),this.#G&=~VV1,Z}child(I,Z){if(I===""||I===".")return this;if(I==="..")return this.parent||this;let G=this.children(),W=this.nocase?za(I):My(I);for(let w of G)if(w.#q===W)return w;let B=this.parent?this.sep:"",V=this.#$?this.#$+B+I:void 0,Y=this.newChild(I,ow,{...Z,parent:this,fullpath:V});if(!this.canReaddir())Y.#G|=OH;return G.push(Y),Y}relative(){if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let I=this.name,Z=this.parent;if(!Z)return this.#S=this.name;let G=Z.relative();return G+(!G||!Z.parent?"":this.sep)+I}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#f!==void 0)return this.#f;let I=this.name,Z=this.parent;if(!Z)return this.#f=this.fullpathPosix();let G=Z.relativePosix();return G+(!G||!Z.parent?"":"/")+I}fullpath(){if(this.#$!==void 0)return this.#$;let I=this.name,Z=this.parent;if(!Z)return this.#$=this.name;let W=Z.fullpath()+(!Z.parent?"":this.sep)+I;return this.#$=W}fullpathPosix(){if(this.#D!==void 0)return this.#D;if(this.sep==="/")return this.#D=this.fullpath();if(!this.parent){let W=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(W))return this.#D=`//?/${W}`;else return this.#D=W}let I=this.parent,Z=I.fullpathPosix(),G=Z+(!Z||!I.parent?"":"/")+this.name;return this.#D=G}isUnknown(){return(this.#G&sw)===ow}isType(I){return this[`is${I}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#G&sw)===F20}isDirectory(){return(this.#G&sw)===xA}isCharacterDevice(){return(this.#G&sw)===D20}isBlockDevice(){return(this.#G&sw)===C20}isFIFO(){return(this.#G&sw)===K20}isSocket(){return(this.#G&sw)===Q20}isSymbolicLink(){return(this.#G&b$)===b$}lstatCached(){return this.#G&w20?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#d}readdirCached(){let I=this.children();return I.slice(0,I.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let I=this.#G&sw;return!(I!==ow&&I!==b$||this.#G&Qa||this.#G&OH)}calledReaddir(){return!!(this.#G&VV1)}isENOENT(){return!!(this.#G&OH)}isNamed(I){return!this.nocase?this.#q===My(I):this.#q===za(I)}async readlink(){let I=this.#z;if(I)return I;if(!this.canReadlink())return;if(!this.parent)return;try{let Z=await this.#I.promises.readlink(this.fullpath()),G=(await this.parent.realpath())?.resolve(Z);if(G)return this.#z=G}catch(Z){this.#J(Z.code);return}}readlinkSync(){let I=this.#z;if(I)return I;if(!this.canReadlink())return;if(!this.parent)return;try{let Z=this.#I.readlinkSync(this.fullpath()),G=this.parent.realpathSync()?.resolve(Z);if(G)return this.#z=G}catch(Z){this.#J(Z.code);return}}#T(I){this.#G|=VV1;for(let Z=I.provisional;Z<I.length;Z++){let G=I[Z];if(G)G.#y()}}#y(){if(this.#G&OH)return;this.#G=(this.#G|OH)&$y,this.#P()}#P(){let I=this.children();I.provisional=0;for(let Z of I)Z.#y()}#L(){this.#G|=qa,this.#b()}#b(){if(this.#G&Ey)return;let I=this.#G;if((I&sw)===xA)I&=$y;this.#G=I|Ey,this.#P()}#j(I=""){if(I==="ENOTDIR"||I==="EPERM")this.#b();else if(I==="ENOENT")this.#y();else this.children().provisional=0}#m(I=""){if(I==="ENOTDIR")this.parent.#b();else if(I==="ENOENT")this.#y()}#J(I=""){let Z=this.#G;if(Z|=Qa,I==="ENOENT")Z|=OH;if(I==="EINVAL"||I==="UNKNOWN")Z&=$y;if(this.#G=Z,I==="ENOTDIR"&&this.parent)this.parent.#b()}#k(I,Z){return this.#O(I,Z)||this.#x(I,Z)}#x(I,Z){let G=YV1(I),W=this.newChild(I.name,G,{parent:this}),B=W.#G&sw;if(B!==xA&&B!==b$&&B!==ow)W.#G|=Ey;return Z.unshift(W),Z.provisional++,W}#O(I,Z){for(let G=Z.provisional;G<Z.length;G++){let W=Z[G];if((this.nocase?za(I.name):My(I.name))!==W.#q)continue;return this.#u(I,W,G,Z)}}#u(I,Z,G,W){let B=Z.name;if(Z.#G=Z.#G&$y|YV1(I),B!==I.name)Z.name=I.name;if(G!==W.provisional){if(G===W.length-1)W.pop();else W.splice(G,1);W.unshift(Z)}return W.provisional++,Z}async lstat(){if((this.#G&OH)===0)try{return this.#c(await this.#I.promises.lstat(this.fullpath())),this}catch(I){this.#m(I.code)}}lstatSync(){if((this.#G&OH)===0)try{return this.#c(this.#I.lstatSync(this.fullpath())),this}catch(I){this.#m(I.code)}}#c(I){let{atime:Z,atimeMs:G,birthtime:W,birthtimeMs:B,blksize:V,blocks:Y,ctime:w,ctimeMs:X,dev:H,gid:J,ino:A,mode:K,mtime:D,mtimeMs:z,nlink:U,rdev:N,size:L,uid:g}=I;this.#R=Z,this.#F=G,this.#M=W,this.#_=B,this.#A=V,this.#B=Y,this.#E=w,this.#K=X,this.#Z=H,this.#U=J,this.#w=A,this.#V=K,this.#C=D,this.#Q=z,this.#W=U,this.#H=N,this.#X=L,this.#Y=g;let f=YV1(I);if(this.#G=this.#G&$y|f|w20,f!==ow&&f!==xA&&f!==b$)this.#G|=Ey}#p=[];#l=!1;#i(I){this.#l=!1;let Z=this.#p.slice();this.#p.length=0,Z.forEach((G)=>G(null,I))}readdirCB(I,Z=!1){if(!this.canReaddir()){if(Z)I(null,[]);else queueMicrotask(()=>I(null,[]));return}let G=this.children();if(this.calledReaddir()){let B=G.slice(0,G.provisional);if(Z)I(null,B);else queueMicrotask(()=>I(null,B));return}if(this.#p.push(I),this.#l)return;this.#l=!0;let W=this.fullpath();this.#I.readdir(W,{withFileTypes:!0},(B,V)=>{if(B)this.#j(B.code),G.provisional=0;else{for(let Y of V)this.#k(Y,G);this.#T(G)}this.#i(G.slice(0,G.provisional));return})}#h;async readdir(){if(!this.canReaddir())return[];let I=this.children();if(this.calledReaddir())return I.slice(0,I.provisional);let Z=this.fullpath();if(this.#h)await this.#h;else{let G=()=>{};this.#h=new Promise((W)=>G=W);try{for(let W of await this.#I.promises.readdir(Z,{withFileTypes:!0}))this.#k(W,I);this.#T(I)}catch(W){this.#j(W.code),I.provisional=0}this.#h=void 0,G()}return I.slice(0,I.provisional)}readdirSync(){if(!this.canReaddir())return[];let I=this.children();if(this.calledReaddir())return I.slice(0,I.provisional);let Z=this.fullpath();try{for(let G of this.#I.readdirSync(Z,{withFileTypes:!0}))this.#k(G,I);this.#T(I)}catch(G){this.#j(G.code),I.provisional=0}return I.slice(0,I.provisional)}canReaddir(){if(this.#G&X20)return!1;let I=sw&this.#G;if(!(I===ow||I===xA||I===b$))return!1;return!0}shouldWalk(I,Z){return(this.#G&xA)===xA&&!(this.#G&X20)&&!I.has(this)&&(!Z||Z(this))}async realpath(){if(this.#d)return this.#d;if((qa|Qa|OH)&this.#G)return;try{let I=await this.#I.promises.realpath(this.fullpath());return this.#d=this.resolve(I)}catch(I){this.#L()}}realpathSync(){if(this.#d)return this.#d;if((qa|Qa|OH)&this.#G)return;try{let I=this.#I.realpathSync(this.fullpath());return this.#d=this.resolve(I)}catch(I){this.#L()}}[q20](I){if(I===this)return;I.isCWD=!1,this.isCWD=!0;let Z=new Set([]),G=[],W=this;while(W&&W.parent)Z.add(W),W.#S=G.join(this.sep),W.#f=G.join("/"),W=W.parent,G.push("..");W=I;while(W&&W.parent&&!Z.has(W))W.#S=void 0,W.#f=void 0,W=W.parent}}class Ua extends wB{sep="\\";splitSep=Iu4;constructor(I,Z=ow,G,W,B,V,Y){super(I,Z,G,W,B,V,Y)}newChild(I,Z=ow,G={}){return new Ua(I,Z,this.root,this.roots,this.nocase,this.childrenCache(),G)}getRootString(I){return wV1.parse(I).root}getRoot(I){if(I=ex4(I.toUpperCase()),I===this.root.name)return this.root;for(let[Z,G]of Object.entries(this.roots))if(this.sameRoot(I,Z))return this.roots[I]=G;return this.roots[I]=new fy(I,this).root}sameRoot(I,Z=this.root.name){return I=I.toUpperCase().replace(/\//g,"\\").replace(_20,"$1\\"),I===Z}}class Na extends wB{splitSep="/";sep="/";constructor(I,Z=ow,G,W,B,V,Y){super(I,Z,G,W,B,V,Y)}getRootString(I){return I.startsWith("/")?"/":""}getRoot(I){return this.root}newChild(I,Z=ow,G={}){return new Na(I,Z,this.root,this.roots,this.nocase,this.childrenCache(),G)}}class HV1{root;rootPath;roots;cwd;#I;#Z;#V;nocase;#W;constructor(I=process.cwd(),Z,G,{nocase:W,childrenCacheSize:B=16384,fs:V=Ry}={}){if(this.#W=A20(V),I instanceof URL||I.startsWith("file://"))I=ux4(I);let Y=Z.resolve(I);this.roots=Object.create(null),this.rootPath=this.parseRootPath(Y),this.#I=new XV1,this.#Z=new XV1,this.#V=new z20(B);let w=Y.substring(this.rootPath.length).split(G);if(w.length===1&&!w[0])w.pop();if(W===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=W,this.root=this.newRoot(this.#W),this.roots[this.rootPath]=this.root;let X=this.root,H=w.length-1,J=Z.sep,A=this.rootPath,K=!1;for(let D of w){let z=H--;X=X.child(D,{relative:new Array(z).fill("..").join(J),relativePosix:new Array(z).fill("..").join("/"),fullpath:A+=(K?"":J)+D}),K=!0}this.cwd=X}depth(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.depth()}childrenCache(){return this.#V}resolve(...I){let Z="";for(let B=I.length-1;B>=0;B--){let V=I[B];if(!V||V===".")continue;if(Z=Z?`${V}/${Z}`:V,this.isAbsolute(V))break}let G=this.#I.get(Z);if(G!==void 0)return G;let W=this.cwd.resolve(Z).fullpath();return this.#I.set(Z,W),W}resolvePosix(...I){let Z="";for(let B=I.length-1;B>=0;B--){let V=I[B];if(!V||V===".")continue;if(Z=Z?`${V}/${Z}`:V,this.isAbsolute(V))break}let G=this.#Z.get(Z);if(G!==void 0)return G;let W=this.cwd.resolve(Z).fullpathPosix();return this.#Z.set(Z,W),W}relative(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.relative()}relativePosix(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.relativePosix()}basename(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.name}dirname(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return(I.parent||I).fullpath()}async readdir(I=this.cwd,Z={withFileTypes:!0}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G}=Z;if(!I.canReaddir())return[];else{let W=await I.readdir();return G?W:W.map((B)=>B.name)}}readdirSync(I=this.cwd,Z={withFileTypes:!0}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0}=Z;if(!I.canReaddir())return[];else if(G)return I.readdirSync();else return I.readdirSync().map((W)=>W.name)}async lstat(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.lstat()}lstatSync(I=this.cwd){if(typeof I==="string")I=this.cwd.resolve(I);return I.lstatSync()}async readlink(I=this.cwd,{withFileTypes:Z}={withFileTypes:!1}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I.withFileTypes,I=this.cwd;let G=await I.readlink();return Z?G:G?.fullpath()}readlinkSync(I=this.cwd,{withFileTypes:Z}={withFileTypes:!1}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I.withFileTypes,I=this.cwd;let G=I.readlinkSync();return Z?G:G?.fullpath()}async realpath(I=this.cwd,{withFileTypes:Z}={withFileTypes:!1}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I.withFileTypes,I=this.cwd;let G=await I.realpath();return Z?G:G?.fullpath()}realpathSync(I=this.cwd,{withFileTypes:Z}={withFileTypes:!1}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I.withFileTypes,I=this.cwd;let G=I.realpathSync();return Z?G:G?.fullpath()}async walk(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0,follow:W=!1,filter:B,walkFilter:V}=Z,Y=[];if(!B||B(I))Y.push(G?I:I.fullpath());let w=new Set,X=(J,A)=>{w.add(J),J.readdirCB((K,D)=>{if(K)return A(K);let z=D.length;if(!z)return A();let U=()=>{if(--z===0)A()};for(let N of D){if(!B||B(N))Y.push(G?N:N.fullpath());if(W&&N.isSymbolicLink())N.realpath().then((L)=>L?.isUnknown()?L.lstat():L).then((L)=>L?.shouldWalk(w,V)?X(L,U):U());else if(N.shouldWalk(w,V))X(N,U);else U()}},!0)},H=I;return new Promise((J,A)=>{X(H,(K)=>{if(K)return A(K);J(Y)})})}walkSync(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0,follow:W=!1,filter:B,walkFilter:V}=Z,Y=[];if(!B||B(I))Y.push(G?I:I.fullpath());let w=new Set([I]);for(let X of w){let H=X.readdirSync();for(let J of H){if(!B||B(J))Y.push(G?J:J.fullpath());let A=J;if(J.isSymbolicLink()){if(!(W&&(A=J.realpathSync())))continue;if(A.isUnknown())A.lstatSync()}if(A.shouldWalk(w,V))w.add(A)}}return Y}[Symbol.asyncIterator](){return this.iterate()}iterate(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;return this.stream(I,Z)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0,follow:W=!1,filter:B,walkFilter:V}=Z;if(!B||B(I))yield G?I:I.fullpath();let Y=new Set([I]);for(let w of Y){let X=w.readdirSync();for(let H of X){if(!B||B(H))yield G?H:H.fullpath();let J=H;if(H.isSymbolicLink()){if(!(W&&(J=H.realpathSync())))continue;if(J.isUnknown())J.lstatSync()}if(J.shouldWalk(Y,V))Y.add(J)}}}stream(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0,follow:W=!1,filter:B,walkFilter:V}=Z,Y=new y$({objectMode:!0});if(!B||B(I))Y.write(G?I:I.fullpath());let w=new Set,X=[I],H=0,J=()=>{let A=!1;while(!A){let K=X.shift();if(!K){if(H===0)Y.end();return}H++,w.add(K);let D=(U,N,L=!1)=>{if(U)return Y.emit("error",U);if(W&&!L){let g=[];for(let f of N)if(f.isSymbolicLink())g.push(f.realpath().then((P)=>P?.isUnknown()?P.lstat():P));if(g.length){Promise.all(g).then(()=>D(null,N,!0));return}}for(let g of N)if(g&&(!B||B(g))){if(!Y.write(G?g:g.fullpath()))A=!0}H--;for(let g of N){let f=g.realpathCached()||g;if(f.shouldWalk(w,V))X.push(f)}if(A&&!Y.flowing)Y.once("drain",J);else if(!z)J()},z=!0;K.readdirCB(D,!0),z=!1}};return J(),Y}streamSync(I=this.cwd,Z={}){if(typeof I==="string")I=this.cwd.resolve(I);else if(!(I instanceof wB))Z=I,I=this.cwd;let{withFileTypes:G=!0,follow:W=!1,filter:B,walkFilter:V}=Z,Y=new y$({objectMode:!0}),w=new Set;if(!B||B(I))Y.write(G?I:I.fullpath());let X=[I],H=0,J=()=>{let A=!1;while(!A){let K=X.shift();if(!K){if(H===0)Y.end();return}H++,w.add(K);let D=K.readdirSync();for(let z of D)if(!B||B(z)){if(!Y.write(G?z:z.fullpath()))A=!0}H--;for(let z of D){let U=z;if(z.isSymbolicLink()){if(!(W&&(U=z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(w,V))X.push(U)}}if(A&&!Y.flowing)Y.once("drain",J)};return J(),Y}chdir(I=this.cwd){let Z=this.cwd;this.cwd=typeof I==="string"?this.cwd.resolve(I):I,this.cwd[q20](Z)}}class fy extends HV1{sep="\\";constructor(I=process.cwd(),Z={}){let{nocase:G=!0}=Z;super(I,wV1,"\\",{...Z,nocase:G});this.nocase=G;for(let W=this.cwd;W;W=W.parent)W.nocase=this.nocase}parseRootPath(I){return wV1.parse(I).root.toUpperCase()}newRoot(I){return new Ua(this.rootPath,xA,void 0,this.roots,this.nocase,this.childrenCache(),{fs:I})}isAbsolute(I){return I.startsWith("/")||I.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(I)}}class Py extends HV1{sep="/";constructor(I=process.cwd(),Z={}){let{nocase:G=!1}=Z;super(I,xx4,"/",{...Z,nocase:G});this.nocase=G}parseRootPath(I){return"/"}newRoot(I){return new Na(this.rootPath,xA,void 0,this.roots,this.nocase,this.childrenCache(),{fs:I})}isAbsolute(I){return I.startsWith("/")}}class $a extends Py{constructor(I=process.cwd(),Z={}){let{nocase:G=!0}=Z;super(I,{...Z,nocase:G})}}var kX3=process.platform==="win32"?Ua:Na,U20=process.platform==="win32"?fy:process.platform==="darwin"?$a:Py;var Gu4=(I)=>I.length>=1,Wu4=(I)=>I.length>=1;class nP{#I;#Z;#V;length;#W;#Y;#U;#H;#A;#w;#X=!0;constructor(I,Z,G,W){if(!Gu4(I))throw new TypeError("empty pattern list");if(!Wu4(Z))throw new TypeError("empty glob list");if(Z.length!==I.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=I.length,G<0||G>=this.length)throw new TypeError("index out of range");if(this.#I=I,this.#Z=Z,this.#V=G,this.#W=W,this.#V===0){if(this.isUNC()){let[B,V,Y,w,...X]=this.#I,[H,J,A,K,...D]=this.#Z;if(X[0]==="")X.shift(),D.shift();let z=[B,V,Y,w,""].join("/"),U=[H,J,A,K,""].join("/");this.#I=[z,...X],this.#Z=[U,...D],this.length=this.#I.length}else if(this.isDrive()||this.isAbsolute()){let[B,...V]=this.#I,[Y,...w]=this.#Z;if(V[0]==="")V.shift(),w.shift();let X=B+"/",H=Y+"/";this.#I=[X,...V],this.#Z=[H,...w],this.length=this.#I.length}}}pattern(){return this.#I[this.#V]}isString(){return typeof this.#I[this.#V]==="string"}isGlobstar(){return this.#I[this.#V]===$G}isRegExp(){return this.#I[this.#V]instanceof RegExp}globString(){return this.#U=this.#U||(this.#V===0?this.isAbsolute()?this.#Z[0]+this.#Z.slice(1).join("/"):this.#Z.join("/"):this.#Z.slice(this.#V).join("/"))}hasMore(){return this.length>this.#V+1}rest(){if(this.#Y!==void 0)return this.#Y;if(!this.hasMore())return this.#Y=null;return this.#Y=new nP(this.#I,this.#Z,this.#V+1,this.#W),this.#Y.#w=this.#w,this.#Y.#A=this.#A,this.#Y.#H=this.#H,this.#Y}isUNC(){let I=this.#I;return this.#A!==void 0?this.#A:this.#A=this.#W==="win32"&&this.#V===0&&I[0]===""&&I[1]===""&&typeof I[2]==="string"&&!!I[2]&&typeof I[3]==="string"&&!!I[3]}isDrive(){let I=this.#I;return this.#H!==void 0?this.#H:this.#H=this.#W==="win32"&&this.#V===0&&this.length>1&&typeof I[0]==="string"&&/^[a-z]:$/i.test(I[0])}isAbsolute(){let I=this.#I;return this.#w!==void 0?this.#w:this.#w=I[0]===""&&I.length>1||this.isDrive()||this.isUNC()}root(){let I=this.#I[0];return typeof I==="string"&&this.isAbsolute()&&this.#V===0?I:""}checkFollowGlobstar(){return!(this.#V===0||!this.isGlobstar()||!this.#X)}markFollowGlobstar(){if(this.#V===0||!this.isGlobstar()||!this.#X)return!1;return this.#X=!1,!0}}var Bu4=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class Ly{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(I,{nobrace:Z,nocase:G,noext:W,noglobstar:B,platform:V=Bu4}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=V,this.mmopts={dot:!0,nobrace:Z,nocase:G,noext:W,noglobstar:B,optimizationLevel:2,platform:V,nocomment:!0,nonegate:!0};for(let Y of I)this.add(Y)}add(I){let Z=new rw(I,this.mmopts);for(let G=0;G<Z.set.length;G++){let W=Z.set[G],B=Z.globParts[G];if(!W||!B)throw new Error("invalid pattern object");while(W[0]==="."&&B[0]===".")W.shift(),B.shift();let V=new nP(W,B,0,this.platform),Y=new rw(V.globString(),this.mmopts),w=B[B.length-1]==="**",X=V.isAbsolute();if(X)this.absolute.push(Y);else this.relative.push(Y);if(w)if(X)this.absoluteChildren.push(Y);else this.relativeChildren.push(Y)}}ignored(I){let Z=I.fullpath(),G=`${Z}/`,W=I.relative()||".",B=`${W}/`;for(let V of this.relative)if(V.match(W)||V.match(B))return!0;for(let V of this.absolute)if(V.match(Z)||V.match(G))return!0;return!1}childrenIgnored(I){let Z=I.fullpath()+"/",G=(I.relative()||".")+"/";for(let W of this.relativeChildren)if(W.match(G))return!0;for(let W of this.absoluteChildren)if(W.match(Z))return!0;return!1}}class JV1{store;constructor(I=new Map){this.store=I}copy(){return new JV1(new Map(this.store))}hasWalked(I,Z){return this.store.get(I.fullpath())?.has(Z.globString())}storeWalked(I,Z){let G=I.fullpath(),W=this.store.get(G);if(W)W.add(Z.globString());else this.store.set(G,new Set([Z.globString()]))}}class N20{store=new Map;add(I,Z,G){let W=(Z?2:0)|(G?1:0),B=this.store.get(I);this.store.set(I,B===void 0?W:W&B)}entries(){return[...this.store.entries()].map(([I,Z])=>[I,!!(Z&2),!!(Z&1)])}}class $20{store=new Map;add(I,Z){if(!I.canReaddir())return;let G=this.store.get(I);if(G){if(!G.find((W)=>W.globString()===Z.globString()))G.push(Z)}else this.store.set(I,[Z])}get(I){let Z=this.store.get(I);if(!Z)throw new Error("attempting to walk unknown path");return Z}entries(){return this.keys().map((I)=>[I,this.store.get(I)])}keys(){return[...this.store.keys()].filter((I)=>I.canReaddir())}}class Sy{hasWalkedCache;matches=new N20;subwalks=new $20;patterns;follow;dot;opts;constructor(I,Z){this.opts=I,this.follow=!!I.follow,this.dot=!!I.dot,this.hasWalkedCache=Z?Z.copy():new JV1}processPatterns(I,Z){this.patterns=Z;let G=Z.map((W)=>[I,W]);for(let[W,B]of G){this.hasWalkedCache.storeWalked(W,B);let V=B.root(),Y=B.isAbsolute()&&this.opts.absolute!==!1;if(V){W=W.resolve(V==="/"&&this.opts.root!==void 0?this.opts.root:V);let J=B.rest();if(!J){this.matches.add(W,!0,!1);continue}else B=J}if(W.isENOENT())continue;let w,X,H=!1;while(typeof(w=B.pattern())==="string"&&(X=B.rest()))W=W.resolve(w),B=X,H=!0;if(w=B.pattern(),X=B.rest(),H){if(this.hasWalkedCache.hasWalked(W,B))continue;this.hasWalkedCache.storeWalked(W,B)}if(typeof w==="string"){let J=w===".."||w===""||w===".";this.matches.add(W.resolve(w),Y,J);continue}else if(w===$G){if(!W.isSymbolicLink()||this.follow||B.checkFollowGlobstar())this.subwalks.add(W,B);let J=X?.pattern(),A=X?.rest();if(!X||(J===""||J===".")&&!A)this.matches.add(W,Y,J===""||J===".");else if(J===".."){let K=W.parent||W;if(!A)this.matches.add(K,Y,!0);else if(!this.hasWalkedCache.hasWalked(K,A))this.subwalks.add(K,A)}}else if(w instanceof RegExp)this.subwalks.add(W,B)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new Sy(this.opts,this.hasWalkedCache)}filterEntries(I,Z){let G=this.subwalks.get(I),W=this.child();for(let B of Z)for(let V of G){let Y=V.isAbsolute(),w=V.pattern(),X=V.rest();if(w===$G)W.testGlobstar(B,V,X,Y);else if(w instanceof RegExp)W.testRegExp(B,w,X,Y);else W.testString(B,w,X,Y)}return W}testGlobstar(I,Z,G,W){if(this.dot||!I.name.startsWith(".")){if(!Z.hasMore())this.matches.add(I,W,!1);if(I.canReaddir()){if(this.follow||!I.isSymbolicLink())this.subwalks.add(I,Z);else if(I.isSymbolicLink()){if(G&&Z.checkFollowGlobstar())this.subwalks.add(I,G);else if(Z.markFollowGlobstar())this.subwalks.add(I,Z)}}}if(G){let B=G.pattern();if(typeof B==="string"&&B!==".."&&B!==""&&B!==".")this.testString(I,B,G.rest(),W);else if(B===".."){let V=I.parent||I;this.subwalks.add(V,G)}else if(B instanceof RegExp)this.testRegExp(I,B,G.rest(),W)}}testRegExp(I,Z,G,W){if(!Z.test(I.name))return;if(!G)this.matches.add(I,W,!1);else this.subwalks.add(I,G)}testString(I,Z,G,W){if(!I.isNamed(Z))return;if(!G)this.matches.add(I,W,!1);else this.subwalks.add(I,G)}}var Vu4=(I,Z)=>typeof I==="string"?new Ly([I],Z):Array.isArray(I)?new Ly(I,Z):I;class AV1{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#I=[];#Z;#V;signal;maxDepth;includeChildMatches;constructor(I,Z,G){if(this.patterns=I,this.path=Z,this.opts=G,this.#V=!G.posix&&G.platform==="win32"?"\\":"/",this.includeChildMatches=G.includeChildMatches!==!1,G.ignore||!this.includeChildMatches){if(this.#Z=Vu4(G.ignore??[],G),!this.includeChildMatches&&typeof this.#Z.add!=="function")throw new Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=G.maxDepth||1/0,G.signal)this.signal=G.signal,this.signal.addEventListener("abort",()=>{this.#I.length=0})}#W(I){return this.seen.has(I)||!!this.#Z?.ignored?.(I)}#Y(I){return!!this.#Z?.childrenIgnored?.(I)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let I=void 0;while(!this.paused&&(I=this.#I.shift()))I()}onResume(I){if(this.signal?.aborted)return;if(!this.paused)I();else this.#I.push(I)}async matchCheck(I,Z){if(Z&&this.opts.nodir)return;let G;if(this.opts.realpath){if(G=I.realpathCached()||await I.realpath(),!G)return;I=G}let B=I.isUnknown()||this.opts.stat?await I.lstat():I;if(this.opts.follow&&this.opts.nodir&&B?.isSymbolicLink()){let V=await B.realpath();if(V&&(V.isUnknown()||this.opts.stat))await V.lstat()}return this.matchCheckTest(B,Z)}matchCheckTest(I,Z){return I&&(this.maxDepth===1/0||I.depth()<=this.maxDepth)&&(!Z||I.canReaddir())&&(!this.opts.nodir||!I.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!I.isSymbolicLink()||!I.realpathCached()?.isDirectory())&&!this.#W(I)?I:void 0}matchCheckSync(I,Z){if(Z&&this.opts.nodir)return;let G;if(this.opts.realpath){if(G=I.realpathCached()||I.realpathSync(),!G)return;I=G}let B=I.isUnknown()||this.opts.stat?I.lstatSync():I;if(this.opts.follow&&this.opts.nodir&&B?.isSymbolicLink()){let V=B.realpathSync();if(V&&(V?.isUnknown()||this.opts.stat))V.lstatSync()}return this.matchCheckTest(B,Z)}matchFinish(I,Z){if(this.#W(I))return;if(!this.includeChildMatches&&this.#Z?.add){let B=`${I.relativePosix()}/**`;this.#Z.add(B)}let G=this.opts.absolute===void 0?Z:this.opts.absolute;this.seen.add(I);let W=this.opts.mark&&I.isDirectory()?this.#V:"";if(this.opts.withFileTypes)this.matchEmit(I);else if(G){let B=this.opts.posix?I.fullpathPosix():I.fullpath();this.matchEmit(B+W)}else{let B=this.opts.posix?I.relativePosix():I.relative(),V=this.opts.dotRelative&&!B.startsWith(".."+this.#V)?"."+this.#V:"";this.matchEmit(!B?"."+W:V+B+W)}}async match(I,Z,G){let W=await this.matchCheck(I,G);if(W)this.matchFinish(W,Z)}matchSync(I,Z,G){let W=this.matchCheckSync(I,G);if(W)this.matchFinish(W,Z)}walkCB(I,Z,G){if(this.signal?.aborted)G();this.walkCB2(I,Z,new Sy(this.opts),G)}walkCB2(I,Z,G,W){if(this.#Y(I))return W();if(this.signal?.aborted)W();if(this.paused){this.onResume(()=>this.walkCB2(I,Z,G,W));return}G.processPatterns(I,Z);let B=1,V=()=>{if(--B===0)W()};for(let[Y,w,X]of G.matches.entries()){if(this.#W(Y))continue;B++,this.match(Y,w,X).then(()=>V())}for(let Y of G.subwalkTargets()){if(this.maxDepth!==1/0&&Y.depth()>=this.maxDepth)continue;B++;let w=Y.readdirCached();if(Y.calledReaddir())this.walkCB3(Y,w,G,V);else Y.readdirCB((X,H)=>this.walkCB3(Y,H,G,V),!0)}V()}walkCB3(I,Z,G,W){G=G.filterEntries(I,Z);let B=1,V=()=>{if(--B===0)W()};for(let[Y,w,X]of G.matches.entries()){if(this.#W(Y))continue;B++,this.match(Y,w,X).then(()=>V())}for(let[Y,w]of G.subwalks.entries())B++,this.walkCB2(Y,w,G.child(),V);V()}walkCBSync(I,Z,G){if(this.signal?.aborted)G();this.walkCB2Sync(I,Z,new Sy(this.opts),G)}walkCB2Sync(I,Z,G,W){if(this.#Y(I))return W();if(this.signal?.aborted)W();if(this.paused){this.onResume(()=>this.walkCB2Sync(I,Z,G,W));return}G.processPatterns(I,Z);let B=1,V=()=>{if(--B===0)W()};for(let[Y,w,X]of G.matches.entries()){if(this.#W(Y))continue;this.matchSync(Y,w,X)}for(let Y of G.subwalkTargets()){if(this.maxDepth!==1/0&&Y.depth()>=this.maxDepth)continue;B++;let w=Y.readdirSync();this.walkCB3Sync(Y,w,G,V)}V()}walkCB3Sync(I,Z,G,W){G=G.filterEntries(I,Z);let B=1,V=()=>{if(--B===0)W()};for(let[Y,w,X]of G.matches.entries()){if(this.#W(Y))continue;this.matchSync(Y,w,X)}for(let[Y,w]of G.subwalks.entries())B++,this.walkCB2Sync(Y,w,G.child(),V);V()}}class Ra extends AV1{matches=new Set;constructor(I,Z,G){super(I,Z,G)}matchEmit(I){this.matches.add(I)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((I,Z)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Z(this.signal.reason);else I(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class Ea extends AV1{results;constructor(I,Z,G){super(I,Z,G);this.results=new y$({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(I){if(this.results.write(I),!this.results.flowing)this.pause()}stream(){let I=this.path;if(I.isUnknown())I.lstat().then(()=>{this.walkCB(I,this.patterns,()=>this.results.end())});else this.walkCB(I,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var wu4=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class uA{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(I,Z){if(!Z)throw new TypeError("glob options required");if(this.withFileTypes=!!Z.withFileTypes,this.signal=Z.signal,this.follow=!!Z.follow,this.dot=!!Z.dot,this.dotRelative=!!Z.dotRelative,this.nodir=!!Z.nodir,this.mark=!!Z.mark,!Z.cwd)this.cwd="";else if(Z.cwd instanceof URL||Z.cwd.startsWith("file://"))Z.cwd=Yu4(Z.cwd);if(this.cwd=Z.cwd||"",this.root=Z.root,this.magicalBraces=!!Z.magicalBraces,this.nobrace=!!Z.nobrace,this.noext=!!Z.noext,this.realpath=!!Z.realpath,this.absolute=Z.absolute,this.includeChildMatches=Z.includeChildMatches!==!1,this.noglobstar=!!Z.noglobstar,this.matchBase=!!Z.matchBase,this.maxDepth=typeof Z.maxDepth==="number"?Z.maxDepth:1/0,this.stat=!!Z.stat,this.ignore=Z.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof I==="string")I=[I];if(this.windowsPathsNoEscape=!!Z.windowsPathsNoEscape||Z.allowWindowsEscape===!1,this.windowsPathsNoEscape)I=I.map((w)=>w.replace(/\\/g,"/"));if(this.matchBase){if(Z.noglobstar)throw new TypeError("base matching requires globstar");I=I.map((w)=>w.includes("/")?w:`./**/${w}`)}if(this.pattern=I,this.platform=Z.platform||wu4,this.opts={...Z,platform:this.platform},Z.scurry){if(this.scurry=Z.scurry,Z.nocase!==void 0&&Z.nocase!==Z.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let w=Z.platform==="win32"?fy:Z.platform==="darwin"?$a:Z.platform?Py:U20;this.scurry=new w(this.cwd,{nocase:Z.nocase,fs:Z.fs})}this.nocase=this.scurry.nocase;let G=this.platform==="darwin"||this.platform==="win32",W={...Z,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:G,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},B=this.pattern.map((w)=>new rw(w,W)),[V,Y]=B.reduce((w,X)=>{return w[0].push(...X.set),w[1].push(...X.globParts),w},[[],[]]);this.patterns=V.map((w,X)=>{let H=Y[X];if(!H)throw new Error("invalid pattern object");return new nP(w,H,0,this.platform)})}async walk(){return[...await new Ra(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new Ra(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new Ea(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new Ea(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var _V1=(I,Z={})=>{if(!Array.isArray(I))I=[I];for(let G of I)if(new rw(G,Z).hasMagic())return!0;return!1};function fa(I,Z={}){return new uA(I,Z).streamSync()}function E20(I,Z={}){return new uA(I,Z).stream()}function M20(I,Z={}){return new uA(I,Z).walkSync()}async function R20(I,Z={}){return new uA(I,Z).walk()}function Pa(I,Z={}){return new uA(I,Z).iterateSync()}function f20(I,Z={}){return new uA(I,Z).iterate()}var Xu4=fa,Hu4=Object.assign(E20,{sync:fa}),Ju4=Pa,Au4=Object.assign(f20,{sync:Pa}),_u4=Object.assign(M20,{stream:fa,iterate:Pa}),Ma=Object.assign(R20,{glob:R20,globSync:M20,sync:_u4,globStream:E20,stream:Hu4,globStreamSync:fa,streamSync:Xu4,globIterate:f20,iterate:Au4,globIterateSync:Pa,iterateSync:Ju4,Glob:uA,hasMagic:_V1,escape:hP,unescape:SH});Ma.glob=Ma;import{cwd as vG0}from"process";var DG0=J1(xw1(),1);import{fileURLToPath as w69,resolve as X69}from"node:url";import*as wr from"path";var CG0=J1(NP(),1);import{execFile as H69}from"child_process";var J69=w69(import.meta.url),A69=X69(J69,"."),EY=CG0.default("claude:ripgrep"),FG0=!!process.env.USE_BUILTIN_RIPGREP;if(FG0)EY("Using builtin ripgrep because USE_BUILTIN_RIPGREP is set");var ly=O2(()=>{let{cmd:I}=DG0.findActualExecutable("rg",[]);if(EY(`ripgrep initially resolved as: ${I}`),I!=="rg"&&!FG0)return I;else{let Z=wr.resolve(A69,"vendor","ripgrep");if(process.platform==="win32")return wr.resolve(Z,"x64-win32","rg.exe");let G=wr.resolve(Z,`${process.arch}-${process.platform}`,"rg");return EY("internal ripgrep resolved as: %s",G),G}});function uw1(I,Z,G,W){return H69(ly(),[...I,Z],{maxBuffer:4000000,signal:G,timeout:1e4},W)}async function fD(I,Z,G){await _69();let W=ly();return EY("ripgrep called: %s %o",W,Z,I),new Promise((B)=>{uw1(I,Z,G,(V,Y)=>{if(V){if(V.code!==1)EY("ripgrep error: %o",V),c1(V);B([])}else EY("ripgrep succeeded with %s",Y),B(Y.trim().split(`
|
|
446
446
|
`).filter(Boolean))})})}async function QG0(I,Z,G){try{return(await fD(["-l","."],I,Z)).slice(0,G)}catch{return[]}}var Xr=O2(async(I,Z,G=[])=>{try{let W=["--files","--hidden"];G.forEach((X)=>{W.push("--glob",`!${X}`)});let V=(await fD(W,I,Z)).length;if(V===0)return 0;let Y=Math.floor(Math.log10(V)),w=Math.pow(10,Y);return Math.round(V/w)*w}catch(W){c1(W instanceof Error?W:new Error(String(W)))}}),KG0=!1;async function _69(){if(process.platform!=="darwin"||KG0)return;if(KG0=!0,EY("checking if ripgrep is already signed"),!(await R4("codesign",["-vv","-d",ly()],void 0,void 0,!1)).stdout.split(`
|
|
@@ -473,17 +473,27 @@ globstar while`,I,A,Z,K,D),this.matchOne(I.slice(A),Z.slice(K),G))return this.de
|
|
|
473
473
|
;; Allow signals to self and process group (descendants)
|
|
474
474
|
(allow signal (target pgrp))`;constructor(){let I=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.profilePath=wW0.join(YW0.tmpdir(),`claude-sandbox-${I}.sb`),this.writeProfile(this.defaultProfile)}getProfilePath(){return this.profilePath}writeProfile(I){try{sA.writeFileSync(this.profilePath,I)}catch(Z){throw c1(new Error(`Failed to write sandbox profile: ${Z}`)),Z}}cleanup(){try{if(sA.existsSync(this.profilePath))sA.unlinkSync(this.profilePath)}catch(I){c1(new Error(`Failed to clean up sandbox profile: ${I}`))}}wrapCommand(I){let Z=VX1.default.quote([this.profilePath]);return VX1.default.quote([`/usr/bin/sandbox-exec -f ${Z} sh -c ${I}`])}}function ny(){return!1;try{return sA.accessSync("/usr/bin/sandbox-exec",sA.constants.X_OK),!0}catch(I){return!1}}function Ur(I){if(!ny())throw new Error("Sandbox mode requested but not available on this system");try{let Z=new XW0;return{finalCommand:Z.wrapCommand(I),cleanup:()=>Z.cleanup()}}catch(Z){throw new Error("Sandbox mode requested but not available on this system")}}var Z89=1800000,AW0=process.cwd();function _W0(I){let Z=I.includes("zsh")?".zshrc":I.includes("bash")?".bashrc":".profile";return I89(r69(),Z)}function G89(I,Z){let G=_W0(I),W=G.endsWith(".zshrc"),B="";if(W)B=`
|
|
475
475
|
echo "# Functions"
|
|
476
|
-
|
|
476
|
+
# Force autoload all functions first
|
|
477
|
+
typeset -f > /dev/null 2>&1
|
|
478
|
+
# Now get user function names - filter system ones
|
|
479
|
+
typeset +f | grep -vE '^(_|__)' | while read func; do
|
|
480
|
+
typeset -f "$func"
|
|
481
|
+
done
|
|
477
482
|
|
|
478
483
|
echo "# Shell Options"
|
|
479
|
-
setopt | sed 's/^/setopt /'
|
|
484
|
+
setopt | sed 's/^/setopt /' | head -n 1000
|
|
480
485
|
`;else B=`
|
|
481
486
|
echo "# Functions"
|
|
482
|
-
|
|
487
|
+
# Force autoload all functions first
|
|
488
|
+
declare -f > /dev/null 2>&1
|
|
489
|
+
# Now get user function names - filter system ones
|
|
490
|
+
declare -F | cut -d' ' -f3 | grep -vE '^(_|__)' | while read func; do
|
|
491
|
+
declare -f "$func"
|
|
492
|
+
done
|
|
483
493
|
|
|
484
494
|
echo "# Shell Options"
|
|
485
|
-
shopt -p
|
|
486
|
-
set -o | grep "on" | awk '{print "set -o " $1}'
|
|
495
|
+
shopt -p | head -n 1000
|
|
496
|
+
set -o | grep "on" | awk '{print "set -o " $1}' | head -n 1000
|
|
487
497
|
echo "shopt -s expand_aliases"
|
|
488
498
|
`;return`SNAPSHOT_FILE=${wX1.default.quote([Z])}
|
|
489
499
|
source "${G}" < /dev/null
|
|
@@ -491,7 +501,7 @@ globstar while`,I,A,Z,K,D),this.matchOne(I.slice(A),Z.slice(K),G))return this.de
|
|
|
491
501
|
${B}
|
|
492
502
|
|
|
493
503
|
echo "# Aliases"
|
|
494
|
-
alias | sed 's/^alias //g' | sed 's/^/alias -- /'
|
|
504
|
+
alias | sed 's/^alias //g' | sed 's/^/alias -- /' | head -n 1000
|
|
495
505
|
echo "export PATH='${process.env.PATH}'"
|
|
496
506
|
} >| $SNAPSHOT_FILE
|
|
497
507
|
`}function HW0(I){try{return OD.accessSync(I,OD.constants.X_OK),!0}catch(Z){try{return JW0(`${I} --version`,{timeout:1000,stdio:"ignore"}),!0}catch{return!1}}}var Nr=O2(function(){let I=(J)=>{try{return JW0(`which ${J}`,{stdio:["ignore","pipe","ignore"]}).toString().trim()}catch{return null}},Z=process.env.SHELL,G=Z&&(Z.includes("bash")||Z.includes("zsh")),W=Z?.includes("bash"),B=I("zsh"),V=I("bash"),Y=["/bin","/usr/bin","/usr/local/bin","/opt/homebrew/bin"],X=(W?["bash","zsh"]:["zsh","bash"]).flatMap((J)=>Y.map((A)=>`${A}/${J}`));if(W){if(V)X.unshift(V);if(B)X.push(B)}else{if(B)X.unshift(B);if(V)X.push(V)}if(G&&HW0(Z))X.unshift(Z);let H=X.find((J)=>J&&HW0(J));if(!H){let J="No suitable shell found. Claude CLI requires a Posix shell environment. Please ensure you have a valid shell installed and the SHELL environment variable set.";throw c1(new Error(J)),new Error(J)}return H});function W89(){let I=Math.floor(Math.random()*65536).toString(16).padStart(4,"0"),Z=Nr(),G=`${XX1.tmpdir()}/claude-shell-snapshot-${I}`;return new Promise((W)=>{try{let B=_W0(Z);if(!YX1(B)){W(void 0);return}let V=G89(Z,G);s69(Z,["-c","-l",V],{env:{...process.env,SHELL:Z,GIT_EDITOR:"true",CLAUDECODE:"1"},timeout:1e4,maxBuffer:1048576},(Y,w,X)=>{if(Y)c1(new Error(`Failed to create shell snapshot: ${X}`)),x1("shell_snapshot_failed",{stderr_length:X.length}),W(void 0);else if(YX1(G)){let H=OD.statSync(G).size;x1("shell_snapshot_created",{snapshot_size:H}),W(G)}else x1("shell_unknown_error",{}),W(void 0)})}catch(B){c1(B instanceof Error?B:new Error(String(B))),x1("shell_snapshot_error",{}),W(void 0)}})}var HX1=O2(async function(){let I=await W89();return{binShell:Nr(),snapshotFilePath:I}});async function KW0(I,Z,G,W=!1){let B=G||Z89,{binShell:V,snapshotFilePath:Y}=await HX1(),w=Math.floor(Math.random()*65536).toString(16).padStart(4,"0"),X=`${XX1.tmpdir()}/claude-${w}-cwd`,H=wX1.default.quote([I,"<","/dev/null"]),J=()=>{};if(W){let z=Ur(H);H=z.finalCommand,J=z.cleanup}let A=[];if(Y)A.push(`source ${Y}`);A.push(`eval ${H}`),A.push(`pwd >| ${X}`);let K=A.join(" && "),D=JX1();if(Z.aborted)return BW0();try{let z=o69(V,["-c","-l",K],{env:{...process.env,SHELL:V,GIT_EDITOR:"true",CLAUDECODE:"1"},cwd:D,detached:!0}),U=WW0(z,Z,B);return U.result.then((N)=>{if(N&&!N.backgroundTaskId)try{ay(OD.readFileSync(X,"utf8").trim(),D)}catch{x1("shell_set_cwd",{success:!1})}J()}).catch(()=>{J()}),J=()=>{},U}finally{J()}}function JX1(){return AW0}function ay(I,Z){let G=t69(I)?I:e69(Z||process.cwd(),I);if(!YX1(G))throw new Error(`Path "${G}" does not exist`);AW0=G,x1("shell_set_cwd",{success:!0})}class AX1 extends TypeError{}class iZ extends Error{}class bL extends Error{filePath;defaultConfig;constructor(I,Z,G){super(I);this.name="ConfigParseError",this.filePath=Z,this.defaultConfig=G}}class p$ extends Error{stdout;stderr;code;interrupted;constructor(I,Z,G,W){super("Shell command failed");this.stdout=I;this.stderr=Z;this.code=G;this.interrupted=W;this.name="ShellError"}}class ry extends Error{content;constructor(I){super("Tool error");this.content=I}}function sy(I,Z){return I instanceof Error&&I.message===Z}var H89=1800000,QW0=143,J89=1,$r=J89*1024*1024;class oy{path;type;constructor(I,Z){this.type=Z,this.path=`${qW0.tmpdir()}/claude-${I}-${Z}`,this.clear()}clear(){jI.writeFileSync(this.path,"")}write(I){jI.writeFileSync(this.path,I)}read(){try{return jI.existsSync(this.path)?jI.readFileSync(this.path,"utf8"):""}catch(I){return c1(new Error(`Failed to read file ${this.path}: ${I}`)),""}}exists(){return jI.existsSync(this.path)}size(){try{return this.exists()?jI.statSync(this.path).size:0}catch{return 0}}delete(){if(this.exists())try{jI.unlinkSync(this.path)}catch(I){c1(new Error(`Failed to delete file ${this.path}: ${I}`))}}}class N6{commandQueue=[];isExecuting=!1;shell;isAlive=!0;commandInterrupted=!1;files;cwd;binShell;cwdDirty=!1;completionCallback=null;getRecentOutput(I,Z){try{let G=this.files[I].path,B=jI.statSync(G).size;if(Z!==void 0&&Z<=B){let V=jI.openSync(G,"r"),Y=B-Z,w=Buffer.alloc(Y);return jI.readSync(V,w,0,Y,Z),jI.closeSync(V),{content:w.toString("utf8"),fileSize:B}}else return x1("persistent_shell_read_full_file",{fileType:I,fileSize:B,startPosition:Z??-1}),{content:jI.readFileSync(G,"utf8"),fileSize:B}}catch(G){return{content:"",fileSize:0}}}getRecentStdout(I){return this.getRecentOutput("stdout",I)}getRecentStderr(I){return this.getRecentOutput("stderr",I)}constructor(I,Z){this.binShell=Nr();let{MANPAGER:G,PAGER:W,...B}=process.env;this.shell=V89(this.binShell,["-l"],{stdio:["pipe","pipe","pipe"],cwd:I,env:{...B,SHELL:this.binShell,GIT_EDITOR:"true",CLAUDECODE:"1"}}),x1("persistent_shell_spawn_success",{has_shell_pid:Boolean(this.shell.pid)}),this.cwd=I,this.shell.on("exit",(w,X)=>this.onExit(w,X));let V=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.files={status:new oy(V,"status"),stdout:new oy(V,"stdout"),stderr:new oy(V,"stderr"),cwd:new oy(V,"cwd")},this.cwd=I,this.cwdDirty=!1,this.files.cwd.write(I);let Y=this.getConfigFile(this.binShell);if(CW0(Y)&&!Z)this.exec(`source ${Y}`,void 0,1000),this.exec(`cd ${I}`,void 0,1000)}onExit(I,Z){let G=I!==0&&I!==null,W={code:I?.toString()||"null",signal:Z||"null",isExecuting:this.isExecuting.toString(),queueLength:this.commandQueue.length.toString(),workingDirectory:this.cwd};if(G)c1(new Error(`Shell exited unexpectedly with code ${I} and signal ${Z}`));x1("persistent_shell_exit",{code:Number(W.code),signal:W.signal,isExecuting:Boolean(W.isExecuting),queueLength:Number(W.queueLength)}),Object.values(this.files).forEach((B)=>B.delete()),this.isAlive=!1}getConfigFile(I){let Z=I.includes("zsh")?".zshrc":this.binShell.includes("bash")?".bashrc":".profile";return X89(B89(),Z)}static instance=null;static restart(){if(N6.instance)N6.instance.close(),N6.instance=null}static hasInstance(){return N6.instance!==null&&N6.instance.isAlive}static getInstance(){if(N6.instance&&!N6.instance.isAlive)N6.restart();if(!N6.instance)N6.instance=new N6(process.cwd());return N6.instance}static setInstance(I){N6.instance=I}killChildren(){let I=this.shell.pid;try{let Z=FW0(`pgrep -P ${I}`,{timeout:1000}).toString().trim().split(`
|
|
@@ -513,7 +523,7 @@ globstar while`,I,A,Z,K,D),this.matchOne(I.slice(A),Z.slice(K),G))return this.de
|
|
|
513
523
|
`)return`
|
|
514
524
|
`}return I&&I.eol||`
|
|
515
525
|
`}function Gb(I,Z){return`\r
|
|
516
|
-
`.indexOf(I.charAt(Z))!==-1}var Wb;(function(I){I.DEFAULT={allowTrailingComma:!1}})(Wb||(Wb={}));function PW0(I,Z=[],G=Wb.DEFAULT){let W=null,B=[],V=[];function Y(X){if(Array.isArray(B))B.push(X);else if(W!==null)B[W]=X}return qX1(I,{onObjectBegin:()=>{let X={};Y(X),V.push(B),B=X,W=null},onObjectProperty:(X)=>{W=X},onObjectEnd:()=>{B=V.pop()},onArrayBegin:()=>{let X=[];Y(X),V.push(B),B=X,W=null},onArrayEnd:()=>{B=V.pop()},onLiteralValue:Y,onError:(X,H,J)=>{Z.push({error:X,offset:H,length:J})}},G),B[0]}function zX1(I,Z=[],G=Wb.DEFAULT){let W={type:"array",offset:-1,length:-1,children:[],parent:void 0};function B(X){if(W.type==="property")W.length=X-W.offset,W=W.parent}function V(X){return W.children.push(X),X}qX1(I,{onObjectBegin:(X)=>{W=V({type:"object",offset:X,length:-1,parent:W,children:[]})},onObjectProperty:(X,H,J)=>{W=V({type:"property",offset:H,length:-1,parent:W,children:[]}),W.children.push({type:"string",value:X,offset:H,length:J,parent:W})},onObjectEnd:(X,H)=>{B(X+H),W.length=X+H-W.offset,W=W.parent,B(X+H)},onArrayBegin:(X,H)=>{W=V({type:"array",offset:X,length:-1,parent:W,children:[]})},onArrayEnd:(X,H)=>{W.length=X+H-W.offset,W=W.parent,B(X+H)},onLiteralValue:(X,H,J)=>{V({type:P89(X),offset:H,length:J,parent:W,value:X}),B(H+J)},onSeparator:(X,H,J)=>{if(W.type==="property"){if(X===":")W.colonOffset=H;else if(X===",")B(H)}},onError:(X,H,J)=>{Z.push({error:X,offset:H,length:J})}},G);let w=W.children[0];if(w)delete w.parent;return w}function Pr(I,Z){if(!I)return;let G=I;for(let W of Z)if(typeof W==="string"){if(G.type!=="object"||!Array.isArray(G.children))return;let B=!1;for(let V of G.children)if(Array.isArray(V.children)&&V.children[0].value===W&&V.children.length===2){G=V.children[1],B=!0;break}if(!B)return}else{let B=W;if(G.type!=="array"||B<0||!Array.isArray(G.children)||B>=G.children.length)return;G=G.children[B]}return G}function qX1(I,Z,G=Wb.DEFAULT){let W=Zb(I,!1),B=[];function V($1){return $1?()=>$1(W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter()):()=>!0}function Y($1){return $1?()=>$1(W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter(),()=>B.slice()):()=>!0}function w($1){return $1?(z1)=>$1(z1,W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter()):()=>!0}function X($1){return $1?(z1)=>$1(z1,W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter(),()=>B.slice()):()=>!0}let H=Y(Z.onObjectBegin),J=X(Z.onObjectProperty),A=V(Z.onObjectEnd),K=Y(Z.onArrayBegin),D=V(Z.onArrayEnd),z=X(Z.onLiteralValue),U=w(Z.onSeparator),N=V(Z.onComment),L=w(Z.onError),g=G&&G.disallowComments,f=G&&G.allowTrailingComma;function P(){while(!0){let $1=W.scan();switch(W.getTokenError()){case 4:M(14);break;case 5:M(15);break;case 3:M(13);break;case 1:if(!g)M(11);break;case 2:M(12);break;case 6:M(16);break}switch($1){case 12:case 13:if(g)M(10);else N();break;case 16:M(1);break;case 15:case 14:break;default:return $1}}}function M($1,z1=[],x=[]){if(L($1),z1.length+x.length>0){let w1=W.getToken();while(w1!==17){if(z1.indexOf(w1)!==-1){P();break}else if(x.indexOf(w1)!==-1)break;w1=P()}}}function d($1){let z1=W.getTokenValue();if($1)z(z1);else J(z1),B.push(z1);return P(),!0}function k(){switch(W.getToken()){case 11:let $1=W.getTokenValue(),z1=Number($1);if(isNaN(z1))M(2),z1=0;z(z1);break;case 7:z(null);break;case 8:z(!0);break;case 9:z(!1);break;default:return!1}return P(),!0}function a(){if(W.getToken()!==10)return M(3,[],[2,5]),!1;if(d(!1),W.getToken()===6){if(U(":"),P(),!Z1())M(4,[],[2,5])}else M(5,[],[2,5]);return B.pop(),!0}function m(){H(),P();let $1=!1;while(W.getToken()!==2&&W.getToken()!==17){if(W.getToken()===5){if(!$1)M(4,[],[]);if(U(","),P(),W.getToken()===2&&f)break}else if($1)M(6,[],[]);if(!a())M(4,[],[2,5]);$1=!0}if(A(),W.getToken()!==2)M(7,[2],[]);else P();return!0}function X1(){K(),P();let $1=!0,z1=!1;while(W.getToken()!==4&&W.getToken()!==17){if(W.getToken()===5){if(!z1)M(4,[],[]);if(U(","),P(),W.getToken()===4&&f)break}else if(z1)M(6,[],[]);if($1)B.push(0),$1=!1;else B[B.length-1]++;if(!Z1())M(4,[],[4,5]);z1=!0}if(D(),!$1)B.pop();if(W.getToken()!==4)M(8,[4],[]);else P();return!0}function Z1(){switch(W.getToken()){case 3:return X1();case 1:return m();case 10:return d(!0);default:return k()}}if(P(),W.getToken()===17){if(G.allowEmptyContent)return!0;return M(4,[],[]),!1}if(!Z1())return M(4,[],[]),!1;if(W.getToken()!==17)M(9,[],[]);return!0}function P89(I){switch(typeof I){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!I)return"null";else if(Array.isArray(I))return"array";return"object"}default:return"null"}}function LW0(I,Z,G,W){let B=Z.slice(),Y=zX1(I,[]),w=void 0,X=void 0;while(B.length>0)if(X=B.pop(),w=Pr(Y,B),w===void 0&&G!==void 0)if(typeof X==="string")G={[X]:G};else G=[G];else break;if(!w){if(G===void 0)throw new Error("Can not delete in empty document");return c$(I,{offset:Y?Y.offset:0,length:Y?Y.length:0,content:JSON.stringify(G)},W)}else if(w.type==="object"&&typeof X==="string"&&Array.isArray(w.children)){let H=Pr(w,[X]);if(H!==void 0)if(G===void 0){if(!H.parent)throw new Error("Malformed AST");let J=w.children.indexOf(H.parent),A,K=H.parent.offset+H.parent.length;if(J>0){let D=w.children[J-1];A=D.offset+D.length}else if(A=w.offset+1,w.children.length>1)K=w.children[1].offset;return c$(I,{offset:A,length:K-A,content:""},W)}else return c$(I,{offset:H.offset,length:H.length,content:JSON.stringify(G)},W);else{if(G===void 0)return[];let J=`${JSON.stringify(X)}: ${JSON.stringify(G)}`,A=W.getInsertionIndex?W.getInsertionIndex(w.children.map((D)=>D.children[0].value)):w.children.length,K;if(A>0){let D=w.children[A-1];K={offset:D.offset+D.length,length:0,content:","+J}}else if(w.children.length===0)K={offset:w.offset+1,length:0,content:J};else K={offset:w.offset+1,length:0,content:J+","};return c$(I,K,W)}}else if(w.type==="array"&&typeof X==="number"&&Array.isArray(w.children)){let H=X;if(H===-1){let J=`${JSON.stringify(G)}`,A;if(w.children.length===0)A={offset:w.offset+1,length:0,content:J};else{let K=w.children[w.children.length-1];A={offset:K.offset+K.length,length:0,content:","+J}}return c$(I,A,W)}else if(G===void 0&&w.children.length>=0){let J=X,A=w.children[J],K;if(w.children.length===1)K={offset:w.offset+1,length:w.length-2,content:""};else if(w.children.length-1===J){let D=w.children[J-1],z=D.offset+D.length,U=w.offset+w.length;K={offset:z,length:U-2-z,content:""}}else K={offset:A.offset,length:w.children[J+1].offset-A.offset,content:""};return c$(I,K,W)}else if(G!==void 0){let J,A=`${JSON.stringify(G)}`;if(!W.isArrayInsertion&&w.children.length>X){let K=w.children[X];J={offset:K.offset,length:K.length,content:A}}else if(w.children.length===0||X===0)J={offset:w.offset+1,length:0,content:w.children.length===0?A:A+","};else{let K=X>w.children.length?w.children.length:X,D=w.children[K-1];J={offset:D.offset+D.length,length:0,content:","+A}}return c$(I,J,W)}else throw new Error(`Can not ${G===void 0?"remove":W.isArrayInsertion?"insert":"modify"} Array index ${H} as length is not sufficient`)}else throw new Error(`Can not add ${typeof X!=="number"?"index":"property"} to parent of type ${w.type}`)}function c$(I,Z,G){if(!G.formattingOptions)return[Z];let W=Lr(I,Z),B=Z.offset,V=Z.offset+Z.content.length;if(Z.length===0||Z.content.length===0){while(B>0&&!Gb(W,B-1))B--;while(V<W.length&&!Gb(W,V))V++}let Y=QX1(W,{offset:B,length:V-B},{...G.formattingOptions,keepLines:!1});for(let X=Y.length-1;X>=0;X--){let H=Y[X];W=Lr(W,H),B=Math.min(B,H.offset),V=Math.max(V,H.offset+H.length),V+=H.content.length-H.length}let w=I.length-(W.length-V)-B;return[{offset:B,length:w,content:W.substring(B,V)}]}function Lr(I,Z){return I.substring(0,Z.offset)+Z.content+I.substring(Z.offset+Z.length)}var SW0;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(SW0||(SW0={}));var dW0;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(dW0||(dW0={}));var UX1=PW0;var OW0;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(OW0||(OW0={}));function vW0(I,Z,G,W){return LW0(I,Z,G,W)}function gW0(I,Z){let G=Z.slice(0).sort((B,V)=>{let Y=B.offset-V.offset;if(Y===0)return B.length-V.length;return Y}),W=I.length;for(let B=G.length-1;B>=0;B--){let V=G[B];if(V.offset+V.length<=W)I=Lr(I,V);else throw new Error("Overlapping edit");W=V.offset}return I}function AZ(I){if(!I)return null;try{return JSON.parse(I)}catch(Z){return c1(Z),null}}function TW0(I){if(!I)return null;try{return UX1(I)}catch(Z){return c1(Z),null}}function yW0(I,Z){try{if(!I||I.trim()==="")return JSON.stringify([Z],null,4);let G=UX1(I);if(Array.isArray(G)){let W=G.length,Y=vW0(I,W===0?[0]:[W],Z,{formattingOptions:{insertSpaces:!0,tabSize:4},isArrayInsertion:!0});if(!Y||Y.length===0){let w=[...G,Z];return JSON.stringify(w,null,4)}return gW0(I,Y)}else return JSON.stringify([Z],null,4)}catch(G){return c1(G),JSON.stringify([Z],null,4)}}var B3;(function(I){I.assertEqual=(B)=>B;function Z(B){}I.assertIs=Z;function G(B){throw new Error}I.assertNever=G,I.arrayToEnum=(B)=>{let V={};for(let Y of B)V[Y]=Y;return V},I.getValidEnumValues=(B)=>{let V=I.objectKeys(B).filter((w)=>typeof B[B[w]]!=="number"),Y={};for(let w of V)Y[w]=B[w];return I.objectValues(Y)},I.objectValues=(B)=>{return I.objectKeys(B).map(function(V){return B[V]})},I.objectKeys=typeof Object.keys==="function"?(B)=>Object.keys(B):(B)=>{let V=[];for(let Y in B)if(Object.prototype.hasOwnProperty.call(B,Y))V.push(Y);return V},I.find=(B,V)=>{for(let Y of B)if(V(Y))return Y;return},I.isInteger=typeof Number.isInteger==="function"?(B)=>Number.isInteger(B):(B)=>typeof B==="number"&&isFinite(B)&&Math.floor(B)===B;function W(B,V=" | "){return B.map((Y)=>typeof Y==="string"?`'${Y}'`:Y).join(V)}I.joinValues=W,I.jsonStringifyReplacer=(B,V)=>{if(typeof V==="bigint")return V.toString();return V}})(B3||(B3={}));var $X1;(function(I){I.mergeShapes=(Z,G)=>{return{...Z,...G}}})($X1||($X1={}));var s2=B3.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),gD=(I)=>{switch(typeof I){case"undefined":return s2.undefined;case"string":return s2.string;case"number":return isNaN(I)?s2.nan:s2.number;case"boolean":return s2.boolean;case"function":return s2.function;case"bigint":return s2.bigint;case"symbol":return s2.symbol;case"object":if(Array.isArray(I))return s2.array;if(I===null)return s2.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return s2.promise;if(typeof Map!=="undefined"&&I instanceof Map)return s2.map;if(typeof Set!=="undefined"&&I instanceof Set)return s2.set;if(typeof Date!=="undefined"&&I instanceof Date)return s2.date;return s2.object;default:return s2.unknown}},A2=B3.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"]),d89=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")};class fY extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(G)=>{this.issues=[...this.issues,G]},this.addIssues=(G=[])=>{this.issues=[...this.issues,...G]};let Z=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Z);else this.__proto__=Z;this.name="ZodError",this.issues=I}format(I){let Z=I||function(B){return B.message},G={_errors:[]},W=(B)=>{for(let V of B.issues)if(V.code==="invalid_union")V.unionErrors.map(W);else if(V.code==="invalid_return_type")W(V.returnTypeError);else if(V.code==="invalid_arguments")W(V.argumentsError);else if(V.path.length===0)G._errors.push(Z(V));else{let Y=G,w=0;while(w<V.path.length){let X=V.path[w];if(w!==V.path.length-1)Y[X]=Y[X]||{_errors:[]};else Y[X]=Y[X]||{_errors:[]},Y[X]._errors.push(Z(V));Y=Y[X],w++}}};return W(this),G}static assert(I){if(!(I instanceof fY))throw new Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,B3.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(Z)=>Z.message){let Z={},G=[];for(let W of this.issues)if(W.path.length>0)Z[W.path[0]]=Z[W.path[0]]||[],Z[W.path[0]].push(I(W));else G.push(I(W));return{formErrors:G,fieldErrors:Z}}get formErrors(){return this.flatten()}}fY.create=(I)=>{return new fY(I)};var lL=(I,Z)=>{let G;switch(I.code){case A2.invalid_type:if(I.received===s2.undefined)G="Required";else G=`Expected ${I.expected}, received ${I.received}`;break;case A2.invalid_literal:G=`Invalid literal value, expected ${JSON.stringify(I.expected,B3.jsonStringifyReplacer)}`;break;case A2.unrecognized_keys:G=`Unrecognized key(s) in object: ${B3.joinValues(I.keys,", ")}`;break;case A2.invalid_union:G="Invalid input";break;case A2.invalid_union_discriminator:G=`Invalid discriminator value. Expected ${B3.joinValues(I.options)}`;break;case A2.invalid_enum_value:G=`Invalid enum value. Expected ${B3.joinValues(I.options)}, received '${I.received}'`;break;case A2.invalid_arguments:G="Invalid function arguments";break;case A2.invalid_return_type:G="Invalid function return type";break;case A2.invalid_date:G="Invalid date";break;case A2.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(G=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")G=`${G} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)G=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)G=`Invalid input: must end with "${I.validation.endsWith}"`;else B3.assertNever(I.validation);else if(I.validation!=="regex")G=`Invalid ${I.validation}`;else G="Invalid";break;case A2.too_small:if(I.type==="array")G=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")G=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")G=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")G=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else G="Invalid input";break;case A2.too_big:if(I.type==="array")G=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")G=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")G=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")G=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")G=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else G="Invalid input";break;case A2.custom:G="Invalid input";break;case A2.invalid_intersection_types:G="Intersection results could not be merged";break;case A2.not_multiple_of:G=`Number must be a multiple of ${I.multipleOf}`;break;case A2.not_finite:G="Number must be finite";break;default:G=Z.defaultError,B3.assertNever(I)}return{message:G}},mW0=lL;function O89(I){mW0=I}function Sr(){return mW0}var dr=(I)=>{let{data:Z,path:G,errorMaps:W,issueData:B}=I,V=[...G,...B.path||[]],Y={...B,path:V};if(B.message!==void 0)return{...B,path:V,message:B.message};let w="",X=W.filter((H)=>!!H).slice().reverse();for(let H of X)w=H(Y,{data:Z,defaultError:w}).message;return{...B,path:V,message:w}},v89=[];function m2(I,Z){let G=Sr(),W=dr({issueData:Z,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,G,G===lL?void 0:lL].filter((B)=>!!B)});I.common.issues.push(W)}class QW{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,Z){let G=[];for(let W of Z){if(W.status==="aborted")return J9;if(W.status==="dirty")I.dirty();G.push(W.value)}return{status:I.value,value:G}}static async mergeObjectAsync(I,Z){let G=[];for(let W of Z){let B=await W.key,V=await W.value;G.push({key:B,value:V})}return QW.mergeObjectSync(I,G)}static mergeObjectSync(I,Z){let G={};for(let W of Z){let{key:B,value:V}=W;if(B.status==="aborted")return J9;if(V.status==="aborted")return J9;if(B.status==="dirty")I.dirty();if(V.status==="dirty")I.dirty();if(B.value!=="__proto__"&&(typeof V.value!=="undefined"||W.alwaysSet))G[B.value]=V.value}return{status:I.value,value:G}}}var J9=Object.freeze({status:"aborted"}),hL=(I)=>({status:"dirty",value:I}),XB=(I)=>({status:"valid",value:I}),RX1=(I)=>I.status==="aborted",EX1=(I)=>I.status==="dirty",i$=(I)=>I.status==="valid",Yb=(I)=>typeof Promise!=="undefined"&&I instanceof Promise;function Or(I,Z,G,W){if(G==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?I!==Z||!W:!Z.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?W:G==="a"?W.call(I):W?W.value:Z.get(I)}function kW0(I,Z,G,W,B){if(W==="m")throw new TypeError("Private method is not writable");if(W==="a"&&!B)throw new TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?I!==Z||!B:!Z.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return W==="a"?B.call(I,G):B?B.value=G:Z.set(I,G),G}var z4;(function(I){I.errToObj=(Z)=>typeof Z==="string"?{message:Z}:Z||{},I.toString=(Z)=>typeof Z==="string"?Z:Z===null||Z===void 0?void 0:Z.message})(z4||(z4={}));var Bb,Vb;class kH{constructor(I,Z,G,W){this._cachedPath=[],this.parent=I,this.data=Z,this._path=G,this._key=W}get path(){if(!this._cachedPath.length)if(this._key instanceof Array)this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var bW0=(I,Z)=>{if(i$(Z))return{success:!0,data:Z.value};else{if(!I.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let G=new fY(I.common.issues);return this._error=G,this._error}}}};function I5(I){if(!I)return{};let{errorMap:Z,invalid_type_error:G,required_error:W,description:B}=I;if(Z&&(G||W))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Z)return{errorMap:Z,description:B};return{errorMap:(Y,w)=>{var X,H;let{message:J}=I;if(Y.code==="invalid_enum_value")return{message:J!==null&&J!==void 0?J:w.defaultError};if(typeof w.data==="undefined")return{message:(X=J!==null&&J!==void 0?J:W)!==null&&X!==void 0?X:w.defaultError};if(Y.code!=="invalid_type")return{message:w.defaultError};return{message:(H=J!==null&&J!==void 0?J:G)!==null&&H!==void 0?H:w.defaultError}},description:B}}class B5{get description(){return this._def.description}_getType(I){return gD(I.data)}_getOrReturnCtx(I,Z){return Z||{common:I.parent.common,data:I.data,parsedType:gD(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new QW,ctx:{common:I.parent.common,data:I.data,parsedType:gD(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let Z=this._parse(I);if(Yb(Z))throw new Error("Synchronous parse encountered promise.");return Z}_parseAsync(I){let Z=this._parse(I);return Promise.resolve(Z)}parse(I,Z){let G=this.safeParse(I,Z);if(G.success)return G.data;throw G.error}safeParse(I,Z){var G;let W={common:{issues:[],async:(G=Z===null||Z===void 0?void 0:Z.async)!==null&&G!==void 0?G:!1,contextualErrorMap:Z===null||Z===void 0?void 0:Z.errorMap},path:(Z===null||Z===void 0?void 0:Z.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)},B=this._parseSync({data:I,path:W.path,parent:W});return bW0(W,B)}"~validate"(I){var Z,G;let W={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)};if(!this["~standard"].async)try{let B=this._parseSync({data:I,path:[],parent:W});return i$(B)?{value:B.value}:{issues:W.common.issues}}catch(B){if((G=(Z=B===null||B===void 0?void 0:B.message)===null||Z===void 0?void 0:Z.toLowerCase())===null||G===void 0?void 0:G.includes("encountered"))this["~standard"].async=!0;W.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:W}).then((B)=>i$(B)?{value:B.value}:{issues:W.common.issues})}async parseAsync(I,Z){let G=await this.safeParseAsync(I,Z);if(G.success)return G.data;throw G.error}async safeParseAsync(I,Z){let G={common:{issues:[],contextualErrorMap:Z===null||Z===void 0?void 0:Z.errorMap,async:!0},path:(Z===null||Z===void 0?void 0:Z.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)},W=this._parse({data:I,path:G.path,parent:G}),B=await(Yb(W)?W:Promise.resolve(W));return bW0(G,B)}refine(I,Z){let G=(W)=>{if(typeof Z==="string"||typeof Z==="undefined")return{message:Z};else if(typeof Z==="function")return Z(W);else return Z};return this._refinement((W,B)=>{let V=I(W),Y=()=>B.addIssue({code:A2.custom,...G(W)});if(typeof Promise!=="undefined"&&V instanceof Promise)return V.then((w)=>{if(!w)return Y(),!1;else return!0});if(!V)return Y(),!1;else return!0})}refinement(I,Z){return this._refinement((G,W)=>{if(!I(G))return W.addIssue(typeof Z==="function"?Z(G,W):Z),!1;else return!0})}_refinement(I){return new GX({schema:this,typeName:C2.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,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:(Z)=>this["~validate"](Z)}}optional(){return PY.create(this,this._def)}nullable(){return TD.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return mH.create(this)}promise(){return s$.create(this,this._def)}or(I){return aL.create([this,I],this._def)}and(I){return rL.create(this,I,this._def)}transform(I){return new GX({...I5(this._def),schema:this,typeName:C2.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let Z=typeof I==="function"?I:()=>I;return new eL({...I5(this._def),innerType:this,defaultValue:Z,typeName:C2.ZodDefault})}brand(){return new gr({typeName:C2.ZodBranded,type:this,...I5(this._def)})}catch(I){let Z=typeof I==="function"?I:()=>I;return new IS({...I5(this._def),innerType:this,catchValue:Z,typeName:C2.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return _b.create(this,I)}readonly(){return ZS.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var g89=/^c[^\s-]{8,}$/i,T89=/^[0-9a-z]+$/,y89=/^[0-9A-HJKMNP-TV-Z]{26}$/i,b89=/^[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,j89=/^[a-z0-9_-]{21}$/i,m89=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,k89=/^[-+]?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)?)??$/,x89=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u89="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",NX1,h89=/^(?:(?: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])$/,p89=/^(?:(?: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])$/,l89=/^(([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]))$/,c89=/^(([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])$/,i89=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,n89=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xW0="((\\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])))",a89=new RegExp(`^${xW0}$`);function uW0(I){let Z="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";if(I.precision)Z=`${Z}\\.\\d{${I.precision}}`;else if(I.precision==null)Z=`${Z}(\\.\\d+)?`;return Z}function r89(I){return new RegExp(`^${uW0(I)}$`)}function hW0(I){let Z=`${xW0}T${uW0(I)}`,G=[];if(G.push(I.local?"Z?":"Z"),I.offset)G.push("([+-]\\d{2}:?\\d{2})");return Z=`${Z}(${G.join("|")})`,new RegExp(`^${Z}$`)}function s89(I,Z){if((Z==="v4"||!Z)&&h89.test(I))return!0;if((Z==="v6"||!Z)&&l89.test(I))return!0;return!1}function o89(I,Z){if(!m89.test(I))return!1;try{let[G]=I.split("."),W=G.replace(/-/g,"+").replace(/_/g,"/").padEnd(G.length+(4-G.length%4)%4,"="),B=JSON.parse(atob(W));if(typeof B!=="object"||B===null)return!1;if(!B.typ||!B.alg)return!1;if(Z&&B.alg!==Z)return!1;return!0}catch(G){return!1}}function t89(I,Z){if((Z==="v4"||!Z)&&p89.test(I))return!0;if((Z==="v6"||!Z)&&c89.test(I))return!0;return!1}class jH extends B5{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==s2.string){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.string,received:B.parsedType}),J9}let G=new QW,W=void 0;for(let B of this._def.checks)if(B.kind==="min"){if(I.data.length<B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_small,minimum:B.value,type:"string",inclusive:!0,exact:!1,message:B.message}),G.dirty()}else if(B.kind==="max"){if(I.data.length>B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_big,maximum:B.value,type:"string",inclusive:!0,exact:!1,message:B.message}),G.dirty()}else if(B.kind==="length"){let V=I.data.length>B.value,Y=I.data.length<B.value;if(V||Y){if(W=this._getOrReturnCtx(I,W),V)m2(W,{code:A2.too_big,maximum:B.value,type:"string",inclusive:!0,exact:!0,message:B.message});else if(Y)m2(W,{code:A2.too_small,minimum:B.value,type:"string",inclusive:!0,exact:!0,message:B.message});G.dirty()}}else if(B.kind==="email"){if(!x89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"email",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="emoji"){if(!NX1)NX1=new RegExp(u89,"u");if(!NX1.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"emoji",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="uuid"){if(!b89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"uuid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="nanoid"){if(!j89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"nanoid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cuid"){if(!g89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cuid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cuid2"){if(!T89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cuid2",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="ulid"){if(!y89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"ulid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="url")try{new URL(I.data)}catch(V){W=this._getOrReturnCtx(I,W),m2(W,{validation:"url",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="regex"){if(B.regex.lastIndex=0,!B.regex.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"regex",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="trim")I.data=I.data.trim();else if(B.kind==="includes"){if(!I.data.includes(B.value,B.position))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{includes:B.value,position:B.position},message:B.message}),G.dirty()}else if(B.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(B.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(B.kind==="startsWith"){if(!I.data.startsWith(B.value))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{startsWith:B.value},message:B.message}),G.dirty()}else if(B.kind==="endsWith"){if(!I.data.endsWith(B.value))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{endsWith:B.value},message:B.message}),G.dirty()}else if(B.kind==="datetime"){if(!hW0(B).test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"datetime",message:B.message}),G.dirty()}else if(B.kind==="date"){if(!a89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"date",message:B.message}),G.dirty()}else if(B.kind==="time"){if(!r89(B).test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"time",message:B.message}),G.dirty()}else if(B.kind==="duration"){if(!k89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"duration",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="ip"){if(!s89(I.data,B.version))W=this._getOrReturnCtx(I,W),m2(W,{validation:"ip",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="jwt"){if(!o89(I.data,B.alg))W=this._getOrReturnCtx(I,W),m2(W,{validation:"jwt",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cidr"){if(!t89(I.data,B.version))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cidr",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="base64"){if(!i89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"base64",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="base64url"){if(!n89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"base64url",code:A2.invalid_string,message:B.message}),G.dirty()}else B3.assertNever(B);return{status:G.value,value:I.data}}_regex(I,Z,G){return this.refinement((W)=>I.test(W),{validation:Z,code:A2.invalid_string,...z4.errToObj(G)})}_addCheck(I){return new jH({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...z4.errToObj(I)})}url(I){return this._addCheck({kind:"url",...z4.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...z4.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...z4.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...z4.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...z4.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...z4.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...z4.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...z4.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...z4.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...z4.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...z4.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...z4.errToObj(I)})}datetime(I){var Z,G;if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,offset:(Z=I===null||I===void 0?void 0:I.offset)!==null&&Z!==void 0?Z:!1,local:(G=I===null||I===void 0?void 0:I.local)!==null&&G!==void 0?G:!1,...z4.errToObj(I===null||I===void 0?void 0:I.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,...z4.errToObj(I===null||I===void 0?void 0:I.message)})}duration(I){return this._addCheck({kind:"duration",...z4.errToObj(I)})}regex(I,Z){return this._addCheck({kind:"regex",regex:I,...z4.errToObj(Z)})}includes(I,Z){return this._addCheck({kind:"includes",value:I,position:Z===null||Z===void 0?void 0:Z.position,...z4.errToObj(Z===null||Z===void 0?void 0:Z.message)})}startsWith(I,Z){return this._addCheck({kind:"startsWith",value:I,...z4.errToObj(Z)})}endsWith(I,Z){return this._addCheck({kind:"endsWith",value:I,...z4.errToObj(Z)})}min(I,Z){return this._addCheck({kind:"min",value:I,...z4.errToObj(Z)})}max(I,Z){return this._addCheck({kind:"max",value:I,...z4.errToObj(Z)})}length(I,Z){return this._addCheck({kind:"length",value:I,...z4.errToObj(Z)})}nonempty(I){return this.min(1,z4.errToObj(I))}trim(){return new jH({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new jH({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new jH({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxLength(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}}jH.create=(I)=>{var Z;return new jH({checks:[],typeName:C2.ZodString,coerce:(Z=I===null||I===void 0?void 0:I.coerce)!==null&&Z!==void 0?Z:!1,...I5(I)})};function e89(I,Z){let G=(I.toString().split(".")[1]||"").length,W=(Z.toString().split(".")[1]||"").length,B=G>W?G:W,V=parseInt(I.toFixed(B).replace(".","")),Y=parseInt(Z.toFixed(B).replace(".",""));return V%Y/Math.pow(10,B)}class Az extends B5{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==s2.number){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.number,received:B.parsedType}),J9}let G=void 0,W=new QW;for(let B of this._def.checks)if(B.kind==="int"){if(!B3.isInteger(I.data))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.invalid_type,expected:"integer",received:"float",message:B.message}),W.dirty()}else if(B.kind==="min"){if(B.inclusive?I.data<B.value:I.data<=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_small,minimum:B.value,type:"number",inclusive:B.inclusive,exact:!1,message:B.message}),W.dirty()}else if(B.kind==="max"){if(B.inclusive?I.data>B.value:I.data>=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_big,maximum:B.value,type:"number",inclusive:B.inclusive,exact:!1,message:B.message}),W.dirty()}else if(B.kind==="multipleOf"){if(e89(I.data,B.value)!==0)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_multiple_of,multipleOf:B.value,message:B.message}),W.dirty()}else if(B.kind==="finite"){if(!Number.isFinite(I.data))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_finite,message:B.message}),W.dirty()}else B3.assertNever(B);return{status:W.value,value:I.data}}gte(I,Z){return this.setLimit("min",I,!0,z4.toString(Z))}gt(I,Z){return this.setLimit("min",I,!1,z4.toString(Z))}lte(I,Z){return this.setLimit("max",I,!0,z4.toString(Z))}lt(I,Z){return this.setLimit("max",I,!1,z4.toString(Z))}setLimit(I,Z,G,W){return new Az({...this._def,checks:[...this._def.checks,{kind:I,value:Z,inclusive:G,message:z4.toString(W)}]})}_addCheck(I){return new Az({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:z4.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:z4.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:z4.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:z4.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:z4.toString(I)})}multipleOf(I,Z){return this._addCheck({kind:"multipleOf",value:I,message:z4.toString(Z)})}finite(I){return this._addCheck({kind:"finite",message:z4.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:z4.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:z4.toString(I)})}get minValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&B3.isInteger(I.value))}get isFinite(){let I=null,Z=null;for(let G of this._def.checks)if(G.kind==="finite"||G.kind==="int"||G.kind==="multipleOf")return!0;else if(G.kind==="min"){if(Z===null||G.value>Z)Z=G.value}else if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return Number.isFinite(Z)&&Number.isFinite(I)}}Az.create=(I)=>{return new Az({checks:[],typeName:C2.ZodNumber,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...I5(I)})};class _z extends B5{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch(B){return this._getInvalidInput(I)}if(this._getType(I)!==s2.bigint)return this._getInvalidInput(I);let G=void 0,W=new QW;for(let B of this._def.checks)if(B.kind==="min"){if(B.inclusive?I.data<B.value:I.data<=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_small,type:"bigint",minimum:B.value,inclusive:B.inclusive,message:B.message}),W.dirty()}else if(B.kind==="max"){if(B.inclusive?I.data>B.value:I.data>=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_big,type:"bigint",maximum:B.value,inclusive:B.inclusive,message:B.message}),W.dirty()}else if(B.kind==="multipleOf"){if(I.data%B.value!==BigInt(0))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_multiple_of,multipleOf:B.value,message:B.message}),W.dirty()}else B3.assertNever(B);return{status:W.value,value:I.data}}_getInvalidInput(I){let Z=this._getOrReturnCtx(I);return m2(Z,{code:A2.invalid_type,expected:s2.bigint,received:Z.parsedType}),J9}gte(I,Z){return this.setLimit("min",I,!0,z4.toString(Z))}gt(I,Z){return this.setLimit("min",I,!1,z4.toString(Z))}lte(I,Z){return this.setLimit("max",I,!0,z4.toString(Z))}lt(I,Z){return this.setLimit("max",I,!1,z4.toString(Z))}setLimit(I,Z,G,W){return new _z({...this._def,checks:[...this._def.checks,{kind:I,value:Z,inclusive:G,message:z4.toString(W)}]})}_addCheck(I){return new _z({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:z4.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:z4.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:z4.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:z4.toString(I)})}multipleOf(I,Z){return this._addCheck({kind:"multipleOf",value:I,message:z4.toString(Z)})}get minValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}}_z.create=(I)=>{var Z;return new _z({checks:[],typeName:C2.ZodBigInt,coerce:(Z=I===null||I===void 0?void 0:I.coerce)!==null&&Z!==void 0?Z:!1,...I5(I)})};class cL extends B5{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==s2.boolean){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.boolean,received:G.parsedType}),J9}return XB(I.data)}}cL.create=(I)=>{return new cL({typeName:C2.ZodBoolean,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...I5(I)})};class n$ extends B5{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==s2.date){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.date,received:B.parsedType}),J9}if(isNaN(I.data.getTime())){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_date}),J9}let G=new QW,W=void 0;for(let B of this._def.checks)if(B.kind==="min"){if(I.data.getTime()<B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_small,message:B.message,inclusive:!0,exact:!1,minimum:B.value,type:"date"}),G.dirty()}else if(B.kind==="max"){if(I.data.getTime()>B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_big,message:B.message,inclusive:!0,exact:!1,maximum:B.value,type:"date"}),G.dirty()}else B3.assertNever(B);return{status:G.value,value:new Date(I.data.getTime())}}_addCheck(I){return new n$({...this._def,checks:[...this._def.checks,I]})}min(I,Z){return this._addCheck({kind:"min",value:I.getTime(),message:z4.toString(Z)})}max(I,Z){return this._addCheck({kind:"max",value:I.getTime(),message:z4.toString(Z)})}get minDate(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I!=null?new Date(I):null}}n$.create=(I)=>{return new n$({checks:[],coerce:(I===null||I===void 0?void 0:I.coerce)||!1,typeName:C2.ZodDate,...I5(I)})};class wb extends B5{_parse(I){if(this._getType(I)!==s2.symbol){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.symbol,received:G.parsedType}),J9}return XB(I.data)}}wb.create=(I)=>{return new wb({typeName:C2.ZodSymbol,...I5(I)})};class iL extends B5{_parse(I){if(this._getType(I)!==s2.undefined){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.undefined,received:G.parsedType}),J9}return XB(I.data)}}iL.create=(I)=>{return new iL({typeName:C2.ZodUndefined,...I5(I)})};class nL extends B5{_parse(I){if(this._getType(I)!==s2.null){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.null,received:G.parsedType}),J9}return XB(I.data)}}nL.create=(I)=>{return new nL({typeName:C2.ZodNull,...I5(I)})};class a$ extends B5{constructor(){super(...arguments);this._any=!0}_parse(I){return XB(I.data)}}a$.create=(I)=>{return new a$({typeName:C2.ZodAny,...I5(I)})};class Jz extends B5{constructor(){super(...arguments);this._unknown=!0}_parse(I){return XB(I.data)}}Jz.create=(I)=>{return new Jz({typeName:C2.ZodUnknown,...I5(I)})};class tA extends B5{_parse(I){let Z=this._getOrReturnCtx(I);return m2(Z,{code:A2.invalid_type,expected:s2.never,received:Z.parsedType}),J9}}tA.create=(I)=>{return new tA({typeName:C2.ZodNever,...I5(I)})};class Xb extends B5{_parse(I){if(this._getType(I)!==s2.undefined){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.void,received:G.parsedType}),J9}return XB(I.data)}}Xb.create=(I)=>{return new Xb({typeName:C2.ZodVoid,...I5(I)})};class mH extends B5{_parse(I){let{ctx:Z,status:G}=this._processInputParams(I),W=this._def;if(Z.parsedType!==s2.array)return m2(Z,{code:A2.invalid_type,expected:s2.array,received:Z.parsedType}),J9;if(W.exactLength!==null){let V=Z.data.length>W.exactLength.value,Y=Z.data.length<W.exactLength.value;if(V||Y)m2(Z,{code:V?A2.too_big:A2.too_small,minimum:Y?W.exactLength.value:void 0,maximum:V?W.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:W.exactLength.message}),G.dirty()}if(W.minLength!==null){if(Z.data.length<W.minLength.value)m2(Z,{code:A2.too_small,minimum:W.minLength.value,type:"array",inclusive:!0,exact:!1,message:W.minLength.message}),G.dirty()}if(W.maxLength!==null){if(Z.data.length>W.maxLength.value)m2(Z,{code:A2.too_big,maximum:W.maxLength.value,type:"array",inclusive:!0,exact:!1,message:W.maxLength.message}),G.dirty()}if(Z.common.async)return Promise.all([...Z.data].map((V,Y)=>{return W.type._parseAsync(new kH(Z,V,Z.path,Y))})).then((V)=>{return QW.mergeArray(G,V)});let B=[...Z.data].map((V,Y)=>{return W.type._parseSync(new kH(Z,V,Z.path,Y))});return QW.mergeArray(G,B)}get element(){return this._def.type}min(I,Z){return new mH({...this._def,minLength:{value:I,message:z4.toString(Z)}})}max(I,Z){return new mH({...this._def,maxLength:{value:I,message:z4.toString(Z)}})}length(I,Z){return new mH({...this._def,exactLength:{value:I,message:z4.toString(Z)}})}nonempty(I){return this.min(1,I)}}mH.create=(I,Z)=>{return new mH({type:I,minLength:null,maxLength:null,exactLength:null,typeName:C2.ZodArray,...I5(Z)})};function uL(I){if(I instanceof I7){let Z={};for(let G in I.shape){let W=I.shape[G];Z[G]=PY.create(uL(W))}return new I7({...I._def,shape:()=>Z})}else if(I instanceof mH)return new mH({...I._def,type:uL(I.element)});else if(I instanceof PY)return PY.create(uL(I.unwrap()));else if(I instanceof TD)return TD.create(uL(I.unwrap()));else if(I instanceof eA)return eA.create(I.items.map((Z)=>uL(Z)));else return I}class I7 extends B5{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),Z=B3.objectKeys(I);return this._cached={shape:I,keys:Z}}_parse(I){if(this._getType(I)!==s2.object){let X=this._getOrReturnCtx(I);return m2(X,{code:A2.invalid_type,expected:s2.object,received:X.parsedType}),J9}let{status:G,ctx:W}=this._processInputParams(I),{shape:B,keys:V}=this._getCached(),Y=[];if(!(this._def.catchall instanceof tA&&this._def.unknownKeys==="strip")){for(let X in W.data)if(!V.includes(X))Y.push(X)}let w=[];for(let X of V){let H=B[X],J=W.data[X];w.push({key:{status:"valid",value:X},value:H._parse(new kH(W,J,W.path,X)),alwaysSet:X in W.data})}if(this._def.catchall instanceof tA){let X=this._def.unknownKeys;if(X==="passthrough")for(let H of Y)w.push({key:{status:"valid",value:H},value:{status:"valid",value:W.data[H]}});else if(X==="strict"){if(Y.length>0)m2(W,{code:A2.unrecognized_keys,keys:Y}),G.dirty()}else if(X==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let X=this._def.catchall;for(let H of Y){let J=W.data[H];w.push({key:{status:"valid",value:H},value:X._parse(new kH(W,J,W.path,H)),alwaysSet:H in W.data})}}if(W.common.async)return Promise.resolve().then(async()=>{let X=[];for(let H of w){let J=await H.key,A=await H.value;X.push({key:J,value:A,alwaysSet:H.alwaysSet})}return X}).then((X)=>{return QW.mergeObjectSync(G,X)});else return QW.mergeObjectSync(G,w)}get shape(){return this._def.shape()}strict(I){return z4.errToObj,new I7({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(Z,G)=>{var W,B,V,Y;let w=(V=(B=(W=this._def).errorMap)===null||B===void 0?void 0:B.call(W,Z,G).message)!==null&&V!==void 0?V:G.defaultError;if(Z.code==="unrecognized_keys")return{message:(Y=z4.errToObj(I).message)!==null&&Y!==void 0?Y:w};return{message:w}}}:{}})}strip(){return new I7({...this._def,unknownKeys:"strip"})}passthrough(){return new I7({...this._def,unknownKeys:"passthrough"})}extend(I){return new I7({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new I7({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:C2.ZodObject})}setKey(I,Z){return this.augment({[I]:Z})}catchall(I){return new I7({...this._def,catchall:I})}pick(I){let Z={};return B3.objectKeys(I).forEach((G)=>{if(I[G]&&this.shape[G])Z[G]=this.shape[G]}),new I7({...this._def,shape:()=>Z})}omit(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{if(!I[G])Z[G]=this.shape[G]}),new I7({...this._def,shape:()=>Z})}deepPartial(){return uL(this)}partial(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{let W=this.shape[G];if(I&&!I[G])Z[G]=W;else Z[G]=W.optional()}),new I7({...this._def,shape:()=>Z})}required(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{if(I&&!I[G])Z[G]=this.shape[G];else{let B=this.shape[G];while(B instanceof PY)B=B._def.innerType;Z[G]=B}}),new I7({...this._def,shape:()=>Z})}keyof(){return pW0(B3.objectKeys(this.shape))}}I7.create=(I,Z)=>{return new I7({shape:()=>I,unknownKeys:"strip",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};I7.strictCreate=(I,Z)=>{return new I7({shape:()=>I,unknownKeys:"strict",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};I7.lazycreate=(I,Z)=>{return new I7({shape:I,unknownKeys:"strip",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};class aL extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=this._def.options;function W(B){for(let Y of B)if(Y.result.status==="valid")return Y.result;for(let Y of B)if(Y.result.status==="dirty")return Z.common.issues.push(...Y.ctx.common.issues),Y.result;let V=B.map((Y)=>new fY(Y.ctx.common.issues));return m2(Z,{code:A2.invalid_union,unionErrors:V}),J9}if(Z.common.async)return Promise.all(G.map(async(B)=>{let V={...Z,common:{...Z.common,issues:[]},parent:null};return{result:await B._parseAsync({data:Z.data,path:Z.path,parent:V}),ctx:V}})).then(W);else{let B=void 0,V=[];for(let w of G){let X={...Z,common:{...Z.common,issues:[]},parent:null},H=w._parseSync({data:Z.data,path:Z.path,parent:X});if(H.status==="valid")return H;else if(H.status==="dirty"&&!B)B={result:H,ctx:X};if(X.common.issues.length)V.push(X.common.issues)}if(B)return Z.common.issues.push(...B.ctx.common.issues),B.result;let Y=V.map((w)=>new fY(w));return m2(Z,{code:A2.invalid_union,unionErrors:Y}),J9}}get options(){return this._def.options}}aL.create=(I,Z)=>{return new aL({options:I,typeName:C2.ZodUnion,...I5(Z)})};var vD=(I)=>{if(I instanceof sL)return vD(I.schema);else if(I instanceof GX)return vD(I.innerType());else if(I instanceof oL)return[I.value];else if(I instanceof Kz)return I.options;else if(I instanceof tL)return B3.objectValues(I.enum);else if(I instanceof eL)return vD(I._def.innerType);else if(I instanceof iL)return[void 0];else if(I instanceof nL)return[null];else if(I instanceof PY)return[void 0,...vD(I.unwrap())];else if(I instanceof TD)return[null,...vD(I.unwrap())];else if(I instanceof gr)return vD(I.unwrap());else if(I instanceof ZS)return vD(I.unwrap());else if(I instanceof IS)return vD(I._def.innerType);else return[]};class vr extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.object)return m2(Z,{code:A2.invalid_type,expected:s2.object,received:Z.parsedType}),J9;let G=this.discriminator,W=Z.data[G],B=this.optionsMap.get(W);if(!B)return m2(Z,{code:A2.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[G]}),J9;if(Z.common.async)return B._parseAsync({data:Z.data,path:Z.path,parent:Z});else return B._parseSync({data:Z.data,path:Z.path,parent:Z})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,Z,G){let W=new Map;for(let B of Z){let V=vD(B.shape[I]);if(!V.length)throw new Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let Y of V){if(W.has(Y))throw new Error(`Discriminator property ${String(I)} has duplicate value ${String(Y)}`);W.set(Y,B)}}return new vr({typeName:C2.ZodDiscriminatedUnion,discriminator:I,options:Z,optionsMap:W,...I5(G)})}}function MX1(I,Z){let G=gD(I),W=gD(Z);if(I===Z)return{valid:!0,data:I};else if(G===s2.object&&W===s2.object){let B=B3.objectKeys(Z),V=B3.objectKeys(I).filter((w)=>B.indexOf(w)!==-1),Y={...I,...Z};for(let w of V){let X=MX1(I[w],Z[w]);if(!X.valid)return{valid:!1};Y[w]=X.data}return{valid:!0,data:Y}}else if(G===s2.array&&W===s2.array){if(I.length!==Z.length)return{valid:!1};let B=[];for(let V=0;V<I.length;V++){let Y=I[V],w=Z[V],X=MX1(Y,w);if(!X.valid)return{valid:!1};B.push(X.data)}return{valid:!0,data:B}}else if(G===s2.date&&W===s2.date&&+I===+Z)return{valid:!0,data:I};else return{valid:!1}}class rL extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I),W=(B,V)=>{if(RX1(B)||RX1(V))return J9;let Y=MX1(B.value,V.value);if(!Y.valid)return m2(G,{code:A2.invalid_intersection_types}),J9;if(EX1(B)||EX1(V))Z.dirty();return{status:Z.value,value:Y.data}};if(G.common.async)return Promise.all([this._def.left._parseAsync({data:G.data,path:G.path,parent:G}),this._def.right._parseAsync({data:G.data,path:G.path,parent:G})]).then(([B,V])=>W(B,V));else return W(this._def.left._parseSync({data:G.data,path:G.path,parent:G}),this._def.right._parseSync({data:G.data,path:G.path,parent:G}))}}rL.create=(I,Z,G)=>{return new rL({left:I,right:Z,typeName:C2.ZodIntersection,...I5(G)})};class eA extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.array)return m2(G,{code:A2.invalid_type,expected:s2.array,received:G.parsedType}),J9;if(G.data.length<this._def.items.length)return m2(G,{code:A2.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),J9;if(!this._def.rest&&G.data.length>this._def.items.length)m2(G,{code:A2.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z.dirty();let B=[...G.data].map((V,Y)=>{let w=this._def.items[Y]||this._def.rest;if(!w)return null;return w._parse(new kH(G,V,G.path,Y))}).filter((V)=>!!V);if(G.common.async)return Promise.all(B).then((V)=>{return QW.mergeArray(Z,V)});else return QW.mergeArray(Z,B)}get items(){return this._def.items}rest(I){return new eA({...this._def,rest:I})}}eA.create=(I,Z)=>{if(!Array.isArray(I))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new eA({items:I,typeName:C2.ZodTuple,rest:null,...I5(Z)})};class Hb extends B5{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.object)return m2(G,{code:A2.invalid_type,expected:s2.object,received:G.parsedType}),J9;let W=[],B=this._def.keyType,V=this._def.valueType;for(let Y in G.data)W.push({key:B._parse(new kH(G,Y,G.path,Y)),value:V._parse(new kH(G,G.data[Y],G.path,Y)),alwaysSet:Y in G.data});if(G.common.async)return QW.mergeObjectAsync(Z,W);else return QW.mergeObjectSync(Z,W)}get element(){return this._def.valueType}static create(I,Z,G){if(Z instanceof B5)return new Hb({keyType:I,valueType:Z,typeName:C2.ZodRecord,...I5(G)});return new Hb({keyType:jH.create(),valueType:I,typeName:C2.ZodRecord,...I5(Z)})}}class Jb extends B5{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.map)return m2(G,{code:A2.invalid_type,expected:s2.map,received:G.parsedType}),J9;let W=this._def.keyType,B=this._def.valueType,V=[...G.data.entries()].map(([Y,w],X)=>{return{key:W._parse(new kH(G,Y,G.path,[X,"key"])),value:B._parse(new kH(G,w,G.path,[X,"value"]))}});if(G.common.async){let Y=new Map;return Promise.resolve().then(async()=>{for(let w of V){let X=await w.key,H=await w.value;if(X.status==="aborted"||H.status==="aborted")return J9;if(X.status==="dirty"||H.status==="dirty")Z.dirty();Y.set(X.value,H.value)}return{status:Z.value,value:Y}})}else{let Y=new Map;for(let w of V){let{key:X,value:H}=w;if(X.status==="aborted"||H.status==="aborted")return J9;if(X.status==="dirty"||H.status==="dirty")Z.dirty();Y.set(X.value,H.value)}return{status:Z.value,value:Y}}}}Jb.create=(I,Z,G)=>{return new Jb({valueType:Z,keyType:I,typeName:C2.ZodMap,...I5(G)})};class r$ extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.set)return m2(G,{code:A2.invalid_type,expected:s2.set,received:G.parsedType}),J9;let W=this._def;if(W.minSize!==null){if(G.data.size<W.minSize.value)m2(G,{code:A2.too_small,minimum:W.minSize.value,type:"set",inclusive:!0,exact:!1,message:W.minSize.message}),Z.dirty()}if(W.maxSize!==null){if(G.data.size>W.maxSize.value)m2(G,{code:A2.too_big,maximum:W.maxSize.value,type:"set",inclusive:!0,exact:!1,message:W.maxSize.message}),Z.dirty()}let B=this._def.valueType;function V(w){let X=new Set;for(let H of w){if(H.status==="aborted")return J9;if(H.status==="dirty")Z.dirty();X.add(H.value)}return{status:Z.value,value:X}}let Y=[...G.data.values()].map((w,X)=>B._parse(new kH(G,w,G.path,X)));if(G.common.async)return Promise.all(Y).then((w)=>V(w));else return V(Y)}min(I,Z){return new r$({...this._def,minSize:{value:I,message:z4.toString(Z)}})}max(I,Z){return new r$({...this._def,maxSize:{value:I,message:z4.toString(Z)}})}size(I,Z){return this.min(I,Z).max(I,Z)}nonempty(I){return this.min(1,I)}}r$.create=(I,Z)=>{return new r$({valueType:I,minSize:null,maxSize:null,typeName:C2.ZodSet,...I5(Z)})};class pL extends B5{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.function)return m2(Z,{code:A2.invalid_type,expected:s2.function,received:Z.parsedType}),J9;function G(Y,w){return dr({data:Y,path:Z.path,errorMaps:[Z.common.contextualErrorMap,Z.schemaErrorMap,Sr(),lL].filter((X)=>!!X),issueData:{code:A2.invalid_arguments,argumentsError:w}})}function W(Y,w){return dr({data:Y,path:Z.path,errorMaps:[Z.common.contextualErrorMap,Z.schemaErrorMap,Sr(),lL].filter((X)=>!!X),issueData:{code:A2.invalid_return_type,returnTypeError:w}})}let B={errorMap:Z.common.contextualErrorMap},V=Z.data;if(this._def.returns instanceof s$){let Y=this;return XB(async function(...w){let X=new fY([]),H=await Y._def.args.parseAsync(w,B).catch((K)=>{throw X.addIssue(G(w,K)),X}),J=await Reflect.apply(V,this,H);return await Y._def.returns._def.type.parseAsync(J,B).catch((K)=>{throw X.addIssue(W(J,K)),X})})}else{let Y=this;return XB(function(...w){let X=Y._def.args.safeParse(w,B);if(!X.success)throw new fY([G(w,X.error)]);let H=Reflect.apply(V,this,X.data),J=Y._def.returns.safeParse(H,B);if(!J.success)throw new fY([W(H,J.error)]);return J.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new pL({...this._def,args:eA.create(I).rest(Jz.create())})}returns(I){return new pL({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,Z,G){return new pL({args:I?I:eA.create([]).rest(Jz.create()),returns:Z||Jz.create(),typeName:C2.ZodFunction,...I5(G)})}}class sL extends B5{get schema(){return this._def.getter()}_parse(I){let{ctx:Z}=this._processInputParams(I);return this._def.getter()._parse({data:Z.data,path:Z.path,parent:Z})}}sL.create=(I,Z)=>{return new sL({getter:I,typeName:C2.ZodLazy,...I5(Z)})};class oL extends B5{_parse(I){if(I.data!==this._def.value){let Z=this._getOrReturnCtx(I);return m2(Z,{received:Z.data,code:A2.invalid_literal,expected:this._def.value}),J9}return{status:"valid",value:I.data}}get value(){return this._def.value}}oL.create=(I,Z)=>{return new oL({value:I,typeName:C2.ZodLiteral,...I5(Z)})};function pW0(I,Z){return new Kz({values:I,typeName:C2.ZodEnum,...I5(Z)})}class Kz extends B5{constructor(){super(...arguments);Bb.set(this,void 0)}_parse(I){if(typeof I.data!=="string"){let Z=this._getOrReturnCtx(I),G=this._def.values;return m2(Z,{expected:B3.joinValues(G),received:Z.parsedType,code:A2.invalid_type}),J9}if(!Or(this,Bb,"f"))kW0(this,Bb,new Set(this._def.values),"f");if(!Or(this,Bb,"f").has(I.data)){let Z=this._getOrReturnCtx(I),G=this._def.values;return m2(Z,{received:Z.data,code:A2.invalid_enum_value,options:G}),J9}return XB(I.data)}get options(){return this._def.values}get enum(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}get Values(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}get Enum(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}extract(I,Z=this._def){return Kz.create(I,{...this._def,...Z})}exclude(I,Z=this._def){return Kz.create(this.options.filter((G)=>!I.includes(G)),{...this._def,...Z})}}Bb=new WeakMap;Kz.create=pW0;class tL extends B5{constructor(){super(...arguments);Vb.set(this,void 0)}_parse(I){let Z=B3.getValidEnumValues(this._def.values),G=this._getOrReturnCtx(I);if(G.parsedType!==s2.string&&G.parsedType!==s2.number){let W=B3.objectValues(Z);return m2(G,{expected:B3.joinValues(W),received:G.parsedType,code:A2.invalid_type}),J9}if(!Or(this,Vb,"f"))kW0(this,Vb,new Set(B3.getValidEnumValues(this._def.values)),"f");if(!Or(this,Vb,"f").has(I.data)){let W=B3.objectValues(Z);return m2(G,{received:G.data,code:A2.invalid_enum_value,options:W}),J9}return XB(I.data)}get enum(){return this._def.values}}Vb=new WeakMap;tL.create=(I,Z)=>{return new tL({values:I,typeName:C2.ZodNativeEnum,...I5(Z)})};class s$ extends B5{unwrap(){return this._def.type}_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.promise&&Z.common.async===!1)return m2(Z,{code:A2.invalid_type,expected:s2.promise,received:Z.parsedType}),J9;let G=Z.parsedType===s2.promise?Z.data:Promise.resolve(Z.data);return XB(G.then((W)=>{return this._def.type.parseAsync(W,{path:Z.path,errorMap:Z.common.contextualErrorMap})}))}}s$.create=(I,Z)=>{return new s$({type:I,typeName:C2.ZodPromise,...I5(Z)})};class GX extends B5{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===C2.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I),W=this._def.effect||null,B={addIssue:(V)=>{if(m2(G,V),V.fatal)Z.abort();else Z.dirty()},get path(){return G.path}};if(B.addIssue=B.addIssue.bind(B),W.type==="preprocess"){let V=W.transform(G.data,B);if(G.common.async)return Promise.resolve(V).then(async(Y)=>{if(Z.value==="aborted")return J9;let w=await this._def.schema._parseAsync({data:Y,path:G.path,parent:G});if(w.status==="aborted")return J9;if(w.status==="dirty")return hL(w.value);if(Z.value==="dirty")return hL(w.value);return w});else{if(Z.value==="aborted")return J9;let Y=this._def.schema._parseSync({data:V,path:G.path,parent:G});if(Y.status==="aborted")return J9;if(Y.status==="dirty")return hL(Y.value);if(Z.value==="dirty")return hL(Y.value);return Y}}if(W.type==="refinement"){let V=(Y)=>{let w=W.refinement(Y,B);if(G.common.async)return Promise.resolve(w);if(w instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return Y};if(G.common.async===!1){let Y=this._def.schema._parseSync({data:G.data,path:G.path,parent:G});if(Y.status==="aborted")return J9;if(Y.status==="dirty")Z.dirty();return V(Y.value),{status:Z.value,value:Y.value}}else return this._def.schema._parseAsync({data:G.data,path:G.path,parent:G}).then((Y)=>{if(Y.status==="aborted")return J9;if(Y.status==="dirty")Z.dirty();return V(Y.value).then(()=>{return{status:Z.value,value:Y.value}})})}if(W.type==="transform")if(G.common.async===!1){let V=this._def.schema._parseSync({data:G.data,path:G.path,parent:G});if(!i$(V))return V;let Y=W.transform(V.value,B);if(Y instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Z.value,value:Y}}else return this._def.schema._parseAsync({data:G.data,path:G.path,parent:G}).then((V)=>{if(!i$(V))return V;return Promise.resolve(W.transform(V.value,B)).then((Y)=>({status:Z.value,value:Y}))});B3.assertNever(W)}}GX.create=(I,Z,G)=>{return new GX({schema:I,typeName:C2.ZodEffects,effect:Z,...I5(G)})};GX.createWithPreprocess=(I,Z,G)=>{return new GX({schema:Z,effect:{type:"preprocess",transform:I},typeName:C2.ZodEffects,...I5(G)})};class PY extends B5{_parse(I){if(this._getType(I)===s2.undefined)return XB(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}PY.create=(I,Z)=>{return new PY({innerType:I,typeName:C2.ZodOptional,...I5(Z)})};class TD extends B5{_parse(I){if(this._getType(I)===s2.null)return XB(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}TD.create=(I,Z)=>{return new TD({innerType:I,typeName:C2.ZodNullable,...I5(Z)})};class eL extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=Z.data;if(Z.parsedType===s2.undefined)G=this._def.defaultValue();return this._def.innerType._parse({data:G,path:Z.path,parent:Z})}removeDefault(){return this._def.innerType}}eL.create=(I,Z)=>{return new eL({innerType:I,typeName:C2.ZodDefault,defaultValue:typeof Z.default==="function"?Z.default:()=>Z.default,...I5(Z)})};class IS extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G={...Z,common:{...Z.common,issues:[]}},W=this._def.innerType._parse({data:G.data,path:G.path,parent:{...G}});if(Yb(W))return W.then((B)=>{return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new fY(G.common.issues)},input:G.data})}});else return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new fY(G.common.issues)},input:G.data})}}removeCatch(){return this._def.innerType}}IS.create=(I,Z)=>{return new IS({innerType:I,typeName:C2.ZodCatch,catchValue:typeof Z.catch==="function"?Z.catch:()=>Z.catch,...I5(Z)})};class Ab extends B5{_parse(I){if(this._getType(I)!==s2.nan){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.nan,received:G.parsedType}),J9}return{status:"valid",value:I.data}}}Ab.create=(I)=>{return new Ab({typeName:C2.ZodNaN,...I5(I)})};var I79=Symbol("zod_brand");class gr extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=Z.data;return this._def.type._parse({data:G,path:Z.path,parent:Z})}unwrap(){return this._def.type}}class _b extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.common.async)return(async()=>{let B=await this._def.in._parseAsync({data:G.data,path:G.path,parent:G});if(B.status==="aborted")return J9;if(B.status==="dirty")return Z.dirty(),hL(B.value);else return this._def.out._parseAsync({data:B.value,path:G.path,parent:G})})();else{let W=this._def.in._parseSync({data:G.data,path:G.path,parent:G});if(W.status==="aborted")return J9;if(W.status==="dirty")return Z.dirty(),{status:"dirty",value:W.value};else return this._def.out._parseSync({data:W.value,path:G.path,parent:G})}}static create(I,Z){return new _b({in:I,out:Z,typeName:C2.ZodPipeline})}}class ZS extends B5{_parse(I){let Z=this._def.innerType._parse(I),G=(W)=>{if(i$(W))W.value=Object.freeze(W.value);return W};return Yb(Z)?Z.then((W)=>G(W)):G(Z)}unwrap(){return this._def.innerType}}ZS.create=(I,Z)=>{return new ZS({innerType:I,typeName:C2.ZodReadonly,...I5(Z)})};function lW0(I,Z={},G){if(I)return a$.create().superRefine((W,B)=>{var V,Y;if(!I(W)){let w=typeof Z==="function"?Z(W):typeof Z==="string"?{message:Z}:Z,X=(Y=(V=w.fatal)!==null&&V!==void 0?V:G)!==null&&Y!==void 0?Y:!0,H=typeof w==="string"?{message:w}:w;B.addIssue({code:"custom",...H,fatal:X})}});return a$.create()}var Z79={object:I7.lazycreate},C2;(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(C2||(C2={}));var G79=(I,Z={message:`Input not instance of ${I.name}`})=>lW0((G)=>G instanceof I,Z),cW0=jH.create,iW0=Az.create,W79=Ab.create,B79=_z.create,nW0=cL.create,V79=n$.create,Y79=wb.create,w79=iL.create,X79=nL.create,H79=a$.create,J79=Jz.create,A79=tA.create,_79=Xb.create,K79=mH.create,D79=I7.create,C79=I7.strictCreate,F79=aL.create,Q79=vr.create,z79=rL.create,q79=eA.create,U79=Hb.create,N79=Jb.create,$79=r$.create,R79=pL.create,E79=sL.create,M79=oL.create,f79=Kz.create,P79=tL.create,L79=s$.create,jW0=GX.create,S79=PY.create,d79=TD.create,O79=GX.createWithPreprocess,v79=_b.create,g79=()=>cW0().optional(),T79=()=>iW0().optional(),y79=()=>nW0().optional(),b79={string:(I)=>jH.create({...I,coerce:!0}),number:(I)=>Az.create({...I,coerce:!0}),boolean:(I)=>cL.create({...I,coerce:!0}),bigint:(I)=>_z.create({...I,coerce:!0}),date:(I)=>n$.create({...I,coerce:!0})},j79=J9,r=Object.freeze({__proto__:null,defaultErrorMap:lL,setErrorMap:O89,getErrorMap:Sr,makeIssue:dr,EMPTY_PATH:v89,addIssueToContext:m2,ParseStatus:QW,INVALID:J9,DIRTY:hL,OK:XB,isAborted:RX1,isDirty:EX1,isValid:i$,isAsync:Yb,get util(){return B3},get objectUtil(){return $X1},ZodParsedType:s2,getParsedType:gD,ZodType:B5,datetimeRegex:hW0,ZodString:jH,ZodNumber:Az,ZodBigInt:_z,ZodBoolean:cL,ZodDate:n$,ZodSymbol:wb,ZodUndefined:iL,ZodNull:nL,ZodAny:a$,ZodUnknown:Jz,ZodNever:tA,ZodVoid:Xb,ZodArray:mH,ZodObject:I7,ZodUnion:aL,ZodDiscriminatedUnion:vr,ZodIntersection:rL,ZodTuple:eA,ZodRecord:Hb,ZodMap:Jb,ZodSet:r$,ZodFunction:pL,ZodLazy:sL,ZodLiteral:oL,ZodEnum:Kz,ZodNativeEnum:tL,ZodPromise:s$,ZodEffects:GX,ZodTransformer:GX,ZodOptional:PY,ZodNullable:TD,ZodDefault:eL,ZodCatch:IS,ZodNaN:Ab,BRAND:I79,ZodBranded:gr,ZodPipeline:_b,ZodReadonly:ZS,custom:lW0,Schema:B5,ZodSchema:B5,late:Z79,get ZodFirstPartyTypeKind(){return C2},coerce:b79,any:H79,array:K79,bigint:B79,boolean:nW0,date:V79,discriminatedUnion:Q79,effect:jW0,enum:f79,function:R79,instanceof:G79,intersection:z79,lazy:E79,literal:M79,map:N79,nan:W79,nativeEnum:P79,never:A79,null:X79,nullable:d79,number:iW0,object:D79,oboolean:y79,onumber:T79,optional:S79,ostring:g79,pipeline:v79,preprocess:O79,promise:L79,record:U79,set:$79,strictObject:C79,string:cW0,symbol:Y79,transformer:jW0,tuple:q79,undefined:w79,union:F79,unknown:J79,void:_79,NEVER:j79,ZodIssueCode:A2,quotelessJson:d89,ZodError:fY});var fX1=r.enum(["local","user","project"]),KQ3=r.enum(["stdio","sse"]),PX1=r.object({type:r.literal("stdio").optional(),command:r.string().min(1,"Command cannot be empty"),args:r.array(r.string()).default([]),env:r.record(r.string()).optional()}),m79=r.object({type:r.literal("sse"),url:r.string().url("Must be a valid URL")}),LX1=r.discriminatedUnion("type",[PX1,m79]),Tr=r.object({mcpServers:r.record(r.string(),LX1)});var Dz={allowedTools:[],history:[],dontCrawlDirectory:!1,mcpContextUris:[],mcpServers:{},enabledMcpjsonServers:[],disabledMcpjsonServers:[],enableAllProjectMcpServers:!1,hasTrustDialogAccepted:!1,ignorePatterns:[]};function rW0(I){let Z={...Dz};if(I===x79())Z.dontCrawlDirectory=!0;return Z}function h79(I){return["disabled","enabled","no_permissions","not_configured","migrated"].includes(I)}var WX={numStartups:0,autoUpdaterStatus:"not_configured",theme:"dark",preferredNotifChannel:"auto",verbose:!1,editorMode:"normal",autoCompactEnabled:!0,hasSeenTasksHint:!1,queuedCommandUpHintCount:0,diffTool:"terminal",customApiKeyResponses:{approved:[],rejected:[]},env:{},tipsHistory:{},memoryUsageCount:0},Kb=["apiKeyHelper","autoUpdaterStatus","theme","verbose","preferredNotifChannel","shiftEnterKeyBindingInstalled","editorMode","hasUsedBackslashReturn","supervisorMode","autoCompactEnabled","stressTestingFraction","diffTool","env","tipsHistory"];function vX1(I){return Kb.includes(I)}var Db=["allowedTools","dontCrawlDirectory","hasTrustDialogAccepted","hasCompletedProjectOnboarding","ignorePatterns"];function sW0(){let I=c0(),Z=t$(ZX,WX);while(!0){if(Z.projects?.[I]?.hasTrustDialogAccepted)return!0;let W=OX1(I,"..");if(W===I)break;I=W}return!1}var gQ3={...WX,autoUpdaterStatus:"disabled"},TQ3={...Dz};function gX1(I){return Db.includes(I)}function GS(I,Z){if(Z){let G=f0();return I in G&&Array.isArray(G[I])}else{let G=Dz[I];return I in Dz&&Array.isArray(G)}}function p79(I,Z){if(GS(I,Z))return!1;if(Z){let G=f0();return I in G&&typeof G[I]==="object"}else{let G=Dz[I];return I in Dz&&typeof G==="object"}}function br(I,Z,G,W=!0){if(x1("tengu_config_add",{key:I,global:G,count:Z.length}),!GS(I,G)){if(G)console.error(`Error: '${I}' is not a valid array config key in global config`);else console.error(`Error: '${I}' is not a valid array config key in project config`);if(W)process.exit(1);else return}if(G){let B=f0(),V=I,Y=B[V]||[],w=new Set(Y),X=w.size;for(let H of Z)w.add(H);if(w.size>X){let H=Array.from(w).sort();o2({...B,[V]:H})}}else{let B=W9(),V=I,Y=B[V]||[],w=new Set(Y),X=w.size;for(let H of Z)w.add(H);if(w.size>X){let H=Array.from(w).sort();r3({...B,[V]:H})}}if(W)process.exit(0)}function oW0(I,Z,G,W=!0){if(x1("tengu_config_remove",{key:I,global:G,count:Z.length}),G){let B=f0();if(!(I in B)||!Array.isArray(B[I]))if(console.error(`Error: '${I}' is not a valid array config key in global config`),W)process.exit(1);else return;let V=I,Y=B[V];if(!Y)Y=[];let w=new Set(Z),X=Y.filter((H)=>!w.has(H));if(Y.length!==X.length)o2({...B,[V]:X.sort()})}else{let B=W9(),V=Dz[I];if(!(I in Dz)||!Array.isArray(V))if(console.error(`Error: '${I}' is not a valid array config key in project config`),W)process.exit(1);else return;let Y=I,w=B[Y];if(!w)w=[];let X=new Set(Z),H=w.filter((J)=>!X.has(J));if(w.length!==H.length)r3({...B,[Y]:H.sort()})}if(W)process.exit(0)}function o2(I){eW0(ZX,{...I,projects:t$(ZX,WX).projects},WX),o$.config=null,o$.mtime=0}var o$={config:null,mtime:0};function f0(){try{let I=yr(ZX)?k79(ZX):null;if(o$.config&&I){if(I.mtimeMs<=o$.mtime)return o$.config}let Z=t$(ZX,WX);if(I)o$={config:Z,mtime:I.mtimeMs};else o$={config:Z,mtime:Date.now()};return Z}catch{return t$(ZX,WX)}}function tW0(I){let Z=f0();if(Z.customApiKeyResponses?.approved?.includes(I))return"approved";if(Z.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function eW0(I,Z,G){let W=Object.fromEntries(Object.entries(Z).filter(([B,V])=>JSON.stringify(V)!==JSON.stringify(G[B])));aA(I,JSON.stringify(W,null,2))}var dX1=!1;function IB0(){if(dX1)return;dX1=!0,t$(ZX,WX,!0)}function t$(I,Z,G){if(!dX1)throw new Error("Config accessed before allowed.");if(!yr(I))return jT(Z);try{let W=SX1(I,"utf-8");try{let B=JSON.parse(W);return{...jT(Z),...B}}catch(B){let V=B instanceof Error?B.message:String(B);throw new bL(V,I,Z)}}catch(W){if(W instanceof bL&&G)throw W;return jT(Z)}}function W9(){let I=OX1(S5()),Z=t$(ZX,WX);if(!Z.projects)return rW0(I);let G=Z.projects[I]??rW0(I);if(typeof G.allowedTools==="string")G.allowedTools=AZ(G.allowedTools)??[];return G}function r3(I){let Z=t$(ZX,WX);eW0(ZX,{...Z,projects:{...Z.projects,[OX1(S5())]:I}},WX)}function ZB0(){if(process.env.DISABLE_AUTOUPDATER)return!0;return f0().autoUpdaterStatus==="disabled"}function jr(){let I=f0(),Z=I.oauthAccount?.organizationRole,G=I.oauthAccount?.workspaceRole;if(!Z||!G)return!0;return["admin","billing"].includes(Z)||["workspace_admin","workspace_billing"].includes(G)}function l79(I){let Z=AZ(I),G={};if(Z&&typeof Z==="object"){let W=Tr.safeParse(Z);if(W.success){let B=W.data;for(let[V,Y]of Object.entries(B.mcpServers))G[V]=Y}}return G}var Cz=O2(()=>{let I=aW0(c0(),".mcp.json");if(!yr(I))return{};try{let Z=SX1(I,"utf-8"),G=l79(Z);return x1("tengu_mcpjson_found",{numServers:Object.keys(G).length}),G}catch{}return{}},()=>{let I=c0(),Z=aW0(I,".mcp.json");if(yr(Z))try{let G=SX1(Z,"utf-8");return`${I}:${G}`}catch{return I}return I});function Cb(){let I=f0();if(I.userID)return I.userID;let Z=u79(32).toString("hex");return o2({...I,userID:Z}),Z}function GB0(I,Z){if(x1("tengu_config_get",{key:I,global:Z}),Z){if(!vX1(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${Kb.join(", ")}`),process.exit(1);return f0()[I]}else{if(!gX1(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${Db.join(", ")}`),process.exit(1);return W9()[I]}}function WB0(I,Z,G){if(x1("tengu_config_set",{key:I,global:G}),G){if(!vX1(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${Kb.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!h79(Z))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);if(p79(I,G)&&typeof Z==="string")try{let B=JSON.parse(Z);if(typeof B!=="object"||B===null||Array.isArray(B))console.error("Error: 'env' must be a valid JSON object"),process.exit(1);let V=f0();o2({...V,[I]:B}),process.exit(0)}catch(B){console.error(`Error: Failed to parse JSON for 'env': ${B instanceof Error?B.message:String(B)}`),process.exit(1)}if(GS(I,G)&&typeof Z==="string"){console.warn(_0.yellow(`Warning: '${I}' is an array type. Automatically using 'config add' instead of 'config set'.`));let B=Z.split(",").map((V)=>V.trim()).filter((V)=>V.length>0);br(I,B,G);return}let W=f0();o2({...W,[I]:Z})}else{if(!gX1(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${Db.join(", ")}. Did you mean --global?`),process.exit(1);if(GS(I,G)&&typeof Z==="string"){console.warn(_0.yellow(`Warning: '${I}' is an array type. Automatically using 'config add' instead of 'config set'.`));let B=Z.split(",").map((V)=>V.trim()).filter((V)=>V.length>0);br(I,B,G);return}let W=W9();r3({...W,[I]:Z})}process.exit(0)}function BB0(I,Z){if(x1("tengu_config_delete",{key:I,global:Z}),Z){if(!vX1(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${Kb.join(", ")}`),process.exit(1);let G=f0();delete G[I],o2(G)}else{if(!gX1(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${Db.join(", ")}. Did you mean --global?`),process.exit(1);let G=W9();delete G[I],r3(G)}}function VB0(I){if(x1("tengu_config_list",{global:I}),I)return ei(f0(),Kb);else return ei(W9(),Db)}import{execSync as c79}from"child_process";var Ha=O2(async()=>{let I=Cb(),Z=f0();return{customIDs:{sessionId:UY},userID:I,appVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION,email:i79(),custom:{userType:"external",organizationUuid:Z.oauthAccount?.organizationUuid,accountUuid:Z.oauthAccount?.accountUuid}}});function i79(){return;try{return c79("git config --get user.email").toString().trim()}catch{return}}function YB0(){qV.init({dsn:C00,environment:"external",release:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION,integrations:[new qV.Integrations.Http({tracing:!0}),new qV.Integrations.Modules,new qV.Integrations.Console,new qV.Integrations.FunctionToString,new qV.Integrations.LinkedErrors],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function qr(I){try{let Z=await Ha();qV.setExtras({nodeVersion:z2.nodeVersion,platform:z2.platform,isCI:z2.isCI,isTest:!1,packageVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION,sessionId:UY,statsigGates:M00(),terminal:z2.terminal,userType:"external"}),qV.setUser({id:Z.userID,email:Z.email}),qV.captureException(I)}catch{}}var S2="Claude Code",mr="https://claude.ai/code";var _w0={};var wB0=!1,e$=void 0,TX1=void 0,n79=void 0,a79=void 0,r79=void 0,XB0=void 0,s79=void 0,kr=void 0,yX1=void 0,HB0=void 0,bX1=void 0,xr=void 0,JB0=void 0;function ur(I,Z={auto:!1}){if(wB0)throw new Error(`you must \`import '@anthropic-ai/sdk/shims/${I.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(e$)throw new Error(`can't \`import '@anthropic-ai/sdk/shims/${I.kind}'\` after \`import '@anthropic-ai/sdk/shims/${e$}'\``);wB0=Z.auto,e$=I.kind,TX1=I.fetch,n79=I.Request,a79=I.Response,r79=I.Headers,XB0=I.FormData,s79=I.Blob,kr=I.File,yX1=I.ReadableStream,HB0=I.getMultipartRequestOptions,bX1=I.getDefaultAgent,xr=I.fileFromPath,JB0=I.isFsReadStream}var Oz=J1(sX1(),1);fs();SH1();import{inspect as nZ9}from"util";PH1();var RY0=(I)=>I instanceof cH;import{deprecate as iZ9}from"util";var EY0=iZ9(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.');var W_=function(I,Z,G,W){if(G==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?I!==Z||!W:!Z.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?W:G==="a"?W.call(I):W?W.value:Z.get(I)},Ps,B_,dH1;class OH1{constructor(I){if(Ps.add(this),B_.set(this,new Map),I)EY0(),I.forEach(({name:Z,value:G,fileName:W})=>this.append(Z,G,W))}static[(B_=new WeakMap,Ps=new WeakSet,Symbol.hasInstance)](I){return Boolean(I&&ZI(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&ZI(I.append)&&ZI(I.set)&&ZI(I.get)&&ZI(I.getAll)&&ZI(I.has)&&ZI(I.delete)&&ZI(I.entries)&&ZI(I.values)&&ZI(I.keys)&&ZI(I[Symbol.iterator])&&ZI(I.forEach))}append(I,Z,G){W_(this,Ps,"m",dH1).call(this,{name:I,fileName:G,append:!0,rawValue:Z,argsLength:arguments.length})}set(I,Z,G){W_(this,Ps,"m",dH1).call(this,{name:I,fileName:G,append:!1,rawValue:Z,argsLength:arguments.length})}get(I){let Z=W_(this,B_,"f").get(String(I));if(!Z)return null;return Z[0]}getAll(I){let Z=W_(this,B_,"f").get(String(I));if(!Z)return[];return Z.slice()}has(I){return W_(this,B_,"f").has(String(I))}delete(I){W_(this,B_,"f").delete(String(I))}*keys(){for(let I of W_(this,B_,"f").keys())yield I}*entries(){for(let I of this.keys()){let Z=this.getAll(I);for(let G of Z)yield[I,G]}}*values(){for(let[,I]of this)yield I}[(dH1=function I({name:Z,rawValue:G,append:W,fileName:B,argsLength:V}){let Y=W?"append":"set";if(V<2)throw new TypeError(`Failed to execute '${Y}' on 'FormData': 2 arguments required, but only ${V} present.`);Z=String(Z);let w;if(LH1(G))w=B===void 0?G:new G_([G],B,{type:G.type,lastModified:G.lastModified});else if(RY0(G))w=new G_([G],B===void 0?"blob":B,{type:G.type});else if(B)throw new TypeError(`Failed to execute '${Y}' on 'FormData': parameter 2 is not of type 'Blob'.`);else w=String(G);let X=W_(this,B_,"f").get(Z);if(!X)return void W_(this,B_,"f").set(Z,[w]);if(!W)return void W_(this,B_,"f").set(Z,[w]);X.push(w)},Symbol.iterator)](){return this.entries()}forEach(I,Z){for(let[G,W]of this)I.call(Z,W,G,this)}get[Symbol.toStringTag](){return"FormData"}[nZ9.custom](){return this[Symbol.toStringTag]}}var aH1=J1(bY0(),1),Aw0=J1(oY0(),1);import{ReadStream as dG9}from"node:fs";function CG9(){let I=16,Z="";while(I--)Z+="abcdefghijklmnopqrstuvwxyz0123456789"[Math.random()*36<<0];return Z}var tY0=CG9;var FG9=(I)=>Object.prototype.toString.call(I).slice(8,-1).toLowerCase();function QG9(I){if(FG9(I)!=="object")return!1;let Z=Object.getPrototypeOf(I);if(Z===null||Z===void 0)return!0;return(Z.constructor&&Z.constructor.toString())===Object.toString()}var uH1=QG9;var zG9=(I)=>String(I).replace(/\r|\n/g,(Z,G,W)=>{if(Z==="\r"&&W[G+1]!==`
|
|
526
|
+
`.indexOf(I.charAt(Z))!==-1}var Wb;(function(I){I.DEFAULT={allowTrailingComma:!1}})(Wb||(Wb={}));function PW0(I,Z=[],G=Wb.DEFAULT){let W=null,B=[],V=[];function Y(X){if(Array.isArray(B))B.push(X);else if(W!==null)B[W]=X}return qX1(I,{onObjectBegin:()=>{let X={};Y(X),V.push(B),B=X,W=null},onObjectProperty:(X)=>{W=X},onObjectEnd:()=>{B=V.pop()},onArrayBegin:()=>{let X=[];Y(X),V.push(B),B=X,W=null},onArrayEnd:()=>{B=V.pop()},onLiteralValue:Y,onError:(X,H,J)=>{Z.push({error:X,offset:H,length:J})}},G),B[0]}function zX1(I,Z=[],G=Wb.DEFAULT){let W={type:"array",offset:-1,length:-1,children:[],parent:void 0};function B(X){if(W.type==="property")W.length=X-W.offset,W=W.parent}function V(X){return W.children.push(X),X}qX1(I,{onObjectBegin:(X)=>{W=V({type:"object",offset:X,length:-1,parent:W,children:[]})},onObjectProperty:(X,H,J)=>{W=V({type:"property",offset:H,length:-1,parent:W,children:[]}),W.children.push({type:"string",value:X,offset:H,length:J,parent:W})},onObjectEnd:(X,H)=>{B(X+H),W.length=X+H-W.offset,W=W.parent,B(X+H)},onArrayBegin:(X,H)=>{W=V({type:"array",offset:X,length:-1,parent:W,children:[]})},onArrayEnd:(X,H)=>{W.length=X+H-W.offset,W=W.parent,B(X+H)},onLiteralValue:(X,H,J)=>{V({type:P89(X),offset:H,length:J,parent:W,value:X}),B(H+J)},onSeparator:(X,H,J)=>{if(W.type==="property"){if(X===":")W.colonOffset=H;else if(X===",")B(H)}},onError:(X,H,J)=>{Z.push({error:X,offset:H,length:J})}},G);let w=W.children[0];if(w)delete w.parent;return w}function Pr(I,Z){if(!I)return;let G=I;for(let W of Z)if(typeof W==="string"){if(G.type!=="object"||!Array.isArray(G.children))return;let B=!1;for(let V of G.children)if(Array.isArray(V.children)&&V.children[0].value===W&&V.children.length===2){G=V.children[1],B=!0;break}if(!B)return}else{let B=W;if(G.type!=="array"||B<0||!Array.isArray(G.children)||B>=G.children.length)return;G=G.children[B]}return G}function qX1(I,Z,G=Wb.DEFAULT){let W=Zb(I,!1),B=[];function V($1){return $1?()=>$1(W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter()):()=>!0}function Y($1){return $1?()=>$1(W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter(),()=>B.slice()):()=>!0}function w($1){return $1?(z1)=>$1(z1,W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter()):()=>!0}function X($1){return $1?(z1)=>$1(z1,W.getTokenOffset(),W.getTokenLength(),W.getTokenStartLine(),W.getTokenStartCharacter(),()=>B.slice()):()=>!0}let H=Y(Z.onObjectBegin),J=X(Z.onObjectProperty),A=V(Z.onObjectEnd),K=Y(Z.onArrayBegin),D=V(Z.onArrayEnd),z=X(Z.onLiteralValue),U=w(Z.onSeparator),N=V(Z.onComment),L=w(Z.onError),g=G&&G.disallowComments,f=G&&G.allowTrailingComma;function P(){while(!0){let $1=W.scan();switch(W.getTokenError()){case 4:M(14);break;case 5:M(15);break;case 3:M(13);break;case 1:if(!g)M(11);break;case 2:M(12);break;case 6:M(16);break}switch($1){case 12:case 13:if(g)M(10);else N();break;case 16:M(1);break;case 15:case 14:break;default:return $1}}}function M($1,z1=[],x=[]){if(L($1),z1.length+x.length>0){let w1=W.getToken();while(w1!==17){if(z1.indexOf(w1)!==-1){P();break}else if(x.indexOf(w1)!==-1)break;w1=P()}}}function d($1){let z1=W.getTokenValue();if($1)z(z1);else J(z1),B.push(z1);return P(),!0}function k(){switch(W.getToken()){case 11:let $1=W.getTokenValue(),z1=Number($1);if(isNaN(z1))M(2),z1=0;z(z1);break;case 7:z(null);break;case 8:z(!0);break;case 9:z(!1);break;default:return!1}return P(),!0}function a(){if(W.getToken()!==10)return M(3,[],[2,5]),!1;if(d(!1),W.getToken()===6){if(U(":"),P(),!Z1())M(4,[],[2,5])}else M(5,[],[2,5]);return B.pop(),!0}function m(){H(),P();let $1=!1;while(W.getToken()!==2&&W.getToken()!==17){if(W.getToken()===5){if(!$1)M(4,[],[]);if(U(","),P(),W.getToken()===2&&f)break}else if($1)M(6,[],[]);if(!a())M(4,[],[2,5]);$1=!0}if(A(),W.getToken()!==2)M(7,[2],[]);else P();return!0}function X1(){K(),P();let $1=!0,z1=!1;while(W.getToken()!==4&&W.getToken()!==17){if(W.getToken()===5){if(!z1)M(4,[],[]);if(U(","),P(),W.getToken()===4&&f)break}else if(z1)M(6,[],[]);if($1)B.push(0),$1=!1;else B[B.length-1]++;if(!Z1())M(4,[],[4,5]);z1=!0}if(D(),!$1)B.pop();if(W.getToken()!==4)M(8,[4],[]);else P();return!0}function Z1(){switch(W.getToken()){case 3:return X1();case 1:return m();case 10:return d(!0);default:return k()}}if(P(),W.getToken()===17){if(G.allowEmptyContent)return!0;return M(4,[],[]),!1}if(!Z1())return M(4,[],[]),!1;if(W.getToken()!==17)M(9,[],[]);return!0}function P89(I){switch(typeof I){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!I)return"null";else if(Array.isArray(I))return"array";return"object"}default:return"null"}}function LW0(I,Z,G,W){let B=Z.slice(),Y=zX1(I,[]),w=void 0,X=void 0;while(B.length>0)if(X=B.pop(),w=Pr(Y,B),w===void 0&&G!==void 0)if(typeof X==="string")G={[X]:G};else G=[G];else break;if(!w){if(G===void 0)throw new Error("Can not delete in empty document");return c$(I,{offset:Y?Y.offset:0,length:Y?Y.length:0,content:JSON.stringify(G)},W)}else if(w.type==="object"&&typeof X==="string"&&Array.isArray(w.children)){let H=Pr(w,[X]);if(H!==void 0)if(G===void 0){if(!H.parent)throw new Error("Malformed AST");let J=w.children.indexOf(H.parent),A,K=H.parent.offset+H.parent.length;if(J>0){let D=w.children[J-1];A=D.offset+D.length}else if(A=w.offset+1,w.children.length>1)K=w.children[1].offset;return c$(I,{offset:A,length:K-A,content:""},W)}else return c$(I,{offset:H.offset,length:H.length,content:JSON.stringify(G)},W);else{if(G===void 0)return[];let J=`${JSON.stringify(X)}: ${JSON.stringify(G)}`,A=W.getInsertionIndex?W.getInsertionIndex(w.children.map((D)=>D.children[0].value)):w.children.length,K;if(A>0){let D=w.children[A-1];K={offset:D.offset+D.length,length:0,content:","+J}}else if(w.children.length===0)K={offset:w.offset+1,length:0,content:J};else K={offset:w.offset+1,length:0,content:J+","};return c$(I,K,W)}}else if(w.type==="array"&&typeof X==="number"&&Array.isArray(w.children)){let H=X;if(H===-1){let J=`${JSON.stringify(G)}`,A;if(w.children.length===0)A={offset:w.offset+1,length:0,content:J};else{let K=w.children[w.children.length-1];A={offset:K.offset+K.length,length:0,content:","+J}}return c$(I,A,W)}else if(G===void 0&&w.children.length>=0){let J=X,A=w.children[J],K;if(w.children.length===1)K={offset:w.offset+1,length:w.length-2,content:""};else if(w.children.length-1===J){let D=w.children[J-1],z=D.offset+D.length,U=w.offset+w.length;K={offset:z,length:U-2-z,content:""}}else K={offset:A.offset,length:w.children[J+1].offset-A.offset,content:""};return c$(I,K,W)}else if(G!==void 0){let J,A=`${JSON.stringify(G)}`;if(!W.isArrayInsertion&&w.children.length>X){let K=w.children[X];J={offset:K.offset,length:K.length,content:A}}else if(w.children.length===0||X===0)J={offset:w.offset+1,length:0,content:w.children.length===0?A:A+","};else{let K=X>w.children.length?w.children.length:X,D=w.children[K-1];J={offset:D.offset+D.length,length:0,content:","+A}}return c$(I,J,W)}else throw new Error(`Can not ${G===void 0?"remove":W.isArrayInsertion?"insert":"modify"} Array index ${H} as length is not sufficient`)}else throw new Error(`Can not add ${typeof X!=="number"?"index":"property"} to parent of type ${w.type}`)}function c$(I,Z,G){if(!G.formattingOptions)return[Z];let W=Lr(I,Z),B=Z.offset,V=Z.offset+Z.content.length;if(Z.length===0||Z.content.length===0){while(B>0&&!Gb(W,B-1))B--;while(V<W.length&&!Gb(W,V))V++}let Y=QX1(W,{offset:B,length:V-B},{...G.formattingOptions,keepLines:!1});for(let X=Y.length-1;X>=0;X--){let H=Y[X];W=Lr(W,H),B=Math.min(B,H.offset),V=Math.max(V,H.offset+H.length),V+=H.content.length-H.length}let w=I.length-(W.length-V)-B;return[{offset:B,length:w,content:W.substring(B,V)}]}function Lr(I,Z){return I.substring(0,Z.offset)+Z.content+I.substring(Z.offset+Z.length)}var SW0;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(SW0||(SW0={}));var dW0;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(dW0||(dW0={}));var UX1=PW0;var OW0;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(OW0||(OW0={}));function vW0(I,Z,G,W){return LW0(I,Z,G,W)}function gW0(I,Z){let G=Z.slice(0).sort((B,V)=>{let Y=B.offset-V.offset;if(Y===0)return B.length-V.length;return Y}),W=I.length;for(let B=G.length-1;B>=0;B--){let V=G[B];if(V.offset+V.length<=W)I=Lr(I,V);else throw new Error("Overlapping edit");W=V.offset}return I}function AZ(I){if(!I)return null;try{return JSON.parse(I)}catch(Z){return c1(Z),null}}function TW0(I){if(!I)return null;try{return UX1(I)}catch(Z){return c1(Z),null}}function yW0(I,Z){try{if(!I||I.trim()==="")return JSON.stringify([Z],null,4);let G=UX1(I);if(Array.isArray(G)){let W=G.length,Y=vW0(I,W===0?[0]:[W],Z,{formattingOptions:{insertSpaces:!0,tabSize:4},isArrayInsertion:!0});if(!Y||Y.length===0){let w=[...G,Z];return JSON.stringify(w,null,4)}return gW0(I,Y)}else return JSON.stringify([Z],null,4)}catch(G){return c1(G),JSON.stringify([Z],null,4)}}var B3;(function(I){I.assertEqual=(B)=>B;function Z(B){}I.assertIs=Z;function G(B){throw new Error}I.assertNever=G,I.arrayToEnum=(B)=>{let V={};for(let Y of B)V[Y]=Y;return V},I.getValidEnumValues=(B)=>{let V=I.objectKeys(B).filter((w)=>typeof B[B[w]]!=="number"),Y={};for(let w of V)Y[w]=B[w];return I.objectValues(Y)},I.objectValues=(B)=>{return I.objectKeys(B).map(function(V){return B[V]})},I.objectKeys=typeof Object.keys==="function"?(B)=>Object.keys(B):(B)=>{let V=[];for(let Y in B)if(Object.prototype.hasOwnProperty.call(B,Y))V.push(Y);return V},I.find=(B,V)=>{for(let Y of B)if(V(Y))return Y;return},I.isInteger=typeof Number.isInteger==="function"?(B)=>Number.isInteger(B):(B)=>typeof B==="number"&&isFinite(B)&&Math.floor(B)===B;function W(B,V=" | "){return B.map((Y)=>typeof Y==="string"?`'${Y}'`:Y).join(V)}I.joinValues=W,I.jsonStringifyReplacer=(B,V)=>{if(typeof V==="bigint")return V.toString();return V}})(B3||(B3={}));var $X1;(function(I){I.mergeShapes=(Z,G)=>{return{...Z,...G}}})($X1||($X1={}));var s2=B3.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),gD=(I)=>{switch(typeof I){case"undefined":return s2.undefined;case"string":return s2.string;case"number":return isNaN(I)?s2.nan:s2.number;case"boolean":return s2.boolean;case"function":return s2.function;case"bigint":return s2.bigint;case"symbol":return s2.symbol;case"object":if(Array.isArray(I))return s2.array;if(I===null)return s2.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return s2.promise;if(typeof Map!=="undefined"&&I instanceof Map)return s2.map;if(typeof Set!=="undefined"&&I instanceof Set)return s2.set;if(typeof Date!=="undefined"&&I instanceof Date)return s2.date;return s2.object;default:return s2.unknown}},A2=B3.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"]),d89=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")};class fY extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(G)=>{this.issues=[...this.issues,G]},this.addIssues=(G=[])=>{this.issues=[...this.issues,...G]};let Z=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Z);else this.__proto__=Z;this.name="ZodError",this.issues=I}format(I){let Z=I||function(B){return B.message},G={_errors:[]},W=(B)=>{for(let V of B.issues)if(V.code==="invalid_union")V.unionErrors.map(W);else if(V.code==="invalid_return_type")W(V.returnTypeError);else if(V.code==="invalid_arguments")W(V.argumentsError);else if(V.path.length===0)G._errors.push(Z(V));else{let Y=G,w=0;while(w<V.path.length){let X=V.path[w];if(w!==V.path.length-1)Y[X]=Y[X]||{_errors:[]};else Y[X]=Y[X]||{_errors:[]},Y[X]._errors.push(Z(V));Y=Y[X],w++}}};return W(this),G}static assert(I){if(!(I instanceof fY))throw new Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,B3.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(Z)=>Z.message){let Z={},G=[];for(let W of this.issues)if(W.path.length>0)Z[W.path[0]]=Z[W.path[0]]||[],Z[W.path[0]].push(I(W));else G.push(I(W));return{formErrors:G,fieldErrors:Z}}get formErrors(){return this.flatten()}}fY.create=(I)=>{return new fY(I)};var lL=(I,Z)=>{let G;switch(I.code){case A2.invalid_type:if(I.received===s2.undefined)G="Required";else G=`Expected ${I.expected}, received ${I.received}`;break;case A2.invalid_literal:G=`Invalid literal value, expected ${JSON.stringify(I.expected,B3.jsonStringifyReplacer)}`;break;case A2.unrecognized_keys:G=`Unrecognized key(s) in object: ${B3.joinValues(I.keys,", ")}`;break;case A2.invalid_union:G="Invalid input";break;case A2.invalid_union_discriminator:G=`Invalid discriminator value. Expected ${B3.joinValues(I.options)}`;break;case A2.invalid_enum_value:G=`Invalid enum value. Expected ${B3.joinValues(I.options)}, received '${I.received}'`;break;case A2.invalid_arguments:G="Invalid function arguments";break;case A2.invalid_return_type:G="Invalid function return type";break;case A2.invalid_date:G="Invalid date";break;case A2.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(G=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")G=`${G} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)G=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)G=`Invalid input: must end with "${I.validation.endsWith}"`;else B3.assertNever(I.validation);else if(I.validation!=="regex")G=`Invalid ${I.validation}`;else G="Invalid";break;case A2.too_small:if(I.type==="array")G=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")G=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")G=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")G=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else G="Invalid input";break;case A2.too_big:if(I.type==="array")G=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")G=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")G=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")G=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")G=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else G="Invalid input";break;case A2.custom:G="Invalid input";break;case A2.invalid_intersection_types:G="Intersection results could not be merged";break;case A2.not_multiple_of:G=`Number must be a multiple of ${I.multipleOf}`;break;case A2.not_finite:G="Number must be finite";break;default:G=Z.defaultError,B3.assertNever(I)}return{message:G}},mW0=lL;function O89(I){mW0=I}function Sr(){return mW0}var dr=(I)=>{let{data:Z,path:G,errorMaps:W,issueData:B}=I,V=[...G,...B.path||[]],Y={...B,path:V};if(B.message!==void 0)return{...B,path:V,message:B.message};let w="",X=W.filter((H)=>!!H).slice().reverse();for(let H of X)w=H(Y,{data:Z,defaultError:w}).message;return{...B,path:V,message:w}},v89=[];function m2(I,Z){let G=Sr(),W=dr({issueData:Z,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,G,G===lL?void 0:lL].filter((B)=>!!B)});I.common.issues.push(W)}class QW{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,Z){let G=[];for(let W of Z){if(W.status==="aborted")return J9;if(W.status==="dirty")I.dirty();G.push(W.value)}return{status:I.value,value:G}}static async mergeObjectAsync(I,Z){let G=[];for(let W of Z){let B=await W.key,V=await W.value;G.push({key:B,value:V})}return QW.mergeObjectSync(I,G)}static mergeObjectSync(I,Z){let G={};for(let W of Z){let{key:B,value:V}=W;if(B.status==="aborted")return J9;if(V.status==="aborted")return J9;if(B.status==="dirty")I.dirty();if(V.status==="dirty")I.dirty();if(B.value!=="__proto__"&&(typeof V.value!=="undefined"||W.alwaysSet))G[B.value]=V.value}return{status:I.value,value:G}}}var J9=Object.freeze({status:"aborted"}),hL=(I)=>({status:"dirty",value:I}),XB=(I)=>({status:"valid",value:I}),RX1=(I)=>I.status==="aborted",EX1=(I)=>I.status==="dirty",i$=(I)=>I.status==="valid",Yb=(I)=>typeof Promise!=="undefined"&&I instanceof Promise;function Or(I,Z,G,W){if(G==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?I!==Z||!W:!Z.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?W:G==="a"?W.call(I):W?W.value:Z.get(I)}function kW0(I,Z,G,W,B){if(W==="m")throw new TypeError("Private method is not writable");if(W==="a"&&!B)throw new TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?I!==Z||!B:!Z.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return W==="a"?B.call(I,G):B?B.value=G:Z.set(I,G),G}var z4;(function(I){I.errToObj=(Z)=>typeof Z==="string"?{message:Z}:Z||{},I.toString=(Z)=>typeof Z==="string"?Z:Z===null||Z===void 0?void 0:Z.message})(z4||(z4={}));var Bb,Vb;class kH{constructor(I,Z,G,W){this._cachedPath=[],this.parent=I,this.data=Z,this._path=G,this._key=W}get path(){if(!this._cachedPath.length)if(this._key instanceof Array)this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var bW0=(I,Z)=>{if(i$(Z))return{success:!0,data:Z.value};else{if(!I.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let G=new fY(I.common.issues);return this._error=G,this._error}}}};function I5(I){if(!I)return{};let{errorMap:Z,invalid_type_error:G,required_error:W,description:B}=I;if(Z&&(G||W))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Z)return{errorMap:Z,description:B};return{errorMap:(Y,w)=>{var X,H;let{message:J}=I;if(Y.code==="invalid_enum_value")return{message:J!==null&&J!==void 0?J:w.defaultError};if(typeof w.data==="undefined")return{message:(X=J!==null&&J!==void 0?J:W)!==null&&X!==void 0?X:w.defaultError};if(Y.code!=="invalid_type")return{message:w.defaultError};return{message:(H=J!==null&&J!==void 0?J:G)!==null&&H!==void 0?H:w.defaultError}},description:B}}class B5{get description(){return this._def.description}_getType(I){return gD(I.data)}_getOrReturnCtx(I,Z){return Z||{common:I.parent.common,data:I.data,parsedType:gD(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new QW,ctx:{common:I.parent.common,data:I.data,parsedType:gD(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let Z=this._parse(I);if(Yb(Z))throw new Error("Synchronous parse encountered promise.");return Z}_parseAsync(I){let Z=this._parse(I);return Promise.resolve(Z)}parse(I,Z){let G=this.safeParse(I,Z);if(G.success)return G.data;throw G.error}safeParse(I,Z){var G;let W={common:{issues:[],async:(G=Z===null||Z===void 0?void 0:Z.async)!==null&&G!==void 0?G:!1,contextualErrorMap:Z===null||Z===void 0?void 0:Z.errorMap},path:(Z===null||Z===void 0?void 0:Z.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)},B=this._parseSync({data:I,path:W.path,parent:W});return bW0(W,B)}"~validate"(I){var Z,G;let W={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)};if(!this["~standard"].async)try{let B=this._parseSync({data:I,path:[],parent:W});return i$(B)?{value:B.value}:{issues:W.common.issues}}catch(B){if((G=(Z=B===null||B===void 0?void 0:B.message)===null||Z===void 0?void 0:Z.toLowerCase())===null||G===void 0?void 0:G.includes("encountered"))this["~standard"].async=!0;W.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:W}).then((B)=>i$(B)?{value:B.value}:{issues:W.common.issues})}async parseAsync(I,Z){let G=await this.safeParseAsync(I,Z);if(G.success)return G.data;throw G.error}async safeParseAsync(I,Z){let G={common:{issues:[],contextualErrorMap:Z===null||Z===void 0?void 0:Z.errorMap,async:!0},path:(Z===null||Z===void 0?void 0:Z.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:gD(I)},W=this._parse({data:I,path:G.path,parent:G}),B=await(Yb(W)?W:Promise.resolve(W));return bW0(G,B)}refine(I,Z){let G=(W)=>{if(typeof Z==="string"||typeof Z==="undefined")return{message:Z};else if(typeof Z==="function")return Z(W);else return Z};return this._refinement((W,B)=>{let V=I(W),Y=()=>B.addIssue({code:A2.custom,...G(W)});if(typeof Promise!=="undefined"&&V instanceof Promise)return V.then((w)=>{if(!w)return Y(),!1;else return!0});if(!V)return Y(),!1;else return!0})}refinement(I,Z){return this._refinement((G,W)=>{if(!I(G))return W.addIssue(typeof Z==="function"?Z(G,W):Z),!1;else return!0})}_refinement(I){return new GX({schema:this,typeName:C2.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,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:(Z)=>this["~validate"](Z)}}optional(){return PY.create(this,this._def)}nullable(){return TD.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return mH.create(this)}promise(){return s$.create(this,this._def)}or(I){return aL.create([this,I],this._def)}and(I){return rL.create(this,I,this._def)}transform(I){return new GX({...I5(this._def),schema:this,typeName:C2.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let Z=typeof I==="function"?I:()=>I;return new eL({...I5(this._def),innerType:this,defaultValue:Z,typeName:C2.ZodDefault})}brand(){return new gr({typeName:C2.ZodBranded,type:this,...I5(this._def)})}catch(I){let Z=typeof I==="function"?I:()=>I;return new IS({...I5(this._def),innerType:this,catchValue:Z,typeName:C2.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return _b.create(this,I)}readonly(){return ZS.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var g89=/^c[^\s-]{8,}$/i,T89=/^[0-9a-z]+$/,y89=/^[0-9A-HJKMNP-TV-Z]{26}$/i,b89=/^[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,j89=/^[a-z0-9_-]{21}$/i,m89=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,k89=/^[-+]?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)?)??$/,x89=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u89="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",NX1,h89=/^(?:(?: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])$/,p89=/^(?:(?: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])$/,l89=/^(([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]))$/,c89=/^(([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])$/,i89=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,n89=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xW0="((\\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])))",a89=new RegExp(`^${xW0}$`);function uW0(I){let Z="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";if(I.precision)Z=`${Z}\\.\\d{${I.precision}}`;else if(I.precision==null)Z=`${Z}(\\.\\d+)?`;return Z}function r89(I){return new RegExp(`^${uW0(I)}$`)}function hW0(I){let Z=`${xW0}T${uW0(I)}`,G=[];if(G.push(I.local?"Z?":"Z"),I.offset)G.push("([+-]\\d{2}:?\\d{2})");return Z=`${Z}(${G.join("|")})`,new RegExp(`^${Z}$`)}function s89(I,Z){if((Z==="v4"||!Z)&&h89.test(I))return!0;if((Z==="v6"||!Z)&&l89.test(I))return!0;return!1}function o89(I,Z){if(!m89.test(I))return!1;try{let[G]=I.split("."),W=G.replace(/-/g,"+").replace(/_/g,"/").padEnd(G.length+(4-G.length%4)%4,"="),B=JSON.parse(atob(W));if(typeof B!=="object"||B===null)return!1;if(!B.typ||!B.alg)return!1;if(Z&&B.alg!==Z)return!1;return!0}catch(G){return!1}}function t89(I,Z){if((Z==="v4"||!Z)&&p89.test(I))return!0;if((Z==="v6"||!Z)&&c89.test(I))return!0;return!1}class jH extends B5{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==s2.string){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.string,received:B.parsedType}),J9}let G=new QW,W=void 0;for(let B of this._def.checks)if(B.kind==="min"){if(I.data.length<B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_small,minimum:B.value,type:"string",inclusive:!0,exact:!1,message:B.message}),G.dirty()}else if(B.kind==="max"){if(I.data.length>B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_big,maximum:B.value,type:"string",inclusive:!0,exact:!1,message:B.message}),G.dirty()}else if(B.kind==="length"){let V=I.data.length>B.value,Y=I.data.length<B.value;if(V||Y){if(W=this._getOrReturnCtx(I,W),V)m2(W,{code:A2.too_big,maximum:B.value,type:"string",inclusive:!0,exact:!0,message:B.message});else if(Y)m2(W,{code:A2.too_small,minimum:B.value,type:"string",inclusive:!0,exact:!0,message:B.message});G.dirty()}}else if(B.kind==="email"){if(!x89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"email",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="emoji"){if(!NX1)NX1=new RegExp(u89,"u");if(!NX1.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"emoji",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="uuid"){if(!b89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"uuid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="nanoid"){if(!j89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"nanoid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cuid"){if(!g89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cuid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cuid2"){if(!T89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cuid2",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="ulid"){if(!y89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"ulid",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="url")try{new URL(I.data)}catch(V){W=this._getOrReturnCtx(I,W),m2(W,{validation:"url",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="regex"){if(B.regex.lastIndex=0,!B.regex.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"regex",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="trim")I.data=I.data.trim();else if(B.kind==="includes"){if(!I.data.includes(B.value,B.position))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{includes:B.value,position:B.position},message:B.message}),G.dirty()}else if(B.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(B.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(B.kind==="startsWith"){if(!I.data.startsWith(B.value))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{startsWith:B.value},message:B.message}),G.dirty()}else if(B.kind==="endsWith"){if(!I.data.endsWith(B.value))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:{endsWith:B.value},message:B.message}),G.dirty()}else if(B.kind==="datetime"){if(!hW0(B).test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"datetime",message:B.message}),G.dirty()}else if(B.kind==="date"){if(!a89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"date",message:B.message}),G.dirty()}else if(B.kind==="time"){if(!r89(B).test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{code:A2.invalid_string,validation:"time",message:B.message}),G.dirty()}else if(B.kind==="duration"){if(!k89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"duration",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="ip"){if(!s89(I.data,B.version))W=this._getOrReturnCtx(I,W),m2(W,{validation:"ip",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="jwt"){if(!o89(I.data,B.alg))W=this._getOrReturnCtx(I,W),m2(W,{validation:"jwt",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="cidr"){if(!t89(I.data,B.version))W=this._getOrReturnCtx(I,W),m2(W,{validation:"cidr",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="base64"){if(!i89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"base64",code:A2.invalid_string,message:B.message}),G.dirty()}else if(B.kind==="base64url"){if(!n89.test(I.data))W=this._getOrReturnCtx(I,W),m2(W,{validation:"base64url",code:A2.invalid_string,message:B.message}),G.dirty()}else B3.assertNever(B);return{status:G.value,value:I.data}}_regex(I,Z,G){return this.refinement((W)=>I.test(W),{validation:Z,code:A2.invalid_string,...z4.errToObj(G)})}_addCheck(I){return new jH({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...z4.errToObj(I)})}url(I){return this._addCheck({kind:"url",...z4.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...z4.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...z4.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...z4.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...z4.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...z4.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...z4.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...z4.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...z4.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...z4.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...z4.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...z4.errToObj(I)})}datetime(I){var Z,G;if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,offset:(Z=I===null||I===void 0?void 0:I.offset)!==null&&Z!==void 0?Z:!1,local:(G=I===null||I===void 0?void 0:I.local)!==null&&G!==void 0?G:!1,...z4.errToObj(I===null||I===void 0?void 0:I.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,...z4.errToObj(I===null||I===void 0?void 0:I.message)})}duration(I){return this._addCheck({kind:"duration",...z4.errToObj(I)})}regex(I,Z){return this._addCheck({kind:"regex",regex:I,...z4.errToObj(Z)})}includes(I,Z){return this._addCheck({kind:"includes",value:I,position:Z===null||Z===void 0?void 0:Z.position,...z4.errToObj(Z===null||Z===void 0?void 0:Z.message)})}startsWith(I,Z){return this._addCheck({kind:"startsWith",value:I,...z4.errToObj(Z)})}endsWith(I,Z){return this._addCheck({kind:"endsWith",value:I,...z4.errToObj(Z)})}min(I,Z){return this._addCheck({kind:"min",value:I,...z4.errToObj(Z)})}max(I,Z){return this._addCheck({kind:"max",value:I,...z4.errToObj(Z)})}length(I,Z){return this._addCheck({kind:"length",value:I,...z4.errToObj(Z)})}nonempty(I){return this.min(1,z4.errToObj(I))}trim(){return new jH({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new jH({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new jH({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxLength(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}}jH.create=(I)=>{var Z;return new jH({checks:[],typeName:C2.ZodString,coerce:(Z=I===null||I===void 0?void 0:I.coerce)!==null&&Z!==void 0?Z:!1,...I5(I)})};function e89(I,Z){let G=(I.toString().split(".")[1]||"").length,W=(Z.toString().split(".")[1]||"").length,B=G>W?G:W,V=parseInt(I.toFixed(B).replace(".","")),Y=parseInt(Z.toFixed(B).replace(".",""));return V%Y/Math.pow(10,B)}class Az extends B5{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==s2.number){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.number,received:B.parsedType}),J9}let G=void 0,W=new QW;for(let B of this._def.checks)if(B.kind==="int"){if(!B3.isInteger(I.data))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.invalid_type,expected:"integer",received:"float",message:B.message}),W.dirty()}else if(B.kind==="min"){if(B.inclusive?I.data<B.value:I.data<=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_small,minimum:B.value,type:"number",inclusive:B.inclusive,exact:!1,message:B.message}),W.dirty()}else if(B.kind==="max"){if(B.inclusive?I.data>B.value:I.data>=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_big,maximum:B.value,type:"number",inclusive:B.inclusive,exact:!1,message:B.message}),W.dirty()}else if(B.kind==="multipleOf"){if(e89(I.data,B.value)!==0)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_multiple_of,multipleOf:B.value,message:B.message}),W.dirty()}else if(B.kind==="finite"){if(!Number.isFinite(I.data))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_finite,message:B.message}),W.dirty()}else B3.assertNever(B);return{status:W.value,value:I.data}}gte(I,Z){return this.setLimit("min",I,!0,z4.toString(Z))}gt(I,Z){return this.setLimit("min",I,!1,z4.toString(Z))}lte(I,Z){return this.setLimit("max",I,!0,z4.toString(Z))}lt(I,Z){return this.setLimit("max",I,!1,z4.toString(Z))}setLimit(I,Z,G,W){return new Az({...this._def,checks:[...this._def.checks,{kind:I,value:Z,inclusive:G,message:z4.toString(W)}]})}_addCheck(I){return new Az({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:z4.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:z4.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:z4.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:z4.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:z4.toString(I)})}multipleOf(I,Z){return this._addCheck({kind:"multipleOf",value:I,message:z4.toString(Z)})}finite(I){return this._addCheck({kind:"finite",message:z4.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:z4.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:z4.toString(I)})}get minValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&B3.isInteger(I.value))}get isFinite(){let I=null,Z=null;for(let G of this._def.checks)if(G.kind==="finite"||G.kind==="int"||G.kind==="multipleOf")return!0;else if(G.kind==="min"){if(Z===null||G.value>Z)Z=G.value}else if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return Number.isFinite(Z)&&Number.isFinite(I)}}Az.create=(I)=>{return new Az({checks:[],typeName:C2.ZodNumber,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...I5(I)})};class _z extends B5{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch(B){return this._getInvalidInput(I)}if(this._getType(I)!==s2.bigint)return this._getInvalidInput(I);let G=void 0,W=new QW;for(let B of this._def.checks)if(B.kind==="min"){if(B.inclusive?I.data<B.value:I.data<=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_small,type:"bigint",minimum:B.value,inclusive:B.inclusive,message:B.message}),W.dirty()}else if(B.kind==="max"){if(B.inclusive?I.data>B.value:I.data>=B.value)G=this._getOrReturnCtx(I,G),m2(G,{code:A2.too_big,type:"bigint",maximum:B.value,inclusive:B.inclusive,message:B.message}),W.dirty()}else if(B.kind==="multipleOf"){if(I.data%B.value!==BigInt(0))G=this._getOrReturnCtx(I,G),m2(G,{code:A2.not_multiple_of,multipleOf:B.value,message:B.message}),W.dirty()}else B3.assertNever(B);return{status:W.value,value:I.data}}_getInvalidInput(I){let Z=this._getOrReturnCtx(I);return m2(Z,{code:A2.invalid_type,expected:s2.bigint,received:Z.parsedType}),J9}gte(I,Z){return this.setLimit("min",I,!0,z4.toString(Z))}gt(I,Z){return this.setLimit("min",I,!1,z4.toString(Z))}lte(I,Z){return this.setLimit("max",I,!0,z4.toString(Z))}lt(I,Z){return this.setLimit("max",I,!1,z4.toString(Z))}setLimit(I,Z,G,W){return new _z({...this._def,checks:[...this._def.checks,{kind:I,value:Z,inclusive:G,message:z4.toString(W)}]})}_addCheck(I){return new _z({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:z4.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:z4.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:z4.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:z4.toString(I)})}multipleOf(I,Z){return this._addCheck({kind:"multipleOf",value:I,message:z4.toString(Z)})}get minValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I}get maxValue(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I}}_z.create=(I)=>{var Z;return new _z({checks:[],typeName:C2.ZodBigInt,coerce:(Z=I===null||I===void 0?void 0:I.coerce)!==null&&Z!==void 0?Z:!1,...I5(I)})};class cL extends B5{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==s2.boolean){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.boolean,received:G.parsedType}),J9}return XB(I.data)}}cL.create=(I)=>{return new cL({typeName:C2.ZodBoolean,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...I5(I)})};class n$ extends B5{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==s2.date){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_type,expected:s2.date,received:B.parsedType}),J9}if(isNaN(I.data.getTime())){let B=this._getOrReturnCtx(I);return m2(B,{code:A2.invalid_date}),J9}let G=new QW,W=void 0;for(let B of this._def.checks)if(B.kind==="min"){if(I.data.getTime()<B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_small,message:B.message,inclusive:!0,exact:!1,minimum:B.value,type:"date"}),G.dirty()}else if(B.kind==="max"){if(I.data.getTime()>B.value)W=this._getOrReturnCtx(I,W),m2(W,{code:A2.too_big,message:B.message,inclusive:!0,exact:!1,maximum:B.value,type:"date"}),G.dirty()}else B3.assertNever(B);return{status:G.value,value:new Date(I.data.getTime())}}_addCheck(I){return new n$({...this._def,checks:[...this._def.checks,I]})}min(I,Z){return this._addCheck({kind:"min",value:I.getTime(),message:z4.toString(Z)})}max(I,Z){return this._addCheck({kind:"max",value:I.getTime(),message:z4.toString(Z)})}get minDate(){let I=null;for(let Z of this._def.checks)if(Z.kind==="min"){if(I===null||Z.value>I)I=Z.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let Z of this._def.checks)if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return I!=null?new Date(I):null}}n$.create=(I)=>{return new n$({checks:[],coerce:(I===null||I===void 0?void 0:I.coerce)||!1,typeName:C2.ZodDate,...I5(I)})};class wb extends B5{_parse(I){if(this._getType(I)!==s2.symbol){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.symbol,received:G.parsedType}),J9}return XB(I.data)}}wb.create=(I)=>{return new wb({typeName:C2.ZodSymbol,...I5(I)})};class iL extends B5{_parse(I){if(this._getType(I)!==s2.undefined){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.undefined,received:G.parsedType}),J9}return XB(I.data)}}iL.create=(I)=>{return new iL({typeName:C2.ZodUndefined,...I5(I)})};class nL extends B5{_parse(I){if(this._getType(I)!==s2.null){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.null,received:G.parsedType}),J9}return XB(I.data)}}nL.create=(I)=>{return new nL({typeName:C2.ZodNull,...I5(I)})};class a$ extends B5{constructor(){super(...arguments);this._any=!0}_parse(I){return XB(I.data)}}a$.create=(I)=>{return new a$({typeName:C2.ZodAny,...I5(I)})};class Jz extends B5{constructor(){super(...arguments);this._unknown=!0}_parse(I){return XB(I.data)}}Jz.create=(I)=>{return new Jz({typeName:C2.ZodUnknown,...I5(I)})};class tA extends B5{_parse(I){let Z=this._getOrReturnCtx(I);return m2(Z,{code:A2.invalid_type,expected:s2.never,received:Z.parsedType}),J9}}tA.create=(I)=>{return new tA({typeName:C2.ZodNever,...I5(I)})};class Xb extends B5{_parse(I){if(this._getType(I)!==s2.undefined){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.void,received:G.parsedType}),J9}return XB(I.data)}}Xb.create=(I)=>{return new Xb({typeName:C2.ZodVoid,...I5(I)})};class mH extends B5{_parse(I){let{ctx:Z,status:G}=this._processInputParams(I),W=this._def;if(Z.parsedType!==s2.array)return m2(Z,{code:A2.invalid_type,expected:s2.array,received:Z.parsedType}),J9;if(W.exactLength!==null){let V=Z.data.length>W.exactLength.value,Y=Z.data.length<W.exactLength.value;if(V||Y)m2(Z,{code:V?A2.too_big:A2.too_small,minimum:Y?W.exactLength.value:void 0,maximum:V?W.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:W.exactLength.message}),G.dirty()}if(W.minLength!==null){if(Z.data.length<W.minLength.value)m2(Z,{code:A2.too_small,minimum:W.minLength.value,type:"array",inclusive:!0,exact:!1,message:W.minLength.message}),G.dirty()}if(W.maxLength!==null){if(Z.data.length>W.maxLength.value)m2(Z,{code:A2.too_big,maximum:W.maxLength.value,type:"array",inclusive:!0,exact:!1,message:W.maxLength.message}),G.dirty()}if(Z.common.async)return Promise.all([...Z.data].map((V,Y)=>{return W.type._parseAsync(new kH(Z,V,Z.path,Y))})).then((V)=>{return QW.mergeArray(G,V)});let B=[...Z.data].map((V,Y)=>{return W.type._parseSync(new kH(Z,V,Z.path,Y))});return QW.mergeArray(G,B)}get element(){return this._def.type}min(I,Z){return new mH({...this._def,minLength:{value:I,message:z4.toString(Z)}})}max(I,Z){return new mH({...this._def,maxLength:{value:I,message:z4.toString(Z)}})}length(I,Z){return new mH({...this._def,exactLength:{value:I,message:z4.toString(Z)}})}nonempty(I){return this.min(1,I)}}mH.create=(I,Z)=>{return new mH({type:I,minLength:null,maxLength:null,exactLength:null,typeName:C2.ZodArray,...I5(Z)})};function uL(I){if(I instanceof I7){let Z={};for(let G in I.shape){let W=I.shape[G];Z[G]=PY.create(uL(W))}return new I7({...I._def,shape:()=>Z})}else if(I instanceof mH)return new mH({...I._def,type:uL(I.element)});else if(I instanceof PY)return PY.create(uL(I.unwrap()));else if(I instanceof TD)return TD.create(uL(I.unwrap()));else if(I instanceof eA)return eA.create(I.items.map((Z)=>uL(Z)));else return I}class I7 extends B5{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),Z=B3.objectKeys(I);return this._cached={shape:I,keys:Z}}_parse(I){if(this._getType(I)!==s2.object){let X=this._getOrReturnCtx(I);return m2(X,{code:A2.invalid_type,expected:s2.object,received:X.parsedType}),J9}let{status:G,ctx:W}=this._processInputParams(I),{shape:B,keys:V}=this._getCached(),Y=[];if(!(this._def.catchall instanceof tA&&this._def.unknownKeys==="strip")){for(let X in W.data)if(!V.includes(X))Y.push(X)}let w=[];for(let X of V){let H=B[X],J=W.data[X];w.push({key:{status:"valid",value:X},value:H._parse(new kH(W,J,W.path,X)),alwaysSet:X in W.data})}if(this._def.catchall instanceof tA){let X=this._def.unknownKeys;if(X==="passthrough")for(let H of Y)w.push({key:{status:"valid",value:H},value:{status:"valid",value:W.data[H]}});else if(X==="strict"){if(Y.length>0)m2(W,{code:A2.unrecognized_keys,keys:Y}),G.dirty()}else if(X==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let X=this._def.catchall;for(let H of Y){let J=W.data[H];w.push({key:{status:"valid",value:H},value:X._parse(new kH(W,J,W.path,H)),alwaysSet:H in W.data})}}if(W.common.async)return Promise.resolve().then(async()=>{let X=[];for(let H of w){let J=await H.key,A=await H.value;X.push({key:J,value:A,alwaysSet:H.alwaysSet})}return X}).then((X)=>{return QW.mergeObjectSync(G,X)});else return QW.mergeObjectSync(G,w)}get shape(){return this._def.shape()}strict(I){return z4.errToObj,new I7({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(Z,G)=>{var W,B,V,Y;let w=(V=(B=(W=this._def).errorMap)===null||B===void 0?void 0:B.call(W,Z,G).message)!==null&&V!==void 0?V:G.defaultError;if(Z.code==="unrecognized_keys")return{message:(Y=z4.errToObj(I).message)!==null&&Y!==void 0?Y:w};return{message:w}}}:{}})}strip(){return new I7({...this._def,unknownKeys:"strip"})}passthrough(){return new I7({...this._def,unknownKeys:"passthrough"})}extend(I){return new I7({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new I7({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:C2.ZodObject})}setKey(I,Z){return this.augment({[I]:Z})}catchall(I){return new I7({...this._def,catchall:I})}pick(I){let Z={};return B3.objectKeys(I).forEach((G)=>{if(I[G]&&this.shape[G])Z[G]=this.shape[G]}),new I7({...this._def,shape:()=>Z})}omit(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{if(!I[G])Z[G]=this.shape[G]}),new I7({...this._def,shape:()=>Z})}deepPartial(){return uL(this)}partial(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{let W=this.shape[G];if(I&&!I[G])Z[G]=W;else Z[G]=W.optional()}),new I7({...this._def,shape:()=>Z})}required(I){let Z={};return B3.objectKeys(this.shape).forEach((G)=>{if(I&&!I[G])Z[G]=this.shape[G];else{let B=this.shape[G];while(B instanceof PY)B=B._def.innerType;Z[G]=B}}),new I7({...this._def,shape:()=>Z})}keyof(){return pW0(B3.objectKeys(this.shape))}}I7.create=(I,Z)=>{return new I7({shape:()=>I,unknownKeys:"strip",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};I7.strictCreate=(I,Z)=>{return new I7({shape:()=>I,unknownKeys:"strict",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};I7.lazycreate=(I,Z)=>{return new I7({shape:I,unknownKeys:"strip",catchall:tA.create(),typeName:C2.ZodObject,...I5(Z)})};class aL extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=this._def.options;function W(B){for(let Y of B)if(Y.result.status==="valid")return Y.result;for(let Y of B)if(Y.result.status==="dirty")return Z.common.issues.push(...Y.ctx.common.issues),Y.result;let V=B.map((Y)=>new fY(Y.ctx.common.issues));return m2(Z,{code:A2.invalid_union,unionErrors:V}),J9}if(Z.common.async)return Promise.all(G.map(async(B)=>{let V={...Z,common:{...Z.common,issues:[]},parent:null};return{result:await B._parseAsync({data:Z.data,path:Z.path,parent:V}),ctx:V}})).then(W);else{let B=void 0,V=[];for(let w of G){let X={...Z,common:{...Z.common,issues:[]},parent:null},H=w._parseSync({data:Z.data,path:Z.path,parent:X});if(H.status==="valid")return H;else if(H.status==="dirty"&&!B)B={result:H,ctx:X};if(X.common.issues.length)V.push(X.common.issues)}if(B)return Z.common.issues.push(...B.ctx.common.issues),B.result;let Y=V.map((w)=>new fY(w));return m2(Z,{code:A2.invalid_union,unionErrors:Y}),J9}}get options(){return this._def.options}}aL.create=(I,Z)=>{return new aL({options:I,typeName:C2.ZodUnion,...I5(Z)})};var vD=(I)=>{if(I instanceof sL)return vD(I.schema);else if(I instanceof GX)return vD(I.innerType());else if(I instanceof oL)return[I.value];else if(I instanceof Kz)return I.options;else if(I instanceof tL)return B3.objectValues(I.enum);else if(I instanceof eL)return vD(I._def.innerType);else if(I instanceof iL)return[void 0];else if(I instanceof nL)return[null];else if(I instanceof PY)return[void 0,...vD(I.unwrap())];else if(I instanceof TD)return[null,...vD(I.unwrap())];else if(I instanceof gr)return vD(I.unwrap());else if(I instanceof ZS)return vD(I.unwrap());else if(I instanceof IS)return vD(I._def.innerType);else return[]};class vr extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.object)return m2(Z,{code:A2.invalid_type,expected:s2.object,received:Z.parsedType}),J9;let G=this.discriminator,W=Z.data[G],B=this.optionsMap.get(W);if(!B)return m2(Z,{code:A2.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[G]}),J9;if(Z.common.async)return B._parseAsync({data:Z.data,path:Z.path,parent:Z});else return B._parseSync({data:Z.data,path:Z.path,parent:Z})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,Z,G){let W=new Map;for(let B of Z){let V=vD(B.shape[I]);if(!V.length)throw new Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let Y of V){if(W.has(Y))throw new Error(`Discriminator property ${String(I)} has duplicate value ${String(Y)}`);W.set(Y,B)}}return new vr({typeName:C2.ZodDiscriminatedUnion,discriminator:I,options:Z,optionsMap:W,...I5(G)})}}function MX1(I,Z){let G=gD(I),W=gD(Z);if(I===Z)return{valid:!0,data:I};else if(G===s2.object&&W===s2.object){let B=B3.objectKeys(Z),V=B3.objectKeys(I).filter((w)=>B.indexOf(w)!==-1),Y={...I,...Z};for(let w of V){let X=MX1(I[w],Z[w]);if(!X.valid)return{valid:!1};Y[w]=X.data}return{valid:!0,data:Y}}else if(G===s2.array&&W===s2.array){if(I.length!==Z.length)return{valid:!1};let B=[];for(let V=0;V<I.length;V++){let Y=I[V],w=Z[V],X=MX1(Y,w);if(!X.valid)return{valid:!1};B.push(X.data)}return{valid:!0,data:B}}else if(G===s2.date&&W===s2.date&&+I===+Z)return{valid:!0,data:I};else return{valid:!1}}class rL extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I),W=(B,V)=>{if(RX1(B)||RX1(V))return J9;let Y=MX1(B.value,V.value);if(!Y.valid)return m2(G,{code:A2.invalid_intersection_types}),J9;if(EX1(B)||EX1(V))Z.dirty();return{status:Z.value,value:Y.data}};if(G.common.async)return Promise.all([this._def.left._parseAsync({data:G.data,path:G.path,parent:G}),this._def.right._parseAsync({data:G.data,path:G.path,parent:G})]).then(([B,V])=>W(B,V));else return W(this._def.left._parseSync({data:G.data,path:G.path,parent:G}),this._def.right._parseSync({data:G.data,path:G.path,parent:G}))}}rL.create=(I,Z,G)=>{return new rL({left:I,right:Z,typeName:C2.ZodIntersection,...I5(G)})};class eA extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.array)return m2(G,{code:A2.invalid_type,expected:s2.array,received:G.parsedType}),J9;if(G.data.length<this._def.items.length)return m2(G,{code:A2.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),J9;if(!this._def.rest&&G.data.length>this._def.items.length)m2(G,{code:A2.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z.dirty();let B=[...G.data].map((V,Y)=>{let w=this._def.items[Y]||this._def.rest;if(!w)return null;return w._parse(new kH(G,V,G.path,Y))}).filter((V)=>!!V);if(G.common.async)return Promise.all(B).then((V)=>{return QW.mergeArray(Z,V)});else return QW.mergeArray(Z,B)}get items(){return this._def.items}rest(I){return new eA({...this._def,rest:I})}}eA.create=(I,Z)=>{if(!Array.isArray(I))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new eA({items:I,typeName:C2.ZodTuple,rest:null,...I5(Z)})};class Hb extends B5{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.object)return m2(G,{code:A2.invalid_type,expected:s2.object,received:G.parsedType}),J9;let W=[],B=this._def.keyType,V=this._def.valueType;for(let Y in G.data)W.push({key:B._parse(new kH(G,Y,G.path,Y)),value:V._parse(new kH(G,G.data[Y],G.path,Y)),alwaysSet:Y in G.data});if(G.common.async)return QW.mergeObjectAsync(Z,W);else return QW.mergeObjectSync(Z,W)}get element(){return this._def.valueType}static create(I,Z,G){if(Z instanceof B5)return new Hb({keyType:I,valueType:Z,typeName:C2.ZodRecord,...I5(G)});return new Hb({keyType:jH.create(),valueType:I,typeName:C2.ZodRecord,...I5(Z)})}}class Jb extends B5{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.map)return m2(G,{code:A2.invalid_type,expected:s2.map,received:G.parsedType}),J9;let W=this._def.keyType,B=this._def.valueType,V=[...G.data.entries()].map(([Y,w],X)=>{return{key:W._parse(new kH(G,Y,G.path,[X,"key"])),value:B._parse(new kH(G,w,G.path,[X,"value"]))}});if(G.common.async){let Y=new Map;return Promise.resolve().then(async()=>{for(let w of V){let X=await w.key,H=await w.value;if(X.status==="aborted"||H.status==="aborted")return J9;if(X.status==="dirty"||H.status==="dirty")Z.dirty();Y.set(X.value,H.value)}return{status:Z.value,value:Y}})}else{let Y=new Map;for(let w of V){let{key:X,value:H}=w;if(X.status==="aborted"||H.status==="aborted")return J9;if(X.status==="dirty"||H.status==="dirty")Z.dirty();Y.set(X.value,H.value)}return{status:Z.value,value:Y}}}}Jb.create=(I,Z,G)=>{return new Jb({valueType:Z,keyType:I,typeName:C2.ZodMap,...I5(G)})};class r$ extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.parsedType!==s2.set)return m2(G,{code:A2.invalid_type,expected:s2.set,received:G.parsedType}),J9;let W=this._def;if(W.minSize!==null){if(G.data.size<W.minSize.value)m2(G,{code:A2.too_small,minimum:W.minSize.value,type:"set",inclusive:!0,exact:!1,message:W.minSize.message}),Z.dirty()}if(W.maxSize!==null){if(G.data.size>W.maxSize.value)m2(G,{code:A2.too_big,maximum:W.maxSize.value,type:"set",inclusive:!0,exact:!1,message:W.maxSize.message}),Z.dirty()}let B=this._def.valueType;function V(w){let X=new Set;for(let H of w){if(H.status==="aborted")return J9;if(H.status==="dirty")Z.dirty();X.add(H.value)}return{status:Z.value,value:X}}let Y=[...G.data.values()].map((w,X)=>B._parse(new kH(G,w,G.path,X)));if(G.common.async)return Promise.all(Y).then((w)=>V(w));else return V(Y)}min(I,Z){return new r$({...this._def,minSize:{value:I,message:z4.toString(Z)}})}max(I,Z){return new r$({...this._def,maxSize:{value:I,message:z4.toString(Z)}})}size(I,Z){return this.min(I,Z).max(I,Z)}nonempty(I){return this.min(1,I)}}r$.create=(I,Z)=>{return new r$({valueType:I,minSize:null,maxSize:null,typeName:C2.ZodSet,...I5(Z)})};class pL extends B5{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.function)return m2(Z,{code:A2.invalid_type,expected:s2.function,received:Z.parsedType}),J9;function G(Y,w){return dr({data:Y,path:Z.path,errorMaps:[Z.common.contextualErrorMap,Z.schemaErrorMap,Sr(),lL].filter((X)=>!!X),issueData:{code:A2.invalid_arguments,argumentsError:w}})}function W(Y,w){return dr({data:Y,path:Z.path,errorMaps:[Z.common.contextualErrorMap,Z.schemaErrorMap,Sr(),lL].filter((X)=>!!X),issueData:{code:A2.invalid_return_type,returnTypeError:w}})}let B={errorMap:Z.common.contextualErrorMap},V=Z.data;if(this._def.returns instanceof s$){let Y=this;return XB(async function(...w){let X=new fY([]),H=await Y._def.args.parseAsync(w,B).catch((K)=>{throw X.addIssue(G(w,K)),X}),J=await Reflect.apply(V,this,H);return await Y._def.returns._def.type.parseAsync(J,B).catch((K)=>{throw X.addIssue(W(J,K)),X})})}else{let Y=this;return XB(function(...w){let X=Y._def.args.safeParse(w,B);if(!X.success)throw new fY([G(w,X.error)]);let H=Reflect.apply(V,this,X.data),J=Y._def.returns.safeParse(H,B);if(!J.success)throw new fY([W(H,J.error)]);return J.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new pL({...this._def,args:eA.create(I).rest(Jz.create())})}returns(I){return new pL({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,Z,G){return new pL({args:I?I:eA.create([]).rest(Jz.create()),returns:Z||Jz.create(),typeName:C2.ZodFunction,...I5(G)})}}class sL extends B5{get schema(){return this._def.getter()}_parse(I){let{ctx:Z}=this._processInputParams(I);return this._def.getter()._parse({data:Z.data,path:Z.path,parent:Z})}}sL.create=(I,Z)=>{return new sL({getter:I,typeName:C2.ZodLazy,...I5(Z)})};class oL extends B5{_parse(I){if(I.data!==this._def.value){let Z=this._getOrReturnCtx(I);return m2(Z,{received:Z.data,code:A2.invalid_literal,expected:this._def.value}),J9}return{status:"valid",value:I.data}}get value(){return this._def.value}}oL.create=(I,Z)=>{return new oL({value:I,typeName:C2.ZodLiteral,...I5(Z)})};function pW0(I,Z){return new Kz({values:I,typeName:C2.ZodEnum,...I5(Z)})}class Kz extends B5{constructor(){super(...arguments);Bb.set(this,void 0)}_parse(I){if(typeof I.data!=="string"){let Z=this._getOrReturnCtx(I),G=this._def.values;return m2(Z,{expected:B3.joinValues(G),received:Z.parsedType,code:A2.invalid_type}),J9}if(!Or(this,Bb,"f"))kW0(this,Bb,new Set(this._def.values),"f");if(!Or(this,Bb,"f").has(I.data)){let Z=this._getOrReturnCtx(I),G=this._def.values;return m2(Z,{received:Z.data,code:A2.invalid_enum_value,options:G}),J9}return XB(I.data)}get options(){return this._def.values}get enum(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}get Values(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}get Enum(){let I={};for(let Z of this._def.values)I[Z]=Z;return I}extract(I,Z=this._def){return Kz.create(I,{...this._def,...Z})}exclude(I,Z=this._def){return Kz.create(this.options.filter((G)=>!I.includes(G)),{...this._def,...Z})}}Bb=new WeakMap;Kz.create=pW0;class tL extends B5{constructor(){super(...arguments);Vb.set(this,void 0)}_parse(I){let Z=B3.getValidEnumValues(this._def.values),G=this._getOrReturnCtx(I);if(G.parsedType!==s2.string&&G.parsedType!==s2.number){let W=B3.objectValues(Z);return m2(G,{expected:B3.joinValues(W),received:G.parsedType,code:A2.invalid_type}),J9}if(!Or(this,Vb,"f"))kW0(this,Vb,new Set(B3.getValidEnumValues(this._def.values)),"f");if(!Or(this,Vb,"f").has(I.data)){let W=B3.objectValues(Z);return m2(G,{received:G.data,code:A2.invalid_enum_value,options:W}),J9}return XB(I.data)}get enum(){return this._def.values}}Vb=new WeakMap;tL.create=(I,Z)=>{return new tL({values:I,typeName:C2.ZodNativeEnum,...I5(Z)})};class s$ extends B5{unwrap(){return this._def.type}_parse(I){let{ctx:Z}=this._processInputParams(I);if(Z.parsedType!==s2.promise&&Z.common.async===!1)return m2(Z,{code:A2.invalid_type,expected:s2.promise,received:Z.parsedType}),J9;let G=Z.parsedType===s2.promise?Z.data:Promise.resolve(Z.data);return XB(G.then((W)=>{return this._def.type.parseAsync(W,{path:Z.path,errorMap:Z.common.contextualErrorMap})}))}}s$.create=(I,Z)=>{return new s$({type:I,typeName:C2.ZodPromise,...I5(Z)})};class GX extends B5{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===C2.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:Z,ctx:G}=this._processInputParams(I),W=this._def.effect||null,B={addIssue:(V)=>{if(m2(G,V),V.fatal)Z.abort();else Z.dirty()},get path(){return G.path}};if(B.addIssue=B.addIssue.bind(B),W.type==="preprocess"){let V=W.transform(G.data,B);if(G.common.async)return Promise.resolve(V).then(async(Y)=>{if(Z.value==="aborted")return J9;let w=await this._def.schema._parseAsync({data:Y,path:G.path,parent:G});if(w.status==="aborted")return J9;if(w.status==="dirty")return hL(w.value);if(Z.value==="dirty")return hL(w.value);return w});else{if(Z.value==="aborted")return J9;let Y=this._def.schema._parseSync({data:V,path:G.path,parent:G});if(Y.status==="aborted")return J9;if(Y.status==="dirty")return hL(Y.value);if(Z.value==="dirty")return hL(Y.value);return Y}}if(W.type==="refinement"){let V=(Y)=>{let w=W.refinement(Y,B);if(G.common.async)return Promise.resolve(w);if(w instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return Y};if(G.common.async===!1){let Y=this._def.schema._parseSync({data:G.data,path:G.path,parent:G});if(Y.status==="aborted")return J9;if(Y.status==="dirty")Z.dirty();return V(Y.value),{status:Z.value,value:Y.value}}else return this._def.schema._parseAsync({data:G.data,path:G.path,parent:G}).then((Y)=>{if(Y.status==="aborted")return J9;if(Y.status==="dirty")Z.dirty();return V(Y.value).then(()=>{return{status:Z.value,value:Y.value}})})}if(W.type==="transform")if(G.common.async===!1){let V=this._def.schema._parseSync({data:G.data,path:G.path,parent:G});if(!i$(V))return V;let Y=W.transform(V.value,B);if(Y instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Z.value,value:Y}}else return this._def.schema._parseAsync({data:G.data,path:G.path,parent:G}).then((V)=>{if(!i$(V))return V;return Promise.resolve(W.transform(V.value,B)).then((Y)=>({status:Z.value,value:Y}))});B3.assertNever(W)}}GX.create=(I,Z,G)=>{return new GX({schema:I,typeName:C2.ZodEffects,effect:Z,...I5(G)})};GX.createWithPreprocess=(I,Z,G)=>{return new GX({schema:Z,effect:{type:"preprocess",transform:I},typeName:C2.ZodEffects,...I5(G)})};class PY extends B5{_parse(I){if(this._getType(I)===s2.undefined)return XB(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}PY.create=(I,Z)=>{return new PY({innerType:I,typeName:C2.ZodOptional,...I5(Z)})};class TD extends B5{_parse(I){if(this._getType(I)===s2.null)return XB(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}TD.create=(I,Z)=>{return new TD({innerType:I,typeName:C2.ZodNullable,...I5(Z)})};class eL extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=Z.data;if(Z.parsedType===s2.undefined)G=this._def.defaultValue();return this._def.innerType._parse({data:G,path:Z.path,parent:Z})}removeDefault(){return this._def.innerType}}eL.create=(I,Z)=>{return new eL({innerType:I,typeName:C2.ZodDefault,defaultValue:typeof Z.default==="function"?Z.default:()=>Z.default,...I5(Z)})};class IS extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G={...Z,common:{...Z.common,issues:[]}},W=this._def.innerType._parse({data:G.data,path:G.path,parent:{...G}});if(Yb(W))return W.then((B)=>{return{status:"valid",value:B.status==="valid"?B.value:this._def.catchValue({get error(){return new fY(G.common.issues)},input:G.data})}});else return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new fY(G.common.issues)},input:G.data})}}removeCatch(){return this._def.innerType}}IS.create=(I,Z)=>{return new IS({innerType:I,typeName:C2.ZodCatch,catchValue:typeof Z.catch==="function"?Z.catch:()=>Z.catch,...I5(Z)})};class Ab extends B5{_parse(I){if(this._getType(I)!==s2.nan){let G=this._getOrReturnCtx(I);return m2(G,{code:A2.invalid_type,expected:s2.nan,received:G.parsedType}),J9}return{status:"valid",value:I.data}}}Ab.create=(I)=>{return new Ab({typeName:C2.ZodNaN,...I5(I)})};var I79=Symbol("zod_brand");class gr extends B5{_parse(I){let{ctx:Z}=this._processInputParams(I),G=Z.data;return this._def.type._parse({data:G,path:Z.path,parent:Z})}unwrap(){return this._def.type}}class _b extends B5{_parse(I){let{status:Z,ctx:G}=this._processInputParams(I);if(G.common.async)return(async()=>{let B=await this._def.in._parseAsync({data:G.data,path:G.path,parent:G});if(B.status==="aborted")return J9;if(B.status==="dirty")return Z.dirty(),hL(B.value);else return this._def.out._parseAsync({data:B.value,path:G.path,parent:G})})();else{let W=this._def.in._parseSync({data:G.data,path:G.path,parent:G});if(W.status==="aborted")return J9;if(W.status==="dirty")return Z.dirty(),{status:"dirty",value:W.value};else return this._def.out._parseSync({data:W.value,path:G.path,parent:G})}}static create(I,Z){return new _b({in:I,out:Z,typeName:C2.ZodPipeline})}}class ZS extends B5{_parse(I){let Z=this._def.innerType._parse(I),G=(W)=>{if(i$(W))W.value=Object.freeze(W.value);return W};return Yb(Z)?Z.then((W)=>G(W)):G(Z)}unwrap(){return this._def.innerType}}ZS.create=(I,Z)=>{return new ZS({innerType:I,typeName:C2.ZodReadonly,...I5(Z)})};function lW0(I,Z={},G){if(I)return a$.create().superRefine((W,B)=>{var V,Y;if(!I(W)){let w=typeof Z==="function"?Z(W):typeof Z==="string"?{message:Z}:Z,X=(Y=(V=w.fatal)!==null&&V!==void 0?V:G)!==null&&Y!==void 0?Y:!0,H=typeof w==="string"?{message:w}:w;B.addIssue({code:"custom",...H,fatal:X})}});return a$.create()}var Z79={object:I7.lazycreate},C2;(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(C2||(C2={}));var G79=(I,Z={message:`Input not instance of ${I.name}`})=>lW0((G)=>G instanceof I,Z),cW0=jH.create,iW0=Az.create,W79=Ab.create,B79=_z.create,nW0=cL.create,V79=n$.create,Y79=wb.create,w79=iL.create,X79=nL.create,H79=a$.create,J79=Jz.create,A79=tA.create,_79=Xb.create,K79=mH.create,D79=I7.create,C79=I7.strictCreate,F79=aL.create,Q79=vr.create,z79=rL.create,q79=eA.create,U79=Hb.create,N79=Jb.create,$79=r$.create,R79=pL.create,E79=sL.create,M79=oL.create,f79=Kz.create,P79=tL.create,L79=s$.create,jW0=GX.create,S79=PY.create,d79=TD.create,O79=GX.createWithPreprocess,v79=_b.create,g79=()=>cW0().optional(),T79=()=>iW0().optional(),y79=()=>nW0().optional(),b79={string:(I)=>jH.create({...I,coerce:!0}),number:(I)=>Az.create({...I,coerce:!0}),boolean:(I)=>cL.create({...I,coerce:!0}),bigint:(I)=>_z.create({...I,coerce:!0}),date:(I)=>n$.create({...I,coerce:!0})},j79=J9,r=Object.freeze({__proto__:null,defaultErrorMap:lL,setErrorMap:O89,getErrorMap:Sr,makeIssue:dr,EMPTY_PATH:v89,addIssueToContext:m2,ParseStatus:QW,INVALID:J9,DIRTY:hL,OK:XB,isAborted:RX1,isDirty:EX1,isValid:i$,isAsync:Yb,get util(){return B3},get objectUtil(){return $X1},ZodParsedType:s2,getParsedType:gD,ZodType:B5,datetimeRegex:hW0,ZodString:jH,ZodNumber:Az,ZodBigInt:_z,ZodBoolean:cL,ZodDate:n$,ZodSymbol:wb,ZodUndefined:iL,ZodNull:nL,ZodAny:a$,ZodUnknown:Jz,ZodNever:tA,ZodVoid:Xb,ZodArray:mH,ZodObject:I7,ZodUnion:aL,ZodDiscriminatedUnion:vr,ZodIntersection:rL,ZodTuple:eA,ZodRecord:Hb,ZodMap:Jb,ZodSet:r$,ZodFunction:pL,ZodLazy:sL,ZodLiteral:oL,ZodEnum:Kz,ZodNativeEnum:tL,ZodPromise:s$,ZodEffects:GX,ZodTransformer:GX,ZodOptional:PY,ZodNullable:TD,ZodDefault:eL,ZodCatch:IS,ZodNaN:Ab,BRAND:I79,ZodBranded:gr,ZodPipeline:_b,ZodReadonly:ZS,custom:lW0,Schema:B5,ZodSchema:B5,late:Z79,get ZodFirstPartyTypeKind(){return C2},coerce:b79,any:H79,array:K79,bigint:B79,boolean:nW0,date:V79,discriminatedUnion:Q79,effect:jW0,enum:f79,function:R79,instanceof:G79,intersection:z79,lazy:E79,literal:M79,map:N79,nan:W79,nativeEnum:P79,never:A79,null:X79,nullable:d79,number:iW0,object:D79,oboolean:y79,onumber:T79,optional:S79,ostring:g79,pipeline:v79,preprocess:O79,promise:L79,record:U79,set:$79,strictObject:C79,string:cW0,symbol:Y79,transformer:jW0,tuple:q79,undefined:w79,union:F79,unknown:J79,void:_79,NEVER:j79,ZodIssueCode:A2,quotelessJson:d89,ZodError:fY});var fX1=r.enum(["local","user","project"]),KQ3=r.enum(["stdio","sse"]),PX1=r.object({type:r.literal("stdio").optional(),command:r.string().min(1,"Command cannot be empty"),args:r.array(r.string()).default([]),env:r.record(r.string()).optional()}),m79=r.object({type:r.literal("sse"),url:r.string().url("Must be a valid URL")}),LX1=r.discriminatedUnion("type",[PX1,m79]),Tr=r.object({mcpServers:r.record(r.string(),LX1)});var Dz={allowedTools:[],history:[],dontCrawlDirectory:!1,mcpContextUris:[],mcpServers:{},enabledMcpjsonServers:[],disabledMcpjsonServers:[],enableAllProjectMcpServers:!1,hasTrustDialogAccepted:!1,ignorePatterns:[]};function rW0(I){let Z={...Dz};if(I===x79())Z.dontCrawlDirectory=!0;return Z}function h79(I){return["disabled","enabled","no_permissions","not_configured","migrated"].includes(I)}var WX={numStartups:0,autoUpdaterStatus:"not_configured",theme:"dark",preferredNotifChannel:"auto",verbose:!1,editorMode:"normal",autoCompactEnabled:!0,hasSeenTasksHint:!1,queuedCommandUpHintCount:0,diffTool:"terminal",customApiKeyResponses:{approved:[],rejected:[]},env:{},tipsHistory:{},memoryUsageCount:0},Kb=["apiKeyHelper","autoUpdaterStatus","theme","verbose","preferredNotifChannel","shiftEnterKeyBindingInstalled","editorMode","hasUsedBackslashReturn","supervisorMode","autoCompactEnabled","stressTestingFraction","diffTool","env","tipsHistory"];function vX1(I){return Kb.includes(I)}var Db=["allowedTools","dontCrawlDirectory","hasTrustDialogAccepted","hasCompletedProjectOnboarding","ignorePatterns"];function sW0(){let I=c0(),Z=t$(ZX,WX);while(!0){if(Z.projects?.[I]?.hasTrustDialogAccepted)return!0;let W=OX1(I,"..");if(W===I)break;I=W}return!1}var gQ3={...WX,autoUpdaterStatus:"disabled"},TQ3={...Dz};function gX1(I){return Db.includes(I)}function GS(I,Z){if(Z){let G=f0();return I in G&&Array.isArray(G[I])}else{let G=Dz[I];return I in Dz&&Array.isArray(G)}}function p79(I,Z){if(GS(I,Z))return!1;if(Z){let G=f0();return I in G&&typeof G[I]==="object"}else{let G=Dz[I];return I in Dz&&typeof G==="object"}}function br(I,Z,G,W=!0){if(x1("tengu_config_add",{key:I,global:G,count:Z.length}),!GS(I,G)){if(G)console.error(`Error: '${I}' is not a valid array config key in global config`);else console.error(`Error: '${I}' is not a valid array config key in project config`);if(W)process.exit(1);else return}if(G){let B=f0(),V=I,Y=B[V]||[],w=new Set(Y),X=w.size;for(let H of Z)w.add(H);if(w.size>X){let H=Array.from(w).sort();o2({...B,[V]:H})}}else{let B=W9(),V=I,Y=B[V]||[],w=new Set(Y),X=w.size;for(let H of Z)w.add(H);if(w.size>X){let H=Array.from(w).sort();r3({...B,[V]:H})}}if(W)process.exit(0)}function oW0(I,Z,G,W=!0){if(x1("tengu_config_remove",{key:I,global:G,count:Z.length}),G){let B=f0();if(!(I in B)||!Array.isArray(B[I]))if(console.error(`Error: '${I}' is not a valid array config key in global config`),W)process.exit(1);else return;let V=I,Y=B[V];if(!Y)Y=[];let w=new Set(Z),X=Y.filter((H)=>!w.has(H));if(Y.length!==X.length)o2({...B,[V]:X.sort()})}else{let B=W9(),V=Dz[I];if(!(I in Dz)||!Array.isArray(V))if(console.error(`Error: '${I}' is not a valid array config key in project config`),W)process.exit(1);else return;let Y=I,w=B[Y];if(!w)w=[];let X=new Set(Z),H=w.filter((J)=>!X.has(J));if(w.length!==H.length)r3({...B,[Y]:H.sort()})}if(W)process.exit(0)}function o2(I){eW0(ZX,{...I,projects:t$(ZX,WX).projects},WX),o$.config=null,o$.mtime=0}var o$={config:null,mtime:0};function f0(){try{let I=yr(ZX)?k79(ZX):null;if(o$.config&&I){if(I.mtimeMs<=o$.mtime)return o$.config}let Z=t$(ZX,WX);if(I)o$={config:Z,mtime:I.mtimeMs};else o$={config:Z,mtime:Date.now()};return Z}catch{return t$(ZX,WX)}}function tW0(I){let Z=f0();if(Z.customApiKeyResponses?.approved?.includes(I))return"approved";if(Z.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function eW0(I,Z,G){let W=Object.fromEntries(Object.entries(Z).filter(([B,V])=>JSON.stringify(V)!==JSON.stringify(G[B])));aA(I,JSON.stringify(W,null,2))}var dX1=!1;function IB0(){if(dX1)return;dX1=!0,t$(ZX,WX,!0)}function t$(I,Z,G){if(!dX1)throw new Error("Config accessed before allowed.");if(!yr(I))return jT(Z);try{let W=SX1(I,"utf-8");try{let B=JSON.parse(W);return{...jT(Z),...B}}catch(B){let V=B instanceof Error?B.message:String(B);throw new bL(V,I,Z)}}catch(W){if(W instanceof bL&&G)throw W;return jT(Z)}}function W9(){let I=OX1(S5()),Z=t$(ZX,WX);if(!Z.projects)return rW0(I);let G=Z.projects[I]??rW0(I);if(typeof G.allowedTools==="string")G.allowedTools=AZ(G.allowedTools)??[];return G}function r3(I){let Z=t$(ZX,WX);eW0(ZX,{...Z,projects:{...Z.projects,[OX1(S5())]:I}},WX)}function ZB0(){if(process.env.DISABLE_AUTOUPDATER)return!0;return f0().autoUpdaterStatus==="disabled"}function jr(){let I=f0(),Z=I.oauthAccount?.organizationRole,G=I.oauthAccount?.workspaceRole;if(!Z||!G)return!0;return["admin","billing"].includes(Z)||["workspace_admin","workspace_billing"].includes(G)}function l79(I){let Z=AZ(I),G={};if(Z&&typeof Z==="object"){let W=Tr.safeParse(Z);if(W.success){let B=W.data;for(let[V,Y]of Object.entries(B.mcpServers))G[V]=Y}}return G}var Cz=O2(()=>{let I=aW0(c0(),".mcp.json");if(!yr(I))return{};try{let Z=SX1(I,"utf-8"),G=l79(Z);return x1("tengu_mcpjson_found",{numServers:Object.keys(G).length}),G}catch{}return{}},()=>{let I=c0(),Z=aW0(I,".mcp.json");if(yr(Z))try{let G=SX1(Z,"utf-8");return`${I}:${G}`}catch{return I}return I});function Cb(){let I=f0();if(I.userID)return I.userID;let Z=u79(32).toString("hex");return o2({...I,userID:Z}),Z}function GB0(I,Z){if(x1("tengu_config_get",{key:I,global:Z}),Z){if(!vX1(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${Kb.join(", ")}`),process.exit(1);return f0()[I]}else{if(!gX1(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${Db.join(", ")}`),process.exit(1);return W9()[I]}}function WB0(I,Z,G){if(x1("tengu_config_set",{key:I,global:G}),G){if(!vX1(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${Kb.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!h79(Z))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);if(p79(I,G)&&typeof Z==="string")try{let B=JSON.parse(Z);if(typeof B!=="object"||B===null||Array.isArray(B))console.error("Error: 'env' must be a valid JSON object"),process.exit(1);let V=f0();o2({...V,[I]:B}),process.exit(0)}catch(B){console.error(`Error: Failed to parse JSON for 'env': ${B instanceof Error?B.message:String(B)}`),process.exit(1)}if(GS(I,G)&&typeof Z==="string"){console.warn(_0.yellow(`Warning: '${I}' is an array type. Automatically using 'config add' instead of 'config set'.`));let B=Z.split(",").map((V)=>V.trim()).filter((V)=>V.length>0);br(I,B,G);return}let W=f0();o2({...W,[I]:Z})}else{if(!gX1(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${Db.join(", ")}. Did you mean --global?`),process.exit(1);if(GS(I,G)&&typeof Z==="string"){console.warn(_0.yellow(`Warning: '${I}' is an array type. Automatically using 'config add' instead of 'config set'.`));let B=Z.split(",").map((V)=>V.trim()).filter((V)=>V.length>0);br(I,B,G);return}let W=W9();r3({...W,[I]:Z})}process.exit(0)}function BB0(I,Z){if(x1("tengu_config_delete",{key:I,global:Z}),Z){if(!vX1(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${Kb.join(", ")}`),process.exit(1);let G=f0();delete G[I],o2(G)}else{if(!gX1(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${Db.join(", ")}. Did you mean --global?`),process.exit(1);let G=W9();delete G[I],r3(G)}}function VB0(I){if(x1("tengu_config_list",{global:I}),I)return ei(f0(),Kb);else return ei(W9(),Db)}import{execSync as c79}from"child_process";var Ha=O2(async()=>{let I=Cb(),Z=f0();return{customIDs:{sessionId:UY},userID:I,appVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,email:i79(),custom:{userType:"external",organizationUuid:Z.oauthAccount?.organizationUuid,accountUuid:Z.oauthAccount?.accountUuid}}});function i79(){return;try{return c79("git config --get user.email").toString().trim()}catch{return}}function YB0(){qV.init({dsn:C00,environment:"external",release:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,integrations:[new qV.Integrations.Http({tracing:!0}),new qV.Integrations.Modules,new qV.Integrations.Console,new qV.Integrations.FunctionToString,new qV.Integrations.LinkedErrors],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function qr(I){try{let Z=await Ha();qV.setExtras({nodeVersion:z2.nodeVersion,platform:z2.platform,isCI:z2.isCI,isTest:!1,packageVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,sessionId:UY,statsigGates:M00(),terminal:z2.terminal,userType:"external"}),qV.setUser({id:Z.userID,email:Z.email}),qV.captureException(I)}catch{}}var S2="Claude Code",mr="https://claude.ai/code";var _w0={};var wB0=!1,e$=void 0,TX1=void 0,n79=void 0,a79=void 0,r79=void 0,XB0=void 0,s79=void 0,kr=void 0,yX1=void 0,HB0=void 0,bX1=void 0,xr=void 0,JB0=void 0;function ur(I,Z={auto:!1}){if(wB0)throw new Error(`you must \`import '@anthropic-ai/sdk/shims/${I.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(e$)throw new Error(`can't \`import '@anthropic-ai/sdk/shims/${I.kind}'\` after \`import '@anthropic-ai/sdk/shims/${e$}'\``);wB0=Z.auto,e$=I.kind,TX1=I.fetch,n79=I.Request,a79=I.Response,r79=I.Headers,XB0=I.FormData,s79=I.Blob,kr=I.File,yX1=I.ReadableStream,HB0=I.getMultipartRequestOptions,bX1=I.getDefaultAgent,xr=I.fileFromPath,JB0=I.isFsReadStream}var Oz=J1(sX1(),1);fs();SH1();import{inspect as nZ9}from"util";PH1();var RY0=(I)=>I instanceof cH;import{deprecate as iZ9}from"util";var EY0=iZ9(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.');var W_=function(I,Z,G,W){if(G==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?I!==Z||!W:!Z.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?W:G==="a"?W.call(I):W?W.value:Z.get(I)},Ps,B_,dH1;class OH1{constructor(I){if(Ps.add(this),B_.set(this,new Map),I)EY0(),I.forEach(({name:Z,value:G,fileName:W})=>this.append(Z,G,W))}static[(B_=new WeakMap,Ps=new WeakSet,Symbol.hasInstance)](I){return Boolean(I&&ZI(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&ZI(I.append)&&ZI(I.set)&&ZI(I.get)&&ZI(I.getAll)&&ZI(I.has)&&ZI(I.delete)&&ZI(I.entries)&&ZI(I.values)&&ZI(I.keys)&&ZI(I[Symbol.iterator])&&ZI(I.forEach))}append(I,Z,G){W_(this,Ps,"m",dH1).call(this,{name:I,fileName:G,append:!0,rawValue:Z,argsLength:arguments.length})}set(I,Z,G){W_(this,Ps,"m",dH1).call(this,{name:I,fileName:G,append:!1,rawValue:Z,argsLength:arguments.length})}get(I){let Z=W_(this,B_,"f").get(String(I));if(!Z)return null;return Z[0]}getAll(I){let Z=W_(this,B_,"f").get(String(I));if(!Z)return[];return Z.slice()}has(I){return W_(this,B_,"f").has(String(I))}delete(I){W_(this,B_,"f").delete(String(I))}*keys(){for(let I of W_(this,B_,"f").keys())yield I}*entries(){for(let I of this.keys()){let Z=this.getAll(I);for(let G of Z)yield[I,G]}}*values(){for(let[,I]of this)yield I}[(dH1=function I({name:Z,rawValue:G,append:W,fileName:B,argsLength:V}){let Y=W?"append":"set";if(V<2)throw new TypeError(`Failed to execute '${Y}' on 'FormData': 2 arguments required, but only ${V} present.`);Z=String(Z);let w;if(LH1(G))w=B===void 0?G:new G_([G],B,{type:G.type,lastModified:G.lastModified});else if(RY0(G))w=new G_([G],B===void 0?"blob":B,{type:G.type});else if(B)throw new TypeError(`Failed to execute '${Y}' on 'FormData': parameter 2 is not of type 'Blob'.`);else w=String(G);let X=W_(this,B_,"f").get(Z);if(!X)return void W_(this,B_,"f").set(Z,[w]);if(!W)return void W_(this,B_,"f").set(Z,[w]);X.push(w)},Symbol.iterator)](){return this.entries()}forEach(I,Z){for(let[G,W]of this)I.call(Z,W,G,this)}get[Symbol.toStringTag](){return"FormData"}[nZ9.custom](){return this[Symbol.toStringTag]}}var aH1=J1(bY0(),1),Aw0=J1(oY0(),1);import{ReadStream as dG9}from"node:fs";function CG9(){let I=16,Z="";while(I--)Z+="abcdefghijklmnopqrstuvwxyz0123456789"[Math.random()*36<<0];return Z}var tY0=CG9;var FG9=(I)=>Object.prototype.toString.call(I).slice(8,-1).toLowerCase();function QG9(I){if(FG9(I)!=="object")return!1;let Z=Object.getPrototypeOf(I);if(Z===null||Z===void 0)return!0;return(Z.constructor&&Z.constructor.toString())===Object.toString()}var uH1=QG9;var zG9=(I)=>String(I).replace(/\r|\n/g,(Z,G,W)=>{if(Z==="\r"&&W[G+1]!==`
|
|
517
527
|
`||Z===`
|
|
518
528
|
`&&W[G-1]!=="\r")return`\r
|
|
519
529
|
`;return Z}),hH1=zG9;var qG9=(I)=>String(I).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22"),pH1=qG9;var UG9=(I)=>typeof I==="function",hD=UG9;var KR=(I)=>Boolean(I&&typeof I==="object"&&hD(I.constructor)&&I[Symbol.toStringTag]==="File"&&hD(I.stream)&&I.name!=null&&I.size!=null&&I.lastModified!=null);var eY0=(I)=>Boolean(I&&hD(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&hD(I.append)&&hD(I.getAll)&&hD(I.entries)&&hD(I[Symbol.iterator]));var jb=function(I,Z,G,W,B){if(W==="m")throw new TypeError("Private method is not writable");if(W==="a"&&!B)throw new TypeError("Private accessor was defined without a setter");if(typeof Z==="function"?I!==Z||!B:!Z.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return W==="a"?B.call(I,G):B?B.value=G:Z.set(I,G),G},S8=function(I,Z,G,W){if(G==="a"&&!W)throw new TypeError("Private accessor was defined without a getter");if(typeof Z==="function"?I!==Z||!W:!Z.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?W:G==="a"?W.call(I):W?W.value:Z.get(I)},ys,dz,mb,bs,kb,DR,xb,ub,js,lH1,NG9={enableAdditionalHeaders:!1};class cH1{constructor(I,Z,G){if(ys.add(this),dz.set(this,`\r
|
|
@@ -597,13 +607,13 @@ Assistant:`;k6.DEFAULT_TIMEOUT=600000;k6.AnthropicError=_9;k6.APIError=R6;k6.API
|
|
|
597
607
|
`);G?.(I)}function h1(){if(U)return Y?.(),P;let R0=P.up();if(R0.equals(P))Y?.();return R0}function r1(){if(U)return w?.(),P;let R0=P.down();if(R0.equals(P))w?.();return R0}function M0(R0){switch(!0){case R0.escape:return m;case(R0.leftArrow&&(R0.ctrl||R0.meta||R0.fn)):return()=>P.prevWord();case(R0.rightArrow&&(R0.ctrl||R0.meta||R0.fn)):return()=>P.nextWord();case R0.backspace:return R0.meta?()=>P.deleteWordBefore():()=>P.backspace();case R0.delete:return R0.meta?()=>P.deleteToLineEnd():()=>P.del();case R0.ctrl:return x;case R0.home:return()=>P.startOfLine();case R0.end:return()=>P.endOfLine();case R0.pageDown:return()=>P.endOfLine();case R0.pageUp:return()=>P.startOfLine();case R0.meta:return w1;case R0.return:return()=>P1(R0);case R0.tab:return()=>P;case R0.upArrow:return h1;case R0.downArrow:return r1;case R0.leftArrow:return()=>P.left();case R0.rightArrow:return()=>P.right();default:return function(X2){if(X2.length>10||/\.(jpg|jpeg|png|gif|webp)$/i.test(X2.toLowerCase())){let H1=TP1();if(H1)return z1(H1)}switch(!0){case(X2=="\x1B[H"||X2=="\x1B[1~"):return P.startOfLine();case(X2=="\x1B[F"||X2=="\x1B[4~"):return P.endOfLine();default:if(P.isAtStart()&&(X2==="!"||X2==="#"))return P.insert(HX(X2).replace(/\r/g,`
|
|
598
608
|
`)).left();return P.insert(HX(X2).replace(/\r/g,`
|
|
599
609
|
`))}}}}function l0(R0,X2){let H1=M0(X2)(R0);if(H1){if(!P.equals(H1)){if(f(H1.offset),P.text!=H1.text)Z(H1.text)}}}return{onInput:l0,renderedValue:P.render(A,H,K),offset:g,setOffset:f}}var K91=J1(R1(),1);var y$2=J1(R1(),1);function b$2({onPaste:I,onInput:Z}){let[G,W]=y$2.default.useState({chunks:[],timeoutId:null}),B=(Y)=>{if(Y)clearTimeout(Y);return setTimeout(()=>{W(({chunks:w})=>{let X=w.join("");return Promise.resolve().then(()=>I&&I(X)),{chunks:[],timeoutId:null}})},100)};return{wrappedOnInput:(Y,w)=>{if(I&&(Y.length>800||G.timeoutId)){W(({chunks:X,timeoutId:H})=>{return{chunks:[...X,Y],timeoutId:B(H)}});return}Z(Y,w)},pasteState:G}}function j$2({placeholder:I,value:Z,showCursor:G,focus:W}){let B=void 0;if(I){if(B=_0.ansi256(e4().secondaryText)(I),G&&W)B=I.length>0?_0.inverse(I[0])+_0.ansi256(e4().secondaryText)(I.slice(1)):_0.inverse(" ")}let V=Z.length===0&&Boolean(I);return{renderedPlaceholder:B,showPlaceholder:V}}function D91({inputState:I,children:Z,...G}){let{onInput:W,renderedValue:B}=I,V=j1(),{wrappedOnInput:Y}=b$2({onPaste:G.onPaste,onInput:W}),{showPlaceholder:w,renderedPlaceholder:X}=j$2({placeholder:G.placeholder,value:G.value,showCursor:G.showCursor,focus:G.focus});P2(Y,{isActive:G.focus});let H=G.value&&G.value.trim().indexOf(" ")===-1||G.value&&G.value.endsWith(" "),J=Boolean(G.argumentHint&&G.value&&H&&G.value.startsWith("/"));return K91.default.createElement(p,null,K91.default.createElement(b,{wrap:"truncate-end"},w?X:B,J&&K91.default.createElement(b,{color:V.secondaryText},G.value?.endsWith(" ")?"":" ",G.argumentHint),Z))}function dV(I){let Z=e4().text,G=_91({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:_0.inverse,themeText:(W)=>_0.ansi256(Z)(W),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset});return m$2.default.createElement(D91,{inputState:G,...I})}var NJ=O2(async()=>{let{code:I}=await R4("git",["rev-parse","--is-inside-work-tree"]);return I===0}),qz5=async()=>{let{stdout:I}=await R4("git",["rev-parse","HEAD"]);return I.trim()},Uz5=async()=>{let{stdout:I}=await R4("git",["rev-parse","--abbrev-ref","HEAD"],void 0,void 0,!1);return I.trim()},Nz5=async()=>{let{stdout:I,code:Z}=await R4("git",["remote","get-url","origin"],void 0,void 0,!1);return Z===0?I.trim():null},$z5=async()=>{let{code:I}=await R4("git",["rev-parse","@{u}"],void 0,void 0,!1);return I===0},Rz5=async()=>{let{stdout:I}=await R4("git",["status","--porcelain"],void 0,void 0,!1);return I.trim().length===0},Hu=async()=>{try{let{stdout:I,code:Z}=await R4("git",["worktree","list"],void 0,void 0,!1);if(Z!==0)return 0;return I.trim().split(`
|
|
600
|
-
`).length}catch(I){return 0}};async function C91(){try{let[I,Z,G,W,B,V]=await Promise.all([qz5(),Uz5(),Nz5(),$z5(),Rz5(),Hu()]);return{commitHash:I,branchName:Z,remoteUrl:G,isHeadOnRemote:W,isClean:B,worktreeCount:V}}catch(I){return null}}var F91=J1(R1(),1);function w3(){let[I,Z]=F91.useState({columns:process.stdout.columns||80,rows:process.stdout.rows||24});return F91.useEffect(()=>{function G(){Z({columns:process.stdout.columns||80,rows:process.stdout.rows||24})}return process.stdout.setMaxListeners(100).on("resize",G),()=>{process.stdout.off("resize",G)}},[]),I}function Q91(){return!(y3||a3)}function uY(I){let Z=f0();if(I&&process.env.ANTHROPIC_API_KEY)return process.env.ANTHROPIC_API_KEY;if(!1==="true"){if(!process.env.ANTHROPIC_API_KEY)throw new Error("ANTHROPIC_API_KEY env var is required");return process.env.ANTHROPIC_API_KEY}{let G=Ju();if(G)return G;return z91()}return null}var Ju=O2(()=>{let I=f0();if(!I.apiKeyHelper)return null;try{let Z=bH(I.apiKeyHelper);if(!Z)return null;return Z.toString().trim()}catch(Z){let G=_0.red("Error getting API key from apiKeyHelper (in ~/.claude.json):");if(Z instanceof Error&&"stderr"in Z)console.error(G,String(Z.stderr));else if(Z instanceof Error)console.error(G,Z.message);else console.error(G,Z);return null}});function gE(I){return I.slice(-20)}function k$2(){if(process.platform!=="darwin")return!1;let Z=f0().primaryApiKey;if(!Z)return!1;try{let G=!1;try{G=!!bH(`security find-generic-password -a $USER -w -s "${S2}"`)}catch(V){G=!1}if(!G)bH(`security add-generic-password -a $USER -s "${S2}" -w ${Z}`);let{primaryApiKey:W,...B}=f0();return o2(B),z91.cache.clear?.(),!0}catch(G){return c1(G),!1}}var z91=O2(()=>{if(process.platform==="darwin")try{let Z=bH(`security find-generic-password -a $USER -w -s "${S2}"`);if(Z)return Z}catch(Z){c1(Z)}return f0().primaryApiKey??null});function x$2(I){let Z=f0();if(p$2(),process.platform==="darwin")try{bH(`security add-generic-password -a $USER -s "${S2}" -w ${I}`)}catch(W){c1(W),Z.primaryApiKey=I}else Z.primaryApiKey=I;if(!Z.customApiKeyResponses)Z.customApiKeyResponses={approved:[],rejected:[]};if(!Z.customApiKeyResponses.approved)Z.customApiKeyResponses.approved=[];let G=gE(I);if(!Z.customApiKeyResponses.approved.includes(G))Z.customApiKeyResponses.approved.push(G);o2(Z),z91.cache.clear?.()}function u$2(I){let Z=f0(),G=gE(I);return Z.customApiKeyResponses?.approved?.includes(G)??!1}function h$2(){p$2();let I=f0();I.primaryApiKey=void 0,o2(I),z91.cache.clear?.()}function p$2(){if(process.platform==="darwin")try{bH(`security delete-generic-password -a $USER -s "${S2}"`)}catch(I){c1(I)}}var OO=`claude-cli/${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
610
|
+
`).length}catch(I){return 0}};async function C91(){try{let[I,Z,G,W,B,V]=await Promise.all([qz5(),Uz5(),Nz5(),$z5(),Rz5(),Hu()]);return{commitHash:I,branchName:Z,remoteUrl:G,isHeadOnRemote:W,isClean:B,worktreeCount:V}}catch(I){return null}}var F91=J1(R1(),1);function w3(){let[I,Z]=F91.useState({columns:process.stdout.columns||80,rows:process.stdout.rows||24});return F91.useEffect(()=>{function G(){Z({columns:process.stdout.columns||80,rows:process.stdout.rows||24})}return process.stdout.setMaxListeners(100).on("resize",G),()=>{process.stdout.off("resize",G)}},[]),I}function Q91(){return!(y3||a3)}function uY(I){let Z=f0();if(I&&process.env.ANTHROPIC_API_KEY)return process.env.ANTHROPIC_API_KEY;if(!1==="true"){if(!process.env.ANTHROPIC_API_KEY)throw new Error("ANTHROPIC_API_KEY env var is required");return process.env.ANTHROPIC_API_KEY}{let G=Ju();if(G)return G;return z91()}return null}var Ju=O2(()=>{let I=f0();if(!I.apiKeyHelper)return null;try{let Z=bH(I.apiKeyHelper);if(!Z)return null;return Z.toString().trim()}catch(Z){let G=_0.red("Error getting API key from apiKeyHelper (in ~/.claude.json):");if(Z instanceof Error&&"stderr"in Z)console.error(G,String(Z.stderr));else if(Z instanceof Error)console.error(G,Z.message);else console.error(G,Z);return null}});function gE(I){return I.slice(-20)}function k$2(){if(process.platform!=="darwin")return!1;let Z=f0().primaryApiKey;if(!Z)return!1;try{let G=!1;try{G=!!bH(`security find-generic-password -a $USER -w -s "${S2}"`)}catch(V){G=!1}if(!G)bH(`security add-generic-password -a $USER -s "${S2}" -w ${Z}`);let{primaryApiKey:W,...B}=f0();return o2(B),z91.cache.clear?.(),!0}catch(G){return c1(G),!1}}var z91=O2(()=>{if(process.platform==="darwin")try{let Z=bH(`security find-generic-password -a $USER -w -s "${S2}"`);if(Z)return Z}catch(Z){c1(Z)}return f0().primaryApiKey??null});function x$2(I){let Z=f0();if(p$2(),process.platform==="darwin")try{bH(`security add-generic-password -a $USER -s "${S2}" -w ${I}`)}catch(W){c1(W),Z.primaryApiKey=I}else Z.primaryApiKey=I;if(!Z.customApiKeyResponses)Z.customApiKeyResponses={approved:[],rejected:[]};if(!Z.customApiKeyResponses.approved)Z.customApiKeyResponses.approved=[];let G=gE(I);if(!Z.customApiKeyResponses.approved.includes(G))Z.customApiKeyResponses.approved.push(G);o2(Z),z91.cache.clear?.()}function u$2(I){let Z=f0(),G=gE(I);return Z.customApiKeyResponses?.approved?.includes(G)??!1}function h$2(){p$2();let I=f0();I.primaryApiKey=void 0,o2(I),z91.cache.clear?.()}function p$2(){if(process.platform==="darwin")try{bH(`security delete-generic-password -a $USER -s "${S2}"`)}catch(I){c1(I)}}var OO=`claude-cli/${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION} (external)`;async function q91(I){let Z=process.platform,G=Z==="win32"?"start":Z==="darwin"?"open":"xdg-open";try{let{code:W}=await R4(G,[I]);return W===0}catch(W){return!1}}var l$2=J1(R1(),1);function D9(I){let[Z,G]=l$2.useState({pending:!1,keyName:null}),W=mC((V)=>G({pending:V,keyName:"Ctrl-C"}),I?I:()=>process.exit(0)),B=mC((V)=>G({pending:V,keyName:"Ctrl-D"}),I?I:()=>process.exit(0));return P2((V,Y)=>{if(Y.ctrl&&V==="c")W();if(Y.ctrl&&V==="d")B()}),Z}var Ez5=7250;function vO(I){let Z=I;return Z=Z.replace(/"(sk-ant[^\s"']{24,})"/g,'"[REDACTED_API_KEY]"'),Z=Z.replace(/(?<![A-Za-z0-9"'])(sk-ant-?[A-Za-z0-9_-]{10,})(?![A-Za-z0-9"'])/g,"[REDACTED_API_KEY]"),Z=Z.replace(/AWS key: "(AWS[A-Z0-9]{20,})"/g,'AWS key: "[REDACTED_AWS_KEY]"'),Z=Z.replace(/(AKIA[A-Z0-9]{16})/g,"[REDACTED_AWS_KEY]"),Z=Z.replace(/(?<![A-Za-z0-9])(AIza[A-Za-z0-9_-]{35})(?![A-Za-z0-9])/g,"[REDACTED_GCP_KEY]"),Z=Z.replace(/(?<![A-Za-z0-9])([a-z0-9-]+@[a-z0-9-]+\.iam\.gserviceaccount\.com)(?![A-Za-z0-9])/g,"[REDACTED_GCP_SERVICE_ACCOUNT]"),Z=Z.replace(/(["']?x-api-key["']?\s*[:=]\s*["']?)[^"',\s)}\]]+/gi,"$1[REDACTED_API_KEY]"),Z=Z.replace(/(["']?authorization["']?\s*[:=]\s*["']?(bearer\s+)?)[^"',\s)}\]]+/gi,"$1[REDACTED_TOKEN]"),Z=Z.replace(/(AWS[_-][A-Za-z0-9_]+\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED_AWS_VALUE]"),Z=Z.replace(/(GOOGLE[_-][A-Za-z0-9_]+\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED_GCP_VALUE]"),Z=Z.replace(/((API[-_]?KEY|TOKEN|SECRET|PASSWORD)\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED]"),Z}function c$2(){return ZX1().map((I)=>{let Z={...I};if(Z&&typeof Z.error==="string")Z.error=vO(Z.error);return Z})}var i$2="https://github.com/anthropics/claude-code/issues";function a$2({messages:I,onDone:Z}){let[G,W]=TX.useState("userInput"),[B,V]=TX.useState(0),[Y,w]=TX.useState(""),[X,H]=TX.useState(null),[J,A]=TX.useState(null),[K,D]=TX.useState({isGit:!1,gitState:null}),[z,U]=TX.useState(null),N=w3().columns-4;TX.useEffect(()=>{async function P(){let M=await NJ(),d=null;if(M)d=await C91();D({isGit:M,gitState:d})}P()},[]);let L=D9(),g=TX.useCallback(async()=>{W("submitting"),A(null),H(null);let P=c$2(),M={message_count:I.length,datetime:new Date().toISOString(),description:Y,platform:z2.platform,gitRepo:K.isGit,terminal:z2.terminal,version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,transcript:I,errors:P},[d,k]=await Promise.all([Pz5(M),fz5(Y)]);if(U(k),d.success){if(d.feedbackId)H(d.feedbackId),x1("tengu_bug_report_submitted",{feedback_id:d.feedbackId});W("done")}else{if(d.isZdrOrg)A("Feedback collection is not available for organizations with custom data retention policies.");else A("Could not submit feedback. Please try again later.");W("done")}},[Y,K.isGit,I]);P2((P,M)=>{if(G==="done"){if(M.return&&z){let d=Mz5(X??"",z,Y,c$2());q91(d)}if(J)Z("<bash-stderr>Error submitting bug report</bash-stderr>");else Z("<bash-stdout>Bug report submitted</bash-stdout>");return}if(J){Z("<bash-stderr>Error submitting bug report</bash-stderr>");return}if(M.escape){Z("<bash-stderr>Bug report cancelled</bash-stderr>");return}if(G==="consent"&&(M.return||P===" "))g()});let f=j1();return $2.createElement($2.Fragment,null,$2.createElement(p,{flexDirection:"column",borderStyle:"round",borderColor:f.permission,paddingX:1,paddingBottom:1,gap:1},$2.createElement(b,{bold:!0,color:f.permission},"Submit Bug Report"),G==="userInput"&&$2.createElement(p,{flexDirection:"column",gap:1},$2.createElement(b,null,"Describe the issue below:"),$2.createElement(dV,{value:Y,onChange:w,columns:N,onSubmit:()=>W("consent"),onExitMessage:()=>Z("<bash-stderr>Bug report cancelled</bash-stderr>"),cursorOffset:B,onChangeCursorOffset:V}),J&&$2.createElement(p,{flexDirection:"column",gap:1},$2.createElement(b,{color:"red"},J),$2.createElement(b,{dimColor:!0},"Press any key to close"))),G==="consent"&&$2.createElement(p,{flexDirection:"column"},$2.createElement(b,null,"This report will include:"),$2.createElement(p,{marginLeft:2,flexDirection:"column"},$2.createElement(b,null,"- Your bug description: ",$2.createElement(b,{dimColor:!0},Y)),$2.createElement(b,null,"- Environment info:"," ",$2.createElement(b,{dimColor:!0},z2.platform,", ",z2.terminal,", v",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION)),K.gitState&&$2.createElement(b,null,"- Git repo metadata:"," ",$2.createElement(b,{dimColor:!0},K.gitState.branchName,K.gitState.commitHash?`, ${K.gitState.commitHash.slice(0,7)}`:"",K.gitState.remoteUrl?` @ ${K.gitState.remoteUrl}`:"",!K.gitState.isHeadOnRemote&&", not synced",!K.gitState.isClean&&", has local changes")),$2.createElement(b,null,"- Current session transcript")),$2.createElement(p,{marginTop:1},$2.createElement(b,{wrap:"wrap",dimColor:!0},"We will use your feedback to debug related issues or to improve"," ",S2,"'s functionality (eg. to reduce the risk of bugs occurring in the future). Anthropic will not train generative models using feedback from ",S2,".")),$2.createElement(p,{marginTop:1},$2.createElement(b,null,"Press ",$2.createElement(b,{bold:!0},"Enter")," to confirm and submit."))),G==="submitting"&&$2.createElement(p,{flexDirection:"row",gap:1},$2.createElement(b,null,"Submitting report…")),G==="done"&&$2.createElement(p,{flexDirection:"column"},J?$2.createElement(b,{color:"red"},J):$2.createElement(b,{color:j1().success},"Thank you for your report!"),X&&$2.createElement(b,{dimColor:!0},"Feedback ID: ",X),$2.createElement(p,{marginTop:1},$2.createElement(b,null,"Press "),$2.createElement(b,{bold:!0},"Enter "),$2.createElement(b,null,"to also create a GitHub issue, or any other key to close.")))),$2.createElement(p,{marginLeft:1},$2.createElement(b,{dimColor:!0},L.pending?$2.createElement($2.Fragment,null,"Press ",L.keyName," again to exit"):G==="userInput"?$2.createElement($2.Fragment,null,"Enter to continue · Esc to cancel"):G==="consent"?$2.createElement($2.Fragment,null,"Enter to submit · Esc to cancel"):null)))}function Mz5(I,Z,G,W){let B=vO(Z),V=vO(G),Y=encodeURIComponent(`**Bug Description**
|
|
601
611
|
${V}
|
|
602
612
|
|
|
603
613
|
**Environment Info**
|
|
604
614
|
- Platform: ${z2.platform}
|
|
605
615
|
- Terminal: ${z2.terminal}
|
|
606
|
-
- Version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
616
|
+
- Version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION||"unknown"}
|
|
607
617
|
- Feedback ID: ${I}
|
|
608
618
|
|
|
609
619
|
**Errors**
|
|
@@ -1188,7 +1198,7 @@ IMPORTANT: You must NEVER generate or guess URLs for the user unless you are con
|
|
|
1188
1198
|
|
|
1189
1199
|
If the user asks for help or wants to give feedback inform them of the following:
|
|
1190
1200
|
- /help: Get help with using ${S2}
|
|
1191
|
-
- To give feedback, users should ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1201
|
+
- To give feedback, users should ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.ISSUES_EXPLAINER}
|
|
1192
1202
|
|
|
1193
1203
|
When the user directly asks about ${S2} (eg 'can ${S2} do...', 'does ${S2} have...') or asks in second person (eg 'are you able...', 'can you do...'), first use the ${c51} tool to gather information to answer the question. The URLs below contain comprensive information about ${S2} including slash commands, CLI flags, managing tool permissions, security, toggling thinking, using ${S2} non-interactively, pasting images into ${S2}, and configuring ${S2} to run on Bedrock and Vertex.
|
|
1194
1204
|
- Overview: ${fb5}
|
|
@@ -1338,15 +1348,15 @@ Notes:
|
|
|
1338
1348
|
]))`;continue}else if(W[X]==="$"){B+=`($|(?=[\r
|
|
1339
1349
|
]))`;continue}}if(G.s&&W[X]==="."){B+=Y?`${W[X]}\r
|
|
1340
1350
|
`:`[${W[X]}\r
|
|
1341
|
-
]`;continue}if(B+=W[X],W[X]==="\\")V=!0;else if(Y&&W[X]==="]")Y=!1;else if(!Y&&W[X]==="[")Y=!0}try{new RegExp(B)}catch{return console.warn(`Could not convert regex pattern at ${Z.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),I.source}return B}function o51(I,Z){if(Z.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(Z.target==="openApi3"&&I.keyType?._def.typeName===C2.ZodEnum)return{type:"object",required:I.keyType._def.values,properties:I.keyType._def.values.reduce((W,B)=>({...W,[B]:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"properties",B]})??{}}),{}),additionalProperties:!1};let G={type:"object",additionalProperties:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??{}};if(Z.target==="openApi3")return G;if(I.keyType?._def.typeName===C2.ZodString&&I.keyType._def.checks?.length){let{type:W,...B}=s51(I.keyType._def,Z);return{...G,propertyNames:B}}else if(I.keyType?._def.typeName===C2.ZodEnum)return{...G,propertyNames:{enum:I.keyType._def.values}};else if(I.keyType?._def.typeName===C2.ZodBranded&&I.keyType._def.type._def.typeName===C2.ZodString&&I.keyType._def.type._def.checks?.length){let{type:W,...B}=r51(I.keyType._def,Z);return{...G,propertyNames:B}}return G}function qm2(I,Z){if(Z.mapStrategy==="record")return o51(I,Z);let G=Z9(I.keyType._def,{...Z,currentPath:[...Z.currentPath,"items","items","0"]})||{},W=Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"items","items","1"]})||{};return{type:"array",maxItems:125,items:{type:"array",items:[G,W],minItems:2,maxItems:2}}}function Um2(I){let Z=I.values,W=Object.keys(I.values).filter((V)=>{return typeof Z[Z[V]]!=="number"}).map((V)=>Z[V]),B=Array.from(new Set(W.map((V)=>typeof V)));return{type:B.length===1?B[0]==="string"?"string":"number":["string","number"],enum:W}}function Nm2(){return{not:{}}}function $m2(I){return I.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var eu={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Em2(I,Z){if(Z.target==="openApi3")return Rm2(I,Z);let G=I.options instanceof Map?Array.from(I.options.values()):I.options;if(G.every((W)=>(W._def.typeName in eu)&&(!W._def.checks||!W._def.checks.length))){let W=G.reduce((B,V)=>{let Y=eu[V._def.typeName];return Y&&!B.includes(Y)?[...B,Y]:B},[]);return{type:W.length>1?W:W[0]}}else if(G.every((W)=>W._def.typeName==="ZodLiteral"&&!W.description)){let W=G.reduce((B,V)=>{let Y=typeof V._def.value;switch(Y){case"string":case"number":case"boolean":return[...B,Y];case"bigint":return[...B,"integer"];case"object":if(V._def.value===null)return[...B,"null"];case"symbol":case"undefined":case"function":default:return B}},[]);if(W.length===G.length){let B=W.filter((V,Y,w)=>w.indexOf(V)===Y);return{type:B.length>1?B:B[0],enum:G.reduce((V,Y)=>{return V.includes(Y._def.value)?V:[...V,Y._def.value]},[])}}}else if(G.every((W)=>W._def.typeName==="ZodEnum"))return{type:"string",enum:G.reduce((W,B)=>[...W,...B._def.values.filter((V)=>!W.includes(V))],[])};return Rm2(I,Z)}var Rm2=(I,Z)=>{let G=(I.options instanceof Map?Array.from(I.options.values()):I.options).map((W,B)=>Z9(W._def,{...Z,currentPath:[...Z.currentPath,"anyOf",`${B}`]})).filter((W)=>!!W&&(!Z.strictUnions||typeof W==="object"&&Object.keys(W).length>0));return G.length?{anyOf:G}:void 0};function Mm2(I,Z){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(I.innerType._def.typeName)&&(!I.innerType._def.checks||!I.innerType._def.checks.length)){if(Z.target==="openApi3")return{type:eu[I.innerType._def.typeName],nullable:!0};return{type:[eu[I.innerType._def.typeName],"null"]}}if(Z.target==="openApi3"){let W=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath]});if(W&&"$ref"in W)return{allOf:[W],nullable:!0};return W&&{...W,nullable:!0}}let G=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath,"anyOf","0"]});return G&&{anyOf:[G,{type:"null"}]}}function fm2(I,Z){let G={type:"number"};if(!I.checks)return G;for(let W of I.checks)switch(W.kind){case"int":G.type="integer",Yd1(G,"type",W.message,Z);break;case"min":if(Z.target==="jsonSchema7")if(W.inclusive)e5(G,"minimum",W.value,W.message,Z);else e5(G,"exclusiveMinimum",W.value,W.message,Z);else{if(!W.inclusive)G.exclusiveMinimum=!0;e5(G,"minimum",W.value,W.message,Z)}break;case"max":if(Z.target==="jsonSchema7")if(W.inclusive)e5(G,"maximum",W.value,W.message,Z);else e5(G,"exclusiveMaximum",W.value,W.message,Z);else{if(!W.inclusive)G.exclusiveMaximum=!0;e5(G,"maximum",W.value,W.message,Z)}break;case"multipleOf":e5(G,"multipleOf",W.value,W.message,Z);break}return G}function vb5(I,Z){if(Z.removeAdditionalStrategy==="strict")return I.catchall._def.typeName==="ZodNever"?I.unknownKeys!=="strict":Z9(I.catchall._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??!0;else return I.catchall._def.typeName==="ZodNever"?I.unknownKeys==="passthrough":Z9(I.catchall._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??!0}function Pm2(I,Z){let G=Z.target==="openAi",W={type:"object",...Object.entries(I.shape()).reduce((B,[V,Y])=>{if(Y===void 0||Y._def===void 0)return B;let w=Y.isOptional();if(w&&G){if(Y instanceof PY)Y=Y._def.innerType;if(!Y.isNullable())Y=Y.nullable();w=!1}let X=Z9(Y._def,{...Z,currentPath:[...Z.currentPath,"properties",V],propertyPath:[...Z.currentPath,"properties",V]});if(X===void 0)return B;return{properties:{...B.properties,[V]:X},required:w?B.required:[...B.required,V]}},{properties:{},required:[]}),additionalProperties:vb5(I,Z)};if(!W.required.length)delete W.required;return W}var Lm2=(I,Z)=>{if(Z.currentPath.toString()===Z.propertyPath?.toString())return Z9(I.innerType._def,Z);let G=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath,"anyOf","1"]});return G?{anyOf:[{not:{}},G]}:{}};var Sm2=(I,Z)=>{if(Z.pipeStrategy==="input")return Z9(I.in._def,Z);else if(Z.pipeStrategy==="output")return Z9(I.out._def,Z);let G=Z9(I.in._def,{...Z,currentPath:[...Z.currentPath,"allOf","0"]}),W=Z9(I.out._def,{...Z,currentPath:[...Z.currentPath,"allOf",G?"1":"0"]});return{allOf:[G,W].filter((B)=>B!==void 0)}};function dm2(I,Z){return Z9(I.type._def,Z)}function Om2(I,Z){let W={type:"array",uniqueItems:!0,items:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"items"]})};if(I.minSize)e5(W,"minItems",I.minSize.value,I.minSize.message,Z);if(I.maxSize)e5(W,"maxItems",I.maxSize.value,I.maxSize.message,Z);return W}function vm2(I,Z){if(I.rest)return{type:"array",minItems:I.items.length,items:I.items.map((G,W)=>Z9(G._def,{...Z,currentPath:[...Z.currentPath,"items",`${W}`]})).reduce((G,W)=>W===void 0?G:[...G,W],[]),additionalItems:Z9(I.rest._def,{...Z,currentPath:[...Z.currentPath,"additionalItems"]})};else return{type:"array",minItems:I.items.length,maxItems:I.items.length,items:I.items.map((G,W)=>Z9(G._def,{...Z,currentPath:[...Z.currentPath,"items",`${W}`]})).reduce((G,W)=>W===void 0?G:[...G,W],[])}}function gm2(){return{not:{}}}function Tm2(){return{}}var ym2=(I,Z)=>{return Z9(I.innerType._def,Z)};function Z9(I,Z,G=!1){let W=Z.seen.get(I);if(Z.override){let Y=Z.override?.(I,Z,W,G);if(Y!==Vm2)return Y}if(W&&!G){let Y=gb5(W,Z);if(Y!==void 0)return Y}let B={def:I,path:Z.currentPath,jsonSchema:void 0};Z.seen.set(I,B);let V=yb5(I,I.typeName,Z);if(V)bb5(I,Z,V);return B.jsonSchema=V,V}var gb5=(I,Z)=>{switch(Z.$refStrategy){case"root":return{$ref:I.path.join("/")};case"relative":return{$ref:Tb5(Z.currentPath,I.path)};case"none":case"seen":{if(I.path.length<Z.currentPath.length&&I.path.every((G,W)=>Z.currentPath[W]===G))return console.warn(`Recursive reference detected at ${Z.currentPath.join("/")}! Defaulting to any`),{};return Z.$refStrategy==="seen"?{}:void 0}}},Tb5=(I,Z)=>{let G=0;for(;G<I.length&&G<Z.length;G++)if(I[G]!==Z[G])break;return[(I.length-G).toString(),...Z.slice(G)].join("/")},yb5=(I,Z,G)=>{switch(Z){case C2.ZodString:return s51(I,G);case C2.ZodNumber:return fm2(I,G);case C2.ZodObject:return Pm2(I,G);case C2.ZodBigInt:return Jm2(I,G);case C2.ZodBoolean:return Am2();case C2.ZodDate:return wd1(I,G);case C2.ZodUndefined:return gm2();case C2.ZodNull:return $m2(G);case C2.ZodArray:return Hm2(I,G);case C2.ZodUnion:case C2.ZodDiscriminatedUnion:return Em2(I,G);case C2.ZodIntersection:return Fm2(I,G);case C2.ZodTuple:return vm2(I,G);case C2.ZodRecord:return o51(I,G);case C2.ZodLiteral:return Qm2(I,G);case C2.ZodEnum:return Cm2(I);case C2.ZodNativeEnum:return Um2(I);case C2.ZodNullable:return Mm2(I,G);case C2.ZodOptional:return Lm2(I,G);case C2.ZodMap:return qm2(I,G);case C2.ZodSet:return Om2(I,G);case C2.ZodLazy:return Z9(I.getter()._def,G);case C2.ZodPromise:return dm2(I,G);case C2.ZodNaN:case C2.ZodNever:return Nm2();case C2.ZodEffects:return Dm2(I,G);case C2.ZodAny:return Xm2();case C2.ZodUnknown:return Tm2();case C2.ZodDefault:return Km2(I,G);case C2.ZodBranded:return r51(I,G);case C2.ZodReadonly:return ym2(I,G);case C2.ZodCatch:return _m2(I,G);case C2.ZodPipeline:return Sm2(I,G);case C2.ZodFunction:case C2.ZodVoid:case C2.ZodSymbol:return;default:return((W)=>{return})(Z)}},bb5=(I,Z,G)=>{if(I.description){if(G.description=I.description,Z.markdownDescription)G.markdownDescription=I.description}return G};var mU=(I,Z)=>{let G=wm2(Z),W=typeof Z==="object"&&Z.definitions?Object.entries(Z.definitions).reduce((X,[H,J])=>({...X,[H]:Z9(J._def,{...G,currentPath:[...G.basePath,G.definitionPath,H]},!0)??{}}),{}):void 0,B=typeof Z==="string"?Z:Z?.nameStrategy==="title"?void 0:Z?.name,V=Z9(I._def,B===void 0?G:{...G,currentPath:[...G.basePath,G.definitionPath,B]},!1)??{},Y=typeof Z==="object"&&Z.name!==void 0&&Z.nameStrategy==="title"?Z.name:void 0;if(Y!==void 0)V.title=Y;let w=B===void 0?W?{...V,[G.definitionPath]:W}:V:{$ref:[...G.$refStrategy==="relative"?[]:G.basePath,G.definitionPath,B].join("/"),[G.definitionPath]:{...W,[B]:V}};if(G.target==="jsonSchema7")w.$schema="http://json-schema.org/draft-07/schema#";else if(G.target==="jsonSchema2019-09"||G.target==="openAi")w.$schema="https://json-schema.org/draft/2019-09/schema#";if(G.target==="openAi"&&(("anyOf"in w)||("oneOf"in w)||("allOf"in w)||("type"in w)&&Array.isArray(w.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return w};var nm2=J1(R1(),1);var G4=J1(R1(),1);import{join as Nj5}from"path";import{existsSync as Qd1,mkdirSync as $j5,appendFileSync as IH6,readFileSync as Rj5,constants as Ej5,writeFileSync as Mj5,unlinkSync as um2,statSync as fj5}from"fs";import{accessSync as Pj5}from"fs";var hm2=J1(G31(),1);async function pm2(){try{let I=await BB("tengu_version_config",{minVersion:"0.0.0"});if(I.minVersion&&hm2.lt({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION,I.minVersion))console.error(`
|
|
1342
|
-
It looks like your version of Claude Code (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1351
|
+
]`;continue}if(B+=W[X],W[X]==="\\")V=!0;else if(Y&&W[X]==="]")Y=!1;else if(!Y&&W[X]==="[")Y=!0}try{new RegExp(B)}catch{return console.warn(`Could not convert regex pattern at ${Z.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),I.source}return B}function o51(I,Z){if(Z.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(Z.target==="openApi3"&&I.keyType?._def.typeName===C2.ZodEnum)return{type:"object",required:I.keyType._def.values,properties:I.keyType._def.values.reduce((W,B)=>({...W,[B]:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"properties",B]})??{}}),{}),additionalProperties:!1};let G={type:"object",additionalProperties:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??{}};if(Z.target==="openApi3")return G;if(I.keyType?._def.typeName===C2.ZodString&&I.keyType._def.checks?.length){let{type:W,...B}=s51(I.keyType._def,Z);return{...G,propertyNames:B}}else if(I.keyType?._def.typeName===C2.ZodEnum)return{...G,propertyNames:{enum:I.keyType._def.values}};else if(I.keyType?._def.typeName===C2.ZodBranded&&I.keyType._def.type._def.typeName===C2.ZodString&&I.keyType._def.type._def.checks?.length){let{type:W,...B}=r51(I.keyType._def,Z);return{...G,propertyNames:B}}return G}function qm2(I,Z){if(Z.mapStrategy==="record")return o51(I,Z);let G=Z9(I.keyType._def,{...Z,currentPath:[...Z.currentPath,"items","items","0"]})||{},W=Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"items","items","1"]})||{};return{type:"array",maxItems:125,items:{type:"array",items:[G,W],minItems:2,maxItems:2}}}function Um2(I){let Z=I.values,W=Object.keys(I.values).filter((V)=>{return typeof Z[Z[V]]!=="number"}).map((V)=>Z[V]),B=Array.from(new Set(W.map((V)=>typeof V)));return{type:B.length===1?B[0]==="string"?"string":"number":["string","number"],enum:W}}function Nm2(){return{not:{}}}function $m2(I){return I.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var eu={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Em2(I,Z){if(Z.target==="openApi3")return Rm2(I,Z);let G=I.options instanceof Map?Array.from(I.options.values()):I.options;if(G.every((W)=>(W._def.typeName in eu)&&(!W._def.checks||!W._def.checks.length))){let W=G.reduce((B,V)=>{let Y=eu[V._def.typeName];return Y&&!B.includes(Y)?[...B,Y]:B},[]);return{type:W.length>1?W:W[0]}}else if(G.every((W)=>W._def.typeName==="ZodLiteral"&&!W.description)){let W=G.reduce((B,V)=>{let Y=typeof V._def.value;switch(Y){case"string":case"number":case"boolean":return[...B,Y];case"bigint":return[...B,"integer"];case"object":if(V._def.value===null)return[...B,"null"];case"symbol":case"undefined":case"function":default:return B}},[]);if(W.length===G.length){let B=W.filter((V,Y,w)=>w.indexOf(V)===Y);return{type:B.length>1?B:B[0],enum:G.reduce((V,Y)=>{return V.includes(Y._def.value)?V:[...V,Y._def.value]},[])}}}else if(G.every((W)=>W._def.typeName==="ZodEnum"))return{type:"string",enum:G.reduce((W,B)=>[...W,...B._def.values.filter((V)=>!W.includes(V))],[])};return Rm2(I,Z)}var Rm2=(I,Z)=>{let G=(I.options instanceof Map?Array.from(I.options.values()):I.options).map((W,B)=>Z9(W._def,{...Z,currentPath:[...Z.currentPath,"anyOf",`${B}`]})).filter((W)=>!!W&&(!Z.strictUnions||typeof W==="object"&&Object.keys(W).length>0));return G.length?{anyOf:G}:void 0};function Mm2(I,Z){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(I.innerType._def.typeName)&&(!I.innerType._def.checks||!I.innerType._def.checks.length)){if(Z.target==="openApi3")return{type:eu[I.innerType._def.typeName],nullable:!0};return{type:[eu[I.innerType._def.typeName],"null"]}}if(Z.target==="openApi3"){let W=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath]});if(W&&"$ref"in W)return{allOf:[W],nullable:!0};return W&&{...W,nullable:!0}}let G=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath,"anyOf","0"]});return G&&{anyOf:[G,{type:"null"}]}}function fm2(I,Z){let G={type:"number"};if(!I.checks)return G;for(let W of I.checks)switch(W.kind){case"int":G.type="integer",Yd1(G,"type",W.message,Z);break;case"min":if(Z.target==="jsonSchema7")if(W.inclusive)e5(G,"minimum",W.value,W.message,Z);else e5(G,"exclusiveMinimum",W.value,W.message,Z);else{if(!W.inclusive)G.exclusiveMinimum=!0;e5(G,"minimum",W.value,W.message,Z)}break;case"max":if(Z.target==="jsonSchema7")if(W.inclusive)e5(G,"maximum",W.value,W.message,Z);else e5(G,"exclusiveMaximum",W.value,W.message,Z);else{if(!W.inclusive)G.exclusiveMaximum=!0;e5(G,"maximum",W.value,W.message,Z)}break;case"multipleOf":e5(G,"multipleOf",W.value,W.message,Z);break}return G}function vb5(I,Z){if(Z.removeAdditionalStrategy==="strict")return I.catchall._def.typeName==="ZodNever"?I.unknownKeys!=="strict":Z9(I.catchall._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??!0;else return I.catchall._def.typeName==="ZodNever"?I.unknownKeys==="passthrough":Z9(I.catchall._def,{...Z,currentPath:[...Z.currentPath,"additionalProperties"]})??!0}function Pm2(I,Z){let G=Z.target==="openAi",W={type:"object",...Object.entries(I.shape()).reduce((B,[V,Y])=>{if(Y===void 0||Y._def===void 0)return B;let w=Y.isOptional();if(w&&G){if(Y instanceof PY)Y=Y._def.innerType;if(!Y.isNullable())Y=Y.nullable();w=!1}let X=Z9(Y._def,{...Z,currentPath:[...Z.currentPath,"properties",V],propertyPath:[...Z.currentPath,"properties",V]});if(X===void 0)return B;return{properties:{...B.properties,[V]:X},required:w?B.required:[...B.required,V]}},{properties:{},required:[]}),additionalProperties:vb5(I,Z)};if(!W.required.length)delete W.required;return W}var Lm2=(I,Z)=>{if(Z.currentPath.toString()===Z.propertyPath?.toString())return Z9(I.innerType._def,Z);let G=Z9(I.innerType._def,{...Z,currentPath:[...Z.currentPath,"anyOf","1"]});return G?{anyOf:[{not:{}},G]}:{}};var Sm2=(I,Z)=>{if(Z.pipeStrategy==="input")return Z9(I.in._def,Z);else if(Z.pipeStrategy==="output")return Z9(I.out._def,Z);let G=Z9(I.in._def,{...Z,currentPath:[...Z.currentPath,"allOf","0"]}),W=Z9(I.out._def,{...Z,currentPath:[...Z.currentPath,"allOf",G?"1":"0"]});return{allOf:[G,W].filter((B)=>B!==void 0)}};function dm2(I,Z){return Z9(I.type._def,Z)}function Om2(I,Z){let W={type:"array",uniqueItems:!0,items:Z9(I.valueType._def,{...Z,currentPath:[...Z.currentPath,"items"]})};if(I.minSize)e5(W,"minItems",I.minSize.value,I.minSize.message,Z);if(I.maxSize)e5(W,"maxItems",I.maxSize.value,I.maxSize.message,Z);return W}function vm2(I,Z){if(I.rest)return{type:"array",minItems:I.items.length,items:I.items.map((G,W)=>Z9(G._def,{...Z,currentPath:[...Z.currentPath,"items",`${W}`]})).reduce((G,W)=>W===void 0?G:[...G,W],[]),additionalItems:Z9(I.rest._def,{...Z,currentPath:[...Z.currentPath,"additionalItems"]})};else return{type:"array",minItems:I.items.length,maxItems:I.items.length,items:I.items.map((G,W)=>Z9(G._def,{...Z,currentPath:[...Z.currentPath,"items",`${W}`]})).reduce((G,W)=>W===void 0?G:[...G,W],[])}}function gm2(){return{not:{}}}function Tm2(){return{}}var ym2=(I,Z)=>{return Z9(I.innerType._def,Z)};function Z9(I,Z,G=!1){let W=Z.seen.get(I);if(Z.override){let Y=Z.override?.(I,Z,W,G);if(Y!==Vm2)return Y}if(W&&!G){let Y=gb5(W,Z);if(Y!==void 0)return Y}let B={def:I,path:Z.currentPath,jsonSchema:void 0};Z.seen.set(I,B);let V=yb5(I,I.typeName,Z);if(V)bb5(I,Z,V);return B.jsonSchema=V,V}var gb5=(I,Z)=>{switch(Z.$refStrategy){case"root":return{$ref:I.path.join("/")};case"relative":return{$ref:Tb5(Z.currentPath,I.path)};case"none":case"seen":{if(I.path.length<Z.currentPath.length&&I.path.every((G,W)=>Z.currentPath[W]===G))return console.warn(`Recursive reference detected at ${Z.currentPath.join("/")}! Defaulting to any`),{};return Z.$refStrategy==="seen"?{}:void 0}}},Tb5=(I,Z)=>{let G=0;for(;G<I.length&&G<Z.length;G++)if(I[G]!==Z[G])break;return[(I.length-G).toString(),...Z.slice(G)].join("/")},yb5=(I,Z,G)=>{switch(Z){case C2.ZodString:return s51(I,G);case C2.ZodNumber:return fm2(I,G);case C2.ZodObject:return Pm2(I,G);case C2.ZodBigInt:return Jm2(I,G);case C2.ZodBoolean:return Am2();case C2.ZodDate:return wd1(I,G);case C2.ZodUndefined:return gm2();case C2.ZodNull:return $m2(G);case C2.ZodArray:return Hm2(I,G);case C2.ZodUnion:case C2.ZodDiscriminatedUnion:return Em2(I,G);case C2.ZodIntersection:return Fm2(I,G);case C2.ZodTuple:return vm2(I,G);case C2.ZodRecord:return o51(I,G);case C2.ZodLiteral:return Qm2(I,G);case C2.ZodEnum:return Cm2(I);case C2.ZodNativeEnum:return Um2(I);case C2.ZodNullable:return Mm2(I,G);case C2.ZodOptional:return Lm2(I,G);case C2.ZodMap:return qm2(I,G);case C2.ZodSet:return Om2(I,G);case C2.ZodLazy:return Z9(I.getter()._def,G);case C2.ZodPromise:return dm2(I,G);case C2.ZodNaN:case C2.ZodNever:return Nm2();case C2.ZodEffects:return Dm2(I,G);case C2.ZodAny:return Xm2();case C2.ZodUnknown:return Tm2();case C2.ZodDefault:return Km2(I,G);case C2.ZodBranded:return r51(I,G);case C2.ZodReadonly:return ym2(I,G);case C2.ZodCatch:return _m2(I,G);case C2.ZodPipeline:return Sm2(I,G);case C2.ZodFunction:case C2.ZodVoid:case C2.ZodSymbol:return;default:return((W)=>{return})(Z)}},bb5=(I,Z,G)=>{if(I.description){if(G.description=I.description,Z.markdownDescription)G.markdownDescription=I.description}return G};var mU=(I,Z)=>{let G=wm2(Z),W=typeof Z==="object"&&Z.definitions?Object.entries(Z.definitions).reduce((X,[H,J])=>({...X,[H]:Z9(J._def,{...G,currentPath:[...G.basePath,G.definitionPath,H]},!0)??{}}),{}):void 0,B=typeof Z==="string"?Z:Z?.nameStrategy==="title"?void 0:Z?.name,V=Z9(I._def,B===void 0?G:{...G,currentPath:[...G.basePath,G.definitionPath,B]},!1)??{},Y=typeof Z==="object"&&Z.name!==void 0&&Z.nameStrategy==="title"?Z.name:void 0;if(Y!==void 0)V.title=Y;let w=B===void 0?W?{...V,[G.definitionPath]:W}:V:{$ref:[...G.$refStrategy==="relative"?[]:G.basePath,G.definitionPath,B].join("/"),[G.definitionPath]:{...W,[B]:V}};if(G.target==="jsonSchema7")w.$schema="http://json-schema.org/draft-07/schema#";else if(G.target==="jsonSchema2019-09"||G.target==="openAi")w.$schema="https://json-schema.org/draft/2019-09/schema#";if(G.target==="openAi"&&(("anyOf"in w)||("oneOf"in w)||("allOf"in w)||("type"in w)&&Array.isArray(w.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return w};var nm2=J1(R1(),1);var G4=J1(R1(),1);import{join as Nj5}from"path";import{existsSync as Qd1,mkdirSync as $j5,appendFileSync as IH6,readFileSync as Rj5,constants as Ej5,writeFileSync as Mj5,unlinkSync as um2,statSync as fj5}from"fs";import{accessSync as Pj5}from"fs";var hm2=J1(G31(),1);async function pm2(){try{let I=await BB("tengu_version_config",{minVersion:"0.0.0"});if(I.minVersion&&hm2.lt({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,I.minVersion))console.error(`
|
|
1352
|
+
It looks like your version of Claude Code (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION}) needs an update.
|
|
1343
1353
|
A newer version (${I.minVersion} or higher) is required to continue.
|
|
1344
1354
|
|
|
1345
1355
|
To update, please run:
|
|
1346
1356
|
claude update
|
|
1347
1357
|
|
|
1348
1358
|
This will ensure you have access to the latest features and improvements.
|
|
1349
|
-
`),process.exit(1)}catch(I){c1(I)}}var sE=Nj5(IX,".update.lock"),Lj5=300000;function Sj5(){try{if(!Qd1(IX))$j5(IX,{recursive:!0});if(Qd1(sE)){let I=fj5(sE);if(Date.now()-I.mtimeMs<Lj5)return!1;try{um2(sE)}catch(G){return c1(G),!1}}return Mj5(sE,`${process.pid}`,"utf8"),!0}catch(I){return c1(I),!1}}function dj5(){try{if(Qd1(sE)){if(Rj5(sE,"utf8")===`${process.pid}`)um2(sE)}}catch(I){c1(I)}}async function Oj5(){let I=z2.isRunningWithBun(),Z=null;if(I)Z=await R4("bun",["pm","bin","-g"]);else Z=await R4("npm",["-g","config","get","prefix"]);if(Z.code!==0)return c1(new Error(`Failed to check ${I?"bun":"npm"} permissions`)),null;return Z.stdout.trim()}async function zd1(){try{let I=await Oj5();if(!I)return{hasPermissions:!1,npmPrefix:null};let Z=!1;try{Pj5(I,Ej5.W_OK),Z=!0}catch{Z=!1}if(Z)return{hasPermissions:!0,npmPrefix:I};return c1(new Error("Insufficient permissions for global npm install.")),{hasPermissions:!1,npmPrefix:I}}catch(I){return c1(I),{hasPermissions:!1,npmPrefix:null}}}async function W31(){let I=new AbortController;if(setTimeout(()=>I.abort(),5000),process.env.DISABLE_AUTOUPDATER)return null;let Z=await R4("npm",["view",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1359
|
+
`),process.exit(1)}catch(I){c1(I)}}var sE=Nj5(IX,".update.lock"),Lj5=300000;function Sj5(){try{if(!Qd1(IX))$j5(IX,{recursive:!0});if(Qd1(sE)){let I=fj5(sE);if(Date.now()-I.mtimeMs<Lj5)return!1;try{um2(sE)}catch(G){return c1(G),!1}}return Mj5(sE,`${process.pid}`,"utf8"),!0}catch(I){return c1(I),!1}}function dj5(){try{if(Qd1(sE)){if(Rj5(sE,"utf8")===`${process.pid}`)um2(sE)}}catch(I){c1(I)}}async function Oj5(){let I=z2.isRunningWithBun(),Z=null;if(I)Z=await R4("bun",["pm","bin","-g"]);else Z=await R4("npm",["-g","config","get","prefix"]);if(Z.code!==0)return c1(new Error(`Failed to check ${I?"bun":"npm"} permissions`)),null;return Z.stdout.trim()}async function zd1(){try{let I=await Oj5();if(!I)return{hasPermissions:!1,npmPrefix:null};let Z=!1;try{Pj5(I,Ej5.W_OK),Z=!0}catch{Z=!1}if(Z)return{hasPermissions:!0,npmPrefix:I};return c1(new Error("Insufficient permissions for global npm install.")),{hasPermissions:!1,npmPrefix:I}}catch(I){return c1(I),{hasPermissions:!1,npmPrefix:null}}}async function W31(){let I=new AbortController;if(setTimeout(()=>I.abort(),5000),process.env.DISABLE_AUTOUPDATER)return null;let Z=await R4("npm",["view",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL}@latest`,"version"],I.signal);if(Z.code!==0)return null;return Z.stdout.trim()}async function B31(){if(!Sj5())return c1(new Error("Another process is currently installing an update")),x1("tengu_auto_updater_lock_contention",{pid:process.pid,currentVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION}),"in_progress";try{if(!z2.isRunningWithBun()&&z2.isNpmFromWindowsPath())return c1(new Error("Windows NPM detected in WSL environment")),x1("tengu_auto_updater_windows_npm_in_wsl",{currentVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION}),console.error(`
|
|
1350
1360
|
Error: Windows NPM detected in WSL
|
|
1351
1361
|
|
|
1352
1362
|
You're running Claude Code in WSL but using the Windows NPM installation from /mnt/c/.
|
|
@@ -1356,8 +1366,8 @@ To fix this issue:
|
|
|
1356
1366
|
1. Install Node.js within your Linux distribution: e.g. sudo apt install nodejs npm
|
|
1357
1367
|
2. Make sure Linux NPM is in your PATH before the Windows version
|
|
1358
1368
|
3. Try updating again with 'claude update'
|
|
1359
|
-
`),"install_failed";let{hasPermissions:I}=await zd1();if(!I)return"no_permissions";let Z=z2.isRunningWithBun()?"bun":"npm",G=await R4(Z,["install","-g",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1360
|
-
exec "${kU}/node_modules/.bin/claude" "$@"`;lm2(I,Z),await R4("chmod",["+x",I])}return!0}catch(I){return c1(I instanceof Error?I:new Error(String(I))),!1}}async function Uv(I="latest"){try{if(!await qd1())return"install_failed";let Z=await new Promise((W)=>{yj5("npm",["install",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1369
|
+
`),"install_failed";let{hasPermissions:I}=await zd1();if(!I)return"no_permissions";let Z=z2.isRunningWithBun()?"bun":"npm",G=await R4(Z,["install","-g",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL]);if(G.code!==0)return c1(new Error(`Failed to install new version of claude: ${G.stdout} ${G.stderr}`)),"install_failed";return"success"}finally{dj5()}}var Wh=J1(R1(),1);function IF(){return Wh.createElement(b,{color:j1().permission},"Press ",Wh.createElement(b,{bold:!0},"Enter")," to continue…")}import{homedir as V31}from"os";import{join as xU}from"path";import{existsSync as Bh,mkdirSync as vj5,writeFileSync as lm2,readFileSync as gj5,appendFileSync as Tj5}from"fs";import{execFile as yj5}from"child_process";var kU=xU(V31(),".claude","local"),cm2=xU(kU,"package.json"),qv=xU(kU,"claude");function oE(){return(process.argv[1]||"").includes("/.claude/local/node_modules/")}async function qd1(){try{if(!Bh(kU))vj5(kU,{recursive:!0});if(!Bh(cm2)){let Z={name:"claude-local",version:"0.0.1",private:!0};lm2(cm2,JSON.stringify(Z,null,2))}let I=xU(kU,"claude");if(!Bh(I)){let Z=`#!/bin/bash
|
|
1370
|
+
exec "${kU}/node_modules/.bin/claude" "$@"`;lm2(I,Z),await R4("chmod",["+x",I])}return!0}catch(I){return c1(I instanceof Error?I:new Error(String(I))),!1}}async function Uv(I="latest"){try{if(!await qd1())return"install_failed";let Z=await new Promise((W)=>{yj5("npm",["install",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL}@${I}`],{cwd:kU,maxBuffer:1e6},(B,V,Y)=>{if(B)W({stdout:V||"",stderr:Y||"",code:typeof B.code==="number"?B.code:1});else W({stdout:V,stderr:Y,code:0})})});if(Z.code!==0)return c1(new Error(`Failed to install Claude CLI package: ${Z.stderr}`)),Z.code==190?"in_progress":"install_failed";let G=f0();return o2({...G,autoUpdaterStatus:"migrated"}),"success"}catch(Z){return c1(Z instanceof Error?Z:new Error(String(Z))),"install_failed"}}function tE(){return Bh(xU(kU,"node_modules",".bin","claude"))}async function bj5(){let I=process.env.SHELL||"";if(I.includes("zsh"))return"zsh";if(I.includes("bash"))return"bash";if(I.includes("fish"))return"fish";return"unknown"}async function Y31(){let I=await bj5(),Z={zsh:xU(V31(),".zshrc"),bash:xU(V31(),".bashrc"),fish:xU(V31(),".config/fish/config.fish")},G="",W=I in Z?Z[I]:null,B=`alias claude="${qv}"`;try{if(W&&Bh(W)){let V=gj5(W,"utf8");if(!V.includes(B)){let Y=V.endsWith(`
|
|
1361
1371
|
`)?`${B}
|
|
1362
1372
|
`:`
|
|
1363
1373
|
${B}
|
|
@@ -1386,14 +1396,14 @@ Then run: source ${W}
|
|
|
1386
1396
|
`,G+=` mkdir -p ~/bin
|
|
1387
1397
|
`,G+=` ln -sf ${qv} ~/bin/claude
|
|
1388
1398
|
`,G+=` # Make sure ~/bin is in your PATH
|
|
1389
|
-
`;return G}async function im2(){try{let I=["uninstall","-g","--force",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1399
|
+
`;return G}async function im2(){try{let I=["uninstall","-g","--force",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL],Z=await R4("npm",I);if(Z.code!==0)return c1(new Error(`Failed to uninstall global version: ${Z.stderr}`)),!1;return!0}catch(I){return c1(I instanceof Error?I:new Error(String(I))),!1}}function uU(I,Z){x1("tengu_local_install_migration",{result:I,reason:Z})}function w31({onDone:I,doctorMode:Z=!1}){let[G,W]=G4.useState(null),[B,V]=G4.useState(null),[Y,w]=G4.useState(null),[X,H]=G4.useState(null),[J,A]=G4.useState(null),K=j1(),D=D9(),z=G4.useCallback(async()=>{let N=oE(),L=tE();if(w(N),H(L),L){let g=await Y31();A(g)}if(N){let g=f0();if(o2({...g,autoUpdaterStatus:"migrated"}),x1("tengu_auto_updater_local_installation",{isRunningFromLocal:!0}),!Z){I();return}}if(!N&&L)x1("tengu_auto_updater_local_installation",{hasLocalButNotRunningFromIt:!0});if(!N||Z){let g=await zd1();if(x1("tengu_auto_updater_permissions_check",{hasPermissions:g.hasPermissions}),W(g.hasPermissions),g.npmPrefix)V(g.npmPrefix);if(g.hasPermissions){let f=f0();if(o2({...f,autoUpdaterStatus:"enabled"}),!Z)I()}}},[I,Z]);if(G4.useEffect(()=>{x1("tengu_auto_updater_config_start",{}),z()},[z]),P2((N,L)=>{if(L.return)I()}),Y===null||Y===!1&&G===null)return G4.default.createElement(p,{paddingX:1,paddingTop:1},G4.default.createElement(b,{color:K.secondaryText},"Checking installation status…"));if(Y===!0)return G4.default.createElement(p,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},G4.default.createElement(b,{color:K.success},"✓ Local installation: OK"),G4.default.createElement(b,null,"You are running ",S2," from your local installation (~/.claude/local). This installation method does not depend on global npm permissions."),G4.default.createElement(b,null,"If auto-updates aren't working, you can force update with:"),G4.default.createElement(p,{marginY:1,paddingX:2},G4.default.createElement(b,{bold:!0},"cd ~/.claude/local && npm update ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL)),G4.default.createElement(IF,null));if(X===!0&&Y===!1)return G4.default.createElement(p,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},G4.default.createElement(b,{color:K.warning},"⚠ Local installation found but not in use"),G4.default.createElement(b,null,"A local installation of ",S2," was found at ~/.claude/local, but you are currently running the global npm installation."),G4.default.createElement(b,null,"To use your local installation, run it directly:"),G4.default.createElement(p,{marginY:1,paddingX:2},G4.default.createElement(b,{bold:!0},"~/.claude/local/claude")),G4.default.createElement(b,null,"Or set up an alias in your shell configuration:"),G4.default.createElement(p,{marginY:1,flexDirection:"column",paddingX:2},J&&G4.default.createElement(b,null,J)),G4.default.createElement(IF,null));if(G===!0){if(Z)return G4.default.createElement(p,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},G4.default.createElement(b,{color:K.success},"✓ npm permissions: OK"),G4.default.createElement(b,null,"Your installation is healthy and ready for auto-updates."),G4.default.createElement(p,{marginY:1},G4.default.createElement(b,null,"You can also install ",S2," locally to avoid npm permission issues using the slash command:")),G4.default.createElement(p,{marginY:1,paddingX:2},G4.default.createElement(b,{bold:!0},"/migrate-installer")),G4.default.createElement(IF,null));return G4.default.createElement(p,{paddingX:1,paddingTop:1},G4.default.createElement(b,{color:K.success},"✓ Auto-updates enabled"))}let U=G4.default.createElement(G4.default.Fragment,null,G4.default.createElement(b,null,"You have two options:"),G4.default.createElement(p,{flexDirection:"column",marginY:1},G4.default.createElement(b,{bold:!0},"Option 1: Use local installation (recommended)"),G4.default.createElement(b,null,"Install ",S2," to your home directory using the slash command:"),G4.default.createElement(p,{paddingX:2,marginY:1},G4.default.createElement(b,{bold:!0},"/migrate-installer")),G4.default.createElement(b,null,"This method doesn't require global npm permissions.")));return G4.default.createElement(G4.default.Fragment,null,G4.default.createElement(p,{borderColor:K.permission,borderStyle:"round",flexDirection:"column",gap:1,paddingX:1,paddingTop:1},G4.default.createElement(p,{flexDirection:"column",gap:1},G4.default.createElement(b,{bold:!0,color:K.permission},"npm permission issues detected"),G4.default.createElement(b,null,S2," can't update itself because it doesn't have sufficient global npm permissions."),U,G4.default.createElement(p,{flexDirection:"column",marginY:1},G4.default.createElement(b,{bold:!0},"Option 2: Fix npm permissions"),G4.default.createElement(b,null,"Visit our"," ",G4.default.createElement(dR,{url:"https://docs.anthropic.com/s/claude-code-auto-updater"},G4.default.createElement(b,{color:K.warning},"troubleshooting guide"))," ","to learn how to fix npm permission issues."))),G4.default.createElement(IF,null),B&&G4.default.createElement(p,null,G4.default.createElement(b,{color:K.secondaryText},"Current npm prefix: ",B))),G4.default.createElement(p,{marginLeft:1,height:G===!1?1:void 0},G4.default.createElement(b,{dimColor:!0},D.pending?G4.default.createElement(G4.default.Fragment,null,"Press ",D.keyName," again to exit"):null)))}var jj5={name:"doctor",description:"Checks the health of your Claude Code installation",isEnabled:!0,isHidden:!1,userFacingName(){return"doctor"},type:"local-jsx",call(I){let Z=nm2.default.createElement(w31,{onDone:I,doctorMode:!0});return Promise.resolve(Z)}},am2=jj5;import{existsSync as sm2,readFileSync as om2,appendFileSync as rm2}from"fs";import{join as tm2,dirname as mj5}from"path";import{execFileSync as em2}from"child_process";var Ud1=tm2(IX,"CLAUDE.md");function Vh(I){if(!sm2(I))return"";return om2(I,"utf-8")}function Nd1(I){try{em2("git",["rev-parse","--is-inside-work-tree"],{cwd:I,stdio:"ignore"})}catch(Z){return!1}return!0}function X31(I){try{let Z=mj5(I);if(!Nd1(Z))return;let G;try{G=em2("git",["rev-parse","--show-toplevel"],{cwd:Z,encoding:"utf-8"}).trim()}catch(V){G=Z}let W=tm2(G,".gitignore"),B="**/CLAUDE.local.md";if(sm2(W)){if(om2(W,"utf-8").split(`
|
|
1390
1400
|
`).some((w)=>w.trim()===B||w.trim()==="CLAUDE.local.md"))return;rm2(W,`
|
|
1391
1401
|
${B}
|
|
1392
1402
|
`)}else rm2(W,`${B}
|
|
1393
1403
|
`)}catch(Z){c1(Z instanceof Error?Z:new Error(String(Z)))}}import{existsSync as $d1,mkdirSync as pj5}from"fs";import{execSync as kj5}from"child_process";async function xj5(){if(process.env.VISUAL)return process.env.VISUAL;if(process.env.EDITOR)return process.env.EDITOR;if(process.platform==="darwin")return"open -t";else if(process.platform==="win32")return"notepad";else return"nano"}async function Ik2(I){let Z=await xj5();kj5(`${Z} "${I}"`,{stdio:"inherit"})}var GG=J1(R1(),1);import{execSync as lj5}from"child_process";function Yh(I){if(I==="Local")return"project (local)";return I.toLowerCase()}function H31(I){if(I==="Local")return"Project (local) memory";return I+" memory"}var e6=J1(R1(),1);var Gk2=J1(R1(),1);var Zk2="Project";function J31({onSelect:I,onCancel:Z,title:G,renderDetails:W}){let[B,V]=Gk2.useState(Zk2),Y=j1(),w=Nd1(S5()),X=[{label:`Project memory ${_0.dim(`${w?"Checked in at":"Saved in"} ./CLAUDE.md`)}`,value:"Project"},...w?[{label:`Project memory (local) ${_0.dim("Gitignored in ./CLAUDE.local.md")}`,value:"Local"}]:[],{label:`User memory ${_0.dim("Saved in ~/.claude/CLAUDE.md")}`,value:"User"},...[]];return D9(()=>process.exit(0)),P2((H,J)=>{if(J.escape)Z()}),e6.createElement(p,{flexDirection:"column",borderStyle:"round",borderColor:Y.remember,padding:1,width:"100%"},e6.createElement(p,{marginBottom:1,flexDirection:"row",justifyContent:"space-between"},e6.createElement(b,{color:Y.remember,bold:!0},G||"Where should this memory be saved?")),e6.createElement(p,{flexDirection:"column",paddingX:1},e6.createElement(T9,{focusValue:B,options:X,onFocus:(H)=>V(H),onChange:(H)=>{Zk2=H,I(H)}})),e6.createElement(p,{marginTop:1,flexDirection:"column"},W?W(B):e6.createElement(uj5,{type:B})))}function uj5({type:I}){return e6.createElement(e6.Fragment,null,I==="Project"&&e6.createElement(b,{dimColor:!0},"Example project memory: “Run lint with the following command after major edits: npm run lint”"),I==="Local"&&e6.createElement(b,{dimColor:!0},"Example local memory: “Use my sandbox URL for testing: https://myapp.local”"),I==="User"&&e6.createElement(b,{dimColor:!0},"Example user memory: “Don't add new comments when editing code”"),I==="ExperimentalUltraClaudeMd"&&!1)}var wh=J1(R1(),1);import{relative as Wk2}from"path";import{homedir as hj5}from"os";function A31(I){let Z=hj5(),G=c0(),W=I.startsWith(Z)?"~/"+Wk2(Z,I):null,B=I.startsWith(G)?"./"+Wk2(G,I):null;if(W&&B)return W.length<=B.length?W:B;return W||B||I}function Bk2({memoryType:I,memoryPath:Z}){let G=j1(),W=A31(Z);return wh.createElement(p,{flexDirection:"column",flexGrow:1},wh.createElement(b,{color:G.secondaryText},H31(I)," updated in ",W," · /memory to edit"))}var cj5={type:"local-jsx",name:"memory",description:"Edit Claude memory files",isEnabled:!0,isHidden:!1,async call(I,Z){return GG.createElement(J31,{title:"Select memory to edit:",onSelect:async(B)=>{try{let V=_31(B),Y=B==="User"?IX:c0();if(!$d1(Y))pj5(Y,{recursive:!0});if(!$d1(V)){if(lj5(`touch "${V}"`),B==="Local")X31(V)}await Ik2(V);let w="default",X="";if(process.env.VISUAL)w="$VISUAL",X=process.env.VISUAL;else if(process.env.EDITOR)w="$EDITOR",X=process.env.EDITOR;let H=w!=="default"?`Using ${w}="${X}".`:"",J=H?`> ${H} To change editor, set $EDITOR or $VISUAL environment variable.`:"> To use a different editor, set the $EDITOR or $VISUAL environment variable.";I(`Opened ${H31(B).toLowerCase()} at ${A31(V)}
|
|
1394
1404
|
|
|
1395
1405
|
${J}`)}catch(V){c1(V instanceof Error?V:new Error(String(V))),I(`Error opening memory file: ${V}`)}},onCancel:()=>{I("Cancelled memory editing")},renderDetails:(B)=>GG.createElement(ij5,{memoryType:B})})},userFacingName(){return this.name}};function ij5({memoryType:I}){let Z=j1(),G=_31(I);if(!$d1(G)){let X={User:"~/.claude/CLAUDE.md",Project:"./CLAUDE.md",Local:"./CLAUDE.local.md + add to .gitignore"}[I];return GG.createElement(GG.Fragment,null,GG.createElement(b,{dimColor:!0},"Memory file does not exist yet. [Enter] to create ",X,"."))}let Y=Vh(G).split(`
|
|
1396
|
-
`).filter((w)=>w.trim().startsWith("-")||w.trim().startsWith("*")||/^\s*\d+\./.test(w.trim())).length;return GG.createElement(GG.Fragment,null,GG.createElement(b,{color:Z.remember},Y," ",Y===1?"memory":"memories"," in"," ",A31(G)))}var Vk2=cj5;var x2=J1(R1(),1);function Yk2({commands:I,onClose:Z}){let G=j1(),W=`Learn more at: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1406
|
+
`).filter((w)=>w.trim().startsWith("-")||w.trim().startsWith("*")||/^\s*\d+\./.test(w.trim())).length;return GG.createElement(GG.Fragment,null,GG.createElement(b,{color:Z.remember},Y," ",Y===1?"memory":"memories"," in"," ",A31(G)))}var Vk2=cj5;var x2=J1(R1(),1);function Yk2({commands:I,onClose:Z}){let G=j1(),W=`Learn more at: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.README_URL}`,B=I.filter((w)=>!w.isHidden),[V,Y]=x2.useState(0);return x2.useEffect(()=>{let w=setTimeout(()=>{if(V<3)Y(V+1)},250);return()=>clearTimeout(w)},[V]),P2((w,X)=>{if(X.return)Z()}),x2.createElement(p,{flexDirection:"column",padding:1},x2.createElement(b,{bold:!0,color:G.claude},`${S2} v${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION}`),x2.createElement(p,{marginTop:1,flexDirection:"column"},x2.createElement(b,null,S2," is a beta research preview. Always review Claude's responses, especially when running code. Claude has read access to files in the current directory and can run commands and edit files with your permission.")),V>=1&&x2.createElement(p,{flexDirection:"column",marginTop:1},x2.createElement(b,{bold:!0},"Usage Modes:"),x2.createElement(b,null,"• REPL: ",x2.createElement(b,{bold:!0},"claude")," (interactive session)"),x2.createElement(b,null,"• Non-interactive: ",x2.createElement(b,{bold:!0},'claude -p "question"')),x2.createElement(p,{marginTop:1},x2.createElement(b,null,"Run ",x2.createElement(b,{bold:!0},"claude -h")," for all command line options"))),V>=2&&x2.createElement(p,{marginTop:1,flexDirection:"column"},x2.createElement(b,{bold:!0},"Common Tasks:"),x2.createElement(b,null,"• Ask questions about your codebase"," ",x2.createElement(b,{color:j1().secondaryText},"> How does foo.py work?")),x2.createElement(b,null,"• Edit files"," ",x2.createElement(b,{color:j1().secondaryText},"> Update bar.ts to...")),x2.createElement(b,null,"• Fix errors"," ",x2.createElement(b,{color:j1().secondaryText},"> cargo build")),x2.createElement(b,null,"• Run commands"," ",x2.createElement(b,{color:j1().secondaryText},"> /help")),x2.createElement(b,null,"• Run bash commands"," ",x2.createElement(b,{color:j1().secondaryText},"> !ls"))),V>=3&&x2.createElement(p,{marginTop:1,flexDirection:"column"},x2.createElement(b,{bold:!0},"Interactive Mode Commands:"),x2.createElement(p,{flexDirection:"column"},B.map((w,X)=>x2.createElement(p,{key:X,marginLeft:1},x2.createElement(b,{bold:!0},`/${w.name}`),x2.createElement(b,null," - ",w.description))))),x2.createElement(p,{marginTop:1},x2.createElement(b,{color:G.secondaryText},W)),x2.createElement(p,{marginTop:2},x2.createElement(IF,null)))}var Rd1=J1(R1(),1),nj5={type:"local-jsx",name:"help",description:"Show help and available commands",isEnabled:!0,isHidden:!1,async call(I,{options:{commands:Z}}){return Rd1.createElement(Yk2,{commands:Z,onClose:I})},userFacingName(){return"help"}},wk2=nj5;var aj5={type:"prompt",name:"init",description:"Initialize a new CLAUDE.md file with codebase documentation",isEnabled:!0,isHidden:!1,progressMessage:"analyzing your codebase",userFacingName(){return"init"},async getPromptForCommand(){return SO(),[{role:"user",content:[{type:"text",text:`Please analyze this codebase and create a CLAUDE.md file containing:
|
|
1397
1407
|
1. Build/lint/test commands - especially for running a single test
|
|
1398
1408
|
2. Code style guidelines including imports, formatting, types, naming conventions, error handling, etc.
|
|
1399
1409
|
|
|
@@ -1421,8 +1431,8 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
|
|
1421
1431
|
╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝`))}var pG=J1(R1(),1),VI=J1(R1(),1);var Ck2=process.platform==="darwin"?["·","✢","✳","✶","✻","✽"]:["·","✢","*","✶","✻","✽"],D31={default:[...Ck2,...[...Ck2].reverse()],stars:["·","✶","✸","✹","●","✺","✹","✷"],stars2:["·","✶","✸","✹","●","✺","✹","✷"],"alt-stars":["·","✢","✳","✶","✻","✽","✻","✶","✳","✢","·"],tools:["⚒","⚔","⚙","⚒","⚗","⛏"],circles:["◜","◠","◝","◞","◡","◟"]},C31=["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pontificating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"],ej5=["Tool spinning","Tool calling","Tool humming","Tool invoking","Tool juggling","Tool weaving","Tool waltzing","Tool wielding","Tool channeling","Tool orchestrating","Tool engaging","Tool running","Tool churning","Tool grinding"],Im5={default:C31,tools:ej5,haiku:[]},K31={spinner:"default",messages:"default",color:"claude",interval:120},Pd1={useHaiku:!1,haikuInterval:5,thinking:K31,responding:K31,toolUse:K31,normal:K31,charAnimation:"none",showToolCallCount:!1};function Zm5(I){return D31[I]||D31.default}function Gm5(I,Z){let G;switch(I){case"tool-use":G=Z.toolUse;break;case"responding":G=Z.responding;break;case"thinking":G=Z.thinking;break;default:G=Z.normal;break}return{frames:D31[G.spinner]||D31.default,messages:Im5[G.messages]||C31,color:G.color?j1()[G.color]:"claude",interval:G.interval||120,useHaiku:G.messages==="haiku"}}function Fk2(){return g$("tengu_spinner_style_2",Pd1)}function F31({mode:I="responding",spinnerConfig:Z=Pd1,haikuWords:G=[],currentResponseLength:W=0,toolCallCount:B=0}){let{frames:V,messages:Y,color:w,interval:X,useHaiku:H}=Gm5(I,Z),[J,A]=VI.useState(0),[K,D]=VI.useState(0),[z,U]=VI.useState(0),[N,L]=VI.useState(()=>{if(H)return G.length>0?cw(G):cw(C31);else return cw(Y)}),g=VI.useRef(Date.now()),f=VI.useRef(W);return VI.useEffect(()=>{f.current=W},[W]),VI.useEffect(()=>{let P=setInterval(()=>{A((M)=>(M+1)%V.length)},X);return()=>clearInterval(P)},[V.length,X]),VI.useEffect(()=>{if(Z.charAnimation!=="countUp")return;if(I==="tool-use")return;let M=setInterval(()=>{U((d)=>{let k=f.current-d;if(k<=0)return d;let a;if(k<70)a=1;else if(k<200)a=Math.max(2,Math.ceil(k*0.08));else a=18;return Math.min(d+a,f.current)})},30);return()=>clearInterval(M)},[I,Z.charAnimation]),VI.useEffect(()=>{if(H)return;L(cw(Y))},[Y,H]),VI.useEffect(()=>{if(!H)return;let P=setInterval(()=>{if(Z.haikuInterval>0&&G.length>0&&K%Z.haikuInterval===0&&K>0)L(cw(G)||cw(C31))},1000);return()=>clearInterval(P)},[Z.haikuInterval,G,K,H]),VI.useEffect(()=>{let P=setInterval(()=>{if(D(Math.floor((Date.now()-g.current)/1000)),Z.charAnimation==="countUpPerSecond")U(f.current)},1000);return()=>clearInterval(P)},[Z.charAnimation]),pG.createElement(p,{flexDirection:"row",marginTop:1},pG.createElement(p,{flexWrap:"nowrap",height:1,width:2},pG.createElement(b,{color:w},V[J])),pG.createElement(b,{color:w},N,"… "),pG.createElement(b,{color:j1().secondaryText},"(",K,"s ·"," ",["countUp","countUpPerSecond"].includes(Z.charAnimation??"")&&`${dD(Math.round(z/4))} tokens · `,B>0&&Z.showToolCallCount&&`${B} tool call${B!==1?"s":""} · `,pG.createElement(b,{bold:!0},"esc")," to interrupt)"))}function hX(){let I=g$("tengu_spinner_style",Pd1),Z=Zm5(I.normal.spinner),[G,W]=VI.useState(0);return VI.useEffect(()=>{let B=setInterval(()=>{W((V)=>(V+1)%Z.length)},120);return()=>clearInterval(B)},[Z.length]),pG.createElement(p,{flexWrap:"nowrap",height:1,width:2},pG.createElement(b,{color:j1().claude},Z[G]))}function Qk2(I){let[Z,G]=VI.useState([]),W=VI.useCallback(async(B)=>{try{let V=await QB({systemPrompt:["Analyze this message and come up with a single verb in gerund form that's related to the word. Only include the word with no other text or punctuation. The word should have the first letter capitalized. Add some whimsy and surprise to entertain the user. Synonyms are welcome, including obscure words. NEVER use a destructive word, such as Terminating, Killing, Deleting, Destroying, Stopping, Exiting, or similar."],userPrompt:B,enablePromptCaching:!0,isNonInteractiveSession:!1,temperature:1});if(V?.message?.content){let w=(Array.isArray(V.message.content)?V.message.content.filter((X)=>X.type==="text").map((X)=>X.text).join(""):V.message.content).trim();if(w.length<=20&&!w.includes(" "))G((X)=>[w,...X.slice(0,9)])}}catch(V){c1(V instanceof Error?V:new Error(`Error generating haiku word: ${String(V)}`))}},[]);return VI.useEffect(()=>{if(!I)G([])},[I]),{haikuWords:Z,generateHaikuWord:W}}var q5=J1(R1(),1);var u4=J1(R1(),1);var Ld1=46;function zk2(){let I=Math.max(Ld1,c0().length+12),Z=j1(),G=process.env.ANTHROPIC_MODEL,W=uY(!1),B=Boolean(process.env.ANTHROPIC_API_KEY&&u$2(process.env.ANTHROPIC_API_KEY))&&!1,V=Boolean(G),Y=Boolean(B||process.env.DISABLE_PROMPT_CACHING||process.env.API_TIMEOUT_MS||process.env.MAX_THINKING_TOKENS||process.env.ANTHROPIC_BASE_URL||V);return u4.createElement(p,{flexDirection:"column"},u4.createElement(p,{borderColor:Z.claude,borderStyle:"round",flexDirection:"column",gap:1,paddingLeft:1,width:I},u4.createElement(b,null,u4.createElement(b,{color:Z.claude},"✻")," Welcome to"," ",u4.createElement(b,{bold:!0},S2)," ",u4.createElement(b,null,"research preview!")),process.env.IS_DEMO?null:u4.createElement(u4.Fragment,null,u4.createElement(p,{paddingLeft:2,flexDirection:"column",gap:1},u4.createElement(b,{color:Z.secondaryText,italic:!0},"/help for help",!1),u4.createElement(b,{color:Z.secondaryText},"cwd: ",c0())),Y&&u4.createElement(p,{borderColor:Z.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},u4.createElement(p,{marginBottom:1},u4.createElement(b,{color:Z.secondaryText},"Overrides (via env):")),V&&u4.createElement(b,{color:Z.secondaryText},"• Model: ",u4.createElement(b,{bold:!0},G)),B&&W?u4.createElement(b,{color:Z.secondaryText},"• API Key:"," ",u4.createElement(b,{bold:!0},"sk-ant-…",W.slice(-I+25))):null,process.env.DISABLE_PROMPT_CACHING?u4.createElement(b,{color:Z.secondaryText},"• Prompt caching:"," ",u4.createElement(b,{color:Z.error,bold:!0},"off")):null,process.env.API_TIMEOUT_MS?u4.createElement(b,{color:Z.secondaryText},"• API timeout:"," ",u4.createElement(b,{bold:!0},process.env.API_TIMEOUT_MS,"ms")):null,process.env.MAX_THINKING_TOKENS?u4.createElement(b,{color:Z.secondaryText},"• Max thinking tokens:"," ",u4.createElement(b,{bold:!0},process.env.MAX_THINKING_TOKENS)):null,process.env.ANTHROPIC_BASE_URL?u4.createElement(b,{color:Z.secondaryText},"• API Base URL:"," ",u4.createElement(b,{bold:!0},process.env.ANTHROPIC_BASE_URL)):null))))}var TW=J1(R1(),1);function qk2({customApiKeyTruncated:I,onDone:Z}){let G=j1();function W(V){let Y=f0();switch(V){case"yes":{o2({...Y,customApiKeyResponses:{...Y.customApiKeyResponses,approved:[...Y.customApiKeyResponses?.approved??[],I]}}),Z();break}case"no":{o2({...Y,customApiKeyResponses:{...Y.customApiKeyResponses,rejected:[...Y.customApiKeyResponses?.rejected??[],I]}}),Z();break}}}let B=D9();return TW.default.createElement(TW.default.Fragment,null,TW.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},TW.default.createElement(b,{bold:!0,color:G.warning},"Detected a custom API key in your environment"),TW.default.createElement(b,null,"Your environment sets"," ",TW.default.createElement(b,{color:G.warning},"ANTHROPIC_API_KEY"),":"," ",TW.default.createElement(b,{bold:!0},"sk-ant-...",I)),TW.default.createElement(b,null,"Do you want to use this API key?"),TW.default.createElement(T9,{options:[{label:`No (${_0.bold("recommended")})`,value:"no"},{label:"Yes",value:"yes"}],onChange:(V)=>W(V)})),TW.default.createElement(p,{marginLeft:3},TW.default.createElement(b,{dimColor:!0},B.pending?TW.default.createElement(TW.default.Fragment,null,"Press ",B.keyName," again to exit"):TW.default.createElement(TW.default.Fragment,null,"Enter to confirm"))))}var WG=J1(R1(),1);var Q31=J1(R1(),1);function Uk2(I){let[Z,G]=Q31.useState(!1);return Q31.useEffect(()=>{let W=setTimeout(()=>{G(!0)},I);return()=>clearTimeout(W)},[I]),Z}async function Wm5(){try{let I=["https://api.anthropic.com/api/hello","https://console.anthropic.com/v1/oauth/hello"],Z=async(B)=>{try{let V=await bI.get(B,{headers:{"User-Agent":OO}});if(V.status!==200)return{success:!1,error:`Failed to connect to ${new URL(B).hostname}: Status ${V.status}`};return{success:!0}}catch(V){return{success:!1,error:`Failed to connect to ${new URL(B).hostname}: ${V instanceof Error?V.message:String(V)}`}}};return(await Promise.all(I.map(Z))).find((B)=>!B.success)||{success:!0}}catch(I){return c1(I),{success:!1,error:`Connectivity check error: ${I instanceof Error?I.message:String(I)}`}}}function Nk2({onSuccess:I}){let[Z,G]=WG.useState(null),[W,B]=WG.useState(!0),V=j1(),Y=Uk2(1000)&&W;return WG.useEffect(()=>{async function w(){let X=await Wm5();G(X),B(!1)}w()},[]),WG.useEffect(()=>{if(Z?.success)I();else if(Z&&!Z.success){let w=setTimeout(()=>process.exit(1),100);return()=>clearTimeout(w)}},[Z,I]),WG.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},W&&Y?WG.default.createElement(p,{paddingLeft:1},WG.default.createElement(hX,null),WG.default.createElement(b,null,"Checking connectivity...")):!Z?.success&&!W&&WG.default.createElement(p,{flexDirection:"column",gap:1},WG.default.createElement(b,{color:V.error},"Unable to connect to Anthropic services"),WG.default.createElement(b,{color:V.error},Z?.error),WG.default.createElement(p,{flexDirection:"column",gap:1},WG.default.createElement(b,null,"Please check your internet connection and network settings."),WG.default.createElement(b,null,"Note: ",S2," might not be available in your country. Check supported countries at"," ",WG.default.createElement(b,{color:V.suggestion},"https://anthropic.com/supported-countries")))))}function Sd1({onDone:I}){let[Z,G]=q5.useState(0),W=f0(),B=Q91(),V=j1();function Y(){if(Z<D.length-1){let z=Z+1;G(z)}}function w(z){o2({...W,theme:z}),Y()}let X=D9();P2(async(z,U)=>{let N=D[Z];if(U.return&&N&&["security"].includes(N.id))if(Z===D.length-1)I();else{if(N.id==="security")await BI();Y()}});let H=q5.default.createElement(Av,{initialTheme:WX.theme,onThemeSelect:w,showIntroText:!0,helpText:"To change this later, run /theme",hideEscToCancel:!0,skipExitHandling:!0}),J=q5.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},q5.default.createElement(b,{bold:!0},"Security notes:"),q5.default.createElement(p,{flexDirection:"column",width:70},q5.default.createElement(rD,null,q5.default.createElement(rD.Item,null,q5.default.createElement(b,null,"Claude Code is currently in research preview"),q5.default.createElement(b,{color:V.secondaryText,wrap:"wrap"},"This beta version may have limitations or unexpected behaviors.",q5.default.createElement(xI,null),"Run /bug at any time to report issues.",q5.default.createElement(xI,null))),q5.default.createElement(rD.Item,null,q5.default.createElement(b,null,"Claude can make mistakes"),q5.default.createElement(b,{color:V.secondaryText,wrap:"wrap"},"You should always review Claude's responses, especially when",q5.default.createElement(xI,null),"running code.",q5.default.createElement(xI,null))),q5.default.createElement(rD.Item,null,q5.default.createElement(b,null,"Due to prompt injection risks, only use it with code you trust"),q5.default.createElement(b,{color:V.secondaryText,wrap:"wrap"},"For more details see:",q5.default.createElement(xI,null),q5.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-security"}))))),q5.default.createElement(IF,null)),A=q5.default.createElement(Nk2,{onSuccess:Y}),K=q5.useMemo(()=>{return""},[]),D=[];if(B)D.push({id:"preflight",component:A});if(D.push({id:"theme",component:H}),B)D.push({id:"oauth",component:q5.default.createElement(z31,{onDone:Y})});if(K)D.push({id:"api-key",component:q5.default.createElement(qk2,{customApiKeyTruncated:K,onDone:Y})});return D.push({id:"security",component:J}),q5.default.createElement(p,{flexDirection:"column",gap:1},D[Z]?.id!=="oauth"&&q5.default.createElement(dd1,null),q5.default.createElement(p,{flexDirection:"column",padding:0,gap:0},D[Z]?.component,X.pending&&q5.default.createElement(p,{padding:1},q5.default.createElement(b,{dimColor:!0},"Press ",X.keyName," again to exit"))))}function dd1(){let I=j1();return q5.default.createElement(p,{borderColor:I.claude,borderStyle:"round",paddingX:1,width:Ld1},q5.default.createElement(b,null,q5.default.createElement(b,{color:I.claude},"✻")," Welcome to"," ",q5.default.createElement(b,{bold:!0},S2)," research preview!"))}var lu2=J1(hu2(),1);function IO1({message:I,title:Z}){let G=Z?`${Z}:
|
|
1422
1432
|
${I}`:I;try{process.stdout.write(`\x1B]9;
|
|
1423
1433
|
|
|
1424
|
-
${G}\x07`)}catch{}}function pu2({message:I,title:Z}){try{let G=Math.floor(Math.random()*1e4);process.stdout.write(`\x1B]99;i=${G}:d=0:p=title;${Z||S2}\x1B\\`),process.stdout.write(`\x1B]99;i=${G}:p=body;${I}\x1B\\`),process.stdout.write(`\x1B]99;i=${G}:d=1:a=focus;\x1B\\`)}catch{}}function Qk5({message:I,title:Z}){try{let G=Z||S2;process.stdout.write(`\x1B]777;notify;${G};${I}\x07`)}catch{}}function ZO1(){process.stdout.write("\x07")}async function zk5(){try{if(z2.terminal!=="Apple_Terminal")return!1;let Z=(await R4("osascript",["-e",'tell application "Terminal" to name of current settings of front window'])).stdout.trim();if(!Z)return!1;let G=await R4("defaults",["export","com.apple.Terminal","-"]);if(G.code!==0)return!1;let V=lu2.default.parse(G.stdout)?.["Window Settings"]?.[Z];if(!V)return!1;return V.Bell===!1}catch(I){return c1(I instanceof Error?I:new Error(String(I))),!1}}async function dv(I){let Z=f0().preferredNotifChannel,G="none";switch(Z){case"auto":if(z2.terminal==="Apple_Terminal")if(await zk5())ZO1(),G="terminal_bell";else G="no_method_available";else if(z2.terminal==="iTerm.app")IO1(I),G="iterm2";else if(z2.terminal==="kitty")pu2(I),G="kitty";else if(z2.terminal=="ghostty")Qk5(I),G="ghostty";else G="no_method_available";break;case"iterm2":IO1(I),G="iterm2";break;case"terminal_bell":ZO1(),G="terminal_bell";break;case"iterm2_with_bell":IO1(I),ZO1(),G="iterm2_with_bell";break;case"kitty":pu2(I),G="kitty";break;case"notifications_disabled":G="disabled";break}await x1("notification_method_used",{configured_channel:Z,method_used:G,term:z2.terminal})}var cu2="Paste code here if prompted > ";function z31({onDone:I}){let[Z,G]=v4.useState({state:"idle"}),W=j1(),[B,V]=v4.useState(""),[Y,w]=v4.useState(0),[X]=v4.useState(()=>new Md1),[H,J]=v4.useState(!1),[A,K]=v4.useState(!1),D=w3().columns-cu2.length-1;v4.useEffect(()=>{if(A)BI(),K(!1)},[A]),v4.useEffect(()=>{if(Z.state==="about_to_retry")K(!0),setTimeout(()=>{G(Z.nextState)},1000)},[Z]),P2(async(g,f)=>{if(f.return){if(Z.state==="idle")x1("tengu_oauth_start",{}),G({state:"ready_to_start"});else if(Z.state==="success")x1("tengu_oauth_success",{}),await BI(),I();else if(Z.state==="error"&&Z.toRetry)V(""),G({state:"about_to_retry",nextState:Z.toRetry})}});async function z(g,f){try{let[P,M]=g.split("#");if(!P||!M){G({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:f}});return}x1("tengu_oauth_manual_entry",{}),X.processCallback({authorizationCode:P,state:M,useManualRedirect:!0})}catch(P){c1(P instanceof Error?P:new Error(String(P))),G({state:"error",message:P.message,toRetry:{state:"waiting_for_login",url:f}})}}let U=v4.useCallback(async()=>{try{let g=await X.startOAuthFlow(async(P)=>{G({state:"waiting_for_login",url:P}),setTimeout(()=>J(!0),3000)}).catch((P)=>{if(P.message.includes("Token exchange failed"))G({state:"error",message:"Failed to exchange authorization code for access token. Please try again.",toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_token_exchange_error",{error:P.message});else G({state:"error",message:P.message,toRetry:{state:"ready_to_start"}});throw P});if(G({state:"creating_api_key"}),await Ak2(g.accessToken).catch((P)=>{throw G({state:"error",message:"Failed to fetch user roles: "+P.message,toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_user_roles_error",{error:P.message}),P}),await _k2(g.accessToken).catch((P)=>{throw G({state:"error",message:"Failed to create API key: "+P.message,toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_api_key_error",{error:P.message}),P}))G({state:"success"}),dv({message:"Claude Code login successful"});else G({state:"error",message:"Unable to create API key. The server accepted the request but didn't return a key.",toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_api_key_error",{error:"server_returned_no_key"})}catch(g){let f=g.message;x1("tengu_oauth_error",{error:f})}},[X,J]);v4.useEffect(()=>{if(Z.state==="ready_to_start")U()},[Z.state,U]);function N(){switch(Z.state){case"idle":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{bold:!0},S2," is billed based on API usage through your Anthropic Console account."),v4.default.createElement(p,null,v4.default.createElement(b,null,"Pricing may evolve as we move towards general availability.")),v4.default.createElement(p,{marginTop:1},v4.default.createElement(b,{color:W.permission},"Press ",v4.default.createElement(b,{bold:!0},"Enter")," to login to your Anthropic Console account…")));case"waiting_for_login":return v4.default.createElement(p,{flexDirection:"column",gap:1},!H&&v4.default.createElement(p,null,v4.default.createElement(hX,null),v4.default.createElement(b,null,"Opening browser to sign in…")),H&&v4.default.createElement(p,null,v4.default.createElement(b,null,cu2),v4.default.createElement(dV,{value:B,onChange:V,onSubmit:(g)=>z(g,Z.url),cursorOffset:Y,onChangeCursorOffset:w,columns:D})));case"creating_api_key":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(p,null,v4.default.createElement(hX,null),v4.default.createElement(b,null,"Creating API key for Claude Code…")));case"about_to_retry":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{color:W.permission},"Retrying…"));case"success":return v4.default.createElement(p,{flexDirection:"column",gap:2},f0().oauthAccount?.emailAddress?v4.default.createElement(b,{dimColor:!0},"Logged in as"," ",v4.default.createElement(b,null,f0().oauthAccount?.emailAddress)):null,v4.default.createElement(b,{color:W.success},"Login successful. Press ",v4.default.createElement(b,{bold:!0},"Enter")," to continue…"));case"error":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{color:W.error},"OAuth error: ",Z.message),Z.toRetry&&v4.default.createElement(p,{marginTop:1},v4.default.createElement(b,{color:W.permission},"Press ",v4.default.createElement(b,{bold:!0},"Enter")," to retry.")));default:return null}}let L={};if(!A)L.header=v4.default.createElement(p,{key:"header",flexDirection:"column",gap:1},v4.default.createElement(dd1,null),v4.default.createElement(p,{paddingBottom:1,paddingLeft:1},v4.default.createElement(Dk2,null)));if(Z.state==="waiting_for_login"&&H)L.urlToCopy=v4.default.createElement(p,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},v4.default.createElement(p,{paddingX:1},v4.default.createElement(b,{dimColor:!0},"Browser didn't open? Use the url below to sign in:")),v4.default.createElement(p,{width:1000},v4.default.createElement(b,{dimColor:!0},Z.url)));return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(bS,{items:Object.keys(L)},(g)=>L[g]),v4.default.createElement(p,{paddingLeft:1,flexDirection:"column",gap:1},N()))}var iu2=()=>({type:"local-jsx",name:"login",description:uY(!1)?"Switch Anthropic accounts":"Sign in with your Anthropic account",isEnabled:!0,isHidden:!1,async call(I,Z){return await BI(),bW.createElement(qk5,{onDone:async()=>{$91(Z),Z.onChangeAPIKey(),I()}})},userFacingName(){return"login"}});function qk5(I){let Z=D9(I.onDone);return bW.createElement(p,{flexDirection:"column"},bW.createElement(z31,{onDone:I.onDone}),bW.createElement(p,{marginLeft:3},bW.createElement(b,{dimColor:!0},Z.pending?bW.createElement(bW.Fragment,null,"Press ",Z.keyName," again to exit"):"")))}var GO1=J1(R1(),1);var nu2={type:"local-jsx",name:"logout",description:"Sign out from your Anthropic account",isEnabled:!0,isHidden:!1,async call(){await BI(),h$2();let I=f0();if(I.oauthAccount=void 0,I.hasCompletedOnboarding=!1,I.customApiKeyResponses?.approved)I.customApiKeyResponses.approved=[];o2(I);let Z=GO1.createElement(b,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{process.exit(0)},200),Z},userFacingName(){return"logout"}};var au2=J1(R1(),1);var W4=J1(R1(),1);function Ov({onPress:I}){return P2((Z,G)=>{if(G.return)I();else if(G.escape)process.exit(1)}),W4.default.createElement(b,null,"Press ",W4.default.createElement(b,{bold:!0},"Enter")," to continue or ",W4.default.createElement(b,{bold:!0},"Esc")," to exit")}function $h(){let[I,Z]=W4.useState("intro"),[G,W]=W4.useState(""),[B,V]=W4.useState("");if(D9(()=>{uU("canceled","user_exit"),process.exit(1)}),W4.useEffect(()=>{uU("start")},[]),W4.useEffect(()=>{let w=async()=>{try{if(!qd1())W("Local package creation failed"),Z("error"),uU("failure","environement_setup");switch(await Uv()){case"success":{Z("success"),uU("success");break}case"in_progress":W("Update already in progress"),Z("error"),uU("failure","in_progress");break;case"install_failed":W(`Install of ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.PACKAGE_URL} failed`),Z("error"),uU("failure","other_failure");break}}catch(J){W(String(J)),Z("error"),uU("failure","unexpected_error")}},X=async()=>{try{let J=await Y31();V(J),Z("setup")}catch(J){W(String(J)),Z("error")}},H=async()=>{try{if(await im2())Z("uninstall-success");else Z("uninstall-failed")}catch(J){W(String(J)),Z("uninstall-failed")}};switch(I){case"installing":w();break;case"setup-alias":X();break;case"uninstall":H();break;default:break}},[I]),I==="intro"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},S2," Local Installer"),W4.default.createElement(p,{flexDirection:"column"},W4.default.createElement(b,{color:w.secondaryText},`This will install ${S2} to ~/.claude/local`),W4.default.createElement(b,{color:w.secondaryText},"instead of using a global npm installation.")),W4.default.createElement(Ov,{onPress:()=>Z("installing")}))}if(I==="installing")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Installing ",S2," locally..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Installing to ",qv)));if(I==="success"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.success},"✓ Local installation successful!"),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"Next, let's add an alias for `claude`")),W4.default.createElement(Ov,{onPress:()=>Z("setup-alias")}))}if(I==="setup-alias")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Setting up alias for claude..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Configuring shell environment")));if(I==="setup")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Alias setup complete"),W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,null,B),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"Next, we'll remove the globally installed npm package"))),W4.default.createElement(Ov,{onPress:()=>Z("uninstall")}));if(I==="uninstall")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Uninstalling global ",S2,"..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Removing global npm installation")));if(I==="uninstall-success"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.success},"✓ Global installation removed successfully!"),W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,null,S2," is now installed locally."),W4.default.createElement(b,null,"Please restart your shell, then run"," ",W4.default.createElement(b,{color:w.claude},_0.bold("claude")),"."),W4.default.createElement(p,{flexDirection:"row",marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Happy Clauding!"))),W4.default.createElement(Ov,{onPress:()=>process.exit(0)}))}if(I==="uninstall-failed"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.warning},"! Could not remove global installation"),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"The local installation is installed, but we couldn't remove the global npm package automatically.")),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"You can remove it manually later with:",`
|
|
1425
|
-
`,_0.bold(`npm uninstall -g --force ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1434
|
+
${G}\x07`)}catch{}}function pu2({message:I,title:Z}){try{let G=Math.floor(Math.random()*1e4);process.stdout.write(`\x1B]99;i=${G}:d=0:p=title;${Z||S2}\x1B\\`),process.stdout.write(`\x1B]99;i=${G}:p=body;${I}\x1B\\`),process.stdout.write(`\x1B]99;i=${G}:d=1:a=focus;\x1B\\`)}catch{}}function Qk5({message:I,title:Z}){try{let G=Z||S2;process.stdout.write(`\x1B]777;notify;${G};${I}\x07`)}catch{}}function ZO1(){process.stdout.write("\x07")}async function zk5(){try{if(z2.terminal!=="Apple_Terminal")return!1;let Z=(await R4("osascript",["-e",'tell application "Terminal" to name of current settings of front window'])).stdout.trim();if(!Z)return!1;let G=await R4("defaults",["export","com.apple.Terminal","-"]);if(G.code!==0)return!1;let V=lu2.default.parse(G.stdout)?.["Window Settings"]?.[Z];if(!V)return!1;return V.Bell===!1}catch(I){return c1(I instanceof Error?I:new Error(String(I))),!1}}async function dv(I){let Z=f0().preferredNotifChannel,G="none";switch(Z){case"auto":if(z2.terminal==="Apple_Terminal")if(await zk5())ZO1(),G="terminal_bell";else G="no_method_available";else if(z2.terminal==="iTerm.app")IO1(I),G="iterm2";else if(z2.terminal==="kitty")pu2(I),G="kitty";else if(z2.terminal=="ghostty")Qk5(I),G="ghostty";else G="no_method_available";break;case"iterm2":IO1(I),G="iterm2";break;case"terminal_bell":ZO1(),G="terminal_bell";break;case"iterm2_with_bell":IO1(I),ZO1(),G="iterm2_with_bell";break;case"kitty":pu2(I),G="kitty";break;case"notifications_disabled":G="disabled";break}await x1("notification_method_used",{configured_channel:Z,method_used:G,term:z2.terminal})}var cu2="Paste code here if prompted > ";function z31({onDone:I}){let[Z,G]=v4.useState({state:"idle"}),W=j1(),[B,V]=v4.useState(""),[Y,w]=v4.useState(0),[X]=v4.useState(()=>new Md1),[H,J]=v4.useState(!1),[A,K]=v4.useState(!1),D=w3().columns-cu2.length-1;v4.useEffect(()=>{if(A)BI(),K(!1)},[A]),v4.useEffect(()=>{if(Z.state==="about_to_retry")K(!0),setTimeout(()=>{G(Z.nextState)},1000)},[Z]),P2(async(g,f)=>{if(f.return){if(Z.state==="idle")x1("tengu_oauth_start",{}),G({state:"ready_to_start"});else if(Z.state==="success")x1("tengu_oauth_success",{}),await BI(),I();else if(Z.state==="error"&&Z.toRetry)V(""),G({state:"about_to_retry",nextState:Z.toRetry})}});async function z(g,f){try{let[P,M]=g.split("#");if(!P||!M){G({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:f}});return}x1("tengu_oauth_manual_entry",{}),X.processCallback({authorizationCode:P,state:M,useManualRedirect:!0})}catch(P){c1(P instanceof Error?P:new Error(String(P))),G({state:"error",message:P.message,toRetry:{state:"waiting_for_login",url:f}})}}let U=v4.useCallback(async()=>{try{let g=await X.startOAuthFlow(async(P)=>{G({state:"waiting_for_login",url:P}),setTimeout(()=>J(!0),3000)}).catch((P)=>{if(P.message.includes("Token exchange failed"))G({state:"error",message:"Failed to exchange authorization code for access token. Please try again.",toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_token_exchange_error",{error:P.message});else G({state:"error",message:P.message,toRetry:{state:"ready_to_start"}});throw P});if(G({state:"creating_api_key"}),await Ak2(g.accessToken).catch((P)=>{throw G({state:"error",message:"Failed to fetch user roles: "+P.message,toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_user_roles_error",{error:P.message}),P}),await _k2(g.accessToken).catch((P)=>{throw G({state:"error",message:"Failed to create API key: "+P.message,toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_api_key_error",{error:P.message}),P}))G({state:"success"}),dv({message:"Claude Code login successful"});else G({state:"error",message:"Unable to create API key. The server accepted the request but didn't return a key.",toRetry:{state:"ready_to_start"}}),x1("tengu_oauth_api_key_error",{error:"server_returned_no_key"})}catch(g){let f=g.message;x1("tengu_oauth_error",{error:f})}},[X,J]);v4.useEffect(()=>{if(Z.state==="ready_to_start")U()},[Z.state,U]);function N(){switch(Z.state){case"idle":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{bold:!0},S2," is billed based on API usage through your Anthropic Console account."),v4.default.createElement(p,null,v4.default.createElement(b,null,"Pricing may evolve as we move towards general availability.")),v4.default.createElement(p,{marginTop:1},v4.default.createElement(b,{color:W.permission},"Press ",v4.default.createElement(b,{bold:!0},"Enter")," to login to your Anthropic Console account…")));case"waiting_for_login":return v4.default.createElement(p,{flexDirection:"column",gap:1},!H&&v4.default.createElement(p,null,v4.default.createElement(hX,null),v4.default.createElement(b,null,"Opening browser to sign in…")),H&&v4.default.createElement(p,null,v4.default.createElement(b,null,cu2),v4.default.createElement(dV,{value:B,onChange:V,onSubmit:(g)=>z(g,Z.url),cursorOffset:Y,onChangeCursorOffset:w,columns:D})));case"creating_api_key":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(p,null,v4.default.createElement(hX,null),v4.default.createElement(b,null,"Creating API key for Claude Code…")));case"about_to_retry":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{color:W.permission},"Retrying…"));case"success":return v4.default.createElement(p,{flexDirection:"column",gap:2},f0().oauthAccount?.emailAddress?v4.default.createElement(b,{dimColor:!0},"Logged in as"," ",v4.default.createElement(b,null,f0().oauthAccount?.emailAddress)):null,v4.default.createElement(b,{color:W.success},"Login successful. Press ",v4.default.createElement(b,{bold:!0},"Enter")," to continue…"));case"error":return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(b,{color:W.error},"OAuth error: ",Z.message),Z.toRetry&&v4.default.createElement(p,{marginTop:1},v4.default.createElement(b,{color:W.permission},"Press ",v4.default.createElement(b,{bold:!0},"Enter")," to retry.")));default:return null}}let L={};if(!A)L.header=v4.default.createElement(p,{key:"header",flexDirection:"column",gap:1},v4.default.createElement(dd1,null),v4.default.createElement(p,{paddingBottom:1,paddingLeft:1},v4.default.createElement(Dk2,null)));if(Z.state==="waiting_for_login"&&H)L.urlToCopy=v4.default.createElement(p,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},v4.default.createElement(p,{paddingX:1},v4.default.createElement(b,{dimColor:!0},"Browser didn't open? Use the url below to sign in:")),v4.default.createElement(p,{width:1000},v4.default.createElement(b,{dimColor:!0},Z.url)));return v4.default.createElement(p,{flexDirection:"column",gap:1},v4.default.createElement(bS,{items:Object.keys(L)},(g)=>L[g]),v4.default.createElement(p,{paddingLeft:1,flexDirection:"column",gap:1},N()))}var iu2=()=>({type:"local-jsx",name:"login",description:uY(!1)?"Switch Anthropic accounts":"Sign in with your Anthropic account",isEnabled:!0,isHidden:!1,async call(I,Z){return await BI(),bW.createElement(qk5,{onDone:async()=>{$91(Z),Z.onChangeAPIKey(),I()}})},userFacingName(){return"login"}});function qk5(I){let Z=D9(I.onDone);return bW.createElement(p,{flexDirection:"column"},bW.createElement(z31,{onDone:I.onDone}),bW.createElement(p,{marginLeft:3},bW.createElement(b,{dimColor:!0},Z.pending?bW.createElement(bW.Fragment,null,"Press ",Z.keyName," again to exit"):"")))}var GO1=J1(R1(),1);var nu2={type:"local-jsx",name:"logout",description:"Sign out from your Anthropic account",isEnabled:!0,isHidden:!1,async call(){await BI(),h$2();let I=f0();if(I.oauthAccount=void 0,I.hasCompletedOnboarding=!1,I.customApiKeyResponses?.approved)I.customApiKeyResponses.approved=[];o2(I);let Z=GO1.createElement(b,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{process.exit(0)},200),Z},userFacingName(){return"logout"}};var au2=J1(R1(),1);var W4=J1(R1(),1);function Ov({onPress:I}){return P2((Z,G)=>{if(G.return)I();else if(G.escape)process.exit(1)}),W4.default.createElement(b,null,"Press ",W4.default.createElement(b,{bold:!0},"Enter")," to continue or ",W4.default.createElement(b,{bold:!0},"Esc")," to exit")}function $h(){let[I,Z]=W4.useState("intro"),[G,W]=W4.useState(""),[B,V]=W4.useState("");if(D9(()=>{uU("canceled","user_exit"),process.exit(1)}),W4.useEffect(()=>{uU("start")},[]),W4.useEffect(()=>{let w=async()=>{try{if(!qd1())W("Local package creation failed"),Z("error"),uU("failure","environement_setup");switch(await Uv()){case"success":{Z("success"),uU("success");break}case"in_progress":W("Update already in progress"),Z("error"),uU("failure","in_progress");break;case"install_failed":W(`Install of ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL} failed`),Z("error"),uU("failure","other_failure");break}}catch(J){W(String(J)),Z("error"),uU("failure","unexpected_error")}},X=async()=>{try{let J=await Y31();V(J),Z("setup")}catch(J){W(String(J)),Z("error")}},H=async()=>{try{if(await im2())Z("uninstall-success");else Z("uninstall-failed")}catch(J){W(String(J)),Z("uninstall-failed")}};switch(I){case"installing":w();break;case"setup-alias":X();break;case"uninstall":H();break;default:break}},[I]),I==="intro"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},S2," Local Installer"),W4.default.createElement(p,{flexDirection:"column"},W4.default.createElement(b,{color:w.secondaryText},`This will install ${S2} to ~/.claude/local`),W4.default.createElement(b,{color:w.secondaryText},"instead of using a global npm installation.")),W4.default.createElement(Ov,{onPress:()=>Z("installing")}))}if(I==="installing")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Installing ",S2," locally..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Installing to ",qv)));if(I==="success"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.success},"✓ Local installation successful!"),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"Next, let's add an alias for `claude`")),W4.default.createElement(Ov,{onPress:()=>Z("setup-alias")}))}if(I==="setup-alias")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Setting up alias for claude..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Configuring shell environment")));if(I==="setup")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Alias setup complete"),W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,null,B),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"Next, we'll remove the globally installed npm package"))),W4.default.createElement(Ov,{onPress:()=>Z("uninstall")}));if(I==="uninstall")return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0},"Uninstalling global ",S2,"..."),W4.default.createElement(p,{marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Removing global npm installation")));if(I==="uninstall-success"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.success},"✓ Global installation removed successfully!"),W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,null,S2," is now installed locally."),W4.default.createElement(b,null,"Please restart your shell, then run"," ",W4.default.createElement(b,{color:w.claude},_0.bold("claude")),"."),W4.default.createElement(p,{flexDirection:"row",marginY:1},W4.default.createElement(hX,null),W4.default.createElement(b,null," Happy Clauding!"))),W4.default.createElement(Ov,{onPress:()=>process.exit(0)}))}if(I==="uninstall-failed"){let w=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:w.warning},"! Could not remove global installation"),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"The local installation is installed, but we couldn't remove the global npm package automatically.")),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,"You can remove it manually later with:",`
|
|
1435
|
+
`,_0.bold(`npm uninstall -g --force ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL}`))),W4.default.createElement(Ov,{onPress:()=>process.exit(0)}))}let Y=j1();return W4.default.createElement(p,{flexDirection:"column",marginY:1},W4.default.createElement(b,{bold:!0,color:Y.error},"✗ Installation failed"),W4.default.createElement(p,{marginY:1},W4.default.createElement(b,null,G||"An unexpected error occurred during installation.")),W4.default.createElement(Ov,{onPress:()=>process.exit(1)}))}var Uk5={type:"local",name:"migrate-installer",description:"Migrate from global npm installation to local installation",isEnabled:!oE(),isHidden:!1,async call(){let{waitUntilExit:I}=kI(au2.default.createElement($h,null));return await I(),""},userFacingName(){return"migrate-installer"}},ru2=Uk5;import{EOL as Rh}from"os";var Nk5={type:"local",name:"mcp",description:"Show MCP server connection status",isEnabled:!0,isHidden:!1,async call(I,{options:{mcpClients:Z}}){let G=[...Z].sort((w,X)=>w.name.localeCompare(X.name)),W=e4();if(G.length===0)return"No MCP servers configured. Run `claude mcp` to learn about how to configure MCP servers.";let B=process.argv.includes("--mcp-debug"),V=G.some((w)=>w.type==="failed");return[`MCP Server Status${B?" (Debug Mode)":""}`,Rh,Rh,...G.map((w)=>{let X;if(w.type==="connected")X=_0.bold(_0.ansi256(W.success)("connected"));else if(w.type==="pending")X=_0.bold(_0.ansi256(W.warning)("connecting…"));else X=_0.bold(_0.ansi256(W.error)("failed"));return`• ${w.name}: ${X}`}).join(Rh),...V?[Rh,Rh,B?_0.dim(`Error logs will be shown inline. Log files are also saved in: ${LD.baseLogs()}`):_0.dim(`Run claude with --mcp-debug to see error logs inline, or view log files in: ${LD.baseLogs()}`)]:[]].join("")},userFacingName(){return"mcp"}},su2=Nk5;var $k5=J1(R1(),1);var ou2={type:"prompt",name:"pr-comments",description:"Get comments from a GitHub pull request",progressMessage:"fetching PR comments",isEnabled:!0,isHidden:!1,userFacingName(){return"pr-comments"},async getPromptForCommand(I){return[{role:"user",content:[{type:"text",text:`You are an AI assistant integrated into a git-based version control system. Your task is to fetch and display comments from a GitHub pull request.
|
|
1426
1436
|
|
|
1427
1437
|
Follow these steps:
|
|
1428
1438
|
|
|
@@ -1456,7 +1466,7 @@ Remember:
|
|
|
1456
1466
|
|
|
1457
1467
|
${I?"Additional user input: "+I:""}
|
|
1458
1468
|
`}]}]}};var cU=J1(G31(),1);var Rk5=5,tu2="https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md",Ek5="https://raw.githubusercontent.com/anthropics/claude-code/refs/heads/main/CHANGELOG.md";async function WO1(){let I=await bI.get(Ek5);if(I.status===200){let Z=f0();o2({...Z,cachedChangelog:I.data,changelogLastFetched:Date.now()})}}function Eh(){return f0().cachedChangelog??""}function eu2(I){try{if(!I)return{};let Z={},G=I.split(/^## /gm).slice(1);for(let W of G){let B=W.trim().split(`
|
|
1459
|
-
`);if(B.length===0)continue;let V=B[0];if(!V)continue;let Y=V.split(" - ")[0]?.trim()||"";if(!Y)continue;let w=B.slice(1).filter((X)=>X.trim().startsWith("- ")).map((X)=>X.trim().substring(2).trim()).filter(Boolean);if(w.length>0)Z[Y]=w}return Z}catch(Z){return c1(Z instanceof Error?Z:new Error("Failed to parse changelog")),{}}}function Mk5(I,Z,G=Eh()){try{let W=eu2(G),B=cU.coerce(I),V=Z?cU.coerce(Z):null;if(!V||B&&cU.gt(B,V))return Object.entries(W).filter(([Y])=>!V||cU.gt(Y,V)).sort(([Y],[w])=>cU.gt(Y,w)?-1:1).flatMap(([Y,w])=>w).filter(Boolean).slice(0,Rk5)}catch(W){return c1(W instanceof Error?W:new Error("Failed to get release notes")),[]}return[]}function BO1(I=Eh()){try{let Z=eu2(I);return Object.keys(Z).sort((W,B)=>cU.gt(W,B)?1:-1).map((W)=>{let B=Z[W];if(!B||B.length===0)return null;let V=B.filter(Boolean);if(V.length===0)return null;return[W,V]}).filter((W)=>W!==null)}catch(Z){return c1(Z instanceof Error?Z:new Error("Failed to get release notes")),[]}}function h31(I,Z={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1469
|
+
`);if(B.length===0)continue;let V=B[0];if(!V)continue;let Y=V.split(" - ")[0]?.trim()||"";if(!Y)continue;let w=B.slice(1).filter((X)=>X.trim().startsWith("- ")).map((X)=>X.trim().substring(2).trim()).filter(Boolean);if(w.length>0)Z[Y]=w}return Z}catch(Z){return c1(Z instanceof Error?Z:new Error("Failed to parse changelog")),{}}}function Mk5(I,Z,G=Eh()){try{let W=eu2(G),B=cU.coerce(I),V=Z?cU.coerce(Z):null;if(!V||B&&cU.gt(B,V))return Object.entries(W).filter(([Y])=>!V||cU.gt(Y,V)).sort(([Y],[w])=>cU.gt(Y,w)?-1:1).flatMap(([Y,w])=>w).filter(Boolean).slice(0,Rk5)}catch(W){return c1(W instanceof Error?W:new Error("Failed to get release notes")),[]}return[]}function BO1(I=Eh()){try{let Z=eu2(I);return Object.keys(Z).sort((W,B)=>cU.gt(W,B)?1:-1).map((W)=>{let B=Z[W];if(!B||B.length===0)return null;let V=B.filter(Boolean);if(V.length===0)return null;return[W,V]}).filter((W)=>W!==null)}catch(Z){return c1(Z instanceof Error?Z:new Error("Failed to get release notes")),[]}}function h31(I,Z={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION){if(I!==Z||!Eh())WO1().catch((B)=>c1(B instanceof Error?B:new Error("Failed to fetch changelog")));let G=Mk5(Z,I);return{hasReleaseNotes:G.length>0,releaseNotes:G}}function Ih2(I){return I.map(([Z,G])=>{let W=`Version ${Z}:`,B=G.map((V)=>`• ${V}`).join(`
|
|
1460
1470
|
`);return`${W}
|
|
1461
1471
|
${B}`}).join(`
|
|
1462
1472
|
|
|
@@ -1751,15 +1761,15 @@ Files modified by other users:
|
|
|
1751
1761
|
`);a[k]="",I.onChange(a.join(`
|
|
1752
1762
|
`)),f=d.offset}else f=d.offset}return{newOffset:f,switchToInsert:P}}let M=X(L,g);if(!M||g.equals(M))return{newOffset:f,switchToInsert:P};if(N==="move")f=M.offset;else{let[d,k]=g.offset<=M.offset?[g,M]:[M,g],a=k;if(L==="e"&&g.offset<=M.offset)a=k.right();let m=d.modifyText(a,"");if(I.onChange(m.text),N==="change")f=d.offset;else f=m.offset}return{newOffset:f,switchToInsert:P}},J=(N)=>{if(N!==void 0)w.setOffset(N);G("INSERT"),I.onModeChange?.("INSERT"),Y?.(!0,"-- INSERT MODE --"),setTimeout(()=>Y?.(!1),1000)},A=()=>{G("NORMAL"),I.onModeChange?.("NORMAL"),Y?.(!0,"-- NORMAL MODE --"),setTimeout(()=>Y?.(!1),1000)},K=(N)=>{B.current=N},D=(N,L)=>{if(L==="below"){let f=N.endOfLine().insert(`
|
|
1753
1763
|
`);return I.onChange(f.text),f.offset}else{let g=N.startOfLine(),f=g.insert(`
|
|
1754
|
-
`);return I.onChange(f.text),g.offset}},z=(N)=>{let L=B.current;if(!L)return;switch(L.type){case"delete":if(L.motion){let{newOffset:g}=H("delete",L.motion,N);w.setOffset(g)}break;case"change":if(L.motion){let{newOffset:g}=H("change",L.motion,N);w.setOffset(g),J(g)}break;case"insert":if(L.insertedText){let g=N.insert(L.insertedText);I.onChange(g.text),w.setOffset(g.offset)}break;case"x":if(!N.equals(N.del()))I.onChange(N.del().text),w.setOffset(N.del().offset);break;case"o":{let g=D(N,"below");J(g);break}case"O":{let g=D(N,"above");J(g);break}case"replace":break}};return{...w,onInput:(N,L)=>{let g=WI.fromText(I.value,I.columns,w.offset);if(L.ctrl){w.onInput(N,L);return}if(L.escape&&Z==="INSERT"&&!I.isMessageLoading){if(V.current)K({type:"insert",insertedText:V.current}),V.current="";A();return}if(Z==="NORMAL"&&W.current){if(W.current==="d"){let{newOffset:f}=H("delete",N,g);w.setOffset(f),K({type:"delete",motion:N}),W.current="";return}else if(W.current==="c"){let{newOffset:f}=H("change",N,g);K({type:"change",motion:N}),W.current="",J(f);return}else if(W.current==="g"&&N==="g"){let{newOffset:f}=H("move","gg",g);w.setOffset(f),W.current="";return}W.current=""}if(Z==="NORMAL")switch(N){case".":{z(g);return}case"i":V.current="",J();return;case"I":{V.current="",J(g.startOfLine().offset);return}case"a":{V.current="",J(g.right().offset);return}case"A":{V.current="",J(g.endOfLine().offset);return}case"o":{V.current="";let f=D(g,"below");K({type:"o"}),J(f);return}case"O":{V.current="";let f=D(g,"above");K({type:"O"}),J(f);return}case"h":case"l":case"j":case"k":case"0":case"^":case"$":case"w":case"e":case"b":case"G":{let{newOffset:f}=H("move",N,g);w.setOffset(f);return}case"g":{W.current="g";return}case"x":{if(!g.equals(g.del()))I.onChange(g.del().text),w.setOffset(g.del().offset),K({type:"x"});return}case"d":W.current="d";return;case"D":{let f=H("delete","$",g);w.setOffset(f.newOffset),K({type:"delete",motion:"$"});return}case"c":W.current="c";return;case"C":{let f=H("change","$",g);w.setOffset(f.newOffset),K({type:"change",motion:"$"}),J();return}}if(L.return){w.onInput(N,L);return}if(Z==="INSERT"){if(L.backspace||L.delete){if(V.current.length>0)V.current=V.current.slice(0,-1)}else V.current+=N;w.onInput(N,L)}},mode:Z,setMode:G}}function CT1(I){let Z=e4().text,G=Gr2({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:_0.inverse,themeText:(V)=>_0.ansi256(Z)(V),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset,onModeChange:I.onModeChange,isMessageLoading:I.isLoading}),{mode:W,setMode:B}=G;return u81.default.useEffect(()=>{if(I.initialMode&&I.initialMode!==W)B(I.initialMode)},[I.initialMode,W,B]),u81.default.createElement(p,{flexDirection:"column"},u81.default.createElement(D91,{inputState:G,...I}))}function h81(){return f0().editorMode==="vim"}function Wr2(){if(kC.isEnabled&&z2.terminal==="Apple_Terminal"&&d$2())return"Option as Meta is enabled";if(kC.isEnabled&&S$2())return"shift + ⏎ for newline";return O$2()?"\\⏎ for newline":"Backslash (\\) + Return (⏎) for newline"}var l7=J1(R1(),1);var Y5=J1(R1(),1),_r2=J1(R1(),1);var N5=J1(R1(),1);function Br2({exitMessage:I,vimMode:Z,mode:G,notification:W,toolPermissionContext:B,suppressHint:V,tasksSelected:Y,ideSelection:w}){let X=j1();if(I.show)return N5.createElement(b,{dimColor:!0,key:"exit-message"},"Press ",I.key," again to exit");if(W.show&&W.content)if("jsx"in W.content)return N5.createElement(p,{key:"notification-content",flexGrow:1},W.content.jsx);else{let J=W.content.color?X[W.content.color]:void 0;return N5.createElement(b,{color:J,dimColor:!W.content.color,key:"notification"},W.content.text)}if(w&&w.lineCount>0)return N5.createElement(b,{color:X.success,key:"selection-indicator"},w.lineCount," ",w.lineCount===1?"line":"lines"," selected");let H=h81()&&Z==="INSERT";return N5.createElement(p,{justifyContent:"flex-start",gap:1},H?N5.createElement(b,{dimColor:!0,key:"vim-insert"},"-- INSERT --"):null,N5.createElement(mr5,{mode:G,toolPermissionContext:B,showHint:!V&&!H,tasksSelected:Y}))}function mr5({mode:I,toolPermissionContext:Z,showHint:G,tasksSelected:W=!1}){let B=j1(),{tasks:V}=Mh(),Y=V.filter((w)=>w.status==="running").length;if(I==="memory")return N5.createElement(b,{color:B.remember},"# to memorize");if(I==="bash")return N5.createElement(b,{color:B.bashBorder},"! for bash mode");if(Z?.mode==="acceptEdits")return N5.createElement(b,{color:B.autoAccept,key:"write-file-allowed"},"⏵⏵ auto-accept edits on",N5.createElement(b,{color:B.secondaryText,dimColor:!0}," ","(shift+tab to toggle)"));if(Y>0){let w=f0().hasSeenTasksHint;return N5.createElement(p,{gap:1},N5.createElement(b,{color:W?B.suggestion:B.permission,inverse:W,bold:W},Y," ",Y===1?"task":"tasks"," running"),G&&N5.createElement(N5.Fragment,null,N5.createElement(b,{dimColor:!0},"·"),N5.createElement(b,{dimColor:!0},W?"Enter to view tasks":!w?"↓ to view":"? for shortcuts")))}if(!G)return null;return N5.createElement(b,{dimColor:!0},"? for shortcuts")}var nG=J1(R1(),1);var $5=J1(R1(),1);var Vr2=J1(G31(),1),p81=J1(R1(),1);function Yr2({debug:I,isUpdating:Z,onChangeIsUpdating:G,onAutoUpdaterResult:W,autoUpdaterResult:B,showSuccessMessage:V}){let Y=j1(),[w,X]=p81.useState({}),H=$5.useCallback(async()=>{let J=f0();if(Z)return;let A={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION,K=await W31(),D=ZB0();if(X({global:A,latest:K}),!D&&A&&K&&!Vr2.gte(A,K)){let z=Date.now();G(!0);let U,N=J.autoUpdaterStatus==="migrated";if(N)U=await Uv();else U=await B31();if(G(!1),U==="success")x1("tengu_auto_updater_success",{fromVersion:A,toVersion:K,durationMs:Date.now()-z,wasMigrated:N});else x1("tengu_auto_updater_fail",{fromVersion:A,attemptedVersion:K,status:U,durationMs:Date.now()-z,wasMigrated:N});W({version:K,status:U})}},[W]);if(p81.useEffect(()=>{H()},[H]),u61(H,1800000),I)return $5.createElement(p,{flexDirection:"row"},$5.createElement(b,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest));if(!B?.version&&(!w.global||!w.latest))return null;if(!B?.version&&!Z)return null;return $5.createElement(p,{flexDirection:"row",gap:1},I&&$5.createElement(b,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest),Z?$5.createElement($5.Fragment,null,$5.createElement(p,null,$5.createElement(b,{color:Y.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",w.latest,"…"))):B?.status==="success"&&B?.version&&V&&$5.createElement(b,{color:Y.success},"✓ Update installed • Restart to apply"),(B?.status==="install_failed"||B?.status==="no_permissions")&&$5.createElement(b,{color:Y.error},"✗ Auto-update failed · Try ",$5.createElement(b,{bold:!0},"claude doctor"),!tE()&&$5.createElement($5.Fragment,null," ","or ",$5.createElement(b,{bold:!0},"npm i -g ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.PACKAGE_URL)),tE()&&$5.createElement($5.Fragment,null," ","or"," ",$5.createElement(b,{bold:!0},"cd ~/.claude/local && npm update ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.PACKAGE_URL))))}var wr2=J1(R1(),1);class FT1 extends wr2.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){qr(I)}render(){if(this.state.hasError)return null;return this.props.children}}var cV=J1(R1(),1);function Xr2({tokenUsage:I}){let Z=j1(),G=g$(oh,sh),{percentLeft:W,isAboveWarningThreshold:B,isAboveErrorThreshold:V}=th(I,G.tokenThreshold);if(!B)return null;let Y=rh();return cV.createElement(p,{flexDirection:"row"},cV.createElement(b,{color:f0().autoCompactEnabled?Z.secondaryText:V?Z.error:Z.warning},Y?cV.createElement(cV.Fragment,null,"Context left until auto-compact: ",W,"%"):cV.createElement(cV.Fragment,null,"Context low (",W,"% remaining) · Run /compact to compact & continue")))}function Hr2(I){let Z=g$(oh,sh);return th(I,Z.tokenThreshold).isAboveWarningThreshold}function Jr2({apiKeyStatus:I,autoUpdaterResult:Z,isAutoUpdating:G,debug:W,messages:B,tokenUsage:V,permissionMode:Y,onAutoUpdaterResult:w,onChangeIsUpdating:X}){let H=Fa2(Y),J=Hr2(V);return nG.createElement(FT1,null,nG.createElement(p,{justifyContent:"flex-end",gap:1},I==="invalid"&&nG.createElement(b,{color:j1().error},"Invalid API key · Run /login"),I==="missing"&&nG.createElement(b,{color:j1().error},"Missing API key · Run /login"),I!=="invalid"&&I!=="missing"&&H&&nG.createElement(b,{color:j1().warning},H),I!=="invalid"&&I!=="missing"&&!H&&W&&nG.createElement(b,{dimColor:!0},`${V} tokens (${Math.round(1e4*(KR2(B)||1)/(V||1))/100}% cached)`),nG.createElement(Xr2,{tokenUsage:V}),nG.createElement(Yr2,{debug:W,onAutoUpdaterResult:w,autoUpdaterResult:Z,isUpdating:G,onChangeIsUpdating:X,showSuccessMessage:!J})))}var dB=J1(R1(),1),Ar2=J1(R1(),1);function kr5({item:I,maxColumnWidth:Z,isSelected:G}){let W=j1(),B=w3().columns,V=B<80,Y=Z??I.displayText.length+5;return dB.createElement(p,{key:I.id,flexDirection:V?"column":"row"},dB.createElement(p,{width:V?void 0:Y},dB.createElement(b,{color:G?W.suggestion:void 0,dimColor:!G},I.displayText)),I.description&&dB.createElement(p,{width:B-(V?4:Y+4),paddingLeft:V?4:0},dB.createElement(b,{color:G?W.suggestion:void 0,dimColor:!G,wrap:"wrap"},I.description)))}function QT1({suggestions:I,selectedSuggestion:Z}){let{rows:G}=w3(),W=Math.min(10,Math.max(1,G-3)),B=(H)=>{return Math.max(...H.map((J)=>J.displayText.length))+5};if(I.length===0)return null;let V=Math.max(0,Math.min(Z-Math.floor(W/2),I.length-W)),Y=Math.min(V+W,I.length),w=I.slice(V,Y),X=B(w);return dB.createElement(p,{flexDirection:"column"},w.map((H)=>dB.createElement(kr5,{key:H.id,item:H,maxColumnWidth:X,isSelected:H.id===I[Z]?.id})))}var uy6=Ar2.memo(QT1);function xr5({apiKeyStatus:I,exitMessage:Z,vimMode:G,mode:W,autoUpdaterResult:B,isAutoUpdating:V,debug:Y,messages:w,tokenUsage:X,onAutoUpdaterResult:H,onChangeIsUpdating:J,suggestions:A,selectedSuggestion:K,notification:D,toolPermissionContext:z,helpOpen:U,suppressHint:N,tasksSelected:L=!1,ideSelection:g}){if(A.length)return Y5.createElement(p,{paddingX:2,paddingY:0},Y5.createElement(QT1,{suggestions:A,selectedSuggestion:K}));if(U)return Y5.createElement(p,{paddingX:2,paddingY:0,flexDirection:"row"},Y5.createElement(p,{flexDirection:"column",width:22},Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"! for bash mode")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"/ for commands")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"# to memorize"))),Y5.createElement(p,{flexDirection:"column"},Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"double tap esc to undo")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"shift + tab to auto-accept edits")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},Wr2()))));return Y5.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},Y5.createElement(Br2,{exitMessage:Z,vimMode:G,mode:W,notification:D,toolPermissionContext:z,suppressHint:N,tasksSelected:L,ideSelection:g}),Y5.createElement(Jr2,{apiKeyStatus:I,autoUpdaterResult:B,isAutoUpdating:V,debug:Y,messages:w,tokenUsage:X,permissionMode:z.mode,onAutoUpdaterResult:H,onChangeIsUpdating:J}))}var Kr2=_r2.memo(xr5);var _g=J1(R1(),1);var ur5=r.object({method:r.literal("selection_changed"),params:r.object({selection:r.object({start:r.object({line:r.number(),character:r.number()}),end:r.object({line:r.number(),character:r.number()})}).nullable().optional(),text:r.string().optional(),filePath:r.string().optional()})});function Dr2(I){let[Z,G]=_g.useState(null),W=_g.useRef(!1);return _g.useEffect(()=>{if(W.current||!I.length)return;let B=I.find((V)=>V.type==="connected"&&V.name==="ide");if(B){let V=(Y)=>{if(Y.selection?.start&&Y.selection?.end){let{start:w,end:X}=Y.selection,H=X.line-w.line+1;if(H>0&&Y.text&&Y.text!=="")G({lineCount:H,text:Y.text,filePath:Y.filePath});else G((J)=>{if(J!==null)return null;return J})}};B.client.setNotificationHandler(ur5,(Y)=>{try{let w=Y.params;if(w.selection&&w.selection.start&&w.selection.end)V(w);else if(w.text!==void 0)V({selection:null,text:w.text,filePath:w.filePath})}catch(w){console.error("Error processing selection_changed notification:",w)}}),W.current=!0}},[I]),Z}function Cr2(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function hr5({toolPermissionContext:I,setToolPermissionContext:Z,apiKeyStatus:G,commands:W,forkNumber:B,messageLogName:V,isLoading:Y,onQuery:w,debug:X,verbose:H,messages:J,setToolJSX:A,onAutoUpdaterResult:K,autoUpdaterResult:D,tools:z,onChangeAPIKey:U,input:N,onInputChange:L,mode:g,onModeChange:f,queuedCommand:P,setQueuedCommand:M,submitCount:d,onSubmitCountChange:k,setIsLoading:a,setAbortController:m,onShowMessageSelector:X1,setForkConvoWithMessagesOnTheNextRender:Z1,setMessages:$1,readFileTimestamps:z1,notification:x,addNotification:w1,userProvidedHosts:P1,mcpClients:h1,pastedImage:r1,setPastedImage:M0}){let[l0,R0]=l7.useState(!1),[X2,H1]=l7.useState({show:!1}),[y1,O1]=l7.useState(""),[t1,H0]=l7.useState(N.length),[z0,I1]=l7.useState(null),[V1,Q1]=l7.useState("INSERT"),[b1,m1]=l7.useState(!1),[g1,Z0]=l7.useState(!1),T1=Dr2(h1),n1=!N&&d===0;l7.useEffect(()=>{if(d>0)return;g81(!1).then((_4)=>{O1(`Try "${cw(_4)}"`)})},[g,d]);let B0=l7.useCallback((_4)=>{if(_4==="?"){x1("tengu_help_toggled",{}),m1((R9)=>!R9);return}if(m1(!1),_4==="!"&&N.length===0){f("bash");return}if(_4==="#"&&N.length===0){f("memory");return}L(_4.replaceAll("\t"," "))},[L,f,N]),{resetHistory:e,onHistoryUp:M1,onHistoryDown:q0}=La2((_4,R9)=>{B0(_4),f(R9)},N),{tasks:A0}=Mh(),v0=A0.filter((_4)=>_4.status==="running").length,K2=3,t0=()=>{if(E2.length<=1){if(P!==null){let _4=f0(),R9=_4.queuedCommandUpHintCount||0;if(R9<K2)o2({..._4,queuedCommandUpHintCount:R9+1});B6();return}if(g1)Z0(!1);else M1()}},F2=()=>{if(E2.length<=1){let _4=q0();if(_4&&v0>0){Z0(!0);let R9=f0();if(!R9.hasSeenTasksHint)o2({...R9,hasSeenTasksHint:!0})}else Z0(!1);return _4}return!1},[Q2,B4]=l7.useState({suggestions:[],selectedSuggestion:-1,commandArgumentHint:void 0}),Z5=l7.useCallback(async(_4,R9=!1,P9)=>{if(_4.trim()==="")return;if(Q2.suggestions.length>0&&!R9)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(_4.trim()))pr5();let y5=_4;if(z0){x1("tengu_paste_text",{});let i4=Cr2(z0);if(y5.includes(i4))y5=y5.replace(i4,z0)}if(g==="prompt"&&T1?.text)x1("tengu_ide_selection_auto_included",{lineCount:T1.lineCount,hasFilePath:!!T1.filePath}),y5=`${T1.filePath?`From ${T1.filePath}:
|
|
1764
|
+
`);return I.onChange(f.text),g.offset}},z=(N)=>{let L=B.current;if(!L)return;switch(L.type){case"delete":if(L.motion){let{newOffset:g}=H("delete",L.motion,N);w.setOffset(g)}break;case"change":if(L.motion){let{newOffset:g}=H("change",L.motion,N);w.setOffset(g),J(g)}break;case"insert":if(L.insertedText){let g=N.insert(L.insertedText);I.onChange(g.text),w.setOffset(g.offset)}break;case"x":if(!N.equals(N.del()))I.onChange(N.del().text),w.setOffset(N.del().offset);break;case"o":{let g=D(N,"below");J(g);break}case"O":{let g=D(N,"above");J(g);break}case"replace":break}};return{...w,onInput:(N,L)=>{let g=WI.fromText(I.value,I.columns,w.offset);if(L.ctrl){w.onInput(N,L);return}if(L.escape&&Z==="INSERT"&&!I.isMessageLoading){if(V.current)K({type:"insert",insertedText:V.current}),V.current="";A();return}if(Z==="NORMAL"&&W.current){if(W.current==="d"){let{newOffset:f}=H("delete",N,g);w.setOffset(f),K({type:"delete",motion:N}),W.current="";return}else if(W.current==="c"){let{newOffset:f}=H("change",N,g);K({type:"change",motion:N}),W.current="",J(f);return}else if(W.current==="g"&&N==="g"){let{newOffset:f}=H("move","gg",g);w.setOffset(f),W.current="";return}W.current=""}if(Z==="NORMAL")switch(N){case".":{z(g);return}case"i":V.current="",J();return;case"I":{V.current="",J(g.startOfLine().offset);return}case"a":{V.current="",J(g.right().offset);return}case"A":{V.current="",J(g.endOfLine().offset);return}case"o":{V.current="";let f=D(g,"below");K({type:"o"}),J(f);return}case"O":{V.current="";let f=D(g,"above");K({type:"O"}),J(f);return}case"h":case"l":case"j":case"k":case"0":case"^":case"$":case"w":case"e":case"b":case"G":{let{newOffset:f}=H("move",N,g);w.setOffset(f);return}case"g":{W.current="g";return}case"x":{if(!g.equals(g.del()))I.onChange(g.del().text),w.setOffset(g.del().offset),K({type:"x"});return}case"d":W.current="d";return;case"D":{let f=H("delete","$",g);w.setOffset(f.newOffset),K({type:"delete",motion:"$"});return}case"c":W.current="c";return;case"C":{let f=H("change","$",g);w.setOffset(f.newOffset),K({type:"change",motion:"$"}),J();return}}if(L.return){w.onInput(N,L);return}if(Z==="INSERT"){if(L.backspace||L.delete){if(V.current.length>0)V.current=V.current.slice(0,-1)}else V.current+=N;w.onInput(N,L)}},mode:Z,setMode:G}}function CT1(I){let Z=e4().text,G=Gr2({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:_0.inverse,themeText:(V)=>_0.ansi256(Z)(V),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset,onModeChange:I.onModeChange,isMessageLoading:I.isLoading}),{mode:W,setMode:B}=G;return u81.default.useEffect(()=>{if(I.initialMode&&I.initialMode!==W)B(I.initialMode)},[I.initialMode,W,B]),u81.default.createElement(p,{flexDirection:"column"},u81.default.createElement(D91,{inputState:G,...I}))}function h81(){return f0().editorMode==="vim"}function Wr2(){if(kC.isEnabled&&z2.terminal==="Apple_Terminal"&&d$2())return"Option as Meta is enabled";if(kC.isEnabled&&S$2())return"shift + ⏎ for newline";return O$2()?"\\⏎ for newline":"Backslash (\\) + Return (⏎) for newline"}var l7=J1(R1(),1);var Y5=J1(R1(),1),_r2=J1(R1(),1);var N5=J1(R1(),1);function Br2({exitMessage:I,vimMode:Z,mode:G,notification:W,toolPermissionContext:B,suppressHint:V,tasksSelected:Y,ideSelection:w}){let X=j1();if(I.show)return N5.createElement(b,{dimColor:!0,key:"exit-message"},"Press ",I.key," again to exit");if(W.show&&W.content)if("jsx"in W.content)return N5.createElement(p,{key:"notification-content",flexGrow:1},W.content.jsx);else{let J=W.content.color?X[W.content.color]:void 0;return N5.createElement(b,{color:J,dimColor:!W.content.color,key:"notification"},W.content.text)}if(w&&w.lineCount>0)return N5.createElement(b,{color:X.success,key:"selection-indicator"},w.lineCount," ",w.lineCount===1?"line":"lines"," selected");let H=h81()&&Z==="INSERT";return N5.createElement(p,{justifyContent:"flex-start",gap:1},H?N5.createElement(b,{dimColor:!0,key:"vim-insert"},"-- INSERT --"):null,N5.createElement(mr5,{mode:G,toolPermissionContext:B,showHint:!V&&!H,tasksSelected:Y}))}function mr5({mode:I,toolPermissionContext:Z,showHint:G,tasksSelected:W=!1}){let B=j1(),{tasks:V}=Mh(),Y=V.filter((w)=>w.status==="running").length;if(I==="memory")return N5.createElement(b,{color:B.remember},"# to memorize");if(I==="bash")return N5.createElement(b,{color:B.bashBorder},"! for bash mode");if(Z?.mode==="acceptEdits")return N5.createElement(b,{color:B.autoAccept,key:"write-file-allowed"},"⏵⏵ auto-accept edits on",N5.createElement(b,{color:B.secondaryText,dimColor:!0}," ","(shift+tab to toggle)"));if(Y>0){let w=f0().hasSeenTasksHint;return N5.createElement(p,{gap:1},N5.createElement(b,{color:W?B.suggestion:B.permission,inverse:W,bold:W},Y," ",Y===1?"task":"tasks"," running"),G&&N5.createElement(N5.Fragment,null,N5.createElement(b,{dimColor:!0},"·"),N5.createElement(b,{dimColor:!0},W?"Enter to view tasks":!w?"↓ to view":"? for shortcuts")))}if(!G)return null;return N5.createElement(b,{dimColor:!0},"? for shortcuts")}var nG=J1(R1(),1);var $5=J1(R1(),1);var Vr2=J1(G31(),1),p81=J1(R1(),1);function Yr2({debug:I,isUpdating:Z,onChangeIsUpdating:G,onAutoUpdaterResult:W,autoUpdaterResult:B,showSuccessMessage:V}){let Y=j1(),[w,X]=p81.useState({}),H=$5.useCallback(async()=>{let J=f0();if(Z)return;let A={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION,K=await W31(),D=ZB0();if(X({global:A,latest:K}),!D&&A&&K&&!Vr2.gte(A,K)){let z=Date.now();G(!0);let U,N=J.autoUpdaterStatus==="migrated";if(N)U=await Uv();else U=await B31();if(G(!1),U==="success")x1("tengu_auto_updater_success",{fromVersion:A,toVersion:K,durationMs:Date.now()-z,wasMigrated:N});else x1("tengu_auto_updater_fail",{fromVersion:A,attemptedVersion:K,status:U,durationMs:Date.now()-z,wasMigrated:N});W({version:K,status:U})}},[W]);if(p81.useEffect(()=>{H()},[H]),u61(H,1800000),I)return $5.createElement(p,{flexDirection:"row"},$5.createElement(b,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest));if(!B?.version&&(!w.global||!w.latest))return null;if(!B?.version&&!Z)return null;return $5.createElement(p,{flexDirection:"row",gap:1},I&&$5.createElement(b,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest),Z?$5.createElement($5.Fragment,null,$5.createElement(p,null,$5.createElement(b,{color:Y.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",w.latest,"…"))):B?.status==="success"&&B?.version&&V&&$5.createElement(b,{color:Y.success},"✓ Update installed • Restart to apply"),(B?.status==="install_failed"||B?.status==="no_permissions")&&$5.createElement(b,{color:Y.error},"✗ Auto-update failed · Try ",$5.createElement(b,{bold:!0},"claude doctor"),!tE()&&$5.createElement($5.Fragment,null," ","or ",$5.createElement(b,{bold:!0},"npm i -g ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL)),tE()&&$5.createElement($5.Fragment,null," ","or"," ",$5.createElement(b,{bold:!0},"cd ~/.claude/local && npm update ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL))))}var wr2=J1(R1(),1);class FT1 extends wr2.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){qr(I)}render(){if(this.state.hasError)return null;return this.props.children}}var cV=J1(R1(),1);function Xr2({tokenUsage:I}){let Z=j1(),G=g$(oh,sh),{percentLeft:W,isAboveWarningThreshold:B,isAboveErrorThreshold:V}=th(I,G.tokenThreshold);if(!B)return null;let Y=rh();return cV.createElement(p,{flexDirection:"row"},cV.createElement(b,{color:f0().autoCompactEnabled?Z.secondaryText:V?Z.error:Z.warning},Y?cV.createElement(cV.Fragment,null,"Context left until auto-compact: ",W,"%"):cV.createElement(cV.Fragment,null,"Context low (",W,"% remaining) · Run /compact to compact & continue")))}function Hr2(I){let Z=g$(oh,sh);return th(I,Z.tokenThreshold).isAboveWarningThreshold}function Jr2({apiKeyStatus:I,autoUpdaterResult:Z,isAutoUpdating:G,debug:W,messages:B,tokenUsage:V,permissionMode:Y,onAutoUpdaterResult:w,onChangeIsUpdating:X}){let H=Fa2(Y),J=Hr2(V);return nG.createElement(FT1,null,nG.createElement(p,{justifyContent:"flex-end",gap:1},I==="invalid"&&nG.createElement(b,{color:j1().error},"Invalid API key · Run /login"),I==="missing"&&nG.createElement(b,{color:j1().error},"Missing API key · Run /login"),I!=="invalid"&&I!=="missing"&&H&&nG.createElement(b,{color:j1().warning},H),I!=="invalid"&&I!=="missing"&&!H&&W&&nG.createElement(b,{dimColor:!0},`${V} tokens (${Math.round(1e4*(KR2(B)||1)/(V||1))/100}% cached)`),nG.createElement(Xr2,{tokenUsage:V}),nG.createElement(Yr2,{debug:W,onAutoUpdaterResult:w,autoUpdaterResult:Z,isUpdating:G,onChangeIsUpdating:X,showSuccessMessage:!J})))}var dB=J1(R1(),1),Ar2=J1(R1(),1);function kr5({item:I,maxColumnWidth:Z,isSelected:G}){let W=j1(),B=w3().columns,V=B<80,Y=Z??I.displayText.length+5;return dB.createElement(p,{key:I.id,flexDirection:V?"column":"row"},dB.createElement(p,{width:V?void 0:Y},dB.createElement(b,{color:G?W.suggestion:void 0,dimColor:!G},I.displayText)),I.description&&dB.createElement(p,{width:B-(V?4:Y+4),paddingLeft:V?4:0},dB.createElement(b,{color:G?W.suggestion:void 0,dimColor:!G,wrap:"wrap"},I.description)))}function QT1({suggestions:I,selectedSuggestion:Z}){let{rows:G}=w3(),W=Math.min(10,Math.max(1,G-3)),B=(H)=>{return Math.max(...H.map((J)=>J.displayText.length))+5};if(I.length===0)return null;let V=Math.max(0,Math.min(Z-Math.floor(W/2),I.length-W)),Y=Math.min(V+W,I.length),w=I.slice(V,Y),X=B(w);return dB.createElement(p,{flexDirection:"column"},w.map((H)=>dB.createElement(kr5,{key:H.id,item:H,maxColumnWidth:X,isSelected:H.id===I[Z]?.id})))}var uy6=Ar2.memo(QT1);function xr5({apiKeyStatus:I,exitMessage:Z,vimMode:G,mode:W,autoUpdaterResult:B,isAutoUpdating:V,debug:Y,messages:w,tokenUsage:X,onAutoUpdaterResult:H,onChangeIsUpdating:J,suggestions:A,selectedSuggestion:K,notification:D,toolPermissionContext:z,helpOpen:U,suppressHint:N,tasksSelected:L=!1,ideSelection:g}){if(A.length)return Y5.createElement(p,{paddingX:2,paddingY:0},Y5.createElement(QT1,{suggestions:A,selectedSuggestion:K}));if(U)return Y5.createElement(p,{paddingX:2,paddingY:0,flexDirection:"row"},Y5.createElement(p,{flexDirection:"column",width:22},Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"! for bash mode")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"/ for commands")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"# to memorize"))),Y5.createElement(p,{flexDirection:"column"},Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"double tap esc to undo")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},"shift + tab to auto-accept edits")),Y5.createElement(p,null,Y5.createElement(b,{dimColor:!0},Wr2()))));return Y5.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},Y5.createElement(Br2,{exitMessage:Z,vimMode:G,mode:W,notification:D,toolPermissionContext:z,suppressHint:N,tasksSelected:L,ideSelection:g}),Y5.createElement(Jr2,{apiKeyStatus:I,autoUpdaterResult:B,isAutoUpdating:V,debug:Y,messages:w,tokenUsage:X,permissionMode:z.mode,onAutoUpdaterResult:H,onChangeIsUpdating:J}))}var Kr2=_r2.memo(xr5);var _g=J1(R1(),1);var ur5=r.object({method:r.literal("selection_changed"),params:r.object({selection:r.object({start:r.object({line:r.number(),character:r.number()}),end:r.object({line:r.number(),character:r.number()})}).nullable().optional(),text:r.string().optional(),filePath:r.string().optional()})});function Dr2(I){let[Z,G]=_g.useState(null),W=_g.useRef(!1);return _g.useEffect(()=>{if(W.current||!I.length)return;let B=I.find((V)=>V.type==="connected"&&V.name==="ide");if(B){let V=(Y)=>{if(Y.selection?.start&&Y.selection?.end){let{start:w,end:X}=Y.selection,H=X.line-w.line+1;if(H>0&&Y.text&&Y.text!=="")G({lineCount:H,text:Y.text,filePath:Y.filePath});else G((J)=>{if(J!==null)return null;return J})}};B.client.setNotificationHandler(ur5,(Y)=>{try{let w=Y.params;if(w.selection&&w.selection.start&&w.selection.end)V(w);else if(w.text!==void 0)V({selection:null,text:w.text,filePath:w.filePath})}catch(w){console.error("Error processing selection_changed notification:",w)}}),W.current=!0}},[I]),Z}function Cr2(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function hr5({toolPermissionContext:I,setToolPermissionContext:Z,apiKeyStatus:G,commands:W,forkNumber:B,messageLogName:V,isLoading:Y,onQuery:w,debug:X,verbose:H,messages:J,setToolJSX:A,onAutoUpdaterResult:K,autoUpdaterResult:D,tools:z,onChangeAPIKey:U,input:N,onInputChange:L,mode:g,onModeChange:f,queuedCommand:P,setQueuedCommand:M,submitCount:d,onSubmitCountChange:k,setIsLoading:a,setAbortController:m,onShowMessageSelector:X1,setForkConvoWithMessagesOnTheNextRender:Z1,setMessages:$1,readFileTimestamps:z1,notification:x,addNotification:w1,userProvidedHosts:P1,mcpClients:h1,pastedImage:r1,setPastedImage:M0}){let[l0,R0]=l7.useState(!1),[X2,H1]=l7.useState({show:!1}),[y1,O1]=l7.useState(""),[t1,H0]=l7.useState(N.length),[z0,I1]=l7.useState(null),[V1,Q1]=l7.useState("INSERT"),[b1,m1]=l7.useState(!1),[g1,Z0]=l7.useState(!1),T1=Dr2(h1),n1=!N&&d===0;l7.useEffect(()=>{if(d>0)return;g81(!1).then((_4)=>{O1(`Try "${cw(_4)}"`)})},[g,d]);let B0=l7.useCallback((_4)=>{if(_4==="?"){x1("tengu_help_toggled",{}),m1((R9)=>!R9);return}if(m1(!1),_4==="!"&&N.length===0){f("bash");return}if(_4==="#"&&N.length===0){f("memory");return}L(_4.replaceAll("\t"," "))},[L,f,N]),{resetHistory:e,onHistoryUp:M1,onHistoryDown:q0}=La2((_4,R9)=>{B0(_4),f(R9)},N),{tasks:A0}=Mh(),v0=A0.filter((_4)=>_4.status==="running").length,K2=3,t0=()=>{if(E2.length<=1){if(P!==null){let _4=f0(),R9=_4.queuedCommandUpHintCount||0;if(R9<K2)o2({..._4,queuedCommandUpHintCount:R9+1});B6();return}if(g1)Z0(!1);else M1()}},F2=()=>{if(E2.length<=1){let _4=q0();if(_4&&v0>0){Z0(!0);let R9=f0();if(!R9.hasSeenTasksHint)o2({...R9,hasSeenTasksHint:!0})}else Z0(!1);return _4}return!1},[Q2,B4]=l7.useState({suggestions:[],selectedSuggestion:-1,commandArgumentHint:void 0}),Z5=l7.useCallback(async(_4,R9=!1,P9)=>{if(_4.trim()==="")return;if(Q2.suggestions.length>0&&!R9)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(_4.trim()))pr5();let y5=_4;if(z0){x1("tengu_paste_text",{});let i4=Cr2(z0);if(y5.includes(i4))y5=y5.replace(i4,z0)}if(g==="prompt"&&T1?.text)x1("tengu_ide_selection_auto_included",{lineCount:T1.lineCount,hasFilePath:!!T1.filePath}),y5=`${T1.filePath?`From ${T1.filePath}:
|
|
1755
1765
|
|
|
1756
1766
|
`:""}${T1.text}
|
|
1757
1767
|
${y5}`;if(Y){if(g!=="prompt")return;return}if(g==="memory"){f("memorySelect");return}L(""),f("prompt"),M0(null),I1(null),k((i4)=>i4+1),a(!0);let V6=new AbortController;m(V6);let _I=await JZ(),N8=await Zg(y5,g,A,{options:{commands:W,forkNumber:B,messageLogName:V,tools:z,verbose:H,slowAndCapableModel:_I,maxThinkingTokens:0,mcpClients:h1,isNonInteractiveSession:!1},getToolPermissionContext:()=>I,messages:J,abortController:V6,readFileTimestamps:z1,setForkConvoWithMessagesOnTheNextRender:Z1,setMessages:$1,addNotification:w1,onChangeAPIKey:U,userProvidedHosts:P1,setToolJSX:A,setToolPermissionContext:Z},r1??null,P9);if(N8.length)w(N8,V6);else{GN(_4),e();return}for(let i4 of N8)if(i4.type==="user"){let S3=g==="bash"?`!${_4}`:g==="memorySelect"?`#${_4}`:_4;GN(S3),e()}},[Q2.suggestions,z0,Y,g,M,L,e,I1,M0,f,k,a,m,W,B,V,z,H,h1,I,J,z1,Z1,$1,w1,U,P1,A,Z,r1,w,T1]),Z2=Zr2({commands:W,onInputChange:L,onSubmit:Z5,setCursorOffset:H0,input:N,cursorOffset:t1}),{suggestions:E2,selectedSuggestion:f2,commandArgumentHint:H2}=Z2;l7.useEffect(()=>{B4({suggestions:E2,selectedSuggestion:f2,commandArgumentHint:H2})},[E2,f2,H2]);function W2(_4){x1("tengu_paste_image",{}),f("prompt"),M0(_4)}function V4(_4){let R9=HX(_4).replace(/\r/g,`
|
|
1758
1768
|
`).replaceAll("\t"," "),P9=Cr2(R9),y5=N.slice(0,t1)+P9+N.slice(t1);L(y5),H0(t1+P9.length),I1(R9)}let c4=mC(()=>{},()=>X1()),B6=l7.useCallback(()=>{if(P===null)return;let _4=N==""?P.value:P.value+`
|
|
1759
|
-
`+N;L(_4),f("prompt"),M(()=>null),H0(P.value.length+1+t1)},[P,L,f,M,N,t1]);l7.useEffect(()=>{if(!Y&&P!==null){let _4=P;M(()=>null),Z5(_4.value,!1)}},[Y,P,Z5,M]),P2((_4,R9)=>{if(R9.return&&g1){Z5("/tasks",!0),Z0(!1);return}if(t1===0&&(R9.escape||R9.backspace||R9.delete))f("prompt"),m1(!1);if(R9.tab&&R9.shift){switch(I.mode){case"acceptEdits":og1(I,Z);break;case"default":AK(I,Z);break;case"bypassPermissions":break}if(b1)m1(!1);return}if(R9.escape){let P9=og1(I,Z);if(g1){Z0(!1);return}if(P!==null){B6();return}if(P9)return;if(J.length>0&&!N&&!Y)c4()}if(R9.return&&b1)m1(!1)});let{columns:u5}=w3(),i6=u5-6,J4=l7.useMemo(()=>uC(J),[J]),i9=j1();return K6.createElement(p,{flexDirection:"column"},P!==null&&K6.createElement(p,{flexDirection:"column",marginTop:1},K6.createElement(p,{paddingLeft:2,flexDirection:"column",width:u5-4},K6.createElement(b,{color:i9.secondaryText,wrap:"wrap"},P.value))),K6.createElement(p,{alignItems:"flex-start",justifyContent:"flex-start",borderColor:g==="bash"?i9.bashBorder:g==="memory"||g==="memorySelect"?i9.remember:i9.secondaryBorder,borderDimColor:g!=="memory",borderStyle:"round",marginTop:P?0:1,width:"100%"},K6.createElement(p,{alignItems:"flex-start",alignSelf:"flex-start",flexWrap:"nowrap",justifyContent:"flex-start",width:3},g==="bash"?K6.createElement(b,{color:i9.bashBorder,dimColor:Y}," ! "):g==="memory"||g==="memorySelect"?K6.createElement(b,{color:i9.remember,dimColor:Y}," # "):K6.createElement(b,{color:Y?i9.secondaryText:void 0}," > ")),K6.createElement(p,{paddingRight:1},(()=>{let _4={multiline:!0,onSubmit:Z5,onChange:B0,value:N,onHistoryUp:t0,onHistoryDown:F2,onHistoryReset:()=>e(),placeholder:g==="memory"?'Add to memory. Try "Always use descriptive variable names"':P!==null&&(f0().queuedCommandUpHintCount||0)<K2?"Press up to edit queued messages":n1?y1:void 0,onExit:()=>process.exit(0),onExitMessage:(R9,P9)=>H1({show:R9,key:P9}),onMessage:(R9,P9)=>{if(R9&&P9)w1({text:P9},{timeoutMs:3600000});else w1({text:""},{timeoutMs:0})},onImagePaste:W2,columns:i6,disableCursorMovementForUpDownKeys:E2.length>0,cursorOffset:t1,onChangeCursorOffset:H0,onPaste:V4,focus:g!=="memorySelect",showCursor:g!=="memorySelect",argumentHint:H2};return h81()?K6.createElement(CT1,{..._4,initialMode:V1,onModeChange:Q1,isLoading:Y}):K6.createElement(dV,{..._4})})())),g==="memorySelect"&&K6.createElement(J31,{onSelect:(_4)=>{Z5(N,!1,_4)},onCancel:()=>{f("memory")}}),K6.createElement(Kr2,{apiKeyStatus:G,exitMessage:X2,vimMode:V1,mode:g,autoUpdaterResult:D,isAutoUpdating:l0,debug:X,messages:J,tokenUsage:J4,onAutoUpdaterResult:K,onChangeIsUpdating:R0,suggestions:E2,selectedSuggestion:f2,notification:x,toolPermissionContext:I,helpOpen:b1,suppressHint:N.length>0,tasksSelected:g1,ideSelection:T1}))}var Fr2=l7.memo(hr5);function pr5(){xP1(""),process.exit(0)}var Qr2=J1(R1(),1);function zr2(){Qr2.useEffect(()=>{let I=Math.round(process.uptime()*1000);x1("tengu_timer",{event:"startup",durationMs:I})},[])}var bp=J1(R1(),1);function qr2(){let[I,Z]=bp.useState(()=>{let V=uY(!1);if(y3||a3)return"valid";if(V)return"loading";return"missing"}),[G,W]=bp.useState(null),B=bp.useCallback(async()=>{if(y3||a3)return;let V=uY(!1);if(!V){Z("missing");return}try{let w=await Sn2(V,!1)?"valid":"invalid";Z(w);return}catch(Y){W(Y),Z("error");return}},[]);return{status:I,reverify:B,error:G}}function Ur2(I,Z,G,W,B,V,Y,w,X,H){P2((J,A)=>{if(!A.escape)return;if(Y?.aborted)return;if(!Y)return;if(!B)return;if(V)return;if(w?.())return;if(X!==null&&X!==void 0){if(H)H();x1("tengu_cancel",{}),I(null),Z(null),G(null),W();return}x1("tengu_cancel",{}),I(null),Z(null),G(null),W()})}var Nr2=J1(R1(),1);function lr5(I){return Nr2.useCallback(async(Z,G,W,B)=>{return new Promise((V)=>{function Y(){x1("tengu_tool_use_cancelled",{messageID:B.message.id,toolName:Z.name})}function w(){V({result:!1,message:Hp}),W.abortController.abort()}if(W.abortController.signal.aborted){Y(),w();return}return jU(Z,G,W,B).then(async(X)=>{if(X.result){x1("tengu_tool_use_granted_in_config",{messageID:B.message.id,toolName:Z.name}),V({...X,updatedInput:G});return}let H=await Z.description(G,{isNonInteractiveSession:W.options.isNonInteractiveSession,permissionMode:W.getToolPermissionContext().mode});if(W.abortController.signal.aborted){Y(),w();return}I({assistantMessage:B,tool:Z,description:H,input:G,stressTestResult:void 0,permissionContext:W.getToolPermissionContext(),permissionResult:X,onAbort(){Y(),x1("tengu_tool_use_rejected_in_prompt",{messageID:B.message.id,toolName:Z.name}),w()},onAllow(A,K){if(A==="permanent")x1("tengu_tool_use_granted_in_prompt_permanent",{messageID:B.message.id,toolName:Z.name});else x1("tengu_tool_use_granted_in_prompt_temporary",{messageID:B.message.id,toolName:Z.name});V({result:!0,updatedInput:K})},onReject(){x1("tengu_tool_use_rejected_in_prompt",{messageID:B.message.id,toolName:Z.name}),w()}})}).catch((X)=>{if(X instanceof iZ)Y(),w();else c1(X)})})},[I])}var $r2=lr5;var Rr2=J1(R1(),1);function Er2(I,Z,G){Rr2.useEffect(()=>{TL(Z,G,0,yL(I))},[I,Z,G])}var fr2=J1(R1(),1);var Mr2=J1(R1(),1);var cr5=J1(R1(),1);var Pr2=J1(R1(),1);function Lr2(I,Z){return Pr2.useMemo(()=>{if(I&&Z&&Z.length>0)return C$([...I,...Z],"name");return I||[]},[I,Z])}var Sr2=J1(R1(),1);function dr2(I,Z){return Sr2.useMemo(()=>{if(Z.length>0)return C$([...I,...Z],"name");return I},[I,Z])}var Or2=J1(R1(),1);function vr2(I,Z){return Or2.useMemo(()=>{if(Z.length>0)return C$([...I,...Z],"name");return I},[I,Z])}var FK=J1(R1(),1);function gr2({initialPermissionContext:I}){let[Z,G]=FK.useState(I),W=FK.useCallback((Y)=>{G(Y)},[G]),B=FK.useRef(Z);FK.useEffect(()=>{B.current=Z},[Z]);let V=FK.useCallback(()=>{return B.current},[B]);return FK.useEffect(()=>{let Y=gj2(I,W9());W(Y)},[I,W]),{toolPermissionContext:Z,getToolPermissionContext:V,setToolPermissionContext:W}}var Tr2=new Set(["docs.anthropic.com","modelcontextprotocol.io","docs.python.org","en.cppreference.com","docs.oracle.com","learn.microsoft.com","developer.mozilla.org","go.dev","www.php.net","docs.swift.org","kotlinlang.org","ruby-doc.org","doc.rust-lang.org","www.typescriptlang.org","react.dev","angular.io","vuejs.org","nextjs.org","expressjs.com","nodejs.org","jquery.com","getbootstrap.com","tailwindcss.com","d3js.org","threejs.org","redux.js.org","webpack.js.org","jestjs.io","reactrouter.com","docs.djangoproject.com","flask.palletsprojects.com","fastapi.tiangolo.com","pandas.pydata.org","numpy.org","www.tensorflow.org","pytorch.org","scikit-learn.org","matplotlib.org","requests.readthedocs.io","jupyter.org","laravel.com","symfony.com","wordpress.org","docs.spring.io","hibernate.org","tomcat.apache.org","gradle.org","maven.apache.org","asp.net","dotnet.microsoft.com","nuget.org","blazor.net","reactnative.dev","docs.flutter.dev","developer.apple.com","developer.android.com","keras.io","spark.apache.org","huggingface.co","www.kaggle.com","openai.com","www.mongodb.com","redis.io","www.postgresql.org","dev.mysql.com","www.sqlite.org","graphql.org","prisma.io","docs.aws.amazon.com","cloud.google.com","learn.microsoft.com/azure","kubernetes.io","www.docker.com","www.terraform.io","www.ansible.com","vercel.com","netlify.com","heroku.com","cypress.io","selenium.dev","docs.unity.com","docs.unrealengine.com","git-scm.com","nginx.org","httpd.apache.org"]);var br2=J1(R1(),1);function jr2(){let[I,Z]=br2.useState(!1);function G(){yr2(),Z(!1)}return P2((W,B)=>{if(W&&I){G();return}if(B.ctrl&&W==="r")Z((V)=>{if(!V)return ir5(),nr5(),!0;return yr2(),!1})}),{shouldShowAlternateScreenBuffer:I}}function ir5(){process.stdout.write("\x1B[2J\x1B[3J\x1B[H")}function nr5(){process.stdout.write("\x1B[?1049h")}function yr2(){process.stdout.write("\x1B[?1049l")}var Kg=J1(R1(),1);function mr2({children:I}){let Z=D9(()=>process.exit(0));return Kg.default.createElement(p,{flexDirection:"column",height:"100%",width:"100%"},I,Kg.default.createElement(p,{alignItems:"center",alignSelf:"center",borderTopColor:j1().secondaryBorder,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:4,width:"100%"},Z.pending?Kg.default.createElement(b,{dimColor:!0},"Press ",Z.keyName," again to exit"):Kg.default.createElement(b,{bold:!0,color:j1().permission},"Press any key to continue…")),Kg.default.createElement(At,null))}var H3=J1(R1(),1),Dg=J1(R1(),1);var zT1=J1(R1(),1),l81=J1(R1(),1);function kr2(){let[I,Z]=l81.useState();l81.useEffect(()=>{BB("tengu_motd",{message:""}).then((B)=>{Z(B)})},[]);let G=j1(),W=I?.color;if(W){let B=G[W];if(typeof B==="string")W=B}if(!I?.message)return null;return zT1.default.createElement(p,{key:"motd-container"},zT1.default.createElement(b,{key:"motd-text",color:W},I?.message))}var O4=J1(R1(),1);import{relative as ar5}from"path";var xr2=40000;function rr5(){let I=f0();o2({...I,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION})}function ur2({mcpServerCount:I}){let Z=j1(),G=f0(),{hasReleaseNotes:W,releaseNotes:B}=O4.useMemo(()=>h31(G.lastReleaseNotesSeen),[G.lastReleaseNotesSeen]);return O4.useEffect(()=>{if(W)rr5()},[W]),O4.createElement(p,{flexDirection:"column",paddingLeft:1},I>0&&O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:Z.success},M9.tick),O4.createElement(b,null,"Found ",I," MCP server",I!==1?"s":""),O4.createElement(b,{color:Z.secondaryText,dimColor:!0}," ","• /mcp")),O4.createElement(tr5,null),W&&O4.createElement(p,{flexDirection:"column",marginTop:1},O4.createElement(b,{color:Z.secondaryText},"What's new:"),O4.createElement(p,{flexDirection:"column",marginLeft:1},B.map((V,Y)=>O4.createElement(b,{key:Y,color:Z.secondaryText},"• ",V)))))}function sr5({path:I,contentLength:Z}){let G=I.startsWith(c0())?ar5(c0(),I):I;return O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:j1().warning},M9.warning),O4.createElement(b,{color:j1().warning},"Large ",O4.createElement(b,{bold:!0},G)," will impact performance (",dD(Z)," chars >"," ",dD(xr2),")",O4.createElement(b,{color:j1().secondaryText,dimColor:!0}," ","• /memory to edit")))}function or5(){let I=j1(),Z=Kg1();if(!Z)return null;let G=Z.content.length,W=1000;if(G>W)return O4.createElement(p,{flexDirection:"row",gap:1},O4.createElement(b,{color:I.warning},M9.warning),O4.createElement(b,{color:I.warning},"ULTRACLAUDE.md exceeds ",W," chars (",G," chars)",O4.createElement(b,{color:I.secondaryText,dimColor:!0}," ","• /memory to edit")));return null}function tr5(){let I=_g1(),Z=j1();if(I.length===0)return null;let W=["Project","Local","User"].filter((V)=>I.some((Y)=>Y.type===V)).map((V)=>Yh(V)).join(" + "),B=I.filter((V)=>V.content.length>xr2);return O4.createElement(p,{flexDirection:"column"},B.length===0&&O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:Z.success},M9.tick),O4.createElement(b,null,"Loaded ",W," memory"),O4.createElement(b,{color:Z.secondaryText,dimColor:!0}," ","• /memory")),B.map((V)=>O4.createElement(sr5,{key:V.path,path:V.path,contentLength:V.content.length})),O4.createElement(or5,null))}var RM=J1(R1(),1);function hr2(){return f0().tipsHistory||{}}function er5(I){let Z=f0();o2({...Z,tipsHistory:I})}function pr2(I){let Z=hr2(),G=f0().numStartups;Z[I]=G,er5(Z)}function Is5(I){return hr2()[I]||0}function qT1(I){let Z=Is5(I);if(Z===0)return 1/0;return f0().numStartups-Z}async function Gs5(I){return(await Promise.all(I.map(async(G)=>{let W=await G.isRelevant();return{tip:G,isRelevant:W}}))).filter((G)=>G.isRelevant).map((G)=>G.tip)}function Ws5(I){return I.filter((Z)=>{return qT1(Z.id)>=Z.cooldownSessions})}function Bs5(){let I=f0(),{hasReleaseNotes:Z}=h31(I.lastReleaseNotesSeen);return!Z}function Vs5(I){if(I.length===0)return;if(I.length===1)return I[0];let Z=I.map((G)=>({tip:G,sessions:qT1(G.id)}));return Z.sort((G,W)=>W.sessions-G.sessions),Z[0]?.tip}async function lr2(I,Z=!1){if(!Bs5()||Z)return;let G=await Gs5(I),W=Ws5(G);if(W.length===0)return;return Vs5(W)}function cr2(I){pr2(I.id),x1("tengu_tip_shown",{tipIdLength:I.id,cooldownSessions:I.cooldownSessions})}function ir2({tip:I}){let Z=j1();RM.useEffect(()=>{if(!I)return;cr2(I)},[I]);let G=()=>{if(!I)return null;if(typeof I.content==="function")return I.content();return RM.default.createElement(b,{color:Z.secondaryText},"※ Tip: ",I.content)};return RM.default.createElement(RM.default.Fragment,null,I&&RM.default.createElement(p,{key:`tip-${I?.id}`,flexDirection:"row",marginTop:1,alignItems:"center",marginLeft:1},G()))}var EM=J1(R1(),1);function Ys5({width:I="auto",dividerChar:Z,dividerColor:G="gray",boxProps:W}){return EM.default.createElement(p,{width:I,borderStyle:{topLeft:"",top:"",topRight:"",right:"",bottomRight:"",bottom:Z||"─",bottomLeft:"",left:""},borderColor:G,flexGrow:1,borderBottom:!0,borderTop:!1,borderLeft:!1,borderRight:!1,...W})}function ws5({title:I,width:Z="auto",padding:G=0,titlePadding:W=1,titleColor:B="white",dividerChar:V="─",dividerColor:Y="gray",boxProps:w}){let X=EM.default.createElement(Ys5,{dividerChar:V,dividerColor:Y,boxProps:w});if(!I)return EM.default.createElement(p,{paddingLeft:G,paddingRight:G},X);return EM.default.createElement(p,{width:Z,paddingLeft:G,paddingRight:G,gap:W},X,EM.default.createElement(p,null,EM.default.createElement(b,{color:B},I)),X)}var nr2=ws5;function ar2({mcpClients:I,normalizedMessages:Z,normalizedMessageHistory:G,forkNumber:W,tools:B,verbose:V,debug:Y,toolJSX:w,toolUseConfirm:X,isMessageSelectorVisible:H,tipOfTheDay:J}){let A=kr2(),{columns:K}=w3(),D=Dg.useMemo(()=>KM(Z),[Z]),z=Dg.useMemo(()=>n61(Z),[Z]),U=Dg.useMemo(()=>Ig(Z),[Z]),N=Dg.useCallback((g)=>{return[{type:"static",jsx:H3.createElement(p,{flexDirection:"column",gap:1,key:`logo${W}`},H3.createElement(zk2,null),w91()?H3.createElement(ur2,{mcpServerCount:I.length}):H3.createElement(yP1,null))},...J?[{type:"static",jsx:H3.createElement(p,{key:`tip-of-the-day-${W}`},H3.createElement(ir2,{tip:J}))}]:[],...[],...G.length>0?[{type:"static",jsx:H3.createElement(p,{flexDirection:"column",gap:1,key:`history-${W}`},Xg1(G.filter((f)=>f.type!=="progress")).map((f)=>H3.createElement(p,{key:`history-${f.uuid}`,width:K-5},H3.createElement(Ww,{message:f,messages:G,addMargin:!0,tools:B,verbose:g,debug:Y,erroredToolUseIDs:new Set,inProgressToolUseIDs:new Set,progressMessagesForMessage:[],shouldAnimate:!1,shouldShowDot:!0,unresolvedToolUseIDs:new Set}))),H3.createElement(nr2,{dividerChar:"=",title:"Previous Conversation Compacted"}))}]:[],...Xg1(Z.filter((f)=>f.type!=="progress")).map((f)=>{let P=r61(f),M=Hg1(f,Z),d=H3.createElement(Ww,{message:f,messages:Z,addMargin:!0,tools:B,verbose:g,debug:Y,erroredToolUseIDs:U,inProgressToolUseIDs:z,progressMessagesForMessage:M,shouldAnimate:!w&&!X&&!H&&(!P||z.has(P)),shouldShowDot:!0,unresolvedToolUseIDs:D});return{type:Xs5(f,Z,D)?"static":"transient",jsx:H3.createElement(p,{key:`${f.uuid}-${M.length}`,width:K-5},d)}}).filter((f)=>f!==void 0)]},[W,A,Z,G,D,Y,K,B,U,z,w,X,H,I,J]),{shouldShowAlternateScreenBuffer:L}=jr2();if(L)return H3.createElement(mr2,null,N(!0).map((g)=>g.jsx));return H3.createElement(H3.Fragment,null,H3.createElement(bS,{key:`static-messages-${W}`,items:N(V).filter((g)=>g.type==="static")},(g)=>g.jsx),N(V).filter((g)=>g.type==="transient").map((g)=>g.jsx))}function Xs5(I,Z,G){switch(I.type){case"user":case"assistant":{let W=r61(I);if(!W)return!0;if(G.has(W))return!1;let B=Z.find((V)=>V.type==="progress"&&V.toolUseID===W);if(!B)return!0;return!Yg1(G,B.siblingToolUseIDs)}case"progress":return!Yg1(G,I.siblingToolUseIDs)}}function Sv1({commands:I,initialPermissionContext:Z,debug:G=!1,initialForkNumber:W=0,initialPrompt:B,messageLogName:V,shouldShowPromptInput:Y,tools:w,verbose:X,initialMessages:H,slowAndCapableModel:J,tipOfTheDay:A,mcpClients:K}){let{notification:D,addNotification:z}=Tn2(),{clients:U,tools:N,commands:L}=wa2(z),g=Lr2(K,U),f=dr2(w,N),P=vr2(I,L),M=X??f0().verbose,[d,k]=w5.useState(GX1(V,W,0)),a=Fk2(),[m,X1]=w5.useState("responding"),[Z1,$1]=w5.useState(null),[z1,x]=w5.useState(null),[w1,P1]=w5.useState(!1),[h1,r1]=w5.useState(null),[M0,l0]=w5.useState(null),[R0,X2]=w5.useState(null),[H1,y1]=w5.useState(H??[]),[O1,t1]=w5.useState([]),[H0,z0]=w5.useState(""),[I1,V1]=w5.useState("prompt"),[Q1,b1]=w5.useState(null),[m1,g1]=w5.useState(null),[Z0,T1]=w5.useState(0),[n1,B0]=w5.useState(0),[e,M1]=w5.useState(0),[q0,A0]=w5.useState(!1),[v0,K2]=w5.useState(!1),[t0,F2]=w5.useState(f0().hasAcknowledgedCostThreshold),[Q2,B4]=w5.useState(Tr2),[Z5,Z2]=w5.useState(null),{haikuWords:E2,generateHaikuWord:f2}=Qk2(w1),H2=(V2)=>{if(P1(V2),!V2)X1("responding")},W2=(V2)=>{if(z0(V2),!a.useHaiku||I1!=="prompt"||!V2.endsWith(" ")||!H0||H0.endsWith(" "))return;let o9=H0.trim().split(/\s+/).pop()||"";if(o9.length>=4)f2(o9)},V4=w5.useCallback((V2,o9)=>{return new Promise((d3)=>{Z2({m1:V2,m2:o9,resolve:d3})})},[]),c4=w5.useRef({}),{status:B6,reverify:u5}=qr2();function i6(){if(!w1)return;if(H2(!1),R0)R0.onAbort();else z1?.abort()}let{getToolPermissionContext:J4,setToolPermissionContext:i9,toolPermissionContext:_4}=gr2({initialPermissionContext:Z}),R9=()=>_4.mode==="acceptEdits",P9=w5.useCallback(()=>{if(Q1===null)return;z0(H0===""?Q1.value:Q1.value+`
|
|
1760
|
-
`+H0),V1("prompt"),b1(()=>null)},[Q1,z0,V1,b1,H0]);Ur2(l0,X2,Z2,i6,w1,q0,z1?.signal,R9,Q1,P9),w5.useEffect(()=>{if(Z1)k((V2)=>V2+1),$1(null),t1((V2)=>{return[...V2,...H1]}),y1(Z1)},[Z1,H1]),w5.useEffect(()=>{if(l$()>=5&&!v0&&!t0){if(x1("tengu_cost_threshold_reached",{}),jr()&&!process.env.DISABLE_COST_WARNINGS)K2(!0)}},[H1,v0,t0]);let y5=$r2(X2),V6=w5.useCallback((V2,o9,d3)=>{return{abortController:d3,options:{commands:P,forkNumber:d,messageLogName:V,tools:f,verbose:M,slowAndCapableModel:J,maxThinkingTokens:j61(V2),mcpClients:g,isNonInteractiveSession:!1},getToolPermissionContext:J4,messages:V2,setForkConvoWithMessagesOnTheNextRender:$1,setMessages:y1,onChangeAPIKey:u5,readFileTimestamps:c4.current,userProvidedHosts:o9,setToolJSX:l0,addNotification:z,setToolPermissionContext:i9}},[P,d,J4,g,V,u5,$1,y1,J,f,M,z,i9]);async function _I(){if(u5(),!B)return;H2(!0),B0(0),M1(0);let V2=new AbortController;x(V2);let o9=await Zg(B,"prompt",l0,V6(H1,Q2,V2),null);if(o9.length){for(let W8 of o9)if(W8.type==="user")GN(B);if(y1((W8)=>[...W8,...o9]),o9[o9.length-1].type==="assistant"){x(null),H2(!1);return}let[g6,T6]=await Promise.all([nE(),xG(!1)]);for await(let W8 of eh([...H1,...o9],g6,T6,y5,V6([...H1,...o9],Q2,V2),V4))Jg1(W8,(D6)=>y1((y6)=>[...y6,D6]),(D6)=>B0((y6)=>y6+D6.length),(D6)=>X1(D6),()=>M1((D6)=>D6+1))}else GN(B);F2(f0().hasAcknowledgedCostThreshold||!1),H2(!1)}async function N8(V2,o9){y1((D6)=>[...D6,...V2]),B0(0),M1(0),SO();let d3=V2[V2.length-1];if(d3.type==="user"&&typeof d3.message.content==="string")HR2(d3.message.content);let g6=jc2(d3);if(g6.size>0)B4((D6)=>wg1(D6,g6));if(d3.type==="assistant"){x(null),H2(!1);return}let[T6,W8]=await Promise.all([nE(),xG(!1)]);for await(let D6 of eh([...H1,d3],T6,W8,y5,V6([...H1,d3],wg1(Q2,g6),o9),V4))Jg1(D6,(y6)=>y1((i7)=>[...i7,y6]),(y6)=>B0((i7)=>i7+y6.length),(y6)=>X1(y6),()=>M1((y6)=>y6+1));H2(!1)}Qb2(),Er2(H1,V,d),zr2();let i4=!w1&&v0;w5.useEffect(()=>{jL()},[H0,Z0]),w5.useEffect(()=>{if(w1)return;if(H1.length<2)return;jL();let V2=setTimeout(()=>{let o9=Date.now()-Mr();if(!w1&&!R0&&!M0&&!Z5&&!i4&&!q0&&o9>=Z81)dv({message:"Claude is waiting for your input"})},Z81);return()=>clearTimeout(V2)},[w1,R0,M0,Z5,i4,q0,H1]),w5.useEffect(()=>{_I()},[]);let S3=w5.useMemo(()=>EZ(H1).filter(Qp),[H1]),x8=w5.useMemo(()=>EZ(O1).filter(Qp),[O1]),tI=w5.useMemo(()=>KM(S3),[S3]),v6=w5.useMemo(()=>n61(S3),[S3]),l2=w5.useMemo(()=>Ig(S3),[S3]);return G8.createElement(G8.Fragment,null,G8.createElement(ar2,{mcpClients:U,normalizedMessages:S3,normalizedMessageHistory:x8,forkNumber:d,tools:f,verbose:M,debug:G,toolJSX:M0,toolUseConfirm:R0,isMessageSelectorVisible:q0,tipOfTheDay:A}),G8.createElement(p,{borderColor:"red",borderStyle:G?"single":void 0,flexDirection:"column",width:"100%"},!M0&&!R0&&!Z5&&w1&&G8.createElement(F31,{mode:m,spinnerConfig:a,haikuWords:E2,currentResponseLength:n1,toolCallCount:e}),M0?M0.jsx:null,!1,!M0&&R0&&!q0&&!Z5&&G8.createElement(fa2,{onDone:()=>X2(null),setToolPermissionContext:i9,toolUseConfirm:{...R0,onReject:()=>{if(R0.onReject(),Q1!==null)P9()}},toolUseContext:V6(H1,Q2,z1??new AbortController),verbose:M}),!M0&&!R0&&!q0&&!Z5&&i4&&G8.createElement(tA0,{onDone:()=>{K2(!1),F2(!0);let V2=f0();o2({...V2,hasAcknowledgedCostThreshold:!0}),x1("tengu_cost_threshold_acknowledged",{})}}),!R0&&!M0?.shouldHidePromptInput&&Y&&!q0&&!Z5&&!i4&&G8.createElement(G8.Fragment,null,G8.createElement(Fr2,{toolPermissionContext:_4,setToolPermissionContext:i9,apiKeyStatus:B6,commands:P,forkNumber:d,messageLogName:V,tools:f,isLoading:w1,onQuery:N8,debug:G,verbose:M,messages:H1,setToolJSX:l0,onChangeAPIKey:u5,onAutoUpdaterResult:r1,autoUpdaterResult:h1,input:H0,onInputChange:W2,mode:I1,onModeChange:V1,queuedCommand:Q1,setQueuedCommand:b1,submitCount:Z0,onSubmitCountChange:T1,setIsLoading:H2,setAbortController:x,onShowMessageSelector:()=>A0((V2)=>!V2),setForkConvoWithMessagesOnTheNextRender:$1,setMessages:y1,readFileTimestamps:c4.current,notification:D,addNotification:z,userProvidedHosts:Q2,mcpClients:U,pastedImage:m1,setPastedImage:g1}))),q0&&G8.createElement(yn2,{erroredToolUseIDs:l2,unresolvedToolUseIDs:tI,messages:H1,onSelect:async(V2)=>{if(A0(!1),!H1.includes(V2))return;i6(),setImmediate(async()=>{if(await BI(),y1([]),$1(H1.slice(0,H1.indexOf(V2))),typeof V2.message.content==="string"){let o9=$Z(V2.message.content,"bash-input");if(o9)z0(o9),V1("bash");else z0(V2.message.content),V1("prompt")}else if(Array.isArray(V2.message.content)&&V2.message.content.length===2&&V2.message.content[0].type==="image"&&V2.message.content[1].type==="text")z0(V2.message.content[1].text),V1("prompt"),g1(V2.message.content[0].source.data)})},onEscape:()=>A0(!1),tools:f}),G8.createElement(xI,null))}var As2=J1(Js2(),1),{program:Qk6,createCommand:zk6,createArgument:qk6,createOption:Uk6,CommanderError:Nk6,InvalidArgumentError:$k6,InvalidOptionArgumentError:Rk6,Command:_s2,Argument:Ek6,Option:Ks2,Help:Mk6}=As2.default;async function Ds2({commands:I,permissionContext:Z,hasPermissionsToUseTool:G,messageLogName:W,prompt:B,cwd:V,tools:Y,mcpClients:w,verbose:X=!1,maxTurns:H,slowAndCapableModel:J,streamJson:A=!1}){await oA(V);let[K,D]=await Promise.all([nE(),xG(!0)]),z={messages:[],setForkConvoWithMessagesOnTheNextRender:()=>{},setMessages:()=>{},onChangeAPIKey:()=>{},options:{commands:I,tools:Y,verbose:X,slowAndCapableModel:J,forkNumber:0,messageLogName:W,maxThinkingTokens:0,mcpClients:w,isNonInteractiveSession:!0},getToolPermissionContext:()=>Z,abortController:new AbortController,readFileTimestamps:{},userProvidedHosts:new Set,setToolPermissionContext:()=>{}},U=await Zg(B,"prompt",()=>{},z,null),N=0;for await(let f of d61(U,K,D,G,z)){if(U.push(f),A){if(f.type==="assistant"||f.type==="user")console.log(JSON.stringify(f.message,null,2))}if(f.type==="user"&&H&&++N>=H){U.push(c3({content:`[SYSTEM] --max-turns ${H} has been reached. Stopping conversation.`}));break}}let L=$H(U);if(!L||L.type!=="assistant")throw new Error("Expected content to be an assistant message");if(L.message.content[0]?.type!=="text")throw new Error(`Expected first content item to be text, but got ${JSON.stringify(L.message.content[0],null,2)}`);TL(W,0,0,yL(U));let g=W;return{resultText:L.message.content[0].text,transcript:EZ(U),totalCost:l$(),totalApiDurationMs:ey(),totalApiDurationMsWithoutRetries:KX1(),numTurns:U.length-1,messageHistoryFile:g}}var iV=J1(R1(),1);var fs2=J1(Q$(),1);var MM=J1(R1(),1);function Cs2({stepIndex:I,wizardSteps:Z,exitState:G}){let W=Z[I],B=I>0&&W&&W.getPrevStepId!==void 0;return MM.default.createElement(p,{marginLeft:2,marginTop:1},MM.default.createElement(b,{dimColor:!0},G.pending?MM.default.createElement(MM.default.Fragment,null,"Press ",G.keyName," again to exit"):MM.default.createElement(MM.default.Fragment,null,"Enter to confirm ",B?"· Esc to go back":null)))}var i2=J1(R1(),1);var Fs2=J1(Q$(),1);function Qs2(I){let Z=I.trim(),G=/^([A-Za-z0-9_]+=\S+\s+)+/,W=Z.match(G),B="",V=Z;if(W)B=W[0].trim().split(/\s+/).filter(Boolean).join(" "),V=Z.substring(W[0].length).trim();let Y=Fs2.default.parse(V);if(Y.length>0&&typeof Y[0]==="string"){let w=Y[0],X=Y.slice(1).filter((H)=>typeof H==="string").join(" ");return{command:w,args:X,envVars:B}}return{command:V,args:"",envVars:B}}function zs2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y,theme:w}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Add MCP Server"),i2.default.createElement(b,null,"Set up a new MCP server to extend Claude Code with custom tools and commands."),i2.default.createElement(b,null,"Choose a unique name for this server:"),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"my-server",value:I.serverName,onChange:(X)=>Z({serverName:X}),onSubmit:()=>I.serverName.trim()&&G(),columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="name"})),i2.default.createElement(p,null,i2.default.createElement(b,{dimColor:!0},"Learn more:"," ",i2.default.createElement(b,{color:w.suggestion},"https://modelcontextprotocol.io/"))))}function qs2({state:I,updateState:Z,setCurrentStepId:G,theme:W}){let B="";switch(I.scope){case"project":B="the project .mcp.json configuration";break;case"user":B="your global configuration";break;case"local":default:B="your user configuration for this project";break}return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0,color:W.warning},"Name Already Exists"),i2.default.createElement(b,null,"A server named ",i2.default.createElement(b,{bold:!0},I.serverName)," already exists in"," ",B,"."),i2.default.createElement(b,null,"What would you like to do?"),i2.default.createElement(p,{marginTop:1},i2.default.createElement(T9,{options:[{label:"Rename (choose a different name)",value:"rename"},{label:"Continue with a different scope",value:"scope"},{label:"Overwrite the existing server",value:"overwrite"}],onChange:(V)=>{if(V==="rename")G("name"),Z({serverName:""});else if(V==="scope")G("scope");else if(V==="overwrite")G("command")}})))}function Us2({updateState:I,setCurrentStepId:Z}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Server Scope"),i2.default.createElement(b,null,"Choose where this server will be available:"),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:Hg("project"),value:"project"},{label:Hg("local"),value:"local"},{label:Hg("user"),value:"user"}],onChange:(W)=>{let B=qM(W);I({scope:B}),G()}})));function G(){Z("transport")}}function Ns2({updateState:I,setCurrentStepId:Z}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Transport Type"),i2.default.createElement(b,null,"Choose how Claude Code will connect to your MCP server:"),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:"Stdio (command-line process)",value:"stdio"},{label:"SSE (Server-Sent Events over HTTP)",value:"sse"}],onChange:(G)=>{let W=R81(G);if(I({transport:W}),W==="sse")Z("url");else Z("command")}})))}function $s2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"SSE Server URL"),i2.default.createElement(b,null,"Enter the URL for your SSE MCP server:"),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"https://example.com/mcp-sse",value:I.url,onChange:(w)=>Z({url:w}),onSubmit:()=>{if(I.url.trim())G()},columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="url"})))}function Rs2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y}){let[w,X]=i2.default.useState(()=>{if(I.command&&(I.args||I.envVars))return[I.envVars,I.command,I.args].filter(Boolean).join(" ");return I.command});return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Server Command"),i2.default.createElement(b,null,"Enter the full command to start your MCP server."),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"command with arguments (e.g. NODE_ENV=dev npx my-server)",value:w,onChange:X,onSubmit:()=>{if(w.trim()){let H=Qs2(w);Z({command:H.command,args:H.args,envVars:H.envVars}),G()}},columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="command"})))}function Es2({state:I,isAdding:Z,error:G,goToPrevStep:W,handleAddServer:B,theme:V}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Review and Confirm"),i2.default.createElement(p,{flexDirection:"column",paddingLeft:1},i2.default.createElement(b,null,"Name: ",i2.default.createElement(b,{color:V.success},I.serverName)),i2.default.createElement(b,null,"Scope: ",i2.default.createElement(b,{color:V.success},I.scope)),i2.default.createElement(b,null,"Type: ",i2.default.createElement(b,{color:V.success},I.transport)),I.transport==="sse"?i2.default.createElement(b,null,"URL: ",i2.default.createElement(b,{color:V.success},I.url)):i2.default.createElement(i2.default.Fragment,null,i2.default.createElement(b,null,"Command: ",i2.default.createElement(b,{color:V.success},I.command)),I.args&&i2.default.createElement(b,null,"Arguments: ",i2.default.createElement(b,{color:V.success},I.args)),I.envVars&&i2.default.createElement(b,null,"Environment: ",i2.default.createElement(b,{color:V.success},I.envVars)))),Z?i2.default.createElement(p,{marginTop:1},i2.default.createElement(hX,null),i2.default.createElement(b,null,"Adding MCP server...")):i2.default.createElement(p,{flexDirection:"column",gap:1},G&&i2.default.createElement(b,{color:V.error},"Error: ",G),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:"Confirm",value:"add"},{label:"Go back",value:"edit"}],onChange:(Y)=>{if(Y==="add")B();else W()}}))))}function Ms2({state:I,theme:Z}){let G=(W)=>{switch(W){case"local":return"private to you in this project";case"project":return"shared with anyone using this project via .mcp.json";case"user":return"available to you in all projects";default:return W}};return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{color:Z.success},"✓ MCP Server added successfully!"),i2.default.createElement(b,null,'Your server "',I.serverName,'" has been added to the'," ",I.scope," configuration (",G(I.scope),")."),i2.default.createElement(b,{dimColor:!0},"View server info with: claude mcp get ",I.serverName,". Remove with: claude mcp remove ",I.serverName))}var os5={serverName:"",scope:"user",transport:"stdio",command:"",args:"",envVars:"",url:""},LT1=[{id:"name",getNextStepId:()=>"scope",component:zs2},{id:"scope",getNextStepId:(I)=>{let Z=Tp(I.serverName);if(Z&&Z.scope===I.scope&&I.serverName.trim())return"name-validation";return"transport"},getPrevStepId:()=>"name",component:Us2},{id:"transport",getNextStepId:(I)=>{return I.transport==="sse"?"url":"command"},getPrevStepId:()=>"scope",component:Ns2},{id:"name-validation",getNextStepId:()=>null,getPrevStepId:()=>"scope",component:qs2},{id:"command",getNextStepId:()=>"confirm",getPrevStepId:()=>"transport",component:Rs2},{id:"url",getNextStepId:()=>"confirm",getPrevStepId:()=>"transport",component:$s2},{id:"confirm",getNextStepId:()=>"success",getPrevStepId:(I)=>I.transport==="sse"?"url":"command",component:Es2},{id:"success",getNextStepId:()=>null,component:Ms2}];function Ps2({onDone:I}){let Z=j1(),[G,W]=iV.useState("name"),[B,V]=iV.useState(os5),[Y,w]=iV.useState(0),[X,H]=iV.useState(null),[J,A]=iV.useState(!1),K=w3().columns-6,D=LT1.find((d)=>d.id===G);if(!D){let d=new Error("No current step");throw c1(d),d}let z=D?LT1.indexOf(D):0,U=(d)=>{V((k)=>({...k,...d}))};function N(){if(!D)return;let d=D.getNextStepId(B);if(d)W(d)}function L(){if(!D)return;if(G==="confirm"&&X)H(null);if(!D.getPrevStepId){let k=new Error("No previous step");throw c1(k),k}let d=D.getPrevStepId(B);if(d)W(d)}let g=D9();P2((d,k)=>{if(k.escape&&G!=="success")L()});async function f(){A(!0),H(null);try{if(x1("tengu_mcp_add",{source:"wizard",type:B.transport,scope:B.scope}),B.transport==="sse"){if(!B.url.trim())throw new Error("URL is required for SSE transport");CF(B.serverName,{type:"sse",url:B.url},B.scope)}else{let d=B.envVars.split(/[\n,]/).map((m)=>m.trim()).filter(Boolean),a=fs2.default.parse(B.args).filter((m)=>typeof m==="string");CF(B.serverName,{type:"stdio",command:B.command,args:a,env:$81(d)},B.scope)}x1("tengu_mcp_add_wizard_complete",{scope:B.scope,type:B.transport}),N(),setTimeout(()=>{I()},0)}catch(d){H(d.message),c1(d instanceof Error?d:new Error(String(d))),A(!1)}}let P={state:B,updateState:U,goToNextStep:N,goToPrevStep:L,setCurrentStepId:W,currentStepId:G,cursorOffset:Y,setCursorOffset:w,textInputColumns:K,error:X,setError:H,isAdding:J,setIsAdding:A,theme:Z,handleAddServer:f},M=D.component;return iV.default.createElement(iV.default.Fragment,null,iV.default.createElement(p,{flexDirection:"column"},iV.default.createElement(p,{flexDirection:"column",padding:1,gap:1,borderStyle:"round",borderColor:Z.secondaryText},iV.default.createElement(M,{...P})),G!=="success"&&iV.default.createElement(p,{paddingX:1},iV.default.createElement(Cs2,{stepIndex:z,wizardSteps:LT1,exitState:g}))))}var aG=J1(R1(),1);function Ls2({servers:I,scope:Z,onDone:G}){let W=j1(),B=Object.keys(I),V=aG.useMemo(()=>E81(),[]),Y=B.filter((H)=>V[H]!==void 0);function w(H){let J=0;for(let A of H){let K=I[A];if(K){let D=A;if(V[D]!==void 0){let z=1;while(V[`${A}_${z}`]!==void 0)z++;D=`${A}_${z}`}CF(D,K,Z),J++}}G(J)}let X=D9();return P2((H,J)=>{if(J.escape){G(0);return}}),aG.default.createElement(aG.default.Fragment,null,aG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:W.success},aG.default.createElement(b,{bold:!0,color:W.success},"Import MCP Servers from Claude Desktop"),aG.default.createElement(b,null,"Found ",B.length," MCP server",B.length!==1?"s":""," in Claude Desktop."),Y.length>0&&aG.default.createElement(b,{color:W.warning},"Note: Some servers already exist with the same name. If selected, they will be imported with a numbered suffix."),aG.default.createElement(b,null,"Please select the servers you want to import:"),aG.default.createElement(Dt,{options:B.map((H)=>({label:`${H}${Y.includes(H)?" (already exists)":""}`,value:H})),defaultValue:B.filter((H)=>!Y.includes(H)),onSubmit:w})),aG.default.createElement(p,{marginLeft:3},aG.default.createElement(b,{dimColor:!0},X.pending?aG.default.createElement(aG.default.Fragment,null,"Press ",X.keyName," again to exit"):aG.default.createElement(aG.default.Fragment,null,"Space to select · Enter to confirm · Esc to cancel"))))}import*as qF from"fs";import*as ST1 from"path";import*as Ss2 from"os";function ts5(){let I=h$();if(!BX1.includes(I))throw new Error(`Unsupported platform: ${I} - Claude Desktop integration only works on macOS and WSL.`);if(I==="macos")return ST1.join(Ss2.homedir(),"Library","Application Support","Claude","claude_desktop_config.json");let Z=process.env.USERPROFILE?process.env.USERPROFILE.replace(/\\/g,"/"):null;if(Z){let W=`/mnt/c${Z.replace(/^[A-Z]:/,"")}/AppData/Roaming/Claude/claude_desktop_config.json`;if(qF.existsSync(W))return W}try{if(qF.existsSync("/mnt/c/Users")){let W=qF.readdirSync("/mnt/c/Users");for(let B of W){if(B==="Public"||B==="Default"||B==="Default User"||B==="All Users")continue;let V=ST1.join("/mnt/c/Users",B,"AppData","Roaming","Claude","claude_desktop_config.json");if(qF.existsSync(V))return V}}}catch(G){c1(G instanceof Error?G:new Error(String(G)))}throw new Error("Could not find Claude Desktop config file in Windows. Make sure Claude Desktop is installed on Windows.")}function ds2(){if(!BX1.includes(h$()))throw new Error("Unsupported platform - Claude Desktop integration only works on macOS and WSL.");try{let I=ts5();if(!qF.existsSync(I))return{};let Z=qF.readFileSync(I,"utf8"),G=AZ(Z);if(!G||typeof G!=="object")return{};let W=G.mcpServers;if(!W||typeof W!=="object")return{};let B={};for(let[V,Y]of Object.entries(W)){if(!Y||typeof Y!=="object")continue;let w=PX1.safeParse(Y);if(w.success)B[V]=w.data}return B}catch(I){return c1(I instanceof Error?I:new Error(String(I))),{}}}import{cwd as WN}from"process";var wG=J1(R1(),1);import{homedir as Os2}from"os";function vs2({onDone:I}){let Z=j1(),G=Cz(),W=Object.keys(G).length>0;wG.default.useEffect(()=>{let Y=Os2()===c0();x1("trust_dialog_shown",{isHomeDir:Y,hasMcpServers:W})},[W]);function B(Y){let w=W9();if(Y==="no")process.exit(1);let X=Y==="yes_enable_mcp",H=Os2()===c0();if(x1("trust_dialog_accept",{isHomeDir:H,hasMcpServers:W,enableMcp:X}),W)r3({...w,...H?{}:{hasTrustDialogAccepted:!0},...X?{enabledMcpjsonServers:Object.keys(G),enableAllProjectMcpServers:!0}:{disabledMcpjsonServers:Object.keys(G)}});else if(!H)r3({...w,hasTrustDialogAccepted:!0});I()}let V=D9();return P2((Y,w)=>{if(w.escape){process.exit(0);return}}),wG.default.createElement(wG.default.Fragment,null,wG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},wG.default.createElement(b,{bold:!0,color:Z.warning},"Do you trust the files in this folder?"),wG.default.createElement(b,{bold:!0},process.cwd()),wG.default.createElement(p,{flexDirection:"column",gap:1},wG.default.createElement(b,null,S2," may read files in this folder. Reading untrusted files may lead ",S2," to behave in an unexpected ways."),wG.default.createElement(b,null,"With your permission ",S2," may execute files in this folder.",W&&" This project also contains MCP servers defined in .mcp.json that can execute code on your machine if enabled."," ","Executing untrusted code is unsafe."),wG.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-security"})),wG.default.createElement(T9,{options:W?[{label:"Yes, proceed with MCP servers enabled",value:"yes_enable_mcp"},{label:"Yes, proceed with MCP servers disabled",value:"yes_disable_mcp"},{label:"No, exit",value:"no"}]:[{label:"Yes, proceed",value:"yes_enable_mcp"},{label:"No, exit",value:"no"}],onChange:(Y)=>B(Y)})),wG.default.createElement(p,{marginLeft:3},wG.default.createElement(b,{dimColor:!0},V.pending?wG.default.createElement(wG.default.Fragment,null,"Press ",V.keyName," again to exit"):wG.default.createElement(wG.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var dT1=J1(R1(),1);class OT1 extends Lp{constructor(I,Z){var G;super(Z);this._serverInfo=I,this._capabilities=(G=Z===null||Z===void 0?void 0:Z.capabilities)!==null&&G!==void 0?G:{},this._instructions=Z===null||Z===void 0?void 0:Z.instructions,this.setRequestHandler($g1,(W)=>this._oninitialize(W)),this.setNotificationHandler(Eg1,()=>{var W;return(W=this.oninitialized)===null||W===void 0?void 0:W.call(this)})}registerCapabilities(I){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=F81(this._capabilities,I)}assertCapabilityForMethod(I){var Z,G;switch(I){case"sampling/createMessage":if(!((Z=this._clientCapabilities)===null||Z===void 0?void 0:Z.sampling))throw new Error(`Client does not support sampling (required for ${I})`);break;case"roots/list":if(!((G=this._clientCapabilities)===null||G===void 0?void 0:G.roots))throw new Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){switch(I){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Server does not support sampling (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${I})`);break;case"ping":case"initialize":break}}async _oninitialize(I){let Z=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:W81.includes(Z)?Z:Rp,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},KF)}async createMessage(I,Z){return this.request({method:"sampling/createMessage",params:I},Sg1,Z)}async listRoots(I,Z){return this.request({method:"roots/list",params:I},vg1,Z)}async sendLoggingMessage(I){return this.notification({method:"notifications/message",params:I})}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}import gs2 from"node:process";class vT1{constructor(I=gs2.stdin,Z=gs2.stdout){this._stdin=I,this._stdout=Z,this._readBuffer=new Sp,this._started=!1,this._ondata=(G)=>{this._readBuffer.append(G),this.processReadBuffer()},this._onerror=(G)=>{var W;(W=this.onerror)===null||W===void 0||W.call(this,G)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var I,Z;while(!0)try{let G=this._readBuffer.readMessage();if(G===null)break;(I=this.onmessage)===null||I===void 0||I.call(this,G)}catch(G){(Z=this.onerror)===null||Z===void 0||Z.call(this,G)}}async close(){var I;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(I=this.onclose)===null||I===void 0||I.call(this)}send(I){return new Promise((Z)=>{let G=Q81(I);if(this._stdout.write(G))Z();else this._stdout.once("drain",Z)})}}var Ts2={readFileTimestamps:{}},ys2=[p31];async function bs2(I){await oA(I);let Z=new OT1({name:"claude/tengu",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION},{capabilities:{tools:{}}});Z.setRequestHandler(Pg1,async()=>{let W=await oU();return{tools:await Promise.all(W.map(async(B)=>({...B,description:await B.description(r.object({}),{isNonInteractiveSession:!0,permissionMode:"default"}),inputSchema:mU(B.inputSchema)})))}}),Z.setRequestHandler(Lg1,async({params:{name:W,arguments:B}})=>{let V=await oU(),Y=V.find((w)=>w.name===W);if(!Y)throw new Error(`Tool ${W} not found`);try{if(!await Y.isEnabled())throw new Error(`Tool ${W} is not enabled`);let w=await JZ(),X=await Y.validateInput?.(B??{},{abortController:new AbortController,options:{commands:ys2,tools:V,slowAndCapableModel:w,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,mcpClients:[],isNonInteractiveSession:!0},getToolPermissionContext:yO,readFileTimestamps:Ts2.readFileTimestamps,userProvidedHosts:new Set});if(X&&!X.result)throw new Error(`Tool ${W} input is invalid: ${X.message}`);let H=Y.call(B??{},{abortController:new AbortController,options:{commands:ys2,tools:V,slowAndCapableModel:await JZ(),forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,mcpClients:[],isNonInteractiveSession:!0},getToolPermissionContext:yO,readFileTimestamps:Ts2.readFileTimestamps,userProvidedHosts:new Set},jU,c3({content:[]})),J=await i_(H);if(J.type!=="result")throw new Error(`Tool ${W} did not return a result`);return{content:Array.isArray(J)?J.map((A)=>({type:"text",text:"text"in A?A.text:JSON.stringify(A)})):[{type:"text",text:typeof J==="string"?J:JSON.stringify(J.data)}]}}catch(w){return c1(w instanceof Error?w:new Error(String(w))),{isError:!0,content:[{type:"text",text:`Error: ${w instanceof Error?w.message:String(w)}`}]}}});async function G(){let W=new vT1;await Z.connect(W)}return await G()}import{promises as js2}from"fs";import{join as es5}from"path";var Io5=2592000000;function Zo5(I){let Z=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(Z)}async function Go5(){let I=LD.messages(),Z=LD.errors(),G=new Date(Date.now()-Io5),W={messages:0,errors:0};for(let B of[I,Z])try{let V=await js2.readdir(B);for(let Y of V)try{if(Zo5(Y)<G)if(await js2.unlink(es5(B,Y)),B===I)W.messages++;else W.errors++}catch(w){c1(w)}}catch(V){if(V instanceof Error&&"code"in V&&V.code!=="ENOENT")c1(V)}return W}function ms2(){setImmediate(Go5).unref()}var TT1=J1(R1(),1);var nV=J1(R1(),1);var gT1=J1(R1(),1);function i81(){return gT1.default.createElement(b,null,"MCP servers may execute code or access system resources. All tool calls require approval. Learn more in the"," ",gT1.default.createElement(dR,{url:"https://docs.anthropic.com/s/claude-code-mcp"},"MCP documentation"),".")}function ks2({serverNames:I,onDone:Z}){let G=j1();function W(V){let Y=W9();if(!Y.enabledMcpjsonServers)Y.enabledMcpjsonServers=[];if(!Y.disabledMcpjsonServers)Y.disabledMcpjsonServers=[];let[w,X]=aG1(I,(H)=>V.includes(H));x1("tengu_mcp_multidialog_choice",{approved:w.length,rejected:X.length}),Y.enabledMcpjsonServers.push(...w),Y.disabledMcpjsonServers.push(...X),r3(Y),Z()}let B=D9();return P2((V,Y)=>{if(Y.escape){let w=W9();if(!w.disabledMcpjsonServers)w.disabledMcpjsonServers=[];for(let X of I)if(!w.disabledMcpjsonServers.includes(X))w.disabledMcpjsonServers.push(X);r3(w),Z();return}}),nV.default.createElement(nV.default.Fragment,null,nV.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},nV.default.createElement(b,{bold:!0,color:G.warning},I.length," new MCP servers found in .mcp.json"),nV.default.createElement(b,null,"Select any you wish to enable."),nV.default.createElement(i81,null),nV.default.createElement(Dt,{options:I.map((V)=>({label:V,value:V})),defaultValue:I,onSubmit:W})),nV.default.createElement(p,{marginLeft:3},nV.default.createElement(b,{dimColor:!0},B.pending?nV.default.createElement(nV.default.Fragment,null,"Press ",B.keyName," again to exit"):nV.default.createElement(nV.default.Fragment,null,"Space to select · Enter to confirm · Esc to reject all"))))}var Kw=J1(R1(),1);function xs2({serverName:I,onDone:Z}){let G=j1();function W(V){let Y=W9();switch(x1("tengu_mcp_dialog_choice",{choice:V}),V){case"yes":case"yes_all":{if(!Y.enabledMcpjsonServers)Y.enabledMcpjsonServers=[];if(!Y.enabledMcpjsonServers.includes(I))Y.enabledMcpjsonServers.push(I);if(V==="yes_all")Y.enableAllProjectMcpServers=!0;r3(Y),Z();break}case"no":{if(!Y.disabledMcpjsonServers)Y.disabledMcpjsonServers=[];if(!Y.disabledMcpjsonServers.includes(I))Y.disabledMcpjsonServers.push(I);r3(Y),Z();break}}}let B=D9();return P2((V,Y)=>{if(Y.escape){Z();return}}),Kw.default.createElement(Kw.default.Fragment,null,Kw.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},Kw.default.createElement(b,{bold:!0,color:G.warning},"New MCP server found in .mcp.json: ",I),Kw.default.createElement(i81,null),Kw.default.createElement(T9,{options:[{label:"Use this and all future MCP servers in this project",value:"yes_all"},{label:"Use this MCP server",value:"yes"},{label:"Continue without using this MCP server",value:"no"}],onChange:(V)=>W(V)})),Kw.default.createElement(p,{marginLeft:3},Kw.default.createElement(b,{dimColor:!0},B.pending?Kw.default.createElement(Kw.default.Fragment,null,"Press ",B.keyName," again to exit"):Kw.default.createElement(Kw.default.Fragment,null,"Enter to confirm · Esc to reject"))))}async function us2(){let I=Cz(),Z=Object.keys(I).filter((G)=>ng1(G)==="pending");if(Z.length===0)return;await new Promise((G)=>{let W=()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H",()=>{G()})};if(Z.length===1&&Z[0]!==void 0){let B=kI(TT1.default.createElement(xs2,{serverName:Z[0],onDone:()=>{B.unmount?.(),W()}}),{exitOnCtrlC:!1})}else{let B=kI(TT1.default.createElement(ks2,{serverNames:Z,onDone:()=>{B.unmount?.(),W()}}),{exitOnCtrlC:!1})}})}var OB=J1(R1(),1);import{writeFileSync as Wo5}from"fs";function Bo5({filePath:I,errorDescription:Z,onExit:G,onReset:W}){let B=j1();P2((w,X)=>{if(X.escape)G()});let V=D9(),Y=(w)=>{if(w==="exit")G();else W()};return OB.default.createElement(OB.default.Fragment,null,OB.default.createElement(p,{flexDirection:"column",borderColor:B.error,borderStyle:"round",padding:1,width:70,gap:1},OB.default.createElement(b,{bold:!0},"Configuration Error"),OB.default.createElement(p,{flexDirection:"column",gap:1},OB.default.createElement(b,null,"The configuration file at ",OB.default.createElement(b,{bold:!0},I)," contains invalid JSON."),OB.default.createElement(b,null,Z)),OB.default.createElement(p,{flexDirection:"column"},OB.default.createElement(b,{bold:!0},"Choose an option:"),OB.default.createElement(T9,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:Y}))),V.pending?OB.default.createElement(b,{dimColor:!0},"Press ",V.keyName," again to exit"):OB.default.createElement(xI,null))}function hs2({error:I}){return new Promise((Z)=>{kI(OB.default.createElement(Bo5,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{Z(),process.exit(1)},onReset:()=>{Wo5(I.filePath,JSON.stringify(I.defaultConfig,null,2)),Z(),process.exit(0)}}),{exitOnCtrlC:!1})})}var XG=J1(R1(),1);function ps2({onAccept:I}){let Z=j1();XG.default.useEffect(()=>{x1("bypass_permissions_mode_dialog_shown",{})},[]);function G(B){let V=f0();switch(B){case"accept":{x1("bypass_permissions_mode_dialog_accept",{}),o2({...V,bypassPermissionsModeAccepted:!0}),I();break}case"decline":{process.exit(1);break}}}let W=D9();return P2((B,V)=>{if(V.escape){process.exit(0);return}}),XG.default.createElement(XG.default.Fragment,null,XG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.error},XG.default.createElement(b,{bold:!0,color:Z.error},"WARNING: ",S2," running in Bypass Permissions mode"),XG.default.createElement(p,{flexDirection:"column",gap:1},XG.default.createElement(b,null,"In Bypass Permissions mode, ",S2," will not ask for your approval before running potentially dangerous commands.",XG.default.createElement(xI,null),"This mode should only be used in a sandboxed container/VM that has restricted internet access and can easily be restored if damaged."),XG.default.createElement(b,null,"By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."),XG.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-security"})),XG.default.createElement(T9,{options:[{label:"No, exit",value:"decline"},{label:"Yes, I accept",value:"accept"}],onChange:(B)=>G(B)})),XG.default.createElement(p,{marginLeft:3},XG.default.createElement(b,{dimColor:!0},W.pending?XG.default.createElement(XG.default.Fragment,null,"Press ",W.keyName," again to exit"):XG.default.createElement(XG.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var n81=J1(R1(),1);function ls2(){let I=j1();return n81.default.createElement(p,{flexDirection:"row"},n81.default.createElement(b,{color:I.secondaryText},"※ Tip: Use git worktrees to run multiple Claude sessions in parallel."," ",n81.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-worktrees"},"Learn more")))}var Vo5=[{id:"git-worktrees",content:ls2,cooldownSessions:30,isRelevant:async()=>{try{let I=f0();return await Hu()<=1&&I.numStartups>50}catch(I){return!1}}},{id:"terminal-setup",content:"Run /terminal-setup to enable convenient terminal integration like Shift + Enter for new line and more",cooldownSessions:15,isRelevant:()=>{let I=f0();return kC.isEnabled&&!I.shiftEnterKeyBindingInstalled}},{id:"shift-enter",content:"Press Shift+Enter to send a multi-line message",cooldownSessions:20,isRelevant:()=>{let I=f0();return Boolean(I.shiftEnterKeyBindingInstalled&&I.numStartups>3)}},{id:"memory-command",content:"Use /memory to view and manage Claude memory",cooldownSessions:30,isRelevant:()=>{return f0().memoryUsageCount<=0}},{id:"theme-command",content:"Use /theme to change the color theme",cooldownSessions:40,isRelevant:()=>!0}],Yo5=[],cs2=[...Vo5,...Yo5];function a81(I){for(let Z=0;Z<I.length;Z+=2000)process.stdout.write(I.substring(Z,Z+2000))}function wo5(){let I=process.execArgv.some((G)=>/--inspect(-brk)?|--debug(-brk)?/.test(G)),Z=process.env.NODE_OPTIONS&&/--inspect(-brk)?|--debug(-brk)?/.test(process.env.NODE_OPTIONS);try{return!!global.require("inspector").url()||I||Z}catch{return I||Z}}if(wo5())process.exit(1);YB0();Object.keys(_w0);function Ao5(){let I=f0();o2({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.67"}.VERSION})}async function _o5(I,Z){if(!1==="true")return;let G=f0();if(!G.theme||!G.hasCompletedOnboarding)await BI(),await new Promise((W)=>{kI(QK.default.createElement(Sd1,{onDone:async()=>{Ao5(),await BI(),W()}}),{exitOnCtrlC:!1})});if(process.env.ANTHROPIC_API_KEY,!Z&&I!=="bypassPermissions"){if(!sW0())await new Promise((W)=>{kI(QK.default.createElement(vs2,{onDone:W}),{exitOnCtrlC:!1})});await us2()}if(I==="bypassPermissions"&&!f0().bypassPermissionsModeAccepted)if(!Z)await new Promise((W)=>{kI(QK.default.createElement(ps2,{onAccept:W}))});else console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}function Ko5({allowedToolsCli:I,permissionMode:Z}){let G=No5(I);return Tj2({mode:Z,alwaysAllowRules:{cliArg:G}},Pj2())}function Do5(){let I=f0();o2({...I,numStartups:(I.numStartups??0)+1}),Co5()}async function Co5(){let[I,Z]=await Promise.all([NJ(),Hu()]);x1("tengu_startup_telemetry",{is_git:I,worktree_count:Z})}async function fM(I,Z,G){let W=process.version.match(/^v(\d+)\./)?.[1];if(!W||parseInt(W)<18)console.error(_0.bold.red("Error: Claude Code requires Node.js version 18 or higher.")),process.exit(1);if(Object.keys(f0().env??{}).length>0)Object.assign(process.env,f0().env);if(await v$("force_local_installation_migration")&&!oE()&&!G&&!0&&!0){console.log(_0.yellow("⚠️ Migrating Claude CLI to local installation...")),console.log("This improves auto-updates and removes dependency on global npm permissions."),console.log("Your existing configuration and history will be preserved.");try{x1("tengu_forced_migration_start",{gateControlled:!0}),await new Promise((H)=>{let{waitUntilExit:J}=kI(QK.default.createElement($h,null));J().then(()=>{H()})}),await x1("tengu_forced_migration_success",{gateControlled:!0}),console.log(_0.green("✅ Migration complete!")),console.log("Please restart Claude CLI to use the new installation."),process.exit(0)}catch(H){let J=H instanceof Error?H:new Error(String(H));c1(J),x1("tengu_forced_migration_failure",{gateControlled:!0}),console.log(_0.red("⚠️ Migration encountered an error, continuing with global installation."))}}let V=M$2();if(V.status==="restored")console.log(_0.yellow("Detected an interrupted iTerm2 setup. Your original settings have been restored. You may need to restart iTerm2 for the changes to take effect."));else if(V.status==="failed")console.error(_0.red(`Failed to restore iTerm2 settings. Please manually restore your original settings with: defaults import com.googlecode.iterm2 ${V.backupPath}.`));try{let H=await J91();if(H.status==="restored")console.log(_0.yellow("Detected an interrupted Terminal.app setup. Your original settings have been restored. You may need to restart Terminal.app for the changes to take effect."));else if(H.status==="failed")console.error(_0.red(`Failed to restore Terminal.app settings. Please manually restore your original settings with: defaults import com.apple.Terminal ${H.backupPath}.`))}catch(H){c1(H instanceof Error?H:new Error(String(H)))}let Y=G??!1;if(ms2(),c61(),g81(Y),xG(Y),uP(),Ju(),Hz())HX1();let w=new AbortController;if(setTimeout(()=>w.abort(),3000),Xr(c0(),w.signal,[]),oA(I),Z==="bypassPermissions"){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);if(!f0().bypassPermissionsModeAccepted)console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}if(k$2())x1("tengu_migrate_api_key_to_keychain",{success:!0});let X=W9();if(X.lastCost!==void 0&&X.lastDuration!==void 0)x1("tengu_exit",{last_session_cost:X.lastCost,last_session_api_duration:X.lastAPIDuration,last_session_duration:X.lastDuration,last_session_lines_added:X.lastLinesAdded,last_session_lines_removed:X.lastLinesRemoved,last_session_id:X.lastSessionId}),r3({...X,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastLinesAdded:void 0,lastLinesRemoved:void 0,lastSessionId:void 0});if(!Y)Zb2()}async function Fo5(){try{IB0()}catch(I){if(I instanceof bL){await hs2({error:I});return}}await zo5()}async function Qo5(I){let Z="",G={exitOnCtrlC:I,onFlicker(){x1("tengu_flicker",{})}};if(!process.stdin.isTTY&&!0&&!process.argv.includes("mcp")){if(Z=await qo5(),process.platform!=="win32")try{let W=Ho5("/dev/tty","r");G={...G,stdin:new Xo5(W)}}catch(W){c1(W)}}return{stdinContent:Z,renderContext:G}}async function zo5(){let I=new _s2;I.name("claude").description(`${S2} - starts an interactive session by default, use -p/--print for non-interactive output`).argument("[prompt]","Your prompt",String).option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).option("-p, --print","Print response and exit (useful for pipes)",()=>!0).option("--output-format <format>",'Output format (only works with --print): "text" (default), "json" (single result), or "stream-json" (realtime streaming)').option("--json","[Deprecated: Use --output-format json instead] Output JSON in the shape {cost_usd: number, duration_ms: number, duration_api_ms: number, result: string} (only works with --print)",()=>!0).option("--mcp-debug","Enable MCP debug mode (shows MCP server errors)",()=>!0).option("--dangerously-skip-permissions","Bypass all permission checks. Only works in Docker containers with no internet access.",()=>!0).addOption(new Ks2("--max-turns <turns>","Maximum number of agentic turns in non-interactive mode. This will early exit the conversation after the specified number of turns. (only works with --print)").argParser(Number).hideHelp()).option("--allowedTools <tools...>",'Comma or space-separated list of tool names to allow (e.g. "Bash(git*) Edit Replace")').action(async(W,{debug:B,verbose:V,print:Y,outputFormat:w,json:X,dangerouslySkipPermissions:H,allowedTools:J=[],maxTurns:A})=>{let K=H?"bypassPermissions":"default";if(!Y)await _o5(K,Y);let[,D,z,U,N,{stdinContent:L,renderContext:g}]=await Promise.all([fM(WN(),K,Y),c61(),oU(),JZ(),lr2(cs2),Qo5(!1)]),f=Object.keys(UM()).length;x1("tengu_init",{entrypoint:"claude",hasInitialPrompt:Boolean(W),hasStdin:Boolean(L),verbose:V,debug:B,print:Y,outputFormat:w,numAllowedTools:J.length,mcpClientCount:f}),pm2(),Do5();let P=Ko5({allowedToolsCli:J,permissionMode:K}),M=[W,L].filter(Boolean).join(`
|
|
1761
|
-
`),{clients:d=[],tools:k=[],commands:a=[]}=M?await Va2():{clients:[],tools:[],commands:[]};if(Y){if(!M)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);if(X&&!w)w="json";if(w&&!["text","json","stream-json"].includes(w))console.error("Error: --output-format must be one of: text, json, stream-json"),process.exit(1);if(V&&w!=="json"&&w!=="stream-json")throw new Error("When using --print, --verbose must be used together with --output-format json or stream-json");GN(M);let m=zr(new Date),X1=await Ds2({commands:[...D,...a],hasPermissionsToUseTool:jU,messageLogName:m,prompt:M,cwd:WN(),tools:[...z,...k],permissionContext:P,verbose:V,mcpClients:d,maxTurns:A,slowAndCapableModel:U,streamJson:w==="stream-json"});if(w==="json"){let Z1={role:"system",cost_usd:X1.totalCost,duration_ms:X1.totalApiDurationMsWithoutRetries,duration_api_ms:X1.totalApiDurationMs,result:X1.resultText};if(V){let $1=[...X1.transcript.filter((z1)=>z1.type!=="progress").map((z1)=>z1.message),Z1];a81(JSON.stringify($1,null,2))}else a81(JSON.stringify(Z1,null,2))}else if(w==="stream-json"){let Z1={role:"system",cost_usd:X1.totalCost,duration_ms:X1.totalApiDurationMsWithoutRetries,duration_api_ms:X1.totalApiDurationMs};console.log(JSON.stringify(Z1,null,2))}else if(!V)a81(X1.resultText);process.exit(0)}else kI(QK.default.createElement(Sv1,{commands:[...D,...a],debug:B,initialPrompt:M,messageLogName:zr(new Date),shouldShowPromptInput:!0,verbose:V,tools:[...z,...k],initialPermissionContext:P,slowAndCapableModel:U,tipOfTheDay:N,mcpClients:d}),g)}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1769
|
+
`+N;L(_4),f("prompt"),M(()=>null),H0(P.value.length+1+t1)},[P,L,f,M,N,t1]);l7.useEffect(()=>{if(!Y&&P!==null){let _4=P;M(()=>null),Z5(_4.value,!1)}},[Y,P,Z5,M]),P2((_4,R9)=>{if(R9.return&&g1){Z5("/tasks",!0),Z0(!1);return}if(t1===0&&(R9.escape||R9.backspace||R9.delete))f("prompt"),m1(!1);if(R9.tab&&R9.shift){switch(I.mode){case"acceptEdits":og1(I,Z);break;case"default":AK(I,Z);break;case"bypassPermissions":break}if(b1)m1(!1);return}if(R9.escape){let P9=og1(I,Z);if(g1){Z0(!1);return}if(P!==null){B6();return}if(P9)return;if(J.length>0&&!N&&!Y)c4()}if(R9.return&&b1)m1(!1)});let{columns:u5}=w3(),i6=u5-6,J4=l7.useMemo(()=>uC(J),[J]),i9=j1();return K6.createElement(p,{flexDirection:"column"},P!==null&&K6.createElement(p,{flexDirection:"column",marginTop:1},K6.createElement(p,{paddingLeft:2,flexDirection:"column",width:u5-4},K6.createElement(b,{color:i9.secondaryText,wrap:"wrap"},P.value))),K6.createElement(p,{alignItems:"flex-start",justifyContent:"flex-start",borderColor:g==="bash"?i9.bashBorder:g==="memory"||g==="memorySelect"?i9.remember:i9.secondaryBorder,borderDimColor:g!=="memory",borderStyle:"round",marginTop:P?0:1,width:"100%"},K6.createElement(p,{alignItems:"flex-start",alignSelf:"flex-start",flexWrap:"nowrap",justifyContent:"flex-start",width:3},g==="bash"?K6.createElement(b,{color:i9.bashBorder,dimColor:Y}," ! "):g==="memory"||g==="memorySelect"?K6.createElement(b,{color:i9.remember,dimColor:Y}," # "):K6.createElement(b,{color:Y?i9.secondaryText:void 0}," > ")),K6.createElement(p,{paddingRight:1},(()=>{let _4={multiline:!0,onSubmit:Z5,onChange:B0,value:N,onHistoryUp:t0,onHistoryDown:F2,onHistoryReset:()=>e(),placeholder:g==="memory"?'Add to memory. Try "Always use descriptive variable names"':P!==null&&(f0().queuedCommandUpHintCount||0)<K2?"Press up to edit queued messages":n1?y1:void 0,onExit:()=>process.exit(0),onExitMessage:(R9,P9)=>H1({show:R9,key:P9}),onMessage:(R9,P9)=>{if(R9&&P9)w1({text:P9},{timeoutMs:3600000});else w1({text:""},{timeoutMs:0})},onImagePaste:W2,columns:i6,disableCursorMovementForUpDownKeys:E2.length>0,cursorOffset:t1,onChangeCursorOffset:H0,onPaste:V4,focus:g!=="memorySelect",showCursor:g!=="memorySelect",argumentHint:H2};return h81()?K6.createElement(CT1,{..._4,initialMode:V1,onModeChange:Q1,isLoading:Y}):K6.createElement(dV,{..._4})})())),g==="memorySelect"&&K6.createElement(J31,{onSelect:(_4)=>{Z5(N,!1,_4)},onCancel:()=>{f("memory")}}),K6.createElement(Kr2,{apiKeyStatus:G,exitMessage:X2,vimMode:V1,mode:g,autoUpdaterResult:D,isAutoUpdating:l0,debug:X,messages:J,tokenUsage:J4,onAutoUpdaterResult:K,onChangeIsUpdating:R0,suggestions:E2,selectedSuggestion:f2,notification:x,toolPermissionContext:I,helpOpen:b1,suppressHint:N.length>0,tasksSelected:g1,ideSelection:T1}))}var Fr2=l7.memo(hr5);function pr5(){xP1(""),process.exit(0)}var Qr2=J1(R1(),1);function zr2(){Qr2.useEffect(()=>{let I=Math.round(process.uptime()*1000);x1("tengu_timer",{event:"startup",durationMs:I})},[])}var bp=J1(R1(),1);function qr2(){let[I,Z]=bp.useState(()=>{let V=uY(!1);if(y3||a3)return"valid";if(V)return"loading";return"missing"}),[G,W]=bp.useState(null),B=bp.useCallback(async()=>{if(y3||a3)return;let V=uY(!1);if(!V){Z("missing");return}try{let w=await Sn2(V,!1)?"valid":"invalid";Z(w);return}catch(Y){W(Y),Z("error");return}},[]);return{status:I,reverify:B,error:G}}function Ur2(I,Z,G,W,B,V,Y,w,X,H){P2((J,A)=>{if(!A.escape)return;if(Y?.aborted)return;if(!Y)return;if(!B)return;if(V)return;if(w?.())return;if(X!==null&&X!==void 0){if(H)H();x1("tengu_cancel",{}),I(null),Z(null),G(null),W();return}x1("tengu_cancel",{}),I(null),Z(null),G(null),W()})}var Nr2=J1(R1(),1);function lr5(I){return Nr2.useCallback(async(Z,G,W,B)=>{return new Promise((V)=>{function Y(){x1("tengu_tool_use_cancelled",{messageID:B.message.id,toolName:Z.name})}function w(){V({result:!1,message:Hp}),W.abortController.abort()}if(W.abortController.signal.aborted){Y(),w();return}return jU(Z,G,W,B).then(async(X)=>{if(X.result){x1("tengu_tool_use_granted_in_config",{messageID:B.message.id,toolName:Z.name}),V({...X,updatedInput:G});return}let H=await Z.description(G,{isNonInteractiveSession:W.options.isNonInteractiveSession,permissionMode:W.getToolPermissionContext().mode});if(W.abortController.signal.aborted){Y(),w();return}I({assistantMessage:B,tool:Z,description:H,input:G,stressTestResult:void 0,permissionContext:W.getToolPermissionContext(),permissionResult:X,onAbort(){Y(),x1("tengu_tool_use_rejected_in_prompt",{messageID:B.message.id,toolName:Z.name}),w()},onAllow(A,K){if(A==="permanent")x1("tengu_tool_use_granted_in_prompt_permanent",{messageID:B.message.id,toolName:Z.name});else x1("tengu_tool_use_granted_in_prompt_temporary",{messageID:B.message.id,toolName:Z.name});V({result:!0,updatedInput:K})},onReject(){x1("tengu_tool_use_rejected_in_prompt",{messageID:B.message.id,toolName:Z.name}),w()}})}).catch((X)=>{if(X instanceof iZ)Y(),w();else c1(X)})})},[I])}var $r2=lr5;var Rr2=J1(R1(),1);function Er2(I,Z,G){Rr2.useEffect(()=>{TL(Z,G,0,yL(I))},[I,Z,G])}var fr2=J1(R1(),1);var Mr2=J1(R1(),1);var cr5=J1(R1(),1);var Pr2=J1(R1(),1);function Lr2(I,Z){return Pr2.useMemo(()=>{if(I&&Z&&Z.length>0)return C$([...I,...Z],"name");return I||[]},[I,Z])}var Sr2=J1(R1(),1);function dr2(I,Z){return Sr2.useMemo(()=>{if(Z.length>0)return C$([...I,...Z],"name");return I},[I,Z])}var Or2=J1(R1(),1);function vr2(I,Z){return Or2.useMemo(()=>{if(Z.length>0)return C$([...I,...Z],"name");return I},[I,Z])}var FK=J1(R1(),1);function gr2({initialPermissionContext:I}){let[Z,G]=FK.useState(I),W=FK.useCallback((Y)=>{G(Y)},[G]),B=FK.useRef(Z);FK.useEffect(()=>{B.current=Z},[Z]);let V=FK.useCallback(()=>{return B.current},[B]);return FK.useEffect(()=>{let Y=gj2(I,W9());W(Y)},[I,W]),{toolPermissionContext:Z,getToolPermissionContext:V,setToolPermissionContext:W}}var Tr2=new Set(["docs.anthropic.com","modelcontextprotocol.io","docs.python.org","en.cppreference.com","docs.oracle.com","learn.microsoft.com","developer.mozilla.org","go.dev","www.php.net","docs.swift.org","kotlinlang.org","ruby-doc.org","doc.rust-lang.org","www.typescriptlang.org","react.dev","angular.io","vuejs.org","nextjs.org","expressjs.com","nodejs.org","jquery.com","getbootstrap.com","tailwindcss.com","d3js.org","threejs.org","redux.js.org","webpack.js.org","jestjs.io","reactrouter.com","docs.djangoproject.com","flask.palletsprojects.com","fastapi.tiangolo.com","pandas.pydata.org","numpy.org","www.tensorflow.org","pytorch.org","scikit-learn.org","matplotlib.org","requests.readthedocs.io","jupyter.org","laravel.com","symfony.com","wordpress.org","docs.spring.io","hibernate.org","tomcat.apache.org","gradle.org","maven.apache.org","asp.net","dotnet.microsoft.com","nuget.org","blazor.net","reactnative.dev","docs.flutter.dev","developer.apple.com","developer.android.com","keras.io","spark.apache.org","huggingface.co","www.kaggle.com","openai.com","www.mongodb.com","redis.io","www.postgresql.org","dev.mysql.com","www.sqlite.org","graphql.org","prisma.io","docs.aws.amazon.com","cloud.google.com","learn.microsoft.com/azure","kubernetes.io","www.docker.com","www.terraform.io","www.ansible.com","vercel.com","netlify.com","heroku.com","cypress.io","selenium.dev","docs.unity.com","docs.unrealengine.com","git-scm.com","nginx.org","httpd.apache.org"]);var br2=J1(R1(),1);function jr2(){let[I,Z]=br2.useState(!1);function G(){yr2(),Z(!1)}return P2((W,B)=>{if(W&&I){G();return}if(B.ctrl&&W==="r")Z((V)=>{if(!V)return ir5(),nr5(),!0;return yr2(),!1})}),{shouldShowAlternateScreenBuffer:I}}function ir5(){process.stdout.write("\x1B[2J\x1B[3J\x1B[H")}function nr5(){process.stdout.write("\x1B[?1049h")}function yr2(){process.stdout.write("\x1B[?1049l")}var Kg=J1(R1(),1);function mr2({children:I}){let Z=D9(()=>process.exit(0));return Kg.default.createElement(p,{flexDirection:"column",height:"100%",width:"100%"},I,Kg.default.createElement(p,{alignItems:"center",alignSelf:"center",borderTopColor:j1().secondaryBorder,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:4,width:"100%"},Z.pending?Kg.default.createElement(b,{dimColor:!0},"Press ",Z.keyName," again to exit"):Kg.default.createElement(b,{bold:!0,color:j1().permission},"Press any key to continue…")),Kg.default.createElement(At,null))}var H3=J1(R1(),1),Dg=J1(R1(),1);var zT1=J1(R1(),1),l81=J1(R1(),1);function kr2(){let[I,Z]=l81.useState();l81.useEffect(()=>{BB("tengu_motd",{message:""}).then((B)=>{Z(B)})},[]);let G=j1(),W=I?.color;if(W){let B=G[W];if(typeof B==="string")W=B}if(!I?.message)return null;return zT1.default.createElement(p,{key:"motd-container"},zT1.default.createElement(b,{key:"motd-text",color:W},I?.message))}var O4=J1(R1(),1);import{relative as ar5}from"path";var xr2=40000;function rr5(){let I=f0();o2({...I,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION})}function ur2({mcpServerCount:I}){let Z=j1(),G=f0(),{hasReleaseNotes:W,releaseNotes:B}=O4.useMemo(()=>h31(G.lastReleaseNotesSeen),[G.lastReleaseNotesSeen]);return O4.useEffect(()=>{if(W)rr5()},[W]),O4.createElement(p,{flexDirection:"column",paddingLeft:1},I>0&&O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:Z.success},M9.tick),O4.createElement(b,null,"Found ",I," MCP server",I!==1?"s":""),O4.createElement(b,{color:Z.secondaryText,dimColor:!0}," ","• /mcp")),O4.createElement(tr5,null),W&&O4.createElement(p,{flexDirection:"column",marginTop:1},O4.createElement(b,{color:Z.secondaryText},"What's new:"),O4.createElement(p,{flexDirection:"column",marginLeft:1},B.map((V,Y)=>O4.createElement(b,{key:Y,color:Z.secondaryText},"• ",V)))))}function sr5({path:I,contentLength:Z}){let G=I.startsWith(c0())?ar5(c0(),I):I;return O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:j1().warning},M9.warning),O4.createElement(b,{color:j1().warning},"Large ",O4.createElement(b,{bold:!0},G)," will impact performance (",dD(Z)," chars >"," ",dD(xr2),")",O4.createElement(b,{color:j1().secondaryText,dimColor:!0}," ","• /memory to edit")))}function or5(){let I=j1(),Z=Kg1();if(!Z)return null;let G=Z.content.length,W=1000;if(G>W)return O4.createElement(p,{flexDirection:"row",gap:1},O4.createElement(b,{color:I.warning},M9.warning),O4.createElement(b,{color:I.warning},"ULTRACLAUDE.md exceeds ",W," chars (",G," chars)",O4.createElement(b,{color:I.secondaryText,dimColor:!0}," ","• /memory to edit")));return null}function tr5(){let I=_g1(),Z=j1();if(I.length===0)return null;let W=["Project","Local","User"].filter((V)=>I.some((Y)=>Y.type===V)).map((V)=>Yh(V)).join(" + "),B=I.filter((V)=>V.content.length>xr2);return O4.createElement(p,{flexDirection:"column"},B.length===0&&O4.createElement(p,{flexDirection:"row"},O4.createElement(b,{color:Z.success},M9.tick),O4.createElement(b,null,"Loaded ",W," memory"),O4.createElement(b,{color:Z.secondaryText,dimColor:!0}," ","• /memory")),B.map((V)=>O4.createElement(sr5,{key:V.path,path:V.path,contentLength:V.content.length})),O4.createElement(or5,null))}var RM=J1(R1(),1);function hr2(){return f0().tipsHistory||{}}function er5(I){let Z=f0();o2({...Z,tipsHistory:I})}function pr2(I){let Z=hr2(),G=f0().numStartups;Z[I]=G,er5(Z)}function Is5(I){return hr2()[I]||0}function qT1(I){let Z=Is5(I);if(Z===0)return 1/0;return f0().numStartups-Z}async function Gs5(I){return(await Promise.all(I.map(async(G)=>{let W=await G.isRelevant();return{tip:G,isRelevant:W}}))).filter((G)=>G.isRelevant).map((G)=>G.tip)}function Ws5(I){return I.filter((Z)=>{return qT1(Z.id)>=Z.cooldownSessions})}function Bs5(){let I=f0(),{hasReleaseNotes:Z}=h31(I.lastReleaseNotesSeen);return!Z}function Vs5(I){if(I.length===0)return;if(I.length===1)return I[0];let Z=I.map((G)=>({tip:G,sessions:qT1(G.id)}));return Z.sort((G,W)=>W.sessions-G.sessions),Z[0]?.tip}async function lr2(I,Z=!1){if(!Bs5()||Z)return;let G=await Gs5(I),W=Ws5(G);if(W.length===0)return;return Vs5(W)}function cr2(I){pr2(I.id),x1("tengu_tip_shown",{tipIdLength:I.id,cooldownSessions:I.cooldownSessions})}function ir2({tip:I}){let Z=j1();RM.useEffect(()=>{if(!I)return;cr2(I)},[I]);let G=()=>{if(!I)return null;if(typeof I.content==="function")return I.content();return RM.default.createElement(b,{color:Z.secondaryText},"※ Tip: ",I.content)};return RM.default.createElement(RM.default.Fragment,null,I&&RM.default.createElement(p,{key:`tip-${I?.id}`,flexDirection:"row",marginTop:1,alignItems:"center",marginLeft:1},G()))}var EM=J1(R1(),1);function Ys5({width:I="auto",dividerChar:Z,dividerColor:G="gray",boxProps:W}){return EM.default.createElement(p,{width:I,borderStyle:{topLeft:"",top:"",topRight:"",right:"",bottomRight:"",bottom:Z||"─",bottomLeft:"",left:""},borderColor:G,flexGrow:1,borderBottom:!0,borderTop:!1,borderLeft:!1,borderRight:!1,...W})}function ws5({title:I,width:Z="auto",padding:G=0,titlePadding:W=1,titleColor:B="white",dividerChar:V="─",dividerColor:Y="gray",boxProps:w}){let X=EM.default.createElement(Ys5,{dividerChar:V,dividerColor:Y,boxProps:w});if(!I)return EM.default.createElement(p,{paddingLeft:G,paddingRight:G},X);return EM.default.createElement(p,{width:Z,paddingLeft:G,paddingRight:G,gap:W},X,EM.default.createElement(p,null,EM.default.createElement(b,{color:B},I)),X)}var nr2=ws5;function ar2({mcpClients:I,normalizedMessages:Z,normalizedMessageHistory:G,forkNumber:W,tools:B,verbose:V,debug:Y,toolJSX:w,toolUseConfirm:X,isMessageSelectorVisible:H,tipOfTheDay:J}){let A=kr2(),{columns:K}=w3(),D=Dg.useMemo(()=>KM(Z),[Z]),z=Dg.useMemo(()=>n61(Z),[Z]),U=Dg.useMemo(()=>Ig(Z),[Z]),N=Dg.useCallback((g)=>{return[{type:"static",jsx:H3.createElement(p,{flexDirection:"column",gap:1,key:`logo${W}`},H3.createElement(zk2,null),w91()?H3.createElement(ur2,{mcpServerCount:I.length}):H3.createElement(yP1,null))},...J?[{type:"static",jsx:H3.createElement(p,{key:`tip-of-the-day-${W}`},H3.createElement(ir2,{tip:J}))}]:[],...[],...G.length>0?[{type:"static",jsx:H3.createElement(p,{flexDirection:"column",gap:1,key:`history-${W}`},Xg1(G.filter((f)=>f.type!=="progress")).map((f)=>H3.createElement(p,{key:`history-${f.uuid}`,width:K-5},H3.createElement(Ww,{message:f,messages:G,addMargin:!0,tools:B,verbose:g,debug:Y,erroredToolUseIDs:new Set,inProgressToolUseIDs:new Set,progressMessagesForMessage:[],shouldAnimate:!1,shouldShowDot:!0,unresolvedToolUseIDs:new Set}))),H3.createElement(nr2,{dividerChar:"=",title:"Previous Conversation Compacted"}))}]:[],...Xg1(Z.filter((f)=>f.type!=="progress")).map((f)=>{let P=r61(f),M=Hg1(f,Z),d=H3.createElement(Ww,{message:f,messages:Z,addMargin:!0,tools:B,verbose:g,debug:Y,erroredToolUseIDs:U,inProgressToolUseIDs:z,progressMessagesForMessage:M,shouldAnimate:!w&&!X&&!H&&(!P||z.has(P)),shouldShowDot:!0,unresolvedToolUseIDs:D});return{type:Xs5(f,Z,D)?"static":"transient",jsx:H3.createElement(p,{key:`${f.uuid}-${M.length}`,width:K-5},d)}}).filter((f)=>f!==void 0)]},[W,A,Z,G,D,Y,K,B,U,z,w,X,H,I,J]),{shouldShowAlternateScreenBuffer:L}=jr2();if(L)return H3.createElement(mr2,null,N(!0).map((g)=>g.jsx));return H3.createElement(H3.Fragment,null,H3.createElement(bS,{key:`static-messages-${W}`,items:N(V).filter((g)=>g.type==="static")},(g)=>g.jsx),N(V).filter((g)=>g.type==="transient").map((g)=>g.jsx))}function Xs5(I,Z,G){switch(I.type){case"user":case"assistant":{let W=r61(I);if(!W)return!0;if(G.has(W))return!1;let B=Z.find((V)=>V.type==="progress"&&V.toolUseID===W);if(!B)return!0;return!Yg1(G,B.siblingToolUseIDs)}case"progress":return!Yg1(G,I.siblingToolUseIDs)}}function Sv1({commands:I,initialPermissionContext:Z,debug:G=!1,initialForkNumber:W=0,initialPrompt:B,messageLogName:V,shouldShowPromptInput:Y,tools:w,verbose:X,initialMessages:H,slowAndCapableModel:J,tipOfTheDay:A,mcpClients:K}){let{notification:D,addNotification:z}=Tn2(),{clients:U,tools:N,commands:L}=wa2(z),g=Lr2(K,U),f=dr2(w,N),P=vr2(I,L),M=X??f0().verbose,[d,k]=w5.useState(GX1(V,W,0)),a=Fk2(),[m,X1]=w5.useState("responding"),[Z1,$1]=w5.useState(null),[z1,x]=w5.useState(null),[w1,P1]=w5.useState(!1),[h1,r1]=w5.useState(null),[M0,l0]=w5.useState(null),[R0,X2]=w5.useState(null),[H1,y1]=w5.useState(H??[]),[O1,t1]=w5.useState([]),[H0,z0]=w5.useState(""),[I1,V1]=w5.useState("prompt"),[Q1,b1]=w5.useState(null),[m1,g1]=w5.useState(null),[Z0,T1]=w5.useState(0),[n1,B0]=w5.useState(0),[e,M1]=w5.useState(0),[q0,A0]=w5.useState(!1),[v0,K2]=w5.useState(!1),[t0,F2]=w5.useState(f0().hasAcknowledgedCostThreshold),[Q2,B4]=w5.useState(Tr2),[Z5,Z2]=w5.useState(null),{haikuWords:E2,generateHaikuWord:f2}=Qk2(w1),H2=(V2)=>{if(P1(V2),!V2)X1("responding")},W2=(V2)=>{if(z0(V2),!a.useHaiku||I1!=="prompt"||!V2.endsWith(" ")||!H0||H0.endsWith(" "))return;let o9=H0.trim().split(/\s+/).pop()||"";if(o9.length>=4)f2(o9)},V4=w5.useCallback((V2,o9)=>{return new Promise((d3)=>{Z2({m1:V2,m2:o9,resolve:d3})})},[]),c4=w5.useRef({}),{status:B6,reverify:u5}=qr2();function i6(){if(!w1)return;if(H2(!1),R0)R0.onAbort();else z1?.abort()}let{getToolPermissionContext:J4,setToolPermissionContext:i9,toolPermissionContext:_4}=gr2({initialPermissionContext:Z}),R9=()=>_4.mode==="acceptEdits",P9=w5.useCallback(()=>{if(Q1===null)return;z0(H0===""?Q1.value:Q1.value+`
|
|
1770
|
+
`+H0),V1("prompt"),b1(()=>null)},[Q1,z0,V1,b1,H0]);Ur2(l0,X2,Z2,i6,w1,q0,z1?.signal,R9,Q1,P9),w5.useEffect(()=>{if(Z1)k((V2)=>V2+1),$1(null),t1((V2)=>{return[...V2,...H1]}),y1(Z1)},[Z1,H1]),w5.useEffect(()=>{if(l$()>=5&&!v0&&!t0){if(x1("tengu_cost_threshold_reached",{}),jr()&&!process.env.DISABLE_COST_WARNINGS)K2(!0)}},[H1,v0,t0]);let y5=$r2(X2),V6=w5.useCallback((V2,o9,d3)=>{return{abortController:d3,options:{commands:P,forkNumber:d,messageLogName:V,tools:f,verbose:M,slowAndCapableModel:J,maxThinkingTokens:j61(V2),mcpClients:g,isNonInteractiveSession:!1},getToolPermissionContext:J4,messages:V2,setForkConvoWithMessagesOnTheNextRender:$1,setMessages:y1,onChangeAPIKey:u5,readFileTimestamps:c4.current,userProvidedHosts:o9,setToolJSX:l0,addNotification:z,setToolPermissionContext:i9}},[P,d,J4,g,V,u5,$1,y1,J,f,M,z,i9]);async function _I(){if(u5(),!B)return;H2(!0),B0(0),M1(0);let V2=new AbortController;x(V2);let o9=await Zg(B,"prompt",l0,V6(H1,Q2,V2),null);if(o9.length){for(let W8 of o9)if(W8.type==="user")GN(B);if(y1((W8)=>[...W8,...o9]),o9[o9.length-1].type==="assistant"){x(null),H2(!1);return}let[g6,T6]=await Promise.all([nE(),xG(!1)]);for await(let W8 of eh([...H1,...o9],g6,T6,y5,V6([...H1,...o9],Q2,V2),V4))Jg1(W8,(D6)=>y1((y6)=>[...y6,D6]),(D6)=>B0((y6)=>y6+D6.length),(D6)=>X1(D6),()=>M1((D6)=>D6+1))}else GN(B);F2(f0().hasAcknowledgedCostThreshold||!1),H2(!1)}async function N8(V2,o9){y1((D6)=>[...D6,...V2]),B0(0),M1(0),SO();let d3=V2[V2.length-1];if(d3.type==="user"&&typeof d3.message.content==="string")HR2(d3.message.content);let g6=jc2(d3);if(g6.size>0)B4((D6)=>wg1(D6,g6));if(d3.type==="assistant"){x(null),H2(!1);return}let[T6,W8]=await Promise.all([nE(),xG(!1)]);for await(let D6 of eh([...H1,d3],T6,W8,y5,V6([...H1,d3],wg1(Q2,g6),o9),V4))Jg1(D6,(y6)=>y1((i7)=>[...i7,y6]),(y6)=>B0((i7)=>i7+y6.length),(y6)=>X1(y6),()=>M1((y6)=>y6+1));H2(!1)}Qb2(),Er2(H1,V,d),zr2();let i4=!w1&&v0;w5.useEffect(()=>{jL()},[H0,Z0]),w5.useEffect(()=>{if(w1)return;if(H1.length<2)return;jL();let V2=setTimeout(()=>{let o9=Date.now()-Mr();if(!w1&&!R0&&!M0&&!Z5&&!i4&&!q0&&o9>=Z81)dv({message:"Claude is waiting for your input"})},Z81);return()=>clearTimeout(V2)},[w1,R0,M0,Z5,i4,q0,H1]),w5.useEffect(()=>{_I()},[]);let S3=w5.useMemo(()=>EZ(H1).filter(Qp),[H1]),x8=w5.useMemo(()=>EZ(O1).filter(Qp),[O1]),tI=w5.useMemo(()=>KM(S3),[S3]),v6=w5.useMemo(()=>n61(S3),[S3]),l2=w5.useMemo(()=>Ig(S3),[S3]);return G8.createElement(G8.Fragment,null,G8.createElement(ar2,{mcpClients:U,normalizedMessages:S3,normalizedMessageHistory:x8,forkNumber:d,tools:f,verbose:M,debug:G,toolJSX:M0,toolUseConfirm:R0,isMessageSelectorVisible:q0,tipOfTheDay:A}),G8.createElement(p,{borderColor:"red",borderStyle:G?"single":void 0,flexDirection:"column",width:"100%"},!M0&&!R0&&!Z5&&w1&&G8.createElement(F31,{mode:m,spinnerConfig:a,haikuWords:E2,currentResponseLength:n1,toolCallCount:e}),M0?M0.jsx:null,!1,!M0&&R0&&!q0&&!Z5&&G8.createElement(fa2,{onDone:()=>X2(null),setToolPermissionContext:i9,toolUseConfirm:{...R0,onReject:()=>{if(R0.onReject(),Q1!==null)P9()}},toolUseContext:V6(H1,Q2,z1??new AbortController),verbose:M}),!M0&&!R0&&!q0&&!Z5&&i4&&G8.createElement(tA0,{onDone:()=>{K2(!1),F2(!0);let V2=f0();o2({...V2,hasAcknowledgedCostThreshold:!0}),x1("tengu_cost_threshold_acknowledged",{})}}),!R0&&!M0?.shouldHidePromptInput&&Y&&!q0&&!Z5&&!i4&&G8.createElement(G8.Fragment,null,G8.createElement(Fr2,{toolPermissionContext:_4,setToolPermissionContext:i9,apiKeyStatus:B6,commands:P,forkNumber:d,messageLogName:V,tools:f,isLoading:w1,onQuery:N8,debug:G,verbose:M,messages:H1,setToolJSX:l0,onChangeAPIKey:u5,onAutoUpdaterResult:r1,autoUpdaterResult:h1,input:H0,onInputChange:W2,mode:I1,onModeChange:V1,queuedCommand:Q1,setQueuedCommand:b1,submitCount:Z0,onSubmitCountChange:T1,setIsLoading:H2,setAbortController:x,onShowMessageSelector:()=>A0((V2)=>!V2),setForkConvoWithMessagesOnTheNextRender:$1,setMessages:y1,readFileTimestamps:c4.current,notification:D,addNotification:z,userProvidedHosts:Q2,mcpClients:U,pastedImage:m1,setPastedImage:g1}))),q0&&G8.createElement(yn2,{erroredToolUseIDs:l2,unresolvedToolUseIDs:tI,messages:H1,onSelect:async(V2)=>{if(A0(!1),!H1.includes(V2))return;i6(),setImmediate(async()=>{if(await BI(),y1([]),$1(H1.slice(0,H1.indexOf(V2))),typeof V2.message.content==="string"){let o9=$Z(V2.message.content,"bash-input");if(o9)z0(o9),V1("bash");else z0(V2.message.content),V1("prompt")}else if(Array.isArray(V2.message.content)&&V2.message.content.length===2&&V2.message.content[0].type==="image"&&V2.message.content[1].type==="text")z0(V2.message.content[1].text),V1("prompt"),g1(V2.message.content[0].source.data)})},onEscape:()=>A0(!1),tools:f}),G8.createElement(xI,null))}var As2=J1(Js2(),1),{program:Qk6,createCommand:zk6,createArgument:qk6,createOption:Uk6,CommanderError:Nk6,InvalidArgumentError:$k6,InvalidOptionArgumentError:Rk6,Command:_s2,Argument:Ek6,Option:Ks2,Help:Mk6}=As2.default;async function Ds2({commands:I,permissionContext:Z,hasPermissionsToUseTool:G,messageLogName:W,prompt:B,cwd:V,tools:Y,mcpClients:w,verbose:X=!1,maxTurns:H,slowAndCapableModel:J,streamJson:A=!1}){await oA(V);let[K,D]=await Promise.all([nE(),xG(!0)]),z={messages:[],setForkConvoWithMessagesOnTheNextRender:()=>{},setMessages:()=>{},onChangeAPIKey:()=>{},options:{commands:I,tools:Y,verbose:X,slowAndCapableModel:J,forkNumber:0,messageLogName:W,maxThinkingTokens:0,mcpClients:w,isNonInteractiveSession:!0},getToolPermissionContext:()=>Z,abortController:new AbortController,readFileTimestamps:{},userProvidedHosts:new Set,setToolPermissionContext:()=>{}},U=await Zg(B,"prompt",()=>{},z,null),N=0;for await(let f of d61(U,K,D,G,z)){if(U.push(f),A){if(f.type==="assistant"||f.type==="user")console.log(JSON.stringify(f.message,null,2))}if(f.type==="user"&&H&&++N>=H){U.push(c3({content:`[SYSTEM] --max-turns ${H} has been reached. Stopping conversation.`}));break}}let L=$H(U);if(!L||L.type!=="assistant")throw new Error("Expected content to be an assistant message");if(L.message.content[0]?.type!=="text")throw new Error(`Expected first content item to be text, but got ${JSON.stringify(L.message.content[0],null,2)}`);TL(W,0,0,yL(U));let g=W;return{resultText:L.message.content[0].text,transcript:EZ(U),totalCost:l$(),totalApiDurationMs:ey(),totalApiDurationMsWithoutRetries:KX1(),numTurns:U.length-1,messageHistoryFile:g}}var iV=J1(R1(),1);var fs2=J1(Q$(),1);var MM=J1(R1(),1);function Cs2({stepIndex:I,wizardSteps:Z,exitState:G}){let W=Z[I],B=I>0&&W&&W.getPrevStepId!==void 0;return MM.default.createElement(p,{marginLeft:2,marginTop:1},MM.default.createElement(b,{dimColor:!0},G.pending?MM.default.createElement(MM.default.Fragment,null,"Press ",G.keyName," again to exit"):MM.default.createElement(MM.default.Fragment,null,"Enter to confirm ",B?"· Esc to go back":null)))}var i2=J1(R1(),1);var Fs2=J1(Q$(),1);function Qs2(I){let Z=I.trim(),G=/^([A-Za-z0-9_]+=\S+\s+)+/,W=Z.match(G),B="",V=Z;if(W)B=W[0].trim().split(/\s+/).filter(Boolean).join(" "),V=Z.substring(W[0].length).trim();let Y=Fs2.default.parse(V);if(Y.length>0&&typeof Y[0]==="string"){let w=Y[0],X=Y.slice(1).filter((H)=>typeof H==="string").join(" ");return{command:w,args:X,envVars:B}}return{command:V,args:"",envVars:B}}function zs2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y,theme:w}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Add MCP Server"),i2.default.createElement(b,null,"Set up a new MCP server to extend Claude Code with custom tools and commands."),i2.default.createElement(b,null,"Choose a unique name for this server:"),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"my-server",value:I.serverName,onChange:(X)=>Z({serverName:X}),onSubmit:()=>I.serverName.trim()&&G(),columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="name"})),i2.default.createElement(p,null,i2.default.createElement(b,{dimColor:!0},"Learn more:"," ",i2.default.createElement(b,{color:w.suggestion},"https://modelcontextprotocol.io/"))))}function qs2({state:I,updateState:Z,setCurrentStepId:G,theme:W}){let B="";switch(I.scope){case"project":B="the project .mcp.json configuration";break;case"user":B="your global configuration";break;case"local":default:B="your user configuration for this project";break}return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0,color:W.warning},"Name Already Exists"),i2.default.createElement(b,null,"A server named ",i2.default.createElement(b,{bold:!0},I.serverName)," already exists in"," ",B,"."),i2.default.createElement(b,null,"What would you like to do?"),i2.default.createElement(p,{marginTop:1},i2.default.createElement(T9,{options:[{label:"Rename (choose a different name)",value:"rename"},{label:"Continue with a different scope",value:"scope"},{label:"Overwrite the existing server",value:"overwrite"}],onChange:(V)=>{if(V==="rename")G("name"),Z({serverName:""});else if(V==="scope")G("scope");else if(V==="overwrite")G("command")}})))}function Us2({updateState:I,setCurrentStepId:Z}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Server Scope"),i2.default.createElement(b,null,"Choose where this server will be available:"),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:Hg("project"),value:"project"},{label:Hg("local"),value:"local"},{label:Hg("user"),value:"user"}],onChange:(W)=>{let B=qM(W);I({scope:B}),G()}})));function G(){Z("transport")}}function Ns2({updateState:I,setCurrentStepId:Z}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Transport Type"),i2.default.createElement(b,null,"Choose how Claude Code will connect to your MCP server:"),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:"Stdio (command-line process)",value:"stdio"},{label:"SSE (Server-Sent Events over HTTP)",value:"sse"}],onChange:(G)=>{let W=R81(G);if(I({transport:W}),W==="sse")Z("url");else Z("command")}})))}function $s2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"SSE Server URL"),i2.default.createElement(b,null,"Enter the URL for your SSE MCP server:"),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"https://example.com/mcp-sse",value:I.url,onChange:(w)=>Z({url:w}),onSubmit:()=>{if(I.url.trim())G()},columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="url"})))}function Rs2({state:I,updateState:Z,goToNextStep:G,cursorOffset:W,setCursorOffset:B,textInputColumns:V,currentStepId:Y}){let[w,X]=i2.default.useState(()=>{if(I.command&&(I.args||I.envVars))return[I.envVars,I.command,I.args].filter(Boolean).join(" ");return I.command});return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Server Command"),i2.default.createElement(b,null,"Enter the full command to start your MCP server."),i2.default.createElement(p,{flexDirection:"row",gap:1},i2.default.createElement(b,null,">"),i2.default.createElement(dV,{placeholder:"command with arguments (e.g. NODE_ENV=dev npx my-server)",value:w,onChange:X,onSubmit:()=>{if(w.trim()){let H=Qs2(w);Z({command:H.command,args:H.args,envVars:H.envVars}),G()}},columns:V,cursorOffset:W,onChangeCursorOffset:B,showCursor:!0,focus:Y==="command"})))}function Es2({state:I,isAdding:Z,error:G,goToPrevStep:W,handleAddServer:B,theme:V}){return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{bold:!0},"Review and Confirm"),i2.default.createElement(p,{flexDirection:"column",paddingLeft:1},i2.default.createElement(b,null,"Name: ",i2.default.createElement(b,{color:V.success},I.serverName)),i2.default.createElement(b,null,"Scope: ",i2.default.createElement(b,{color:V.success},I.scope)),i2.default.createElement(b,null,"Type: ",i2.default.createElement(b,{color:V.success},I.transport)),I.transport==="sse"?i2.default.createElement(b,null,"URL: ",i2.default.createElement(b,{color:V.success},I.url)):i2.default.createElement(i2.default.Fragment,null,i2.default.createElement(b,null,"Command: ",i2.default.createElement(b,{color:V.success},I.command)),I.args&&i2.default.createElement(b,null,"Arguments: ",i2.default.createElement(b,{color:V.success},I.args)),I.envVars&&i2.default.createElement(b,null,"Environment: ",i2.default.createElement(b,{color:V.success},I.envVars)))),Z?i2.default.createElement(p,{marginTop:1},i2.default.createElement(hX,null),i2.default.createElement(b,null,"Adding MCP server...")):i2.default.createElement(p,{flexDirection:"column",gap:1},G&&i2.default.createElement(b,{color:V.error},"Error: ",G),i2.default.createElement(p,null,i2.default.createElement(T9,{options:[{label:"Confirm",value:"add"},{label:"Go back",value:"edit"}],onChange:(Y)=>{if(Y==="add")B();else W()}}))))}function Ms2({state:I,theme:Z}){let G=(W)=>{switch(W){case"local":return"private to you in this project";case"project":return"shared with anyone using this project via .mcp.json";case"user":return"available to you in all projects";default:return W}};return i2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},i2.default.createElement(b,{color:Z.success},"✓ MCP Server added successfully!"),i2.default.createElement(b,null,'Your server "',I.serverName,'" has been added to the'," ",I.scope," configuration (",G(I.scope),")."),i2.default.createElement(b,{dimColor:!0},"View server info with: claude mcp get ",I.serverName,". Remove with: claude mcp remove ",I.serverName))}var os5={serverName:"",scope:"user",transport:"stdio",command:"",args:"",envVars:"",url:""},LT1=[{id:"name",getNextStepId:()=>"scope",component:zs2},{id:"scope",getNextStepId:(I)=>{let Z=Tp(I.serverName);if(Z&&Z.scope===I.scope&&I.serverName.trim())return"name-validation";return"transport"},getPrevStepId:()=>"name",component:Us2},{id:"transport",getNextStepId:(I)=>{return I.transport==="sse"?"url":"command"},getPrevStepId:()=>"scope",component:Ns2},{id:"name-validation",getNextStepId:()=>null,getPrevStepId:()=>"scope",component:qs2},{id:"command",getNextStepId:()=>"confirm",getPrevStepId:()=>"transport",component:Rs2},{id:"url",getNextStepId:()=>"confirm",getPrevStepId:()=>"transport",component:$s2},{id:"confirm",getNextStepId:()=>"success",getPrevStepId:(I)=>I.transport==="sse"?"url":"command",component:Es2},{id:"success",getNextStepId:()=>null,component:Ms2}];function Ps2({onDone:I}){let Z=j1(),[G,W]=iV.useState("name"),[B,V]=iV.useState(os5),[Y,w]=iV.useState(0),[X,H]=iV.useState(null),[J,A]=iV.useState(!1),K=w3().columns-6,D=LT1.find((d)=>d.id===G);if(!D){let d=new Error("No current step");throw c1(d),d}let z=D?LT1.indexOf(D):0,U=(d)=>{V((k)=>({...k,...d}))};function N(){if(!D)return;let d=D.getNextStepId(B);if(d)W(d)}function L(){if(!D)return;if(G==="confirm"&&X)H(null);if(!D.getPrevStepId){let k=new Error("No previous step");throw c1(k),k}let d=D.getPrevStepId(B);if(d)W(d)}let g=D9();P2((d,k)=>{if(k.escape&&G!=="success")L()});async function f(){A(!0),H(null);try{if(x1("tengu_mcp_add",{source:"wizard",type:B.transport,scope:B.scope}),B.transport==="sse"){if(!B.url.trim())throw new Error("URL is required for SSE transport");CF(B.serverName,{type:"sse",url:B.url},B.scope)}else{let d=B.envVars.split(/[\n,]/).map((m)=>m.trim()).filter(Boolean),a=fs2.default.parse(B.args).filter((m)=>typeof m==="string");CF(B.serverName,{type:"stdio",command:B.command,args:a,env:$81(d)},B.scope)}x1("tengu_mcp_add_wizard_complete",{scope:B.scope,type:B.transport}),N(),setTimeout(()=>{I()},0)}catch(d){H(d.message),c1(d instanceof Error?d:new Error(String(d))),A(!1)}}let P={state:B,updateState:U,goToNextStep:N,goToPrevStep:L,setCurrentStepId:W,currentStepId:G,cursorOffset:Y,setCursorOffset:w,textInputColumns:K,error:X,setError:H,isAdding:J,setIsAdding:A,theme:Z,handleAddServer:f},M=D.component;return iV.default.createElement(iV.default.Fragment,null,iV.default.createElement(p,{flexDirection:"column"},iV.default.createElement(p,{flexDirection:"column",padding:1,gap:1,borderStyle:"round",borderColor:Z.secondaryText},iV.default.createElement(M,{...P})),G!=="success"&&iV.default.createElement(p,{paddingX:1},iV.default.createElement(Cs2,{stepIndex:z,wizardSteps:LT1,exitState:g}))))}var aG=J1(R1(),1);function Ls2({servers:I,scope:Z,onDone:G}){let W=j1(),B=Object.keys(I),V=aG.useMemo(()=>E81(),[]),Y=B.filter((H)=>V[H]!==void 0);function w(H){let J=0;for(let A of H){let K=I[A];if(K){let D=A;if(V[D]!==void 0){let z=1;while(V[`${A}_${z}`]!==void 0)z++;D=`${A}_${z}`}CF(D,K,Z),J++}}G(J)}let X=D9();return P2((H,J)=>{if(J.escape){G(0);return}}),aG.default.createElement(aG.default.Fragment,null,aG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:W.success},aG.default.createElement(b,{bold:!0,color:W.success},"Import MCP Servers from Claude Desktop"),aG.default.createElement(b,null,"Found ",B.length," MCP server",B.length!==1?"s":""," in Claude Desktop."),Y.length>0&&aG.default.createElement(b,{color:W.warning},"Note: Some servers already exist with the same name. If selected, they will be imported with a numbered suffix."),aG.default.createElement(b,null,"Please select the servers you want to import:"),aG.default.createElement(Dt,{options:B.map((H)=>({label:`${H}${Y.includes(H)?" (already exists)":""}`,value:H})),defaultValue:B.filter((H)=>!Y.includes(H)),onSubmit:w})),aG.default.createElement(p,{marginLeft:3},aG.default.createElement(b,{dimColor:!0},X.pending?aG.default.createElement(aG.default.Fragment,null,"Press ",X.keyName," again to exit"):aG.default.createElement(aG.default.Fragment,null,"Space to select · Enter to confirm · Esc to cancel"))))}import*as qF from"fs";import*as ST1 from"path";import*as Ss2 from"os";function ts5(){let I=h$();if(!BX1.includes(I))throw new Error(`Unsupported platform: ${I} - Claude Desktop integration only works on macOS and WSL.`);if(I==="macos")return ST1.join(Ss2.homedir(),"Library","Application Support","Claude","claude_desktop_config.json");let Z=process.env.USERPROFILE?process.env.USERPROFILE.replace(/\\/g,"/"):null;if(Z){let W=`/mnt/c${Z.replace(/^[A-Z]:/,"")}/AppData/Roaming/Claude/claude_desktop_config.json`;if(qF.existsSync(W))return W}try{if(qF.existsSync("/mnt/c/Users")){let W=qF.readdirSync("/mnt/c/Users");for(let B of W){if(B==="Public"||B==="Default"||B==="Default User"||B==="All Users")continue;let V=ST1.join("/mnt/c/Users",B,"AppData","Roaming","Claude","claude_desktop_config.json");if(qF.existsSync(V))return V}}}catch(G){c1(G instanceof Error?G:new Error(String(G)))}throw new Error("Could not find Claude Desktop config file in Windows. Make sure Claude Desktop is installed on Windows.")}function ds2(){if(!BX1.includes(h$()))throw new Error("Unsupported platform - Claude Desktop integration only works on macOS and WSL.");try{let I=ts5();if(!qF.existsSync(I))return{};let Z=qF.readFileSync(I,"utf8"),G=AZ(Z);if(!G||typeof G!=="object")return{};let W=G.mcpServers;if(!W||typeof W!=="object")return{};let B={};for(let[V,Y]of Object.entries(W)){if(!Y||typeof Y!=="object")continue;let w=PX1.safeParse(Y);if(w.success)B[V]=w.data}return B}catch(I){return c1(I instanceof Error?I:new Error(String(I))),{}}}import{cwd as WN}from"process";var wG=J1(R1(),1);import{homedir as Os2}from"os";function vs2({onDone:I}){let Z=j1(),G=Cz(),W=Object.keys(G).length>0;wG.default.useEffect(()=>{let Y=Os2()===c0();x1("trust_dialog_shown",{isHomeDir:Y,hasMcpServers:W})},[W]);function B(Y){let w=W9();if(Y==="no")process.exit(1);let X=Y==="yes_enable_mcp",H=Os2()===c0();if(x1("trust_dialog_accept",{isHomeDir:H,hasMcpServers:W,enableMcp:X}),W)r3({...w,...H?{}:{hasTrustDialogAccepted:!0},...X?{enabledMcpjsonServers:Object.keys(G),enableAllProjectMcpServers:!0}:{disabledMcpjsonServers:Object.keys(G)}});else if(!H)r3({...w,hasTrustDialogAccepted:!0});I()}let V=D9();return P2((Y,w)=>{if(w.escape){process.exit(0);return}}),wG.default.createElement(wG.default.Fragment,null,wG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},wG.default.createElement(b,{bold:!0,color:Z.warning},"Do you trust the files in this folder?"),wG.default.createElement(b,{bold:!0},process.cwd()),wG.default.createElement(p,{flexDirection:"column",gap:1},wG.default.createElement(b,null,S2," may read files in this folder. Reading untrusted files may lead ",S2," to behave in an unexpected ways."),wG.default.createElement(b,null,"With your permission ",S2," may execute files in this folder.",W&&" This project also contains MCP servers defined in .mcp.json that can execute code on your machine if enabled."," ","Executing untrusted code is unsafe."),wG.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-security"})),wG.default.createElement(T9,{options:W?[{label:"Yes, proceed with MCP servers enabled",value:"yes_enable_mcp"},{label:"Yes, proceed with MCP servers disabled",value:"yes_disable_mcp"},{label:"No, exit",value:"no"}]:[{label:"Yes, proceed",value:"yes_enable_mcp"},{label:"No, exit",value:"no"}],onChange:(Y)=>B(Y)})),wG.default.createElement(p,{marginLeft:3},wG.default.createElement(b,{dimColor:!0},V.pending?wG.default.createElement(wG.default.Fragment,null,"Press ",V.keyName," again to exit"):wG.default.createElement(wG.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var dT1=J1(R1(),1);class OT1 extends Lp{constructor(I,Z){var G;super(Z);this._serverInfo=I,this._capabilities=(G=Z===null||Z===void 0?void 0:Z.capabilities)!==null&&G!==void 0?G:{},this._instructions=Z===null||Z===void 0?void 0:Z.instructions,this.setRequestHandler($g1,(W)=>this._oninitialize(W)),this.setNotificationHandler(Eg1,()=>{var W;return(W=this.oninitialized)===null||W===void 0?void 0:W.call(this)})}registerCapabilities(I){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=F81(this._capabilities,I)}assertCapabilityForMethod(I){var Z,G;switch(I){case"sampling/createMessage":if(!((Z=this._clientCapabilities)===null||Z===void 0?void 0:Z.sampling))throw new Error(`Client does not support sampling (required for ${I})`);break;case"roots/list":if(!((G=this._clientCapabilities)===null||G===void 0?void 0:G.roots))throw new Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){switch(I){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Server does not support sampling (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${I})`);break;case"ping":case"initialize":break}}async _oninitialize(I){let Z=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:W81.includes(Z)?Z:Rp,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},KF)}async createMessage(I,Z){return this.request({method:"sampling/createMessage",params:I},Sg1,Z)}async listRoots(I,Z){return this.request({method:"roots/list",params:I},vg1,Z)}async sendLoggingMessage(I){return this.notification({method:"notifications/message",params:I})}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}import gs2 from"node:process";class vT1{constructor(I=gs2.stdin,Z=gs2.stdout){this._stdin=I,this._stdout=Z,this._readBuffer=new Sp,this._started=!1,this._ondata=(G)=>{this._readBuffer.append(G),this.processReadBuffer()},this._onerror=(G)=>{var W;(W=this.onerror)===null||W===void 0||W.call(this,G)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var I,Z;while(!0)try{let G=this._readBuffer.readMessage();if(G===null)break;(I=this.onmessage)===null||I===void 0||I.call(this,G)}catch(G){(Z=this.onerror)===null||Z===void 0||Z.call(this,G)}}async close(){var I;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(I=this.onclose)===null||I===void 0||I.call(this)}send(I){return new Promise((Z)=>{let G=Q81(I);if(this._stdout.write(G))Z();else this._stdout.once("drain",Z)})}}var Ts2={readFileTimestamps:{}},ys2=[p31];async function bs2(I){await oA(I);let Z=new OT1({name:"claude/tengu",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION},{capabilities:{tools:{}}});Z.setRequestHandler(Pg1,async()=>{let W=await oU();return{tools:await Promise.all(W.map(async(B)=>({...B,description:await B.description(r.object({}),{isNonInteractiveSession:!0,permissionMode:"default"}),inputSchema:mU(B.inputSchema)})))}}),Z.setRequestHandler(Lg1,async({params:{name:W,arguments:B}})=>{let V=await oU(),Y=V.find((w)=>w.name===W);if(!Y)throw new Error(`Tool ${W} not found`);try{if(!await Y.isEnabled())throw new Error(`Tool ${W} is not enabled`);let w=await JZ(),X=await Y.validateInput?.(B??{},{abortController:new AbortController,options:{commands:ys2,tools:V,slowAndCapableModel:w,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,mcpClients:[],isNonInteractiveSession:!0},getToolPermissionContext:yO,readFileTimestamps:Ts2.readFileTimestamps,userProvidedHosts:new Set});if(X&&!X.result)throw new Error(`Tool ${W} input is invalid: ${X.message}`);let H=Y.call(B??{},{abortController:new AbortController,options:{commands:ys2,tools:V,slowAndCapableModel:await JZ(),forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,mcpClients:[],isNonInteractiveSession:!0},getToolPermissionContext:yO,readFileTimestamps:Ts2.readFileTimestamps,userProvidedHosts:new Set},jU,c3({content:[]})),J=await i_(H);if(J.type!=="result")throw new Error(`Tool ${W} did not return a result`);return{content:Array.isArray(J)?J.map((A)=>({type:"text",text:"text"in A?A.text:JSON.stringify(A)})):[{type:"text",text:typeof J==="string"?J:JSON.stringify(J.data)}]}}catch(w){return c1(w instanceof Error?w:new Error(String(w))),{isError:!0,content:[{type:"text",text:`Error: ${w instanceof Error?w.message:String(w)}`}]}}});async function G(){let W=new vT1;await Z.connect(W)}return await G()}import{promises as js2}from"fs";import{join as es5}from"path";var Io5=2592000000;function Zo5(I){let Z=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(Z)}async function Go5(){let I=LD.messages(),Z=LD.errors(),G=new Date(Date.now()-Io5),W={messages:0,errors:0};for(let B of[I,Z])try{let V=await js2.readdir(B);for(let Y of V)try{if(Zo5(Y)<G)if(await js2.unlink(es5(B,Y)),B===I)W.messages++;else W.errors++}catch(w){c1(w)}}catch(V){if(V instanceof Error&&"code"in V&&V.code!=="ENOENT")c1(V)}return W}function ms2(){setImmediate(Go5).unref()}var TT1=J1(R1(),1);var nV=J1(R1(),1);var gT1=J1(R1(),1);function i81(){return gT1.default.createElement(b,null,"MCP servers may execute code or access system resources. All tool calls require approval. Learn more in the"," ",gT1.default.createElement(dR,{url:"https://docs.anthropic.com/s/claude-code-mcp"},"MCP documentation"),".")}function ks2({serverNames:I,onDone:Z}){let G=j1();function W(V){let Y=W9();if(!Y.enabledMcpjsonServers)Y.enabledMcpjsonServers=[];if(!Y.disabledMcpjsonServers)Y.disabledMcpjsonServers=[];let[w,X]=aG1(I,(H)=>V.includes(H));x1("tengu_mcp_multidialog_choice",{approved:w.length,rejected:X.length}),Y.enabledMcpjsonServers.push(...w),Y.disabledMcpjsonServers.push(...X),r3(Y),Z()}let B=D9();return P2((V,Y)=>{if(Y.escape){let w=W9();if(!w.disabledMcpjsonServers)w.disabledMcpjsonServers=[];for(let X of I)if(!w.disabledMcpjsonServers.includes(X))w.disabledMcpjsonServers.push(X);r3(w),Z();return}}),nV.default.createElement(nV.default.Fragment,null,nV.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},nV.default.createElement(b,{bold:!0,color:G.warning},I.length," new MCP servers found in .mcp.json"),nV.default.createElement(b,null,"Select any you wish to enable."),nV.default.createElement(i81,null),nV.default.createElement(Dt,{options:I.map((V)=>({label:V,value:V})),defaultValue:I,onSubmit:W})),nV.default.createElement(p,{marginLeft:3},nV.default.createElement(b,{dimColor:!0},B.pending?nV.default.createElement(nV.default.Fragment,null,"Press ",B.keyName," again to exit"):nV.default.createElement(nV.default.Fragment,null,"Space to select · Enter to confirm · Esc to reject all"))))}var Kw=J1(R1(),1);function xs2({serverName:I,onDone:Z}){let G=j1();function W(V){let Y=W9();switch(x1("tengu_mcp_dialog_choice",{choice:V}),V){case"yes":case"yes_all":{if(!Y.enabledMcpjsonServers)Y.enabledMcpjsonServers=[];if(!Y.enabledMcpjsonServers.includes(I))Y.enabledMcpjsonServers.push(I);if(V==="yes_all")Y.enableAllProjectMcpServers=!0;r3(Y),Z();break}case"no":{if(!Y.disabledMcpjsonServers)Y.disabledMcpjsonServers=[];if(!Y.disabledMcpjsonServers.includes(I))Y.disabledMcpjsonServers.push(I);r3(Y),Z();break}}}let B=D9();return P2((V,Y)=>{if(Y.escape){Z();return}}),Kw.default.createElement(Kw.default.Fragment,null,Kw.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},Kw.default.createElement(b,{bold:!0,color:G.warning},"New MCP server found in .mcp.json: ",I),Kw.default.createElement(i81,null),Kw.default.createElement(T9,{options:[{label:"Use this and all future MCP servers in this project",value:"yes_all"},{label:"Use this MCP server",value:"yes"},{label:"Continue without using this MCP server",value:"no"}],onChange:(V)=>W(V)})),Kw.default.createElement(p,{marginLeft:3},Kw.default.createElement(b,{dimColor:!0},B.pending?Kw.default.createElement(Kw.default.Fragment,null,"Press ",B.keyName," again to exit"):Kw.default.createElement(Kw.default.Fragment,null,"Enter to confirm · Esc to reject"))))}async function us2(){let I=Cz(),Z=Object.keys(I).filter((G)=>ng1(G)==="pending");if(Z.length===0)return;await new Promise((G)=>{let W=()=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H",()=>{G()})};if(Z.length===1&&Z[0]!==void 0){let B=kI(TT1.default.createElement(xs2,{serverName:Z[0],onDone:()=>{B.unmount?.(),W()}}),{exitOnCtrlC:!1})}else{let B=kI(TT1.default.createElement(ks2,{serverNames:Z,onDone:()=>{B.unmount?.(),W()}}),{exitOnCtrlC:!1})}})}var OB=J1(R1(),1);import{writeFileSync as Wo5}from"fs";function Bo5({filePath:I,errorDescription:Z,onExit:G,onReset:W}){let B=j1();P2((w,X)=>{if(X.escape)G()});let V=D9(),Y=(w)=>{if(w==="exit")G();else W()};return OB.default.createElement(OB.default.Fragment,null,OB.default.createElement(p,{flexDirection:"column",borderColor:B.error,borderStyle:"round",padding:1,width:70,gap:1},OB.default.createElement(b,{bold:!0},"Configuration Error"),OB.default.createElement(p,{flexDirection:"column",gap:1},OB.default.createElement(b,null,"The configuration file at ",OB.default.createElement(b,{bold:!0},I)," contains invalid JSON."),OB.default.createElement(b,null,Z)),OB.default.createElement(p,{flexDirection:"column"},OB.default.createElement(b,{bold:!0},"Choose an option:"),OB.default.createElement(T9,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:Y}))),V.pending?OB.default.createElement(b,{dimColor:!0},"Press ",V.keyName," again to exit"):OB.default.createElement(xI,null))}function hs2({error:I}){return new Promise((Z)=>{kI(OB.default.createElement(Bo5,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{Z(),process.exit(1)},onReset:()=>{Wo5(I.filePath,JSON.stringify(I.defaultConfig,null,2)),Z(),process.exit(0)}}),{exitOnCtrlC:!1})})}var XG=J1(R1(),1);function ps2({onAccept:I}){let Z=j1();XG.default.useEffect(()=>{x1("bypass_permissions_mode_dialog_shown",{})},[]);function G(B){let V=f0();switch(B){case"accept":{x1("bypass_permissions_mode_dialog_accept",{}),o2({...V,bypassPermissionsModeAccepted:!0}),I();break}case"decline":{process.exit(1);break}}}let W=D9();return P2((B,V)=>{if(V.escape){process.exit(0);return}}),XG.default.createElement(XG.default.Fragment,null,XG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.error},XG.default.createElement(b,{bold:!0,color:Z.error},"WARNING: ",S2," running in Bypass Permissions mode"),XG.default.createElement(p,{flexDirection:"column",gap:1},XG.default.createElement(b,null,"In Bypass Permissions mode, ",S2," will not ask for your approval before running potentially dangerous commands.",XG.default.createElement(xI,null),"This mode should only be used in a sandboxed container/VM that has restricted internet access and can easily be restored if damaged."),XG.default.createElement(b,null,"By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."),XG.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-security"})),XG.default.createElement(T9,{options:[{label:"No, exit",value:"decline"},{label:"Yes, I accept",value:"accept"}],onChange:(B)=>G(B)})),XG.default.createElement(p,{marginLeft:3},XG.default.createElement(b,{dimColor:!0},W.pending?XG.default.createElement(XG.default.Fragment,null,"Press ",W.keyName," again to exit"):XG.default.createElement(XG.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var n81=J1(R1(),1);function ls2(){let I=j1();return n81.default.createElement(p,{flexDirection:"row"},n81.default.createElement(b,{color:I.secondaryText},"※ Tip: Use git worktrees to run multiple Claude sessions in parallel."," ",n81.default.createElement(sH,{url:"https://docs.anthropic.com/s/claude-code-worktrees"},"Learn more")))}var Vo5=[{id:"git-worktrees",content:ls2,cooldownSessions:30,isRelevant:async()=>{try{let I=f0();return await Hu()<=1&&I.numStartups>50}catch(I){return!1}}},{id:"terminal-setup",content:"Run /terminal-setup to enable convenient terminal integration like Shift + Enter for new line and more",cooldownSessions:15,isRelevant:()=>{let I=f0();return kC.isEnabled&&!I.shiftEnterKeyBindingInstalled}},{id:"shift-enter",content:"Press Shift+Enter to send a multi-line message",cooldownSessions:20,isRelevant:()=>{let I=f0();return Boolean(I.shiftEnterKeyBindingInstalled&&I.numStartups>3)}},{id:"memory-command",content:"Use /memory to view and manage Claude memory",cooldownSessions:30,isRelevant:()=>{return f0().memoryUsageCount<=0}},{id:"theme-command",content:"Use /theme to change the color theme",cooldownSessions:40,isRelevant:()=>!0}],Yo5=[],cs2=[...Vo5,...Yo5];function a81(I){for(let Z=0;Z<I.length;Z+=2000)process.stdout.write(I.substring(Z,Z+2000))}function wo5(){let I=process.execArgv.some((G)=>/--inspect(-brk)?|--debug(-brk)?/.test(G)),Z=process.env.NODE_OPTIONS&&/--inspect(-brk)?|--debug(-brk)?/.test(process.env.NODE_OPTIONS);try{return!!global.require("inspector").url()||I||Z}catch{return I||Z}}if(wo5())process.exit(1);YB0();Object.keys(_w0);function Ao5(){let I=f0();o2({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION})}async function _o5(I,Z){if(!1==="true")return;let G=f0();if(!G.theme||!G.hasCompletedOnboarding)await BI(),await new Promise((W)=>{kI(QK.default.createElement(Sd1,{onDone:async()=>{Ao5(),await BI(),W()}}),{exitOnCtrlC:!1})});if(process.env.ANTHROPIC_API_KEY,!Z&&I!=="bypassPermissions"){if(!sW0())await new Promise((W)=>{kI(QK.default.createElement(vs2,{onDone:W}),{exitOnCtrlC:!1})});await us2()}if(I==="bypassPermissions"&&!f0().bypassPermissionsModeAccepted)if(!Z)await new Promise((W)=>{kI(QK.default.createElement(ps2,{onAccept:W}))});else console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}function Ko5({allowedToolsCli:I,permissionMode:Z}){let G=No5(I);return Tj2({mode:Z,alwaysAllowRules:{cliArg:G}},Pj2())}function Do5(){let I=f0();o2({...I,numStartups:(I.numStartups??0)+1}),Co5()}async function Co5(){let[I,Z]=await Promise.all([NJ(),Hu()]);x1("tengu_startup_telemetry",{is_git:I,worktree_count:Z})}async function fM(I,Z,G){let W=process.version.match(/^v(\d+)\./)?.[1];if(!W||parseInt(W)<18)console.error(_0.bold.red("Error: Claude Code requires Node.js version 18 or higher.")),process.exit(1);if(Object.keys(f0().env??{}).length>0)Object.assign(process.env,f0().env);if(await v$("force_local_installation_migration")&&!oE()&&!G&&!0&&!0){console.log(_0.yellow("⚠️ Migrating Claude CLI to local installation...")),console.log("This improves auto-updates and removes dependency on global npm permissions."),console.log("Your existing configuration and history will be preserved.");try{x1("tengu_forced_migration_start",{gateControlled:!0}),await new Promise((H)=>{let{waitUntilExit:J}=kI(QK.default.createElement($h,null));J().then(()=>{H()})}),await x1("tengu_forced_migration_success",{gateControlled:!0}),console.log(_0.green("✅ Migration complete!")),console.log("Please restart Claude CLI to use the new installation."),process.exit(0)}catch(H){let J=H instanceof Error?H:new Error(String(H));c1(J),x1("tengu_forced_migration_failure",{gateControlled:!0}),console.log(_0.red("⚠️ Migration encountered an error, continuing with global installation."))}}let V=M$2();if(V.status==="restored")console.log(_0.yellow("Detected an interrupted iTerm2 setup. Your original settings have been restored. You may need to restart iTerm2 for the changes to take effect."));else if(V.status==="failed")console.error(_0.red(`Failed to restore iTerm2 settings. Please manually restore your original settings with: defaults import com.googlecode.iterm2 ${V.backupPath}.`));try{let H=await J91();if(H.status==="restored")console.log(_0.yellow("Detected an interrupted Terminal.app setup. Your original settings have been restored. You may need to restart Terminal.app for the changes to take effect."));else if(H.status==="failed")console.error(_0.red(`Failed to restore Terminal.app settings. Please manually restore your original settings with: defaults import com.apple.Terminal ${H.backupPath}.`))}catch(H){c1(H instanceof Error?H:new Error(String(H)))}let Y=G??!1;if(ms2(),c61(),g81(Y),xG(Y),uP(),Ju(),Hz())HX1();let w=new AbortController;if(setTimeout(()=>w.abort(),3000),Xr(c0(),w.signal,[]),oA(I),Z==="bypassPermissions"){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);if(!f0().bypassPermissionsModeAccepted)console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}if(k$2())x1("tengu_migrate_api_key_to_keychain",{success:!0});let X=W9();if(X.lastCost!==void 0&&X.lastDuration!==void 0)x1("tengu_exit",{last_session_cost:X.lastCost,last_session_api_duration:X.lastAPIDuration,last_session_duration:X.lastDuration,last_session_lines_added:X.lastLinesAdded,last_session_lines_removed:X.lastLinesRemoved,last_session_id:X.lastSessionId}),r3({...X,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastLinesAdded:void 0,lastLinesRemoved:void 0,lastSessionId:void 0});if(!Y)Zb2()}async function Fo5(){try{IB0()}catch(I){if(I instanceof bL){await hs2({error:I});return}}await zo5()}async function Qo5(I){let Z="",G={exitOnCtrlC:I,onFlicker(){x1("tengu_flicker",{})}};if(!process.stdin.isTTY&&!0&&!process.argv.includes("mcp")){if(Z=await qo5(),process.platform!=="win32")try{let W=Ho5("/dev/tty","r");G={...G,stdin:new Xo5(W)}}catch(W){c1(W)}}return{stdinContent:Z,renderContext:G}}async function zo5(){let I=new _s2;I.name("claude").description(`${S2} - starts an interactive session by default, use -p/--print for non-interactive output`).argument("[prompt]","Your prompt",String).option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).option("-p, --print","Print response and exit (useful for pipes)",()=>!0).option("--output-format <format>",'Output format (only works with --print): "text" (default), "json" (single result), or "stream-json" (realtime streaming)').option("--json","[Deprecated: Use --output-format json instead] Output JSON in the shape {cost_usd: number, duration_ms: number, duration_api_ms: number, result: string} (only works with --print)",()=>!0).option("--mcp-debug","Enable MCP debug mode (shows MCP server errors)",()=>!0).option("--dangerously-skip-permissions","Bypass all permission checks. Only works in Docker containers with no internet access.",()=>!0).addOption(new Ks2("--max-turns <turns>","Maximum number of agentic turns in non-interactive mode. This will early exit the conversation after the specified number of turns. (only works with --print)").argParser(Number).hideHelp()).option("--allowedTools <tools...>",'Comma or space-separated list of tool names to allow (e.g. "Bash(git*) Edit Replace")').action(async(W,{debug:B,verbose:V,print:Y,outputFormat:w,json:X,dangerouslySkipPermissions:H,allowedTools:J=[],maxTurns:A})=>{let K=H?"bypassPermissions":"default";if(!Y)await _o5(K,Y);let[,D,z,U,N,{stdinContent:L,renderContext:g}]=await Promise.all([fM(WN(),K,Y),c61(),oU(),JZ(),lr2(cs2),Qo5(!1)]),f=Object.keys(UM()).length;x1("tengu_init",{entrypoint:"claude",hasInitialPrompt:Boolean(W),hasStdin:Boolean(L),verbose:V,debug:B,print:Y,outputFormat:w,numAllowedTools:J.length,mcpClientCount:f}),pm2(),Do5();let P=Ko5({allowedToolsCli:J,permissionMode:K}),M=[W,L].filter(Boolean).join(`
|
|
1771
|
+
`),{clients:d=[],tools:k=[],commands:a=[]}=M?await Va2():{clients:[],tools:[],commands:[]};if(Y){if(!M)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);if(X&&!w)w="json";if(w&&!["text","json","stream-json"].includes(w))console.error("Error: --output-format must be one of: text, json, stream-json"),process.exit(1);if(V&&w!=="json"&&w!=="stream-json")throw new Error("When using --print, --verbose must be used together with --output-format json or stream-json");GN(M);let m=zr(new Date),X1=await Ds2({commands:[...D,...a],hasPermissionsToUseTool:jU,messageLogName:m,prompt:M,cwd:WN(),tools:[...z,...k],permissionContext:P,verbose:V,mcpClients:d,maxTurns:A,slowAndCapableModel:U,streamJson:w==="stream-json"});if(w==="json"){let Z1={role:"system",cost_usd:X1.totalCost,duration_ms:X1.totalApiDurationMsWithoutRetries,duration_api_ms:X1.totalApiDurationMs,result:X1.resultText};if(V){let $1=[...X1.transcript.filter((z1)=>z1.type!=="progress").map((z1)=>z1.message),Z1];a81(JSON.stringify($1,null,2))}else a81(JSON.stringify(Z1,null,2))}else if(w==="stream-json"){let Z1={role:"system",cost_usd:X1.totalCost,duration_ms:X1.totalApiDurationMsWithoutRetries,duration_api_ms:X1.totalApiDurationMs};console.log(JSON.stringify(Z1,null,2))}else if(!V)a81(X1.resultText);process.exit(0)}else kI(QK.default.createElement(Sv1,{commands:[...D,...a],debug:B,initialPrompt:M,messageLogName:zr(new Date),shouldShowPromptInput:!0,verbose:V,tools:[...z,...k],initialPermissionContext:P,slowAndCapableModel:U,tipOfTheDay:N,mcpClients:d}),g)}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION} (${S2})`,"-v, --version");let Z=I.command("config").description("Manage configuration (eg. claude config set -g theme dark)");Z.command("get <key>").description("Get a config value").option("-g, --global","Use global config").action(async(W,{global:B})=>{await fM(WN(),"default"),console.log(GB0(W,B??!1)),process.exit(0)}),Z.command("set <key> <value>").description("Set a config value").option("-g, --global","Use global config").action(async(W,B,{global:V})=>{await fM(WN(),"default"),WB0(W,B,V??!1),console.log(`Set ${W} to ${B}`),process.exit(0)}),Z.command("remove <key> [values...]").alias("rm").description("Remove a config value or items from a config array").option("-g, --global","Use global config").action(async(W,B,{global:V})=>{if(await fM(WN(),"default"),GS(W,V??!1)&&B&&B.length>0){let Y=B.flatMap((w)=>w.includes(",")?w.split(","):w).map((w)=>w.trim()).filter((w)=>w.length>0);if(Y.length===0)console.error("Error: No valid values provided"),process.exit(1);oW0(W,Y,V??!1,!1),console.log(`Removed from ${W} in ${V?"global":"project"} config: ${Y.join(", ")}`)}else BB0(W,V??!1),console.log(`Removed ${W}`);process.exit(0)}),Z.command("list").alias("ls").description("List all config values").option("-g, --global","Use global config",!1).action(async({global:W})=>{await fM(WN(),"default"),console.log(JSON.stringify(VB0(W??!1),null,2)),process.exit(0)}),Z.command("add <key> <values...>").description("Add items to a config array (space or comma separated)").option("-g, --global","Use global config").action(async(W,B,{global:V})=>{await fM(WN(),"default");let Y=B.flatMap((w)=>w.includes(",")?w.split(","):w).map((w)=>w.trim()).filter((w)=>w.length>0);if(Y.length===0)console.error("Error: No valid values provided"),process.exit(1);br(W,Y,V??!1,!1),console.log(`Added to ${W} in ${V?"global":"project"} config: ${Y.join(", ")}`),process.exit(0)});let G=I.command("mcp").description("Configure and manage MCP servers");return G.command("serve").description(`Start the ${S2} MCP server`).action(async()=>{let W=WN();if(x1("tengu_mcp_start",{}),!Jo5(W))console.error(`Error: Directory ${W} does not exist`),process.exit(1);try{await fM(W,"default"),await bs2(W)}catch(B){console.error("Error: Failed to start MCP server:",B),process.exit(1)}}),G.command("add [name] [commandOrUrl] [args...]").description("Add a server (run without arguments for interactive wizard)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("-t, --transport <transport>","Transport type (stdio, sse)","stdio").option("-e, --env <env...>","Set environment variables (e.g. -e KEY=value)").action(async(W,B,V,Y)=>{if(!W)x1("tengu_mcp_add_wizard_start",{}),await new Promise((w)=>{kI(QK.default.createElement(Ps2,{onDone:()=>{w()}}),{exitOnCtrlC:!1})}),process.exit(0);else if(!B)console.error("Error: Command is required when server name is provided."),console.error("Usage: claude mcp add <name> <command> [args...]"),console.error(" claude mcp add (for interactive wizard)"),process.exit(1);try{let w=qM(Y.scope),X=R81(Y.transport);if(await x1("tengu_mcp_add",{type:X,scope:w,source:"command",transport:X}),X==="sse"){if(!B)console.error("Error: URL is required for SSE transport."),process.exit(1);CF(W,{type:"sse",url:B},w),console.log(`Added SSE MCP server ${W} with URL: ${B} to ${w} config`)}else{let H=$81(Y.env);CF(W,{type:"stdio",command:B,args:V||[],env:H},w),console.log(`Added stdio MCP server ${W} with command: ${B} ${(V||[]).join(" ")} to ${w} config`)}process.exit(0)}catch(w){console.error(w.message),process.exit(1)}}),G.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(W,B)=>{try{let V=qM(B.scope);await x1("tengu_mcp_delete",{name:W,scope:V}),Ia2(W,V),console.log(`Removed MCP server ${W} from ${V} config`),process.exit(0)}catch(V){console.error(V.message),process.exit(1)}}),G.command("list").description("List configured MCP servers").action(async()=>{await x1("tengu_mcp_list",{});let W=E81();if(Object.keys(W).length===0)console.log("No MCP servers configured. Use `claude mcp add` to add a server.");else for(let[B,V]of Object.entries(W))if(V.type==="sse")console.log(`${B}: ${V.url} (SSE)`);else console.log(`${B}: ${V.command} ${V.args.join(" ")}`);process.exit(0)}),G.command("get <name>").description("Get details about an MCP server").action(async(W)=>{await x1("tengu_mcp_get",{name:W});let B=Tp(W);if(!B)console.error(`No MCP server found with name: ${W}`),process.exit(1);if(console.log(`${W}:`),console.log(` Scope: ${Hg(B.scope)}`),B.type==="sse")console.log(" Type: sse"),console.log(` URL: ${B.url}`);else if(console.log(" Type: stdio"),console.log(` Command: ${B.command}`),console.log(` Args: ${B.args.join(" ")}`),B.env){console.log(" Environment:");for(let[V,Y]of Object.entries(B.env))console.log(` ${V}=${Y}`)}console.log(`
|
|
1762
1772
|
To remove this server, run: claude mcp remove "${W}" -s ${B.scope}`),process.exit(0)}),G.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(W,B,V)=>{try{let Y=qM(V.scope),w=AZ(B),X=w&&typeof w==="object"&&"type"in w?String(w.type||"stdio"):"stdio";await x1("tengu_mcp_add",{scope:Y,source:"json",type:X}),en2(W,B,Y),console.log(`Added ${X} MCP server ${W} to ${Y} config`),process.exit(0)}catch(Y){console.error(Y.message),process.exit(1)}}),G.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop (Mac and WSL only)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(W)=>{try{let B=qM(W.scope),V=h$();x1("tengu_mcp_add",{scope:B,platform:V,source:"desktop"});let Y=ds2();if(Object.keys(Y).length===0)console.log("No MCP servers found in Claude Desktop configuration or configuration file does not exist."),process.exit(0);let w=0,{unmount:X}=kI(QK.default.createElement(Ls2,{servers:Y,scope:B,onDone:(H)=>{if(w=H,X(),w>0)console.log(`
|
|
1763
1773
|
${_0.ansi256(e4().success)(`Successfully imported ${w} MCP server${w!==1?"s":""} to ${B} config.`)}`);else console.log(`
|
|
1764
|
-
No servers were imported.`);process.exit(0)}}),{exitOnCtrlC:!0})}catch(B){console.error(B.message),process.exit(1)}}),G.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{await x1("tengu_mcp_reset_mcpjson_choices",{});let W=W9();r3({...W,enabledMcpjsonServers:[],disabledMcpjsonServers:[],enableAllProjectMcpServers:!1}),console.log("All project-scoped (.mcp.json) server approvals and rejections have been reset."),console.log("You will be prompted for approval next time you start Claude Code."),process.exit(0)}),I.command("migrate-installer").description("Migrate from global npm installation to local installation").action(async()=>{if(oE())console.log("Already running from local installation. No migration needed."),process.exit(0);x1("tengu_migrate_installer_command",{}),await new Promise((W)=>{let{waitUntilExit:B}=kI(QK.default.createElement($h,null));B().then(()=>{W()})}),process.exit(0)}),I.command("doctor").description("Check the health of your Claude Code auto-updater").action(async()=>{x1("tengu_doctor_command",{}),await new Promise((W)=>{kI(QK.default.createElement(w31,{onDone:()=>W(),doctorMode:!0}),{exitOnCtrlC:!1})}),process.exit(0)}),I.command("update").description("Check for updates and install if available").action(async()=>{x1("tengu_update_check",{}),console.log(`Current version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1774
|
+
No servers were imported.`);process.exit(0)}}),{exitOnCtrlC:!0})}catch(B){console.error(B.message),process.exit(1)}}),G.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{await x1("tengu_mcp_reset_mcpjson_choices",{});let W=W9();r3({...W,enabledMcpjsonServers:[],disabledMcpjsonServers:[],enableAllProjectMcpServers:!1}),console.log("All project-scoped (.mcp.json) server approvals and rejections have been reset."),console.log("You will be prompted for approval next time you start Claude Code."),process.exit(0)}),I.command("migrate-installer").description("Migrate from global npm installation to local installation").action(async()=>{if(oE())console.log("Already running from local installation. No migration needed."),process.exit(0);x1("tengu_migrate_installer_command",{}),await new Promise((W)=>{let{waitUntilExit:B}=kI(QK.default.createElement($h,null));B().then(()=>{W()})}),process.exit(0)}),I.command("doctor").description("Check the health of your Claude Code auto-updater").action(async()=>{x1("tengu_doctor_command",{}),await new Promise((W)=>{kI(QK.default.createElement(w31,{onDone:()=>W(),doctorMode:!0}),{exitOnCtrlC:!1})}),process.exit(0)}),I.command("update").description("Check for updates and install if available").action(async()=>{x1("tengu_update_check",{}),console.log(`Current version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION}`),console.log("Checking for updates...");let W=await W31();if(!W)console.error("Failed to check for updates"),process.exit(1);if(W==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION)console.log(`${S2} is up to date (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION})`),process.exit(0);console.log(`New version available: ${W} (current: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION})`),console.log("Installing update...");let V=f0().autoUpdaterStatus==="migrated",Y=tE(),w;if(V||Y)console.log("Using local installation update method..."),w=await Uv();else console.log("Using global installation update method..."),w=await B31();switch(w){case"success":console.log(`Successfully updated from ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.VERSION} to version ${W}`);break;case"no_permissions":if(console.error("Error: Insufficient permissions to install update"),V)console.error("Try manually updating with:"),console.error(` cd ~/.claude/local && npm update ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL}`);else console.error("Try running with sudo or fix npm permissions"),console.error("Or consider migrating to a local installation with:"),console.error(" /migrate-installer");process.exit(1);break;case"install_failed":if(console.error("Error: Failed to install update"),V)console.error("Try manually updating with:"),console.error(` cd ~/.claude/local && npm update ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.68"}.PACKAGE_URL}`);else console.error("Or consider migrating to a local installation with:"),console.error(" /migrate-installer");process.exit(1);break;case"in_progress":console.error("Error: Another instance is currently performing an update"),console.error("Please wait and try again later"),process.exit(1);break}process.exit(0)}),await I.parseAsync(process.argv),I}async function qo5(){if(process.stdin.isTTY)return"";let I="";for await(let Z of process.stdin)I+=Z;return I}process.on("exit",()=>{if(Uo5(),N6.hasInstance())N6.getInstance().close()});process.on("SIGINT",()=>{process.exit(0)});function Uo5(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(`\x1B[?25h${oH1}`)}Fo5();function No5(I){if(!I)return[];return I.flatMap((Z)=>Z.split(",")).map((Z)=>Z.trim()).filter(Boolean)}export{fM as setup,No5 as parseAllowedTools,Ao5 as completeOnboarding};
|
|
1765
1775
|
|