@abacus-ai/cli 2.0.0-canary.6 → 2.0.0-canary.7
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/dist/index.mjs +3 -3
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -68,7 +68,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
68
68
|
`),r=n[0]?.match(/^Found (\d+) files$/),i,a;return r?(i=n.slice(2).filter(e=>e&&!e.startsWith(`...[`)&&!e.startsWith(`[Showing`)),a=`Found ${r[1]} files`):(i=n.filter(e=>e&&!e.startsWith(`...[`)&&!e.startsWith(`[Showing`)),a=i.length===0?`No matches`:`Found ${i.length} matches`),{phase:`success`,toolType:`grep`,data:{matches:i},summary:a}}};const Jl=tc({pattern:J().describe(`The glob pattern to match files against`),path:J().optional().describe(`The directory to search in. If not specified, the current working directory will be used. IMPORTANT: Omit this field to use the default directory. DO NOT enter "undefined" or "null" - simply omit it for the default behavior. Must be a valid directory path if provided.`)});var Yl=class extends Pl{name=`glob`;displayName=`Search`;description=`Fast file pattern matching tool that works with any codebase size`;parameters=Jl;async execute(e,t){return await t.workspace.glob({pattern:e.pattern,path:e.path})}format(e,t){let n=e,r=n.metadata.totalFiles;if(r===0)return`No files found`;let i=r>100,a=[(i?n.files.slice(0,100):n.files).join(`
|
|
69
69
|
`)];return i&&a.push(`(Results are truncated. Consider using a more specific path or pattern.)`),a.join(`
|
|
70
70
|
`)}parse(e){let t=Jc(e);if(t.rejected)return{phase:`rejected`,toolType:`glob`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}};try{let t=JSON.parse(e);if(t.status===`error`||t.error)return{phase:`error`,toolType:`glob`,data:t,summary:t.error??`Error`,errorMessage:t.error};let n=t.data?.totalFiles??t.data?.files?.length??0;return{phase:`success`,toolType:`glob`,data:t.data??t,summary:n===0?`No files found`:`${n} files`}}catch{}if(e.startsWith(`Error:`))return{phase:`error`,toolType:`glob`,data:{},summary:e,errorMessage:e};if(e===`No files found`)return{phase:`success`,toolType:`glob`,data:{files:[]},summary:`No files found`};let n=e.split(`
|
|
71
|
-
`).filter(e=>e&&!e.startsWith(`(Results are truncated`)).filter(e=>e.trim()),r=n.length===0?`No files found`:`${n.length} files`;return{phase:`success`,toolType:`glob`,data:{files:n},summary:r}}};const Xl=tc({query:J().describe(`File name pattern to search for`),includePattern:J().optional().describe(`Pattern to include in search`),excludePattern:J().optional().describe(`Pattern to exclude from search`),explanation:J().optional().describe(`Explanation of why this search is needed`)});var Zl=class extends Pl{name=`file_search`;displayName=`Search`;description=`Search for a file`;parameters=Xl;async execute(e,t){let{query:n,includePattern:r,excludePattern:i}=e;if(!n)throw Error(`Query parameter is required for file search`);return{files:await t.workspace.grepFile({query:n,folderIncludes:r?[r]:[],folderExcludes:i?[i]:[]})}}format(e,t){let n=e;return JSON.stringify({type:`file_search`,status:`success`,query:t.query,fileCount:n.files.length,result:n.files})}parse(e){let t=Jc(e);if(t.rejected)return{phase:`rejected`,toolType:`file_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}};try{let t=JSON.parse(e);return t.status===`error`||t.error?{phase:`error`,toolType:`file_search`,data:t,summary:t.error??`Error`,errorMessage:t.error}:{phase:`success`,toolType:`file_search`,data:t,summary:`Found ${t.fileCount??t.result?.length??0} files`}}catch{}return e.startsWith(`Error:`)?{phase:`error`,toolType:`file_search`,data:{},summary:e,errorMessage:e}:{phase:`success`,toolType:`file_search`,data:{},summary:`Completed`}}};const Ql=tc({query:J().describe(`Natural language query for semantic search`),command:J().optional().describe(`Optional command parameter`),explanation:J().optional().describe(`Explanation of why this search is needed`)});var $l=class extends Zc{name=`semantic_search_server`;displayName=`Search`;description=`Search files using semantics (more advanced than grep)`;parameters=Ql;isReadonly=!0;format(e,t){return JSON.stringify({type:`semantic_search`,status:`success`})}parse(e){let t=Jc(e);return t.rejected?{phase:`rejected`,toolType:`semantic_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}}:{phase:`success`,toolType:`semantic_search`,data:{},summary:`Completed`}}};const eu=tc({searchTerm:J().describe(`Search query for web search`),query:J().optional().describe(`Alternative query parameter`),explanation:J().optional().describe(`Explanation of why this search is needed`)});var tu=class extends Zc{name=`web_search`;displayName=`WebSearch`;description=`Search on the web`;parameters=eu;isReadonly=!0;format(e,t){return JSON.stringify({type:`web_search`,status:`success`})}parse(e){let t=Jc(e);return t.rejected?{phase:`rejected`,toolType:`web_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}}:{phase:`success`,toolType:`web_search`,data:{},summary:`Found results`}}};const nu=tc({url:J().describe(`The URL to fetch content from`),prompt:J().describe(`The prompt to run on the fetched content`)});var ru=class extends Zc{name=`web_fetch`;displayName=`Fetch`;description=`Fetch content from a URL`;parameters=nu;isReadonly=!0;format(e,t){return JSON.stringify({type:`web_fetch`,status:`success`})}parse(e){let t=Jc(e);if(t.rejected)return{phase:`rejected`,toolType:`web_fetch`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}};try{let t=JSON.parse(e);return t.status===`error`||t.error?{phase:`error`,toolType:`web_fetch`,data:t,summary:t.error??`Error`,errorMessage:t.error}:{phase:`success`,toolType:`web_fetch`,data:t,summary:`Fetched`}}catch{}let n=(e.length/1024).toFixed(1);return{phase:`success`,toolType:`web_fetch`,data:{content:e},summary:`Fetched ${n} KB`}}};function iu(e){return e=e.replace(/\x1b(?:\[[0-?]*[ -/]*[@-~]|\][^\x07]*(?:\x07|\x1b\\)|[\x20-\x2f]*[\x30-\x7e])/g,e=>/^\x1b\[[\d;:]*m$/.test(e)?e:``),e.replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001A\u001C-\u001F\u007F]/g,``)}function au(e){return e.trim()}function ou(e,t){let n=e,r=0;for(;r<t.length;){let e=t[r];if(!e?.type||e.text===void 0){r++;continue}if(e.type===`old`){let i=r+1<t.length?t[r+1]:void 0;if(i?.type===`new`){let t=n.indexOf(e.text);t!==-1&&(n=n.slice(0,t)+i.text+n.slice(t+e.text.length)),r+=2}else{let t=n.indexOf(e.text);t!==-1&&(n=n.slice(0,t)+n.slice(t+e.text.length)),r++}}else r++}return n}function su(e){let t=3e4,n=au(e);if(n.length<=t)return n;let r=1;for(let e=0;e<n.length;e++)n[e]===`
|
|
71
|
+
`).filter(e=>e&&!e.startsWith(`(Results are truncated`)).filter(e=>e.trim()),r=n.length===0?`No files found`:`${n.length} files`;return{phase:`success`,toolType:`glob`,data:{files:n},summary:r}}};const Xl=tc({query:J().describe(`File name pattern to search for`),includePattern:J().optional().describe(`Pattern to include in search`),excludePattern:J().optional().describe(`Pattern to exclude from search`),explanation:J().optional().describe(`Explanation of why this search is needed`)});var Zl=class extends Pl{name=`file_search`;displayName=`Search`;description=`Search for a file`;parameters=Xl;async execute(e,t){let{query:n,includePattern:r,excludePattern:i}=e;if(!n)throw Error(`Query parameter is required for file search`);return{files:await t.workspace.grepFile({query:n,folderIncludes:r?[r]:[],folderExcludes:i?[i]:[]})}}format(e,t){let n=e;return JSON.stringify({type:`file_search`,status:`success`,query:t.query,fileCount:n.files.length,result:n.files})}parse(e){let t=Jc(e);if(t.rejected)return{phase:`rejected`,toolType:`file_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}};try{let t=JSON.parse(e);return t.status===`error`||t.error?{phase:`error`,toolType:`file_search`,data:t,summary:t.error??`Error`,errorMessage:t.error}:{phase:`success`,toolType:`file_search`,data:t,summary:`Found ${t.fileCount??t.result?.length??0} files`}}catch{}return e.startsWith(`Error:`)?{phase:`error`,toolType:`file_search`,data:{},summary:e,errorMessage:e}:{phase:`success`,toolType:`file_search`,data:{},summary:`Completed`}}};const Ql=tc({query:J().describe(`Natural language query for semantic search`),command:J().optional().describe(`Optional command parameter`),explanation:J().optional().describe(`Explanation of why this search is needed`)});var $l=class extends Zc{name=`semantic_search_server`;displayName=`Search`;description=`Search files using semantics (more advanced than grep)`;parameters=Ql;isReadonly=!0;format(e,t){return JSON.stringify({type:`semantic_search`,status:`success`})}parse(e){let t=Jc(e);return t.rejected?{phase:`rejected`,toolType:`semantic_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}}:{phase:`success`,toolType:`semantic_search`,data:{},summary:`Completed`}}};const eu=tc({searchTerm:J().describe(`Search query for web search`),query:J().optional().describe(`Alternative query parameter`),explanation:J().optional().describe(`Explanation of why this search is needed`),allowedDomains:$s(J()).optional().describe(`Only include results from these domains`),blockedDomains:$s(J()).optional().describe(`Exclude results from these domains`)});var tu=class extends Zc{name=`web_search`;displayName=`WebSearch`;description=`Search on the web`;parameters=eu;isReadonly=!0;format(e,t){return JSON.stringify({type:`web_search`,status:`success`})}parse(e){let t=Jc(e);return t.rejected?{phase:`rejected`,toolType:`web_search`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}}:{phase:`success`,toolType:`web_search`,data:{},summary:`Found results`}}};const nu=tc({url:J().describe(`The URL to fetch content from`),prompt:J().describe(`The prompt to run on the fetched content`)});var ru=class extends Zc{name=`web_fetch`;displayName=`Fetch`;description=`Fetch content from a URL`;parameters=nu;isReadonly=!0;format(e,t){return JSON.stringify({type:`web_fetch`,status:`success`})}parse(e){let t=Jc(e);if(t.rejected)return{phase:`rejected`,toolType:`web_fetch`,data:{},summary:t.userNote?`Rejected \u00b7 "${t.userNote}"`:`Rejected`,...t.userNote!==void 0&&{userNote:t.userNote}};try{let t=JSON.parse(e);return t.status===`error`||t.error?{phase:`error`,toolType:`web_fetch`,data:t,summary:t.error??`Error`,errorMessage:t.error}:{phase:`success`,toolType:`web_fetch`,data:t,summary:`Fetched`}}catch{}let n=(e.length/1024).toFixed(1);return{phase:`success`,toolType:`web_fetch`,data:{content:e},summary:`Fetched ${n} KB`}}};function iu(e){return e=e.replace(/\x1b(?:\[[0-?]*[ -/]*[@-~]|\][^\x07]*(?:\x07|\x1b\\)|[\x20-\x2f]*[\x30-\x7e])/g,e=>/^\x1b\[[\d;:]*m$/.test(e)?e:``),e.replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001A\u001C-\u001F\u007F]/g,``)}function au(e){return e.trim()}function ou(e,t){let n=e,r=0;for(;r<t.length;){let e=t[r];if(!e?.type||e.text===void 0){r++;continue}if(e.type===`old`){let i=r+1<t.length?t[r+1]:void 0;if(i?.type===`new`){let t=n.indexOf(e.text);t!==-1&&(n=n.slice(0,t)+i.text+n.slice(t+e.text.length)),r+=2}else{let t=n.indexOf(e.text);t!==-1&&(n=n.slice(0,t)+n.slice(t+e.text.length)),r++}}else r++}return n}function su(e){let t=3e4,n=au(e);if(n.length<=t)return n;let r=1;for(let e=0;e<n.length;e++)n[e]===`
|
|
72
72
|
`&&r++;let i=n.substring(0,1e4),a=n.substring(n.length-2e4),o=1;for(let e=0;e<i.length;e++)i[e]===`
|
|
73
73
|
`&&o++;let s=1;for(let e=0;e<a.length;e++)a[e]===`
|
|
74
74
|
`&&s++;return`${i}\n\n... [${r-(o+s)} lines / ${n.length-t} chars truncated] ...\n\n${a}`}var cu=class e extends jl{name=`bash`;displayName=`Bash`;description=`Run a command in a minified terminal. Creates a new terminal by default, unless an id is provided to use an existing terminal.`;static DEFAULT_TIMEOUT_MS=12e4;static MAX_TIMEOUT_MS=6e5;static Parameters=tc({command:J().describe(`The command to execute`),explanation:J().optional().describe(`Explanation of what the command does`),runInBackground:ol.describe(`Whether to run the command in the background`),shellId:Wc().optional().describe(`Terminal ID to use (creates new if not provided)`),interactiveMode:ol.describe(`Whether to run in interactive mode`),timeout:Gc().optional().describe(`Timeout in milliseconds (default: 120000, max: 600000)`)});parameters=e.Parameters;needsPermission(e,t,n){return!0}async execute(t,n){let{command:r,runInBackground:i,interactiveMode:a,shellId:o,timeout:s}=t,c=n.terminalService,l=s??e.DEFAULT_TIMEOUT_MS,u=Math.min(l,e.MAX_TIMEOUT_MS),d=n.onOutputUpdate,f=n.abortController?.signal,p=o?parseInt(o):void 0;if(a&&r===`/exit`)return p?(await c.closeTerminal?.(p),{type:`bash`,id:p,command:r,exitCode:0,output:`Terminal closed`,isError:!1,duration:0,runInBackground:!1,interactiveMode:!0,terminated:!0}):{type:`bash`,id:0,command:r,exitCode:1,output:`No terminal ID provided for /exit command`,isError:!0,duration:0,runInBackground:!1,interactiveMode:!0};if(a&&r===`/wait`)if(p){await Ul(3e3);let e=c.getOutput(p),t=e.length>0?e[e.length-1]:null;return{type:`bash`,id:p,command:r,exitCode:0,output:t?.output?iu(t.output):`No output available`,isError:!1,duration:3e3,runInBackground:!1,interactiveMode:!0,message:`Terminal state checked - ready for next command`}}else return{type:`bash`,id:0,command:r,exitCode:1,output:`No terminal ID provided for /wait command`,isError:!0,duration:0,runInBackground:!1,interactiveMode:!0};if(a){let e=await c.executeCommand(r,{terminalId:p,alwaysCreateNew:!o,interactiveMode:!0});await Ul(3e3);let t=e.result.get(),n=iu(t.output||``);return n=su(n),{type:`bash`,id:t.id,command:t.command,exitCode:t.exitCode||0,output:n,isError:t.exitCode!==void 0&&t.exitCode!==0,duration:t.duration||0,runInBackground:!1,interactiveMode:!0,message:`Interactive command executed - terminal ready for next command`}}let m=await c.executeCommand(r,{terminalId:p,alwaysCreateNew:!o});if(i){let e=m.result.get(),t=iu(e.output||``);return t=su(t),{type:`bash`,id:e.id,command:e.command,exitCode:e.exitCode||0,output:t,isError:!1,duration:e.duration||0,runInBackground:!0,message:`Background command started`}}if(m.running){let e=m.result.get().id,t;d&&(t=setInterval(()=>{try{let e=m.result.get();e&&e.output&&d(n.toolCallId,iu(e.output))}catch{}},100));let r=[m.running],i,a=f?new Promise((e,t)=>{f.aborted?t(Error(`interrupted`)):(i=()=>t(Error(`interrupted`)),f.addEventListener(`abort`,i,{once:!0}))}):null;a&&r.push(a);let o=new Promise((e,t)=>{setTimeout(()=>{t(Error(`Terminal command timed out after ${u}ms`))},u)});r.push(o);try{try{await Promise.race(r)}catch(t){if(t instanceof Error&&t.message===`interrupted`){await c.stopCommand(e);let t=m.result.get();return{type:`bash`,id:t.id,command:t.command,exitCode:130,output:iu(t.output||``)+`
|
|
@@ -12504,7 +12504,7 @@ const cx={216:`O`,223:`s`,248:`o`,273:`d`,295:`h`,305:`i`,320:`l`,322:`l`,359:`t
|
|
|
12504
12504
|
`:`
|
|
12505
12505
|
`)+n,i=r+1,r=e.indexOf(`
|
|
12506
12506
|
`,i)}while(r!==-1);return a+=e.slice(i),a}const{stdout:vA,stderr:yA}=hA,bA=Symbol(`GENERATOR`),xA=Symbol(`STYLER`),SA=Symbol(`IS_EMPTY`),CA=[`ansi`,`ansi`,`ansi256`,`ansi16m`],wA=Object.create(null),TA=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let n=vA?vA.level:0;e.level=t.level===void 0?n:t.level},EA=e=>{let t=(...e)=>e.join(` `);return TA(t,e),Object.setPrototypeOf(t,DA.prototype),t};function DA(e){return EA(e)}Object.setPrototypeOf(DA.prototype,Function.prototype);for(let[e,t]of Object.entries(sA))wA[e]={get(){let n=jA(this,AA(t.open,t.close,this[xA]),this[SA]);return Object.defineProperty(this,e,{value:n}),n}};wA.visible={get(){let e=jA(this,this[xA],!0);return Object.defineProperty(this,`visible`,{value:e}),e}};const OA=(e,t,n,...r)=>e===`rgb`?t===`ansi16m`?sA[n].ansi16m(...r):t===`ansi256`?sA[n].ansi256(sA.rgbToAnsi256(...r)):sA[n].ansi(sA.rgbToAnsi(...r)):e===`hex`?OA(`rgb`,t,n,...sA.hexToRgb(...r)):sA[n][e](...r);for(let e of[`rgb`,`hex`,`ansi256`]){wA[e]={get(){let{level:t}=this;return function(...n){let r=AA(OA(e,CA[t],`color`,...n),sA.color.close,this[xA]);return jA(this,r,this[SA])}}};let t=`bg`+e[0].toUpperCase()+e.slice(1);wA[t]={get(){let{level:t}=this;return function(...n){let r=AA(OA(e,CA[t],`bgColor`,...n),sA.bgColor.close,this[xA]);return jA(this,r,this[SA])}}}}const kA=Object.defineProperties(()=>{},{...wA,level:{enumerable:!0,get(){return this[bA].level},set(e){this[bA].level=e}}}),AA=(e,t,n)=>{let r,i;return n===void 0?(r=e,i=t):(r=n.openAll+e,i=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:i,parent:n}},jA=(e,t,n)=>{let r=(...e)=>MA(r,e.length===1?``+e[0]:e.join(` `));return Object.setPrototypeOf(r,kA),r[bA]=e,r[xA]=t,r[SA]=n,r},MA=(e,t)=>{if(e.level<=0||!t)return e[SA]?``:t;let n=e[xA];if(n===void 0)return t;let{openAll:r,closeAll:i}=n;if(t.includes(`\x1B`))for(;n!==void 0;)t=gA(t,n.close,n.open),n=n.parent;let a=t.indexOf(`
|
|
12507
|
-
`);return a!==-1&&(t=_A(t,i,r,a)),r+t+i};Object.defineProperties(DA.prototype,wA);const NA=DA();DA({level:yA?yA.level:0});var PA=`2.0.0-canary.6`,FA=W(((e,t)=>{t.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:2**53-1||9007199254740991,RELEASE_TYPES:[`major`,`premajor`,`minor`,`preminor`,`patch`,`prepatch`,`prerelease`],SEMVER_SPEC_VERSION:`2.0.0`,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}})),IA=W(((e,t)=>{t.exports=typeof process==`object`&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error(`SEMVER`,...e):()=>{}})),LA=W(((e,t)=>{let{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:r,MAX_LENGTH:i}=FA(),a=IA();e=t.exports={};let o=e.re=[],s=e.safeRe=[],c=e.src=[],l=e.safeSrc=[],u=e.t={},d=0,f=`[a-zA-Z0-9-]`,p=[[`\\s`,1],[`\\d`,i],[f,r]],m=e=>{for(let[t,n]of p)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e},h=(e,t,n)=>{let r=m(t),i=d++;a(e,i,t),u[e]=i,c[i]=t,l[i]=r,o[i]=new RegExp(t,n?`g`:void 0),s[i]=new RegExp(r,n?`g`:void 0)};h(`NUMERICIDENTIFIER`,`0|[1-9]\\d*`),h(`NUMERICIDENTIFIERLOOSE`,`\\d+`),h(`NONNUMERICIDENTIFIER`,`\\d*[a-zA-Z-]${f}*`),h(`MAINVERSION`,`(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})`),h(`MAINVERSIONLOOSE`,`(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASEIDENTIFIER`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIER]})`),h(`PRERELEASEIDENTIFIERLOOSE`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASE`,`(?:-(${c[u.PRERELEASEIDENTIFIER]}(?:\\.${c[u.PRERELEASEIDENTIFIER]})*))`),h(`PRERELEASELOOSE`,`(?:-?(${c[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${c[u.PRERELEASEIDENTIFIERLOOSE]})*))`),h(`BUILDIDENTIFIER`,`${f}+`),h(`BUILD`,`(?:\\+(${c[u.BUILDIDENTIFIER]}(?:\\.${c[u.BUILDIDENTIFIER]})*))`),h(`FULLPLAIN`,`v?${c[u.MAINVERSION]}${c[u.PRERELEASE]}?${c[u.BUILD]}?`),h(`FULL`,`^${c[u.FULLPLAIN]}$`),h(`LOOSEPLAIN`,`[v=\\s]*${c[u.MAINVERSIONLOOSE]}${c[u.PRERELEASELOOSE]}?${c[u.BUILD]}?`),h(`LOOSE`,`^${c[u.LOOSEPLAIN]}$`),h(`GTLT`,`((?:<|>)?=?)`),h(`XRANGEIDENTIFIERLOOSE`,`${c[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),h(`XRANGEIDENTIFIER`,`${c[u.NUMERICIDENTIFIER]}|x|X|\\*`),h(`XRANGEPLAIN`,`[v=\\s]*(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:${c[u.PRERELEASE]})?${c[u.BUILD]}?)?)?`),h(`XRANGEPLAINLOOSE`,`[v=\\s]*(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:${c[u.PRERELEASELOOSE]})?${c[u.BUILD]}?)?)?`),h(`XRANGE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAIN]}$`),h(`XRANGELOOSE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAINLOOSE]}$`),h(`COERCEPLAIN`,`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),h(`COERCE`,`${c[u.COERCEPLAIN]}(?:$|[^\\d])`),h(`COERCEFULL`,c[u.COERCEPLAIN]+`(?:${c[u.PRERELEASE]})?(?:${c[u.BUILD]})?(?:$|[^\\d])`),h(`COERCERTL`,c[u.COERCE],!0),h(`COERCERTLFULL`,c[u.COERCEFULL],!0),h(`LONETILDE`,`(?:~>?)`),h(`TILDETRIM`,`(\\s*)${c[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace=`$1~`,h(`TILDE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAIN]}$`),h(`TILDELOOSE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAINLOOSE]}$`),h(`LONECARET`,`(?:\\^)`),h(`CARETTRIM`,`(\\s*)${c[u.LONECARET]}\\s+`,!0),e.caretTrimReplace=`$1^`,h(`CARET`,`^${c[u.LONECARET]}${c[u.XRANGEPLAIN]}$`),h(`CARETLOOSE`,`^${c[u.LONECARET]}${c[u.XRANGEPLAINLOOSE]}$`),h(`COMPARATORLOOSE`,`^${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]})$|^$`),h(`COMPARATOR`,`^${c[u.GTLT]}\\s*(${c[u.FULLPLAIN]})$|^$`),h(`COMPARATORTRIM`,`(\\s*)${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]}|${c[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace=`$1$2$3`,h(`HYPHENRANGE`,`^\\s*(${c[u.XRANGEPLAIN]})\\s+-\\s+(${c[u.XRANGEPLAIN]})\\s*$`),h(`HYPHENRANGELOOSE`,`^\\s*(${c[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${c[u.XRANGEPLAINLOOSE]})\\s*$`),h(`STAR`,`(<|>)?=?\\s*\\*`),h(`GTE0`,`^\\s*>=\\s*0\\.0\\.0\\s*$`),h(`GTE0PRE`,`^\\s*>=\\s*0\\.0\\.0-0\\s*$`)})),RA=W(((e,t)=>{let n=Object.freeze({loose:!0}),r=Object.freeze({});t.exports=e=>e?typeof e==`object`?e:n:r})),zA=W(((e,t)=>{let n=/^[0-9]+$/,r=(e,t)=>{if(typeof e==`number`&&typeof t==`number`)return e===t?0:e<t?-1:1;let r=n.test(e),i=n.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};t.exports={compareIdentifiers:r,rcompareIdentifiers:(e,t)=>r(t,e)}})),BA=W(((e,t)=>{let n=IA(),{MAX_LENGTH:r,MAX_SAFE_INTEGER:i}=FA(),{safeRe:a,t:o}=LA(),s=RA(),{compareIdentifiers:c}=zA();t.exports=class e{constructor(t,c){if(c=s(c),t instanceof e){if(t.loose===!!c.loose&&t.includePrerelease===!!c.includePrerelease)return t;t=t.version}else if(typeof t!=`string`)throw TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>r)throw TypeError(`version is longer than ${r} characters`);n(`SemVer`,t,c),this.options=c,this.loose=!!c.loose,this.includePrerelease=!!c.includePrerelease;let l=t.trim().match(c.loose?a[o.LOOSE]:a[o.FULL]);if(!l)throw TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+l[1],this.minor=+l[2],this.patch=+l[3],this.major>i||this.major<0)throw TypeError(`Invalid major version`);if(this.minor>i||this.minor<0)throw TypeError(`Invalid minor version`);if(this.patch>i||this.patch<0)throw TypeError(`Invalid patch version`);l[4]?this.prerelease=l[4].split(`.`).map(e=>{if(/^[0-9]+$/.test(e)){let t=+e;if(t>=0&&t<i)return t}return e}):this.prerelease=[],this.build=l[5]?l[5].split(`.`):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(`.`)}`),this.version}toString(){return this.version}compare(t){if(n(`SemVer.compare`,this.version,this.options,t),!(t instanceof e)){if(typeof t==`string`&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let e=this.prerelease[r],i=t.prerelease[r];if(n(`prerelease compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let e=this.build[r],i=t.build[r];if(n(`build compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}inc(e,t,n){if(e.startsWith(`pre`)){if(!t&&n===!1)throw Error(`invalid increment argument: identifier is empty`);if(t){let e=`-${t}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!e||e[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case`premajor`:this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(`pre`,t,n);break;case`preminor`:this.prerelease.length=0,this.patch=0,this.minor++,this.inc(`pre`,t,n);break;case`prepatch`:this.prerelease.length=0,this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`prerelease`:this.prerelease.length===0&&this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`release`:if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case`major`:(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case`minor`:(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case`patch`:this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case`pre`:{let e=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[e];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]==`number`&&(this.prerelease[r]++,r=-2);if(r===-1){if(t===this.prerelease.join(`.`)&&n===!1)throw Error(`invalid increment argument: identifier already exists`);this.prerelease.push(e)}}if(t){let r=[t,e];n===!1&&(r=[t]),c(this.prerelease[0],t)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(`.`)}`),this}}})),VA=W(((e,t)=>{let n=BA();t.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(e){if(!r)return null;throw e}}})),HA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,t);return r?r.version:null}})),UA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e.trim().replace(/^[=v]+/,``),t);return r?r.version:null}})),WA=W(((e,t)=>{let n=BA();t.exports=(e,t,r,i,a)=>{typeof r==`string`&&(a=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,a).version}catch{return null}}})),GA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,null,!0),i=n(t,null,!0),a=r.compare(i);if(a===0)return null;let o=a>0,s=o?r:i,c=o?i:r,l=!!s.prerelease.length;if(c.prerelease.length&&!l){if(!c.patch&&!c.minor)return`major`;if(c.compareMain(s)===0)return c.minor&&!c.patch?`minor`:`patch`}let u=l?`pre`:``;return r.major===i.major?r.minor===i.minor?r.patch===i.patch?`prerelease`:u+`patch`:u+`minor`:u+`major`}})),KA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).major})),qA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).minor})),JA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).patch})),YA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}})),XA=W(((e,t)=>{let n=BA();t.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))})),ZA=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(t,e,r)})),QA=W(((e,t)=>{let n=XA();t.exports=(e,t)=>n(e,t,!0)})),$A=W(((e,t)=>{let n=BA();t.exports=(e,t,r)=>{let i=new n(e,r),a=new n(t,r);return i.compare(a)||i.compareBuild(a)}})),ej=W(((e,t)=>{let n=$A();t.exports=(e,t)=>e.sort((e,r)=>n(e,r,t))})),tj=W(((e,t)=>{let n=$A();t.exports=(e,t)=>e.sort((e,r)=>n(r,e,t))})),nj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)>0})),rj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)<0})),ij=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)===0})),aj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)!==0})),oj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)>=0})),sj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)<=0})),cj=W(((e,t)=>{let n=ij(),r=aj(),i=nj(),a=oj(),o=rj(),s=sj();t.exports=(e,t,c,l)=>{switch(t){case`===`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e===c;case`!==`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e!==c;case``:case`=`:case`==`:return n(e,c,l);case`!=`:return r(e,c,l);case`>`:return i(e,c,l);case`>=`:return a(e,c,l);case`<`:return o(e,c,l);case`<=`:return s(e,c,l);default:throw TypeError(`Invalid operator: ${t}`)}}})),lj=W(((e,t)=>{let n=BA(),r=VA(),{safeRe:i,t:a}=LA();t.exports=(e,t)=>{if(e instanceof n)return e;if(typeof e==`number`&&(e=String(e)),typeof e!=`string`)return null;t||={};let o=null;if(!t.rtl)o=e.match(t.includePrerelease?i[a.COERCEFULL]:i[a.COERCE]);else{let n=t.includePrerelease?i[a.COERCERTLFULL]:i[a.COERCERTL],r;for(;(r=n.exec(e))&&(!o||o.index+o[0].length!==e.length);)(!o||r.index+r[0].length!==o.index+o[0].length)&&(o=r),n.lastIndex=r.index+r[1].length+r[2].length;n.lastIndex=-1}if(o===null)return null;let s=o[2];return r(`${s}.${o[3]||`0`}.${o[4]||`0`}${t.includePrerelease&&o[5]?`-${o[5]}`:``}${t.includePrerelease&&o[6]?`+${o[6]}`:``}`,t)}})),uj=W(((e,t)=>{t.exports=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let e=this.map.keys().next().value;this.delete(e)}this.map.set(e,t)}return this}}})),dj=W(((e,t)=>{let n=/\s+/g;t.exports=class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof a)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(n,` `),this.set=this.raw.split(`||`).map(e=>this.parseRange(e.trim())).filter(e=>e.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let e=this.set[0];if(this.set=this.set.filter(e=>!h(e[0])),this.set.length===0)this.set=[e];else if(this.set.length>1){for(let e of this.set)if(e.length===1&&g(e[0])){this.set=[e];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=``;for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=`||`);let t=this.set[e];for(let e=0;e<t.length;e++)e>0&&(this.formatted+=` `),this.formatted+=t[e].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+`:`+e,n=r.get(t);if(n)return n;let i=this.options.loose,s=i?c[l.HYPHENRANGELOOSE]:c[l.HYPHENRANGE];e=e.replace(s,O(this.options.includePrerelease)),o(`hyphen replace`,e),e=e.replace(c[l.COMPARATORTRIM],u),o(`comparator trim`,e),e=e.replace(c[l.TILDETRIM],d),o(`tilde trim`,e),e=e.replace(c[l.CARETTRIM],f),o(`caret trim`,e);let g=e.split(` `).map(e=>v(e,this.options)).join(` `).split(/\s+/).map(e=>D(e,this.options));i&&(g=g.filter(e=>(o(`loose invalid filter`,e,this.options),!!e.match(c[l.COMPARATORLOOSE])))),o(`range list`,g);let _=new Map,y=g.map(e=>new a(e,this.options));for(let e of y){if(h(e))return[e];_.set(e.value,e)}_.size>1&&_.has(``)&&_.delete(``);let b=[..._.values()];return r.set(t,b),b}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Range is required`);return this.set.some(e=>_(e,n)&&t.set.some(t=>_(t,n)&&e.every(e=>t.every(t=>e.intersects(t,n)))))}test(e){if(!e)return!1;if(typeof e==`string`)try{e=new s(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(k(this.set[t],e,this.options))return!0;return!1}};let r=new(uj()),i=RA(),a=fj(),o=IA(),s=BA(),{safeRe:c,t:l,comparatorTrimReplace:u,tildeTrimReplace:d,caretTrimReplace:f}=LA(),{FLAG_INCLUDE_PRERELEASE:p,FLAG_LOOSE:m}=FA(),h=e=>e.value===`<0.0.0-0`,g=e=>e.value===``,_=(e,t)=>{let n=!0,r=e.slice(),i=r.pop();for(;n&&r.length;)n=r.every(e=>i.intersects(e,t)),i=r.pop();return n},v=(e,t)=>(e=e.replace(c[l.BUILD],``),o(`comp`,e,t),e=S(e,t),o(`caret`,e),e=b(e,t),o(`tildes`,e),e=w(e,t),o(`xrange`,e),e=E(e,t),o(`stars`,e),e),y=e=>!e||e.toLowerCase()===`x`||e===`*`,b=(e,t)=>e.trim().split(/\s+/).map(e=>x(e,t)).join(` `),x=(e,t)=>{let n=t.loose?c[l.TILDELOOSE]:c[l.TILDE];return e.replace(n,(t,n,r,i,a)=>{o(`tilde`,e,t,n,r,i,a);let s;return y(n)?s=``:y(r)?s=`>=${n}.0.0 <${+n+1}.0.0-0`:y(i)?s=`>=${n}.${r}.0 <${n}.${+r+1}.0-0`:a?(o(`replaceTilde pr`,a),s=`>=${n}.${r}.${i}-${a} <${n}.${+r+1}.0-0`):s=`>=${n}.${r}.${i} <${n}.${+r+1}.0-0`,o(`tilde return`,s),s})},S=(e,t)=>e.trim().split(/\s+/).map(e=>C(e,t)).join(` `),C=(e,t)=>{o(`caret`,e,t);let n=t.loose?c[l.CARETLOOSE]:c[l.CARET],r=t.includePrerelease?`-0`:``;return e.replace(n,(t,n,i,a,s)=>{o(`caret`,e,t,n,i,a,s);let c;return y(n)?c=``:y(i)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(a)?c=n===`0`?`>=${n}.${i}.0${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.0${r} <${+n+1}.0.0-0`:s?(o(`replaceCaret pr`,s),c=n===`0`?i===`0`?`>=${n}.${i}.${a}-${s} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}-${s} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a}-${s} <${+n+1}.0.0-0`):(o(`no pr`),c=n===`0`?i===`0`?`>=${n}.${i}.${a}${r} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a} <${+n+1}.0.0-0`),o(`caret return`,c),c})},w=(e,t)=>(o(`replaceXRanges`,e,t),e.split(/\s+/).map(e=>T(e,t)).join(` `)),T=(e,t)=>{e=e.trim();let n=t.loose?c[l.XRANGELOOSE]:c[l.XRANGE];return e.replace(n,(n,r,i,a,s,c)=>{o(`xRange`,e,n,r,i,a,s,c);let l=y(i),u=l||y(a),d=u||y(s),f=d;return r===`=`&&f&&(r=``),c=t.includePrerelease?`-0`:``,l?n=r===`>`||r===`<`?`<0.0.0-0`:`*`:r&&f?(u&&(a=0),s=0,r===`>`?(r=`>=`,u?(i=+i+1,a=0,s=0):(a=+a+1,s=0)):r===`<=`&&(r=`<`,u?i=+i+1:a=+a+1),r===`<`&&(c=`-0`),n=`${r+i}.${a}.${s}${c}`):u?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),o(`xRange return`,n),n})},E=(e,t)=>(o(`replaceStars`,e,t),e.trim().replace(c[l.STAR],``)),D=(e,t)=>(o(`replaceGTE0`,e,t),e.trim().replace(c[t.includePrerelease?l.GTE0PRE:l.GTE0],``)),O=e=>(t,n,r,i,a,o,s,c,l,u,d,f)=>(n=y(r)?``:y(i)?`>=${r}.0.0${e?`-0`:``}`:y(a)?`>=${r}.${i}.0${e?`-0`:``}`:o?`>=${n}`:`>=${n}${e?`-0`:``}`,c=y(l)?``:y(u)?`<${+l+1}.0.0-0`:y(d)?`<${l}.${+u+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`,`${n} ${c}`.trim()),k=(e,t,n)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(let n=0;n<e.length;n++)if(o(e[n].semver),e[n].semver!==a.ANY&&e[n].semver.prerelease.length>0){let r=e[n].semver;if(r.major===t.major&&r.minor===t.minor&&r.patch===t.patch)return!0}return!1}return!0}})),fj=W(((e,t)=>{let n=Symbol(`SemVer ANY`);t.exports=class e{static get ANY(){return n}constructor(t,i){if(i=r(i),t instanceof e){if(t.loose===!!i.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(` `),s(`comparator`,t,i),this.options=i,this.loose=!!i.loose,this.parse(t),this.semver===n?this.value=``:this.value=this.operator+this.semver.version,s(`comp`,this)}parse(e){let t=this.options.loose?i[a.COMPARATORLOOSE]:i[a.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);this.operator=r[1]===void 0?``:r[1],this.operator===`=`&&(this.operator=``),r[2]?this.semver=new c(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(s(`Comparator.test`,e,this.options.loose),this.semver===n||e===n)return!0;if(typeof e==`string`)try{e=new c(e,this.options)}catch{return!1}return o(e,this.operator,this.semver,this.options)}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Comparator is required`);return this.operator===``?this.value===``?!0:new l(t.value,n).test(this.value):t.operator===``?t.value===``?!0:new l(this.value,n).test(t.semver):(n=r(n),n.includePrerelease&&(this.value===`<0.0.0-0`||t.value===`<0.0.0-0`)||!n.includePrerelease&&(this.value.startsWith(`<0.0.0`)||t.value.startsWith(`<0.0.0`))?!1:!!(this.operator.startsWith(`>`)&&t.operator.startsWith(`>`)||this.operator.startsWith(`<`)&&t.operator.startsWith(`<`)||this.semver.version===t.semver.version&&this.operator.includes(`=`)&&t.operator.includes(`=`)||o(this.semver,`<`,t.semver,n)&&this.operator.startsWith(`>`)&&t.operator.startsWith(`<`)||o(this.semver,`>`,t.semver,n)&&this.operator.startsWith(`<`)&&t.operator.startsWith(`>`)))}};let r=RA(),{safeRe:i,t:a}=LA(),o=cj(),s=IA(),c=BA(),l=dj()})),pj=W(((e,t)=>{let n=dj();t.exports=(e,t,r)=>{try{t=new n(t,r)}catch{return!1}return t.test(e)}})),mj=W(((e,t)=>{let n=dj();t.exports=(e,t)=>new n(e,t).set.map(e=>e.map(e=>e.value).join(` `).trim().split(` `))})),hj=W(((e,t)=>{let n=BA(),r=dj();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===-1)&&(a=e,o=new n(a,i))}),a}})),gj=W(((e,t)=>{let n=BA(),r=dj();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===1)&&(a=e,o=new n(a,i))}),a}})),_j=W(((e,t)=>{let n=BA(),r=dj(),i=nj();t.exports=(e,t)=>{e=new r(e,t);let a=new n(`0.0.0`);if(e.test(a)||(a=new n(`0.0.0-0`),e.test(a)))return a;a=null;for(let t=0;t<e.set.length;++t){let r=e.set[t],o=null;r.forEach(e=>{let t=new n(e.semver.version);switch(e.operator){case`>`:t.prerelease.length===0?t.patch++:t.prerelease.push(0),t.raw=t.format();case``:case`>=`:(!o||i(t,o))&&(o=t);break;case`<`:case`<=`:break;default:throw Error(`Unexpected operation: ${e.operator}`)}}),o&&(!a||i(a,o))&&(a=o)}return a&&e.test(a)?a:null}})),vj=W(((e,t)=>{let n=dj();t.exports=(e,t)=>{try{return new n(e,t).range||`*`}catch{return null}}})),yj=W(((e,t)=>{let n=BA(),r=fj(),{ANY:i}=r,a=dj(),o=pj(),s=nj(),c=rj(),l=sj(),u=oj();t.exports=(e,t,d,f)=>{e=new n(e,f),t=new a(t,f);let p,m,h,g,_;switch(d){case`>`:p=s,m=l,h=c,g=`>`,_=`>=`;break;case`<`:p=c,m=u,h=s,g=`<`,_=`<=`;break;default:throw TypeError(`Must provide a hilo val of "<" or ">"`)}if(o(e,t,f))return!1;for(let n=0;n<t.set.length;++n){let a=t.set[n],o=null,s=null;if(a.forEach(e=>{e.semver===i&&(e=new r(`>=0.0.0`)),o||=e,s||=e,p(e.semver,o.semver,f)?o=e:h(e.semver,s.semver,f)&&(s=e)}),o.operator===g||o.operator===_||(!s.operator||s.operator===g)&&m(e,s.semver)||s.operator===_&&h(e,s.semver))return!1}return!0}})),bj=W(((e,t)=>{let n=yj();t.exports=(e,t,r)=>n(e,t,`>`,r)})),xj=W(((e,t)=>{let n=yj();t.exports=(e,t,r)=>n(e,t,`<`,r)})),Sj=W(((e,t)=>{let n=dj();t.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))})),Cj=W(((e,t)=>{let n=pj(),r=XA();t.exports=(e,t,i)=>{let a=[],o=null,s=null,c=e.sort((e,t)=>r(e,t,i));for(let e of c)n(e,t,i)?(s=e,o||=e):(s&&a.push([o,s]),s=null,o=null);o&&a.push([o,null]);let l=[];for(let[e,t]of a)e===t?l.push(e):!t&&e===c[0]?l.push(`*`):t?e===c[0]?l.push(`<=${t}`):l.push(`${e} - ${t}`):l.push(`>=${e}`);let u=l.join(` || `),d=typeof t.raw==`string`?t.raw:String(t);return u.length<d.length?u:t}})),wj=W(((e,t)=>{let n=dj(),r=fj(),{ANY:i}=r,a=pj(),o=XA(),s=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;OUTER:for(let n of e.set){for(let e of t.set){let t=u(n,e,r);if(i||=t!==null,t)continue OUTER}if(i)return!1}return!0},c=[new r(`>=0.0.0-0`)],l=[new r(`>=0.0.0`)],u=(e,t,n)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===i){if(t.length===1&&t[0].semver===i)return!0;e=n.includePrerelease?c:l}if(t.length===1&&t[0].semver===i){if(n.includePrerelease)return!0;t=l}let r=new Set,s,u;for(let t of e)t.operator===`>`||t.operator===`>=`?s=d(s,t,n):t.operator===`<`||t.operator===`<=`?u=f(u,t,n):r.add(t.semver);if(r.size>1)return null;let p;if(s&&u&&(p=o(s.semver,u.semver,n),p>0||p===0&&(s.operator!==`>=`||u.operator!==`<=`)))return null;for(let e of r){if(s&&!a(e,String(s),n)||u&&!a(e,String(u),n))return null;for(let r of t)if(!a(e,String(r),n))return!1;return!0}let m,h,g,_,v=u&&!n.includePrerelease&&u.semver.prerelease.length?u.semver:!1,y=s&&!n.includePrerelease&&s.semver.prerelease.length?s.semver:!1;v&&v.prerelease.length===1&&u.operator===`<`&&v.prerelease[0]===0&&(v=!1);for(let e of t){if(_=_||e.operator===`>`||e.operator===`>=`,g=g||e.operator===`<`||e.operator===`<=`,s){if(y&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===y.major&&e.semver.minor===y.minor&&e.semver.patch===y.patch&&(y=!1),e.operator===`>`||e.operator===`>=`){if(m=d(s,e,n),m===e&&m!==s)return!1}else if(s.operator===`>=`&&!a(s.semver,String(e),n))return!1}if(u){if(v&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===v.major&&e.semver.minor===v.minor&&e.semver.patch===v.patch&&(v=!1),e.operator===`<`||e.operator===`<=`){if(h=f(u,e,n),h===e&&h!==u)return!1}else if(u.operator===`<=`&&!a(u.semver,String(e),n))return!1}if(!e.operator&&(u||s)&&p!==0)return!1}return!(s&&g&&!u&&p!==0||u&&_&&!s&&p!==0||y||v)},d=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r>0?e:r<0||t.operator===`>`&&e.operator===`>=`?t:e},f=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r<0?e:r>0||t.operator===`<`&&e.operator===`<=`?t:e};t.exports=s})),Tj=W(((e,t)=>{let n=LA(),r=FA(),i=BA(),a=zA();t.exports={parse:VA(),valid:HA(),clean:UA(),inc:WA(),diff:GA(),major:KA(),minor:qA(),patch:JA(),prerelease:YA(),compare:XA(),rcompare:ZA(),compareLoose:QA(),compareBuild:$A(),sort:ej(),rsort:tj(),gt:nj(),lt:rj(),eq:ij(),neq:aj(),gte:oj(),lte:sj(),cmp:cj(),coerce:lj(),Comparator:fj(),Range:dj(),satisfies:pj(),toComparators:mj(),maxSatisfying:hj(),minSatisfying:gj(),minVersion:_j(),validRange:vj(),outside:yj(),gtr:bj(),ltr:xj(),intersects:Sj(),simplifyRange:Cj(),subset:wj(),SemVer:i,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}}))();let Ej=null;function Dj(e){let t=(0,Tj.prerelease)(e);return t&&t.length>0&&typeof t[0]==`string`?t[0]:`latest`}function Oj(){let e=process.env.npm_command;if(e===`exec`||e===`dlx`)return!0;let t=process.argv[1]??``;return!!/_npx[/\\]|[/\\]dlx[/\\]|\.cache[/\\]/.test(t)}function kj(){let e=process.env.npm_config_user_agent;if(e){let t=e.split(`/`)[0];if(t===`yarn`||t===`pnpm`||t===`bun`||t===`npm`)return t}let t=process.argv[1]??``;return t.includes(`yarn`)?`yarn`:t.includes(`pnpm`)?`pnpm`:t.includes(`bun`)?`bun`:`npm`}async function Aj(e){let t=Date.now();if(Ej&&t-Ej.timestamp<6e4)return Ej.tags;let n=await fetch(`https://registry.npmjs.org/${e}`,{signal:AbortSignal.timeout(1e4),headers:{accept:`application/json`}});if(!n.ok)throw Error(`Registry returned ${n.status}`);let r=(await n.json())[`dist-tags`]??{};return Ej={tags:r,timestamp:t},r}async function jj(e){let t=Dj(e),n=kj(),r=Oj(),i=(await Aj(Ae.publishName))[t];return!i&&t!==`latest`||!i||i===e?null:{currentVersion:e,latestVersion:i,tag:t,packageManager:n,isEphemeral:r}}function Mj(){return`${ke.binName} upgrade`}function Nj(e){let t=`${Ae.publishName}@${e.tag}`;switch(e.packageManager){case`yarn`:return`yarn global add ${t}`;case`pnpm`:return`pnpm add -g ${t}`;case`bun`:return`bun add -g ${t}`;default:return`npm install -g ${t}`}}function Pj(e){try{return l(Nj(e),{stdio:`pipe`}),!0}catch{return!1}}const Fj=C.join(r(),ke.configDirName,ke.logsDirName),Ij=C.join(Fj,`cli.log`);let Lj=!1;function Rj(){if(!Lj)try{g(Fj)||_(Fj,{recursive:!0}),Lj=!0}catch{}}function zj(e){return e.length===0?``:` `+e.map(e=>{if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}).join(` `)}function Bj(e,t,n){Rj();let r=`[${new Date().toISOString()}] [${e}] ${t instanceof Error?`${t.message}${t.stack?`
|
|
12507
|
+
`);return a!==-1&&(t=_A(t,i,r,a)),r+t+i};Object.defineProperties(DA.prototype,wA);const NA=DA();DA({level:yA?yA.level:0});var PA=`2.0.0-canary.7`,FA=W(((e,t)=>{t.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:2**53-1||9007199254740991,RELEASE_TYPES:[`major`,`premajor`,`minor`,`preminor`,`patch`,`prepatch`,`prerelease`],SEMVER_SPEC_VERSION:`2.0.0`,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}})),IA=W(((e,t)=>{t.exports=typeof process==`object`&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error(`SEMVER`,...e):()=>{}})),LA=W(((e,t)=>{let{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:r,MAX_LENGTH:i}=FA(),a=IA();e=t.exports={};let o=e.re=[],s=e.safeRe=[],c=e.src=[],l=e.safeSrc=[],u=e.t={},d=0,f=`[a-zA-Z0-9-]`,p=[[`\\s`,1],[`\\d`,i],[f,r]],m=e=>{for(let[t,n]of p)e=e.split(`${t}*`).join(`${t}{0,${n}}`).split(`${t}+`).join(`${t}{1,${n}}`);return e},h=(e,t,n)=>{let r=m(t),i=d++;a(e,i,t),u[e]=i,c[i]=t,l[i]=r,o[i]=new RegExp(t,n?`g`:void 0),s[i]=new RegExp(r,n?`g`:void 0)};h(`NUMERICIDENTIFIER`,`0|[1-9]\\d*`),h(`NUMERICIDENTIFIERLOOSE`,`\\d+`),h(`NONNUMERICIDENTIFIER`,`\\d*[a-zA-Z-]${f}*`),h(`MAINVERSION`,`(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})\\.(${c[u.NUMERICIDENTIFIER]})`),h(`MAINVERSIONLOOSE`,`(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})\\.(${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASEIDENTIFIER`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIER]})`),h(`PRERELEASEIDENTIFIERLOOSE`,`(?:${c[u.NONNUMERICIDENTIFIER]}|${c[u.NUMERICIDENTIFIERLOOSE]})`),h(`PRERELEASE`,`(?:-(${c[u.PRERELEASEIDENTIFIER]}(?:\\.${c[u.PRERELEASEIDENTIFIER]})*))`),h(`PRERELEASELOOSE`,`(?:-?(${c[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${c[u.PRERELEASEIDENTIFIERLOOSE]})*))`),h(`BUILDIDENTIFIER`,`${f}+`),h(`BUILD`,`(?:\\+(${c[u.BUILDIDENTIFIER]}(?:\\.${c[u.BUILDIDENTIFIER]})*))`),h(`FULLPLAIN`,`v?${c[u.MAINVERSION]}${c[u.PRERELEASE]}?${c[u.BUILD]}?`),h(`FULL`,`^${c[u.FULLPLAIN]}$`),h(`LOOSEPLAIN`,`[v=\\s]*${c[u.MAINVERSIONLOOSE]}${c[u.PRERELEASELOOSE]}?${c[u.BUILD]}?`),h(`LOOSE`,`^${c[u.LOOSEPLAIN]}$`),h(`GTLT`,`((?:<|>)?=?)`),h(`XRANGEIDENTIFIERLOOSE`,`${c[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),h(`XRANGEIDENTIFIER`,`${c[u.NUMERICIDENTIFIER]}|x|X|\\*`),h(`XRANGEPLAIN`,`[v=\\s]*(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:\\.(${c[u.XRANGEIDENTIFIER]})(?:${c[u.PRERELEASE]})?${c[u.BUILD]}?)?)?`),h(`XRANGEPLAINLOOSE`,`[v=\\s]*(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${c[u.XRANGEIDENTIFIERLOOSE]})(?:${c[u.PRERELEASELOOSE]})?${c[u.BUILD]}?)?)?`),h(`XRANGE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAIN]}$`),h(`XRANGELOOSE`,`^${c[u.GTLT]}\\s*${c[u.XRANGEPLAINLOOSE]}$`),h(`COERCEPLAIN`,`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),h(`COERCE`,`${c[u.COERCEPLAIN]}(?:$|[^\\d])`),h(`COERCEFULL`,c[u.COERCEPLAIN]+`(?:${c[u.PRERELEASE]})?(?:${c[u.BUILD]})?(?:$|[^\\d])`),h(`COERCERTL`,c[u.COERCE],!0),h(`COERCERTLFULL`,c[u.COERCEFULL],!0),h(`LONETILDE`,`(?:~>?)`),h(`TILDETRIM`,`(\\s*)${c[u.LONETILDE]}\\s+`,!0),e.tildeTrimReplace=`$1~`,h(`TILDE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAIN]}$`),h(`TILDELOOSE`,`^${c[u.LONETILDE]}${c[u.XRANGEPLAINLOOSE]}$`),h(`LONECARET`,`(?:\\^)`),h(`CARETTRIM`,`(\\s*)${c[u.LONECARET]}\\s+`,!0),e.caretTrimReplace=`$1^`,h(`CARET`,`^${c[u.LONECARET]}${c[u.XRANGEPLAIN]}$`),h(`CARETLOOSE`,`^${c[u.LONECARET]}${c[u.XRANGEPLAINLOOSE]}$`),h(`COMPARATORLOOSE`,`^${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]})$|^$`),h(`COMPARATOR`,`^${c[u.GTLT]}\\s*(${c[u.FULLPLAIN]})$|^$`),h(`COMPARATORTRIM`,`(\\s*)${c[u.GTLT]}\\s*(${c[u.LOOSEPLAIN]}|${c[u.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace=`$1$2$3`,h(`HYPHENRANGE`,`^\\s*(${c[u.XRANGEPLAIN]})\\s+-\\s+(${c[u.XRANGEPLAIN]})\\s*$`),h(`HYPHENRANGELOOSE`,`^\\s*(${c[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${c[u.XRANGEPLAINLOOSE]})\\s*$`),h(`STAR`,`(<|>)?=?\\s*\\*`),h(`GTE0`,`^\\s*>=\\s*0\\.0\\.0\\s*$`),h(`GTE0PRE`,`^\\s*>=\\s*0\\.0\\.0-0\\s*$`)})),RA=W(((e,t)=>{let n=Object.freeze({loose:!0}),r=Object.freeze({});t.exports=e=>e?typeof e==`object`?e:n:r})),zA=W(((e,t)=>{let n=/^[0-9]+$/,r=(e,t)=>{if(typeof e==`number`&&typeof t==`number`)return e===t?0:e<t?-1:1;let r=n.test(e),i=n.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1};t.exports={compareIdentifiers:r,rcompareIdentifiers:(e,t)=>r(t,e)}})),BA=W(((e,t)=>{let n=IA(),{MAX_LENGTH:r,MAX_SAFE_INTEGER:i}=FA(),{safeRe:a,t:o}=LA(),s=RA(),{compareIdentifiers:c}=zA();t.exports=class e{constructor(t,c){if(c=s(c),t instanceof e){if(t.loose===!!c.loose&&t.includePrerelease===!!c.includePrerelease)return t;t=t.version}else if(typeof t!=`string`)throw TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>r)throw TypeError(`version is longer than ${r} characters`);n(`SemVer`,t,c),this.options=c,this.loose=!!c.loose,this.includePrerelease=!!c.includePrerelease;let l=t.trim().match(c.loose?a[o.LOOSE]:a[o.FULL]);if(!l)throw TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+l[1],this.minor=+l[2],this.patch=+l[3],this.major>i||this.major<0)throw TypeError(`Invalid major version`);if(this.minor>i||this.minor<0)throw TypeError(`Invalid minor version`);if(this.patch>i||this.patch<0)throw TypeError(`Invalid patch version`);l[4]?this.prerelease=l[4].split(`.`).map(e=>{if(/^[0-9]+$/.test(e)){let t=+e;if(t>=0&&t<i)return t}return e}):this.prerelease=[],this.build=l[5]?l[5].split(`.`):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(`.`)}`),this.version}toString(){return this.version}compare(t){if(n(`SemVer.compare`,this.version,this.options,t),!(t instanceof e)){if(typeof t==`string`&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let e=this.prerelease[r],i=t.prerelease[r];if(n(`prerelease compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let e=this.build[r],i=t.build[r];if(n(`build compare`,r,e,i),e===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(e===void 0)return-1;if(e===i)continue;return c(e,i)}while(++r)}inc(e,t,n){if(e.startsWith(`pre`)){if(!t&&n===!1)throw Error(`invalid increment argument: identifier is empty`);if(t){let e=`-${t}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!e||e[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case`premajor`:this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(`pre`,t,n);break;case`preminor`:this.prerelease.length=0,this.patch=0,this.minor++,this.inc(`pre`,t,n);break;case`prepatch`:this.prerelease.length=0,this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`prerelease`:this.prerelease.length===0&&this.inc(`patch`,t,n),this.inc(`pre`,t,n);break;case`release`:if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case`major`:(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case`minor`:(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case`patch`:this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case`pre`:{let e=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[e];else{let r=this.prerelease.length;for(;--r>=0;)typeof this.prerelease[r]==`number`&&(this.prerelease[r]++,r=-2);if(r===-1){if(t===this.prerelease.join(`.`)&&n===!1)throw Error(`invalid increment argument: identifier already exists`);this.prerelease.push(e)}}if(t){let r=[t,e];n===!1&&(r=[t]),c(this.prerelease[0],t)===0?isNaN(this.prerelease[1])&&(this.prerelease=r):this.prerelease=r}break}default:throw Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(`.`)}`),this}}})),VA=W(((e,t)=>{let n=BA();t.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(e){if(!r)return null;throw e}}})),HA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,t);return r?r.version:null}})),UA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e.trim().replace(/^[=v]+/,``),t);return r?r.version:null}})),WA=W(((e,t)=>{let n=BA();t.exports=(e,t,r,i,a)=>{typeof r==`string`&&(a=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,a).version}catch{return null}}})),GA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,null,!0),i=n(t,null,!0),a=r.compare(i);if(a===0)return null;let o=a>0,s=o?r:i,c=o?i:r,l=!!s.prerelease.length;if(c.prerelease.length&&!l){if(!c.patch&&!c.minor)return`major`;if(c.compareMain(s)===0)return c.minor&&!c.patch?`minor`:`patch`}let u=l?`pre`:``;return r.major===i.major?r.minor===i.minor?r.patch===i.patch?`prerelease`:u+`patch`:u+`minor`:u+`major`}})),KA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).major})),qA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).minor})),JA=W(((e,t)=>{let n=BA();t.exports=(e,t)=>new n(e,t).patch})),YA=W(((e,t)=>{let n=VA();t.exports=(e,t)=>{let r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}})),XA=W(((e,t)=>{let n=BA();t.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))})),ZA=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(t,e,r)})),QA=W(((e,t)=>{let n=XA();t.exports=(e,t)=>n(e,t,!0)})),$A=W(((e,t)=>{let n=BA();t.exports=(e,t,r)=>{let i=new n(e,r),a=new n(t,r);return i.compare(a)||i.compareBuild(a)}})),ej=W(((e,t)=>{let n=$A();t.exports=(e,t)=>e.sort((e,r)=>n(e,r,t))})),tj=W(((e,t)=>{let n=$A();t.exports=(e,t)=>e.sort((e,r)=>n(r,e,t))})),nj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)>0})),rj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)<0})),ij=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)===0})),aj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)!==0})),oj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)>=0})),sj=W(((e,t)=>{let n=XA();t.exports=(e,t,r)=>n(e,t,r)<=0})),cj=W(((e,t)=>{let n=ij(),r=aj(),i=nj(),a=oj(),o=rj(),s=sj();t.exports=(e,t,c,l)=>{switch(t){case`===`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e===c;case`!==`:return typeof e==`object`&&(e=e.version),typeof c==`object`&&(c=c.version),e!==c;case``:case`=`:case`==`:return n(e,c,l);case`!=`:return r(e,c,l);case`>`:return i(e,c,l);case`>=`:return a(e,c,l);case`<`:return o(e,c,l);case`<=`:return s(e,c,l);default:throw TypeError(`Invalid operator: ${t}`)}}})),lj=W(((e,t)=>{let n=BA(),r=VA(),{safeRe:i,t:a}=LA();t.exports=(e,t)=>{if(e instanceof n)return e;if(typeof e==`number`&&(e=String(e)),typeof e!=`string`)return null;t||={};let o=null;if(!t.rtl)o=e.match(t.includePrerelease?i[a.COERCEFULL]:i[a.COERCE]);else{let n=t.includePrerelease?i[a.COERCERTLFULL]:i[a.COERCERTL],r;for(;(r=n.exec(e))&&(!o||o.index+o[0].length!==e.length);)(!o||r.index+r[0].length!==o.index+o[0].length)&&(o=r),n.lastIndex=r.index+r[1].length+r[2].length;n.lastIndex=-1}if(o===null)return null;let s=o[2];return r(`${s}.${o[3]||`0`}.${o[4]||`0`}${t.includePrerelease&&o[5]?`-${o[5]}`:``}${t.includePrerelease&&o[6]?`+${o[6]}`:``}`,t)}})),uj=W(((e,t)=>{t.exports=class{constructor(){this.max=1e3,this.map=new Map}get(e){let t=this.map.get(e);if(t!==void 0)return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let e=this.map.keys().next().value;this.delete(e)}this.map.set(e,t)}return this}}})),dj=W(((e,t)=>{let n=/\s+/g;t.exports=class e{constructor(t,r){if(r=i(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof a)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(n,` `),this.set=this.raw.split(`||`).map(e=>this.parseRange(e.trim())).filter(e=>e.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let e=this.set[0];if(this.set=this.set.filter(e=>!h(e[0])),this.set.length===0)this.set=[e];else if(this.set.length>1){for(let e of this.set)if(e.length===1&&g(e[0])){this.set=[e];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted=``;for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+=`||`);let t=this.set[e];for(let e=0;e<t.length;e++)e>0&&(this.formatted+=` `),this.formatted+=t[e].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+`:`+e,n=r.get(t);if(n)return n;let i=this.options.loose,s=i?c[l.HYPHENRANGELOOSE]:c[l.HYPHENRANGE];e=e.replace(s,O(this.options.includePrerelease)),o(`hyphen replace`,e),e=e.replace(c[l.COMPARATORTRIM],u),o(`comparator trim`,e),e=e.replace(c[l.TILDETRIM],d),o(`tilde trim`,e),e=e.replace(c[l.CARETTRIM],f),o(`caret trim`,e);let g=e.split(` `).map(e=>v(e,this.options)).join(` `).split(/\s+/).map(e=>D(e,this.options));i&&(g=g.filter(e=>(o(`loose invalid filter`,e,this.options),!!e.match(c[l.COMPARATORLOOSE])))),o(`range list`,g);let _=new Map,y=g.map(e=>new a(e,this.options));for(let e of y){if(h(e))return[e];_.set(e.value,e)}_.size>1&&_.has(``)&&_.delete(``);let b=[..._.values()];return r.set(t,b),b}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Range is required`);return this.set.some(e=>_(e,n)&&t.set.some(t=>_(t,n)&&e.every(e=>t.every(t=>e.intersects(t,n)))))}test(e){if(!e)return!1;if(typeof e==`string`)try{e=new s(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(k(this.set[t],e,this.options))return!0;return!1}};let r=new(uj()),i=RA(),a=fj(),o=IA(),s=BA(),{safeRe:c,t:l,comparatorTrimReplace:u,tildeTrimReplace:d,caretTrimReplace:f}=LA(),{FLAG_INCLUDE_PRERELEASE:p,FLAG_LOOSE:m}=FA(),h=e=>e.value===`<0.0.0-0`,g=e=>e.value===``,_=(e,t)=>{let n=!0,r=e.slice(),i=r.pop();for(;n&&r.length;)n=r.every(e=>i.intersects(e,t)),i=r.pop();return n},v=(e,t)=>(e=e.replace(c[l.BUILD],``),o(`comp`,e,t),e=S(e,t),o(`caret`,e),e=b(e,t),o(`tildes`,e),e=w(e,t),o(`xrange`,e),e=E(e,t),o(`stars`,e),e),y=e=>!e||e.toLowerCase()===`x`||e===`*`,b=(e,t)=>e.trim().split(/\s+/).map(e=>x(e,t)).join(` `),x=(e,t)=>{let n=t.loose?c[l.TILDELOOSE]:c[l.TILDE];return e.replace(n,(t,n,r,i,a)=>{o(`tilde`,e,t,n,r,i,a);let s;return y(n)?s=``:y(r)?s=`>=${n}.0.0 <${+n+1}.0.0-0`:y(i)?s=`>=${n}.${r}.0 <${n}.${+r+1}.0-0`:a?(o(`replaceTilde pr`,a),s=`>=${n}.${r}.${i}-${a} <${n}.${+r+1}.0-0`):s=`>=${n}.${r}.${i} <${n}.${+r+1}.0-0`,o(`tilde return`,s),s})},S=(e,t)=>e.trim().split(/\s+/).map(e=>C(e,t)).join(` `),C=(e,t)=>{o(`caret`,e,t);let n=t.loose?c[l.CARETLOOSE]:c[l.CARET],r=t.includePrerelease?`-0`:``;return e.replace(n,(t,n,i,a,s)=>{o(`caret`,e,t,n,i,a,s);let c;return y(n)?c=``:y(i)?c=`>=${n}.0.0${r} <${+n+1}.0.0-0`:y(a)?c=n===`0`?`>=${n}.${i}.0${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.0${r} <${+n+1}.0.0-0`:s?(o(`replaceCaret pr`,s),c=n===`0`?i===`0`?`>=${n}.${i}.${a}-${s} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}-${s} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a}-${s} <${+n+1}.0.0-0`):(o(`no pr`),c=n===`0`?i===`0`?`>=${n}.${i}.${a}${r} <${n}.${i}.${+a+1}-0`:`>=${n}.${i}.${a}${r} <${n}.${+i+1}.0-0`:`>=${n}.${i}.${a} <${+n+1}.0.0-0`),o(`caret return`,c),c})},w=(e,t)=>(o(`replaceXRanges`,e,t),e.split(/\s+/).map(e=>T(e,t)).join(` `)),T=(e,t)=>{e=e.trim();let n=t.loose?c[l.XRANGELOOSE]:c[l.XRANGE];return e.replace(n,(n,r,i,a,s,c)=>{o(`xRange`,e,n,r,i,a,s,c);let l=y(i),u=l||y(a),d=u||y(s),f=d;return r===`=`&&f&&(r=``),c=t.includePrerelease?`-0`:``,l?n=r===`>`||r===`<`?`<0.0.0-0`:`*`:r&&f?(u&&(a=0),s=0,r===`>`?(r=`>=`,u?(i=+i+1,a=0,s=0):(a=+a+1,s=0)):r===`<=`&&(r=`<`,u?i=+i+1:a=+a+1),r===`<`&&(c=`-0`),n=`${r+i}.${a}.${s}${c}`):u?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),o(`xRange return`,n),n})},E=(e,t)=>(o(`replaceStars`,e,t),e.trim().replace(c[l.STAR],``)),D=(e,t)=>(o(`replaceGTE0`,e,t),e.trim().replace(c[t.includePrerelease?l.GTE0PRE:l.GTE0],``)),O=e=>(t,n,r,i,a,o,s,c,l,u,d,f)=>(n=y(r)?``:y(i)?`>=${r}.0.0${e?`-0`:``}`:y(a)?`>=${r}.${i}.0${e?`-0`:``}`:o?`>=${n}`:`>=${n}${e?`-0`:``}`,c=y(l)?``:y(u)?`<${+l+1}.0.0-0`:y(d)?`<${l}.${+u+1}.0-0`:f?`<=${l}.${u}.${d}-${f}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`,`${n} ${c}`.trim()),k=(e,t,n)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!n.includePrerelease){for(let n=0;n<e.length;n++)if(o(e[n].semver),e[n].semver!==a.ANY&&e[n].semver.prerelease.length>0){let r=e[n].semver;if(r.major===t.major&&r.minor===t.minor&&r.patch===t.patch)return!0}return!1}return!0}})),fj=W(((e,t)=>{let n=Symbol(`SemVer ANY`);t.exports=class e{static get ANY(){return n}constructor(t,i){if(i=r(i),t instanceof e){if(t.loose===!!i.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(` `),s(`comparator`,t,i),this.options=i,this.loose=!!i.loose,this.parse(t),this.semver===n?this.value=``:this.value=this.operator+this.semver.version,s(`comp`,this)}parse(e){let t=this.options.loose?i[a.COMPARATORLOOSE]:i[a.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);this.operator=r[1]===void 0?``:r[1],this.operator===`=`&&(this.operator=``),r[2]?this.semver=new c(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(s(`Comparator.test`,e,this.options.loose),this.semver===n||e===n)return!0;if(typeof e==`string`)try{e=new c(e,this.options)}catch{return!1}return o(e,this.operator,this.semver,this.options)}intersects(t,n){if(!(t instanceof e))throw TypeError(`a Comparator is required`);return this.operator===``?this.value===``?!0:new l(t.value,n).test(this.value):t.operator===``?t.value===``?!0:new l(this.value,n).test(t.semver):(n=r(n),n.includePrerelease&&(this.value===`<0.0.0-0`||t.value===`<0.0.0-0`)||!n.includePrerelease&&(this.value.startsWith(`<0.0.0`)||t.value.startsWith(`<0.0.0`))?!1:!!(this.operator.startsWith(`>`)&&t.operator.startsWith(`>`)||this.operator.startsWith(`<`)&&t.operator.startsWith(`<`)||this.semver.version===t.semver.version&&this.operator.includes(`=`)&&t.operator.includes(`=`)||o(this.semver,`<`,t.semver,n)&&this.operator.startsWith(`>`)&&t.operator.startsWith(`<`)||o(this.semver,`>`,t.semver,n)&&this.operator.startsWith(`<`)&&t.operator.startsWith(`>`)))}};let r=RA(),{safeRe:i,t:a}=LA(),o=cj(),s=IA(),c=BA(),l=dj()})),pj=W(((e,t)=>{let n=dj();t.exports=(e,t,r)=>{try{t=new n(t,r)}catch{return!1}return t.test(e)}})),mj=W(((e,t)=>{let n=dj();t.exports=(e,t)=>new n(e,t).set.map(e=>e.map(e=>e.value).join(` `).trim().split(` `))})),hj=W(((e,t)=>{let n=BA(),r=dj();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===-1)&&(a=e,o=new n(a,i))}),a}})),gj=W(((e,t)=>{let n=BA(),r=dj();t.exports=(e,t,i)=>{let a=null,o=null,s=null;try{s=new r(t,i)}catch{return null}return e.forEach(e=>{s.test(e)&&(!a||o.compare(e)===1)&&(a=e,o=new n(a,i))}),a}})),_j=W(((e,t)=>{let n=BA(),r=dj(),i=nj();t.exports=(e,t)=>{e=new r(e,t);let a=new n(`0.0.0`);if(e.test(a)||(a=new n(`0.0.0-0`),e.test(a)))return a;a=null;for(let t=0;t<e.set.length;++t){let r=e.set[t],o=null;r.forEach(e=>{let t=new n(e.semver.version);switch(e.operator){case`>`:t.prerelease.length===0?t.patch++:t.prerelease.push(0),t.raw=t.format();case``:case`>=`:(!o||i(t,o))&&(o=t);break;case`<`:case`<=`:break;default:throw Error(`Unexpected operation: ${e.operator}`)}}),o&&(!a||i(a,o))&&(a=o)}return a&&e.test(a)?a:null}})),vj=W(((e,t)=>{let n=dj();t.exports=(e,t)=>{try{return new n(e,t).range||`*`}catch{return null}}})),yj=W(((e,t)=>{let n=BA(),r=fj(),{ANY:i}=r,a=dj(),o=pj(),s=nj(),c=rj(),l=sj(),u=oj();t.exports=(e,t,d,f)=>{e=new n(e,f),t=new a(t,f);let p,m,h,g,_;switch(d){case`>`:p=s,m=l,h=c,g=`>`,_=`>=`;break;case`<`:p=c,m=u,h=s,g=`<`,_=`<=`;break;default:throw TypeError(`Must provide a hilo val of "<" or ">"`)}if(o(e,t,f))return!1;for(let n=0;n<t.set.length;++n){let a=t.set[n],o=null,s=null;if(a.forEach(e=>{e.semver===i&&(e=new r(`>=0.0.0`)),o||=e,s||=e,p(e.semver,o.semver,f)?o=e:h(e.semver,s.semver,f)&&(s=e)}),o.operator===g||o.operator===_||(!s.operator||s.operator===g)&&m(e,s.semver)||s.operator===_&&h(e,s.semver))return!1}return!0}})),bj=W(((e,t)=>{let n=yj();t.exports=(e,t,r)=>n(e,t,`>`,r)})),xj=W(((e,t)=>{let n=yj();t.exports=(e,t,r)=>n(e,t,`<`,r)})),Sj=W(((e,t)=>{let n=dj();t.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))})),Cj=W(((e,t)=>{let n=pj(),r=XA();t.exports=(e,t,i)=>{let a=[],o=null,s=null,c=e.sort((e,t)=>r(e,t,i));for(let e of c)n(e,t,i)?(s=e,o||=e):(s&&a.push([o,s]),s=null,o=null);o&&a.push([o,null]);let l=[];for(let[e,t]of a)e===t?l.push(e):!t&&e===c[0]?l.push(`*`):t?e===c[0]?l.push(`<=${t}`):l.push(`${e} - ${t}`):l.push(`>=${e}`);let u=l.join(` || `),d=typeof t.raw==`string`?t.raw:String(t);return u.length<d.length?u:t}})),wj=W(((e,t)=>{let n=dj(),r=fj(),{ANY:i}=r,a=pj(),o=XA(),s=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;OUTER:for(let n of e.set){for(let e of t.set){let t=u(n,e,r);if(i||=t!==null,t)continue OUTER}if(i)return!1}return!0},c=[new r(`>=0.0.0-0`)],l=[new r(`>=0.0.0`)],u=(e,t,n)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===i){if(t.length===1&&t[0].semver===i)return!0;e=n.includePrerelease?c:l}if(t.length===1&&t[0].semver===i){if(n.includePrerelease)return!0;t=l}let r=new Set,s,u;for(let t of e)t.operator===`>`||t.operator===`>=`?s=d(s,t,n):t.operator===`<`||t.operator===`<=`?u=f(u,t,n):r.add(t.semver);if(r.size>1)return null;let p;if(s&&u&&(p=o(s.semver,u.semver,n),p>0||p===0&&(s.operator!==`>=`||u.operator!==`<=`)))return null;for(let e of r){if(s&&!a(e,String(s),n)||u&&!a(e,String(u),n))return null;for(let r of t)if(!a(e,String(r),n))return!1;return!0}let m,h,g,_,v=u&&!n.includePrerelease&&u.semver.prerelease.length?u.semver:!1,y=s&&!n.includePrerelease&&s.semver.prerelease.length?s.semver:!1;v&&v.prerelease.length===1&&u.operator===`<`&&v.prerelease[0]===0&&(v=!1);for(let e of t){if(_=_||e.operator===`>`||e.operator===`>=`,g=g||e.operator===`<`||e.operator===`<=`,s){if(y&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===y.major&&e.semver.minor===y.minor&&e.semver.patch===y.patch&&(y=!1),e.operator===`>`||e.operator===`>=`){if(m=d(s,e,n),m===e&&m!==s)return!1}else if(s.operator===`>=`&&!a(s.semver,String(e),n))return!1}if(u){if(v&&e.semver.prerelease&&e.semver.prerelease.length&&e.semver.major===v.major&&e.semver.minor===v.minor&&e.semver.patch===v.patch&&(v=!1),e.operator===`<`||e.operator===`<=`){if(h=f(u,e,n),h===e&&h!==u)return!1}else if(u.operator===`<=`&&!a(u.semver,String(e),n))return!1}if(!e.operator&&(u||s)&&p!==0)return!1}return!(s&&g&&!u&&p!==0||u&&_&&!s&&p!==0||y||v)},d=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r>0?e:r<0||t.operator===`>`&&e.operator===`>=`?t:e},f=(e,t,n)=>{if(!e)return t;let r=o(e.semver,t.semver,n);return r<0?e:r>0||t.operator===`<`&&e.operator===`<=`?t:e};t.exports=s})),Tj=W(((e,t)=>{let n=LA(),r=FA(),i=BA(),a=zA();t.exports={parse:VA(),valid:HA(),clean:UA(),inc:WA(),diff:GA(),major:KA(),minor:qA(),patch:JA(),prerelease:YA(),compare:XA(),rcompare:ZA(),compareLoose:QA(),compareBuild:$A(),sort:ej(),rsort:tj(),gt:nj(),lt:rj(),eq:ij(),neq:aj(),gte:oj(),lte:sj(),cmp:cj(),coerce:lj(),Comparator:fj(),Range:dj(),satisfies:pj(),toComparators:mj(),maxSatisfying:hj(),minSatisfying:gj(),minVersion:_j(),validRange:vj(),outside:yj(),gtr:bj(),ltr:xj(),intersects:Sj(),simplifyRange:Cj(),subset:wj(),SemVer:i,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}}))();let Ej=null;function Dj(e){let t=(0,Tj.prerelease)(e);return t&&t.length>0&&typeof t[0]==`string`?t[0]:`latest`}function Oj(){let e=process.env.npm_command;if(e===`exec`||e===`dlx`)return!0;let t=process.argv[1]??``;return!!/_npx[/\\]|[/\\]dlx[/\\]|\.cache[/\\]/.test(t)}function kj(){let e=process.env.npm_config_user_agent;if(e){let t=e.split(`/`)[0];if(t===`yarn`||t===`pnpm`||t===`bun`||t===`npm`)return t}let t=process.argv[1]??``;return t.includes(`yarn`)?`yarn`:t.includes(`pnpm`)?`pnpm`:t.includes(`bun`)?`bun`:`npm`}async function Aj(e){let t=Date.now();if(Ej&&t-Ej.timestamp<6e4)return Ej.tags;let n=await fetch(`https://registry.npmjs.org/${e}`,{signal:AbortSignal.timeout(1e4),headers:{accept:`application/json`}});if(!n.ok)throw Error(`Registry returned ${n.status}`);let r=(await n.json())[`dist-tags`]??{};return Ej={tags:r,timestamp:t},r}async function jj(e){let t=Dj(e),n=kj(),r=Oj(),i=(await Aj(Ae.publishName))[t];return!i&&t!==`latest`||!i||i===e?null:{currentVersion:e,latestVersion:i,tag:t,packageManager:n,isEphemeral:r}}function Mj(){return`${ke.binName} upgrade`}function Nj(e){let t=`${Ae.publishName}@${e.tag}`;switch(e.packageManager){case`yarn`:return`yarn global add ${t}`;case`pnpm`:return`pnpm add -g ${t}`;case`bun`:return`bun add -g ${t}`;default:return`npm install -g ${t}`}}function Pj(e){try{return l(Nj(e),{stdio:`pipe`}),!0}catch{return!1}}const Fj=C.join(r(),ke.configDirName,ke.logsDirName),Ij=C.join(Fj,`cli.log`);let Lj=!1;function Rj(){if(!Lj)try{g(Fj)||_(Fj,{recursive:!0}),Lj=!0}catch{}}function zj(e){return e.length===0?``:` `+e.map(e=>{if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}).join(` `)}function Bj(e,t,n){Rj();let r=`[${new Date().toISOString()}] [${e}] ${t instanceof Error?`${t.message}${t.stack?`
|
|
12508
12508
|
`+t.stack:``}`:String(t)}${zj(n)}\n`;try{m(Ij,r)}catch{}}const Vj={error(e,...t){Bj(`ERROR`,e,t)},warn(e,...t){Bj(`WARN`,e,t)},info(e,...t){Bj(`INFO`,e,t)},debug(...e){Bj(`DEBUG`,e[0]??``,e.slice(1))},trace(e,...t){Bj(`TRACE`,e,t)}},Hj=new Set,Uj=new Set,Wj=new Set;let Gj=!1,Kj=!1,qj=null,Jj;async function Yj(e){let t=e.map(e=>new Promise(t=>{let n=`writableLength`in e?e.writableLength:0;if((`bufferSize`in e?e.bufferSize:n)===0){t();return}let r=e.write.bind(e),i=!1,a=()=>{let n=`writableLength`in e?e.writableLength:0;(`bufferSize`in e?e.bufferSize:n)===0&&!i&&(i=!0,e.write=r,t())};e.once(`drain`,a),e.write(``,`utf-8`,()=>{a()}),e.write=function(){return!1}}));await Promise.all(t)}async function Xj(e,t,n,r){if(Gj)return;r?.debug?.(`Executing exit handlers`,{shouldManuallyExit:e,isSynchronous:t,signal:n,asyncCallbacks:Hj.size,syncCallbacks:Uj.size}),Gj=!0,Hj.size>0&&t&&console.error([`SYNCHRONOUS TERMINATION NOTICE:`,`When explicitly exiting the process via process.exit or via a parent process,`,`asynchronous tasks in your exitHooks will not run. Either remove these tasks,`,`use gracefulExit() instead of process.exit(), or ensure your parent process`,`sends a SIGINT to the process running this code.`].join(` `));let i=0;n>0?i=128+n:Jj===void 0?(typeof U.exitCode==`number`||typeof U.exitCode==`string`)&&(i=Number(U.exitCode)):i=Jj;let a=(t=!1)=>{(t||e)&&(qj?qj.call(U,i):U.exit(i))};for(let e of Uj)try{e(i)}catch(e){console.error(`Error in synchronous exit hook:`,e)}if(t){a();return}let o=[],s=0;for(let[e,t]of Hj)s=Math.max(s,t),o.push(Promise.resolve(e(i)).catch(e=>{console.error(`Error in asynchronous exit hook:`,e)}));let c=Array.from(Wj);c.length>0&&o.push(Yj(c));let l=setTimeout(()=>{a(!0)},s);try{await Promise.all(o),clearTimeout(l),a()}catch(e){clearTimeout(l),console.error(`Error during exit cleanup:`,e),a(!0)}}function Zj(){Kj||(Kj=!0,U.once(`beforeExit`,()=>{Xj(!0,!1,-128)}),U.once(`SIGINT`,()=>{Xj(!0,!1,2)}),U.once(`SIGTERM`,()=>{Xj(!0,!1,15)}),U.once(`exit`,()=>{Xj(!1,!0,0)}),U.on(`message`,e=>{e===`shutdown`&&Xj(!0,!0,-128)}),qj||(qj=U.exit.bind(U),U.exit=function(e){if(Jj===void 0&&(Jj=e??0),Hj.size===0&&Wj.size===0){if(qj){qj(e??0);return}U.exit(e??0)}Xj(!0,!1,-128).catch(e=>{console.error(`Error during exit:`,e),qj?qj(1):U.exit(1)})}))}function Qj(e,t){if(typeof e!=`function`)throw TypeError(`callback must be a function`);if(Gj)throw Error(`Cannot install exit hook while exit handlers are running`);t?.logger?.debug?.(`Registering exit hook`,{wait:t?.wait,hasStreams:t?.streams!==void 0}),Zj();let n=t?.wait??0,r=t?.streams??[U.stdout,U.stderr];if(n>0){let t=[e,n];Hj.add(t);for(let e of r)Wj.add(e);return()=>{Hj.delete(t);for(let e of r)Wj.delete(e)}}return Uj.add(e),()=>{Uj.delete(e)}}function $j(e){e!==void 0&&(U.exitCode=e),Xj(!0,!1,-128)}async function eM(){let e=await Qk.create();return{apiClient:new Oe(e,{error:(e,...t)=>Vj.error(e,...t),debug:(...e)=>Vj.debug(...e),warn:(e,...t)=>Vj.warn(e,...t)}),authManager:e}}function tM(e){process.stdout.write(JSON.stringify(e)+`
|
|
12509
12509
|
`)}async function nM(e,t){if(!e.isAuthenticated()){try{if((await t.getUserInfo())?.result?.email)return}catch{}console.error(`Error: Not authenticated. Please set ${ke.envPrefix}API_KEY environment variable.`),console.error(`You can obtain your API key by visiting: https://abacus.ai/app/abacusai-cli`),console.error(`\nUsage: ${ke.envPrefix}API_KEY=your_key_here abacusai --print "your prompt"`),process.exit(1)}}function rM(e,t){let n=e=>{let n=e.toLowerCase();if(n===t)return 1e3;if(n.startsWith(t))return 900;let r=0,i=-1;for(let e of t){let t=n.indexOf(e,i+1);if(t===-1)return 0;r+=100-(t-i),i=t}return r+=Math.max(0,50-n.length),r},r=null,i=0;for(let t of e){let e=Math.max(n(t.name??``),n(t.llmName));e>i&&(i=e,r=t.llmName)}return i>=100?r:null}async function iM(e,t){let n=(await e.listLLMModels())?.result??[];return n.length||(console.error(`Error: No models available. Check your API key and connection.`),process.exit(1)),t?rM(n,t.toLowerCase())||(console.error(`Warning: Model "${t}" not found. Using default: ${n[0].llmName}`),n[0].llmName):n[0].llmName}async function aM(e,t){if(e?.resume)return e.resume;if(e?.continue)try{return((await t.getConversationsList(`CODE_LLM_AGENT`))?.result??[]).sort((e,t)=>{let n=e.lastEventCreatedAt?new Date(e.lastEventCreatedAt).getTime():0;return(t.lastEventCreatedAt?new Date(t.lastEventCreatedAt).getTime():0)-n})[0]?.deploymentConversationId}catch{}return e?.conversationId}async function oM({agentArgs:e}){let{apiClient:t,authManager:n}=await eM();jj(PA).then(e=>{if(e){let t=e.isEphemeral?`\nUpdate available: ${e.currentVersion} → ${e.latestVersion} (${e.tag})\n`:`\nUpdate available: ${e.currentVersion} → ${e.latestVersion} (${e.tag}). Run: ${Mj()}\n`;process.stderr.write(t)}}).catch(()=>{}),await nM(n,t);let r=process.cwd(),i=new Bk({cwd:r});await i.load();let a=i.get(`baseUrl`);if(a){try{new URL(a)}catch{console.error(`Invalid baseUrl: ${a}`),process.exit(1)}t.setUrl(a),t.resetEndpoints(),await t.getApiEndpoint()}let o=e?.[`output-format`]??`text`,s=await iM(t,e?.model),c=xl.Yolo,l=e?.[`permission-mode`];if(l)switch(l){case`normal`:c=xl.Normal;break;case`accept-edits`:c=xl.AcceptEdits;break;case`plan`:c=xl.PlanMode;break;default:c=xl.Yolo;break}let u=new Mk({allowedDirectories:[r,...e?.[`add-dir`]?.map(e=>C.isAbsolute(e)?e:C.resolve(r,e))??[]],primaryWorkspace:r,apiClient:t,mode:c,model:s,permissionProvider:new Nk,config:i,isPrintMode:!0,enablePromptRewrite:!1,supportsThoughtStreaming:!0,cliAllowedTools:e?.[`allowed-tools`],cliDisallowedTools:e?.[`disallowed-tools`]});Qj(async()=>{u.stop(),await new Promise(e=>setTimeout(e,200))},{wait:1e3});let d=await aM(e,t);d&&await u.loadConversation(d);let f=e?.prompt??``;process.env.DEEPAGENT_HIGH_QUALITY===`true`&&(f=`
|
|
12510
12510
|
IMPORTANT INSTRUCTIONS: Your task is to follow the <task_description> EXACTLY and verify the solution within the FIXED TIME LIMIT.
|
|
@@ -12644,7 +12644,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),a=e,i=t);let o={code:i
|
|
|
12644
12644
|
Ensure that the procedure is correctly defined and matches the expected contract.
|
|
12645
12645
|
`);n.procedure=TX(e,n.contract)}return{path:n.path,procedure:n.procedure}}}},RX=class extends FX{constructor(e,t={}){let n=new mY(new lY(t)),r=new LX(t),i=new IX(n);super(e,r,i,t)}},zX=class{socketServer;socketPath;editorState={file:void 0,startLine:void 0,endLine:void 0};onEditorStateCallback=null;pendingDecisions=new Map;constructor(){let e=S.join(t.homedir(),ke.configDirName,`cli`);this.socketPath=S.join(e,`${process.pid}.sock`)}getEditorState(){return{...this.editorState}}onEditorChange(e){this.onEditorStateCallback=e}waitForDecision(e,t){return new Promise((n,r)=>{if(t?.aborted){r(Error(`Aborted`));return}let i=()=>{t?.removeEventListener(`abort`,a),this.pendingDecisions.delete(e)},a=()=>{i(),r(Error(`Aborted`))};t?.addEventListener(`abort`,a,{once:!0}),this.pendingDecisions.set(e,{resolve:e=>{i(),n(e)},cleanup:i})})}async start(){let e=S.dirname(this.socketPath);f.existsSync(e)||f.mkdirSync(e,{recursive:!0});let t=NX(EY),n=t.router({editorStateChanged:t.editorStateChanged.handler(async({input:e})=>(this.editorState={file:e.file??void 0,startLine:e.startLine,endLine:e.endLine},this.onEditorStateCallback?.(this.editorState),{ok:!0})),toolDecision:t.toolDecision.handler(async({input:e})=>{let t=this.pendingDecisions.get(e.toolId);return t&&t.resolve(e.decision),{ok:!0}})});this.socketServer=await ZY(this.socketPath,new RX(n))}dispose(){for(let[,e]of this.pendingDecisions)e.cleanup();this.pendingDecisions.clear(),this.socketServer?.dispose(),this.socketServer=void 0}},BX=class{client=null;disposeSocket=null;currentFile=void 0;selectionStartLine=void 0;selectionEndLine=void 0;onFileChangeCallback=null;constructor(e){this.pushServer=e}findSocketPath(){let e=process.env[ke.socketEnvVar];if(e&&p.existsSync(e))return e;try{let e=C.join(n.homedir(),ke.configDirName,ke.ideDirName),t=p.readdirSync(e).filter(e=>e.endsWith(`.sock`));if(t.length===0)return null;let r=null;for(let n of t){let t=C.join(e,n);try{let e=p.statSync(t);(!r||e.mtimeMs>r.mtime)&&(r={path:t,mtime:e.mtimeMs})}catch{}}if(r&&p.existsSync(r.path))return r.path}catch{}return null}async connect(){try{let e=this.findSocketPath();if(!e)return!1;let t=await eX(e,{timeoutMs:2e3});this.client=$J(t.link),this.disposeSocket=()=>t.dispose(),await this.client.register({cliSocketPath:this.pushServer.socketPath,pid:process.pid});let n=this.pushServer.getEditorState();return this.currentFile=n.file,this.selectionStartLine=n.startLine,this.selectionEndLine=n.endLine,this.pushServer.onEditorChange(e=>{this.currentFile=e.file,this.selectionStartLine=e.startLine,this.selectionEndLine=e.endLine,this.onFileChangeCallback?.(e.file,e.startLine,e.endLine)}),!0}catch{return!1}}getCurrentFile(){return this.currentFile}getSelectionRange(){return{startLine:this.selectionStartLine,endLine:this.selectionEndLine}}isConnected(){return this.client!==null}onFileChange(e){this.onFileChangeCallback=e}async showDiff(e){if(!this.client)return!1;try{return(await this.client.showDiff({...e,cliSocketPath:this.pushServer.socketPath})).success}catch{return!1}}async showToolView(e){if(!this.client)return!1;try{return(await this.client.showToolView({...e,cliSocketPath:this.pushServer.socketPath})).success}catch{return!1}}async notifyDiffDecision(e){if(!this.client)throw Error(`Not connected to extension`);await this.client.notifyDiffDecision(e)}async openPlanFile(e){if(!this.client)throw Error(`Not connected to extension`);return{opened:(await this.client.openFile({file:e})).success}}async getDiagnostics(e){if(!this.client)throw Error(`Not connected to extension`);return this.client.getDiagnostics({...e&&{files:e}})}dispose(){this.disposeSocket?.(),this.disposeSocket=null,this.client=null,this.currentFile=void 0,this.selectionStartLine=void 0,this.selectionEndLine=void 0,this.onFileChangeCallback=null}};const VX=(0,Z.createContext)(null);function HX(){let e=(0,Z.use)(VX);if(!e)throw Error(`useExtensionFile must be used within ExtensionFileProvider`);return e}function UX({children:e,initialFile:t}){let[n,r]=(0,Z.useState)(t),[i,a]=(0,Z.useState)(void 0),[o,s]=(0,Z.useState)(void 0),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(null);return(0,Z.useEffect)(()=>{let e=!1;return(async()=>{let t=new zX;try{await t.start()}catch{}if(e){t.dispose();return}p.current=t,d(t),t.onEditorChange(e=>{r(e.file),a(e.startLine),s(e.endLine)});for(let n of[0,...[500,1e3,2e3,3e3,4e3]]){if(e||(n>0&&await new Promise(e=>setTimeout(e,n)),e))return;try{let n=new BX(t);if(await n.connect()){if(e){n.dispose();return}let i=t.getEditorState();r(i.file),a(i.startLine),s(i.endLine),n.onFileChange((e,t,n)=>{r(e),a(t),s(n)}),f.current=n,l(n);return}}catch{}}})(),()=>{e=!0,f.current&&(f.current.dispose(),f.current=null,l(null)),p.current&&(p.current.dispose(),p.current=null,d(null))}},[]),(0,X.jsx)(VX.Provider,{value:{currentFile:n,selectionStartLine:i,selectionEndLine:o,connection:c,pushServer:u},children:e})}const WX=(0,Z.createContext)(null);function GX({children:e}){let[t,n]=(0,Z.useState)(`idle`),r=(0,Z.useCallback)(()=>n(`upload`),[]),i=(0,Z.useCallback)(()=>n(`download`),[]),a=(0,Z.useCallback)(()=>n(`idle`),[]),o=(0,Z.useMemo)(()=>({activity:t,setActivity:n,startUpload:r,startDownload:i,stopActivity:a}),[t,r,i,a]);return(0,X.jsx)(WX.Provider,{value:o,children:e})}function KX(){let e=(0,Z.use)(WX);if(!e)throw Error(`useNetworkActivity must be used within NetworkActivityProvider`);return e}let qX=function(e){return e.ESC=`\x1B`,e.BEL=`\x07`,e.ST=`\x1B\\`,e.ENABLE_FOCUS_REPORTING=`${e.ESC}[?1004h`,e.DISABLE_FOCUS_REPORTING=`${e.ESC}[?1004l`,e.FOCUS_IN=`${e.ESC}[I`,e.FOCUS_OUT=`${e.ESC}[O`,e.SHOW_CURSOR=`${e.ESC}[?25h`,e.HIDE_CURSOR=`${e.ESC}[?25l`,e.SET_TITLE=`${e.ESC}]2;`,e.RESET_SGR=`${e.ESC}[0m`,e.SOFT_RESET=`${e.ESC}[!p`,e.HARD_RESET=`${e.ESC}c`,e.ENABLE_BRACKETED_PASTE=`${e.ESC}[?2004h`,e.DISABLE_BRACKETED_PASTE=`${e.ESC}[?2004l`,e.PASTE_MODE_PREFIX=`${e.ESC}[200~`,e.PASTE_MODE_SUFFIX=`${e.ESC}[201~`,e.DIM=`${e.ESC}[2m`,e.BOLD=`${e.ESC}[1m`,e.RESET_BOLD=`${e.ESC}[22m`,e.ITALIC=`${e.ESC}[3m`,e.RESET_ITALIC=`${e.ESC}[23m`,e.STRIKETHROUGH=`${e.ESC}[9m`,e.RESET_STRIKETHROUGH=`${e.ESC}[29m`,e.UNDERLINE=`${e.ESC}[4m`,e.RESET_UNDERLINE=`${e.ESC}[24m`,e}({});function JX(e){return`${qX.ESC}]9;\n\n${e}${qX.BEL}`}function YX(e,t){return`${qX.ESC}]777;notify;${e};${t}${qX.BEL}`}function XX(e,t){let n=Math.floor(Math.random()*1e4),r=`${qX.ESC}]99;i=${n}:d=0:p=title;${e}${qX.ST}`,i=`${qX.ESC}]99;i=${n}:p=body;${t}${qX.ST}`,a=`${qX.ESC}]99;i=${n}:d=1:a=focus;${qX.ST}`;return r+i+a}function ZX(e,t){let n=`9;4;${e};${t===void 0?0:Math.max(0,Math.min(100,Math.round(t)))}`;return`${qX.ESC}]${n}${qX.BEL}${qX.ESC}]${n}${qX.ST}`}function QX(e){return e.replaceAll(`\x1B`,``).replaceAll(`\x07`,``).replaceAll(`
|
|
12646
12646
|
`,` `).replaceAll(`\r`,` `).replaceAll(`;`,`:`).trim().slice(0,120)}function $X(e){return`${qX.ESC}]${e}${qX.BEL}${qX.ESC}]${e}${qX.ST}`}function eZ(){return $X(`1337;Progress=`)}function tZ(e){return $X(`1337;Progress=${e}`)}function nZ(e,t){let n=Math.max(0,Math.min(100,Math.round(e))),r=t?QX(t):``;return r?$X(`1337;Progress=${n};${r}`)+$X(`1337;Progress=message=${r};percent=${n}`):$X(`1337;Progress=${n}`)}function rZ({onlyFirst:e=!1}={}){return RegExp(`(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]`,e?void 0:`g`)}const iZ=rZ();function aZ(e){if(typeof e!=`string`)throw TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(iZ,``)}const oZ=[`pycharm`,`intellij`,`webstorm`,`phpstorm`,`rubymine`,`clion`,`goland`,`rider`,`datagrip`,`appcode`,`dataspell`,`aqua`,`gateway`,`fleet`,`jetbrains`,`androidstudio`];function sZ(e){if(U.env.CURSOR_TRACE_ID)return e?.debug?.(`Detected Cursor terminal via CURSOR_TRACE_ID`),`cursor`;if(U.env.VSCODE_GIT_ASKPASS_MAIN?.includes(`/.cursor-server/`))return e?.debug?.(`Detected Cursor terminal via VSCODE_GIT_ASKPASS_MAIN`),`cursor`;if(U.env.VSCODE_GIT_ASKPASS_MAIN?.includes(`/.windsurf-server/`))return e?.debug?.(`Detected Windsurf terminal`),`windsurf`;let t=U.env.__CFBundleIdentifier?.toLowerCase();if(t?.includes(`vscodium`))return`codium`;if(t?.includes(`windsurf`))return`windsurf`;if(t?.includes(`com.google.android.studio`))return`androidstudio`;if(t){for(let e of oZ)if(t.includes(e))return e}if(U.env.VisualStudioVersion)return`visualstudio`;if(U.env.TERMINAL_EMULATOR===`JetBrains-JediTerm`)return`pycharm`;if(U.env.TERM===`xterm-ghostty`)return`ghostty`;if(U.env.TERM?.includes(`kitty`))return`kitty`;if(U.env.WEZTERM_PANE)return`WezTerm`;if(U.env.ITERM_SESSION_ID)return`iTerm.app`;if(U.env.TERM_PROGRAM===`Apple_Terminal`)return`Apple_Terminal`;if(U.env.TERM_PROGRAM)return U.env.TERM_PROGRAM;if(U.env.STY)return`screen`;if(U.env.KONSOLE_VERSION)return`konsole`;if(U.env.GNOME_TERMINAL_SERVICE)return`gnome-terminal`;if(U.env.XTERM_VERSION)return`xterm`;if(U.env.VTE_VERSION)return`vte-based`;if(U.env.TERMINATOR_UUID)return`terminator`;if(U.env.KITTY_WINDOW_ID)return`kitty`;if(U.env.ALACRITTY_LOG)return`alacritty`;if(U.env.TILIX_ID)return`tilix`;if(U.env.WT_SESSION)return`windows-terminal`;if(U.env.SESSIONNAME&&U.env.TERM===`cygwin`)return`cygwin`;if(U.env.MSYSTEM)return U.env.MSYSTEM.toLowerCase();if(U.env.ConEmuANSI||U.env.ConEmuPID||U.env.ConEmuTask)return`conemu`;if(U.env.WSL_DISTRO_NAME)return`wsl-${U.env.WSL_DISTRO_NAME}`;if(U.env.SSH_CONNECTION||U.env.SSH_CLIENT||U.env.SSH_TTY)return`ssh-session`;if(U.env.TERM){let e=U.env.TERM;return e.includes(`alacritty`)?`alacritty`:e.includes(`rxvt`)?`rxvt`:e.includes(`termite`)?`termite`:U.env.TERM}return U.stdout.isTTY?(e?.debug?.(`Could not detect terminal type`),null):(e?.debug?.(`Non-interactive terminal detected`),`non-interactive`)}function cZ(){switch(sZ()){case`Apple_Terminal`:return`Option+Enter`;case`cursor`:case`windsurf`:case`vscode`:case`codium`:case`iTerm.app`:case`ghostty`:case`WezTerm`:case`kitty`:case`alacritty`:return`Shift+Enter`;default:return`backslash (\\) + Enter`}}function lZ(e){U.stdout.isTTY&&U.stdout.write(e)}function uZ(e,t){lZ(JX(e?`${e}:\n${t}`:t))}function dZ(e,t){lZ(XX(e,t))}function fZ(e,t){lZ(YX(e,t))}function pZ(e,t){lZ(qX.BEL)}async function mZ(e){let{title:t=`Abacus.AI`,message:n}=e;switch(sZ()){case`iTerm.app`:uZ(t,n);break;case`kitty`:dZ(t,n);break;case`ghostty`:fZ(t,n);break;case`WezTerm`:uZ(t,n);break;default:U.platform===`win32`&&pZ(t,n);break}}async function hZ(e,t){await mZ({...t,message:e,title:t?.title??`Action Required`})}async function gZ(e,t){await mZ({...t,message:e,title:t?.title??`Task Complete`})}const _Z=(0,Z.createContext)(null),vZ=()=>{let e=(0,Z.use)(_Z);if(!e)throw Error(`useNotification must be used within NotificationProvider`);return e},yZ=({children:e})=>{let{isFocused:t}=lI(),n=(0,Z.useCallback)(async(e,n)=>{t||await mZ({message:e,title:n})},[t]),r=(0,Z.useCallback)(async e=>{t||await hZ(e)},[t]),i=(0,Z.useCallback)(async e=>{t||await gZ(e)},[t]),a=(0,Z.useMemo)(()=>({notifyIfUnfocused:n,notifyActionRequired:r,notifyTaskComplete:i}),[n,r,i]);return(0,X.jsx)(_Z.Provider,{value:a,children:e})},bZ=(0,Z.createContext)(null),xZ=()=>{let e=(0,Z.use)(bZ);if(!e)throw Error(`useApiClient must be used within ApiClientProvider`);return e},SZ=(0,Z.memo)(({children:e,client:t,authManager:n})=>{let[r,i]=(0,Z.useState)(!1),a=(0,Z.useCallback)(()=>i(!1),[]),o=(0,Z.useMemo)(()=>({apiClient:t,authManager:n,authExpired:r,setAuthExpired:i,clearAuthExpired:a}),[r,t,n,a]);return(0,X.jsx)(bZ.Provider,{value:o,children:e})});SZ.displayName=`ApiClientProvider`;const CZ=[`conemu`,`ghostty`,`windows-terminal`,`WezTerm`,`iTerm.app`];let wZ=null;function TZ(e){if(!e||!U.stdout.isTTY)return!1;if(CZ.includes(e))return!0;let t=e.toLowerCase();return t.includes(`iterm`)||t.includes(`ghostty`)||t.includes(`wezterm`)||t.includes(`conemu`)}function EZ(e){U.stdout.write(e)}function DZ(e){switch(e){case`indeterminate`:return 3;case`error`:return 2;case`warning`:return 4;default:return 1}}function OZ(){wZ&&=(clearTimeout(wZ),null)}function kZ(){OZ(),wZ=setTimeout(()=>{AZ()},500)}function AZ(){let e=sZ();TZ(e)&&(EZ(ZX(0)),e?.toLowerCase().includes(`iterm`)&&EZ(eZ()))}function jZ(e,t){if(e instanceof Promise)return NZ(e,t);let n=e,r=sZ();if(!TZ(r))return;OZ();let i=0;n.percentage===void 0?n.total!==void 0&&n.current!==void 0&&n.total>0&&(i=n.current/n.total*100):i=n.percentage;let a=n.state??`default`;EZ(ZX(DZ(a),i)),r?.toLowerCase().includes(`iterm`)&&(a===`indeterminate`?EZ(tZ(2)):(EZ(nZ(i,n.label)),i>=100&&EZ(tZ(1)))),(a===`error`||i>=100)&&kZ()}function MZ(){OZ(),AZ()}async function NZ(e,t){let{label:n,hideOnComplete:r=!0}=t??{};jZ({state:`indeterminate`,label:n});try{let t=await e;return jZ({percentage:100,state:`default`,label:n}),r&&kZ(),t}catch(e){throw jZ({percentage:100,state:`error`,label:n}),r&&kZ(),e}}const PZ=(0,Z.createContext)(null);function FZ(e,t){switch(t.type){case`INIT_SEND`:return[...e.filter(e=>e.temp!==!0),t.userSeg,t.spinnySeg];case`TEXT_DELTA`:{let{segId:n,content:r}=t,i=e.map(e=>e.type===`code_llm_tool_call`&&e.status===`transient`&&!e.toolUseResult?{...e,status:`completed`,parsedResult:{phase:`error`,toolType:Array.isArray(e.toolUseRequest)?e.toolUseRequest[0]?.name??``:e.toolUseRequest?.name??``,data:{},summary:``}}:e).filter(e=>!e.isSpinny);return i.find(e=>e.id===n)?i.map(e=>e.id===n?{...e,segment:(e.segment||``)+r}:e):[...i,{id:n,status:`transient`,source:`bot`,type:`text`,segment:r}]}case`THINKING_DELTA`:{let{segId:n,content:r,startTime:i}=t;return e.find(e=>e.id===n)?e.map(e=>e.id===n?{...e,segment:(e.segment||``)+r}:e):[...e,{id:n,status:`transient`,source:`bot`,type:`thinking`,isSpinny:!0,segment:r,thinkingStartTime:i}]}case`THINKING_COMPLETE`:return e.map(e=>e.id===t.segId?{...e,status:`completed`,isSpinny:!1,thinkingEndTime:t.endTime}:e);case`TOOL_DISPLAY_DATA`:return e.map(e=>e.id===t.toolCallId?{...e,toolDisplayData:{...e.toolDisplayData,...t.data}}:e);case`TOOL_REQUESTED`:{let{textSegId:n,toolSeg:r}=t,i;return i=n?e.filter(e=>!e.isSpinny).map(e=>e.id===n?{...e,status:`completed`}:e):e.filter(e=>!e.isSpinny),[...i,r]}case`TOOL_EXECUTION_COMPLETE`:{let{toolCallId:n,rawResult:r,parsedResult:i,spinnySeg:a}=t;return[...e.map(e=>e.id===n?{...e,status:`completed`,toolUseResult:r,...i!==void 0&&{parsedResult:i}}:e),a]}case`TOOL_USER_MESSAGE`:return[...e,t.seg];case`TEXT_COMPLETED`:return e.map(e=>e.id===t.segId?{...e,status:`completed`}:e);case`FINALIZE`:{let n=e;return t.textSegId&&(n=n.map(e=>e.id===t.textSegId?{...e,status:`completed`}:e)),n.filter(e=>!e.isSpinny)}case`ADD_NOTIFICATION`:{let n=t.seg,r=e[e.length-1];if(r&&r.type===`code_llm_notification`&&r.message===n.message&&r.severity===n.severity){let t=[...e];return t[t.length-1]={...r,flashKey:(r.flashKey??0)+1},t}return[...e,n]}case`ERROR`:return[...e.filter(e=>!e.isSpinny),t.errorSeg];case`REMOVE_USER_SEG`:return e.filter(e=>e.id!==t.userSegId);case`CLEAR`:return[];case`LOAD`:return t.segments;case`REMOVE_TEMP`:return e.some(e=>e.temp===!0)?e.filter(e=>e.temp!==!0):e;default:return e}}function IZ(e){switch(e.type){case`text`:return{id:e.id,status:`completed`,source:e.source,type:`text`,segment:e.content};case`thinking`:return{id:e.id,status:`completed`,source:`bot`,type:`thinking`,segment:e.content,isSpinny:e.isSpinny,...e.title!==void 0&&{title:e.title}};case`tool_call`:return{id:e.id,status:`completed`,source:`bot`,type:`code_llm_tool_call`,toolUseRequest:e.toolUseRequest,toolUseResult:e.toolUseResult??{id:e.toolUseRequest.id,content:` `},...e.parsedResult!==void 0&&{parsedResult:e.parsedResult},...e.toolDisplayData!==void 0&&{toolDisplayData:e.toolDisplayData}};case`notification`:return{id:e.id,status:`completed`,source:`bot`,type:`code_llm_notification`,message:e.message,severity:e.severity,...e.actions!==void 0&&{actions:e.actions}};case`tool_group`:return{id:e.id,status:`completed`,source:`bot`,type:`text`,segment:e.summary}}}const LZ=(0,Z.memo)(({children:e,apiClient:t,configService:n,agentArgs:r})=>{let{agentMode:i,setAgentMode:a}=$K(),o=(0,Z.useRef)(i),{notifyActionRequired:s,notifyTaskComplete:c}=vZ(),{startUpload:l,startDownload:u,stopActivity:d}=KX(),{authManager:f,setAuthExpired:p}=xZ(),{connection:m,pushServer:h}=HX(),g=(0,Z.useRef)(m),_=(0,Z.useRef)(h);(0,Z.useEffect)(()=>{g.current=m},[m]),(0,Z.useEffect)(()=>{_.current=h},[h]);let[v,y]=(0,Z.useState)(Sl.Idle),[b,x]=(0,Z.useReducer)(FZ,[]),S=(0,Z.useRef)(new Map),[w,T]=(0,Z.useState)(null),[E,D]=(0,Z.useState)(null),[O,k]=(0,Z.useState)([]),[A,j]=(0,Z.useState)(null),[M,N]=(0,Z.useState)(null),[P,F]=(0,Z.useState)(!0),[I,L]=(0,Z.useState)(!0),R=(0,Z.useRef)(!0),z=(0,Z.useRef)(null),B=(0,Z.useRef)(Sl.Idle),V=(0,Z.useCallback)(e=>{B.current=e,y(e)},[]);(0,Z.useEffect)(()=>()=>{z.current&&clearTimeout(z.current)},[]);let H=(0,Z.useMemo)(()=>({}),[]),[ee,te]=(0,Z.useState)(null),ne=process.cwd(),re=(0,Z.useMemo)(()=>new Pk(async e=>{let t=g.current,n=e,r=null;if(t&&_.current&&e.type===`edit_file`){let i=e.tool.id,a=S.current.get(i),o=e.tool.input??{},s=o.targetFile??e.filePath??``,c=a?.originalContent??e.originalContent??``,l=a?.newContent??e.newContent??o.codeEdit??``;s&&(c||l)&&await t.showDiff({filePath:s,originalContent:c,modifiedContent:l,toolId:i})&&(n={...e,diffShownInEditor:!0},r=s)}if(t&&e.type===`exit_plan_mode`&&e.planFilePath){let n=e.tool.id;if(_.current&&await t.showToolView({filePath:e.planFilePath,toolKey:n})){let e=await _.current.waitForDecision(n);return e===`allowAlways`?`allowAlways`:e}await t.openPlanFile(e.planFilePath).catch(()=>{})}let i=await new Promise(e=>{D({request:n,resolve:t=>{D(null),V(t===`accept`||t===`allowAlways`||typeof t==`object`&&t.type===`accept_with_message`||typeof t==`object`&&t.type===`question_answers`?Sl.ExecutingTool:Sl.Submitted);let n=setImmediate(()=>e(t));typeof n?.unref==`function`&&n.unref()}}),V(Sl.WaitingForToolPermission),s(`Abacus.AI is waiting for your input`)});if(r&&t){let e=i===`reject`||typeof i==`object`&&i.type===`reject_with_message`;t.notifyDiffDecision({targetFile:r,decision:e?`reject`:`accept`}).catch(()=>{})}return i}),[s,V]),ie=(0,Z.useRef)(null);function ae(){return new Mk({allowedDirectories:[ne,...r?.[`add-dir`]?.map(e=>C.isAbsolute(e)?e:C.resolve(ne,e))??[]],primaryWorkspace:ne,apiClient:t,mode:o.current,permissionProvider:re,config:n,diagnosticsProvider:{getDiagnostics:async e=>{let t=g.current;return t?t.getDiagnostics(e):[]}},cliAllowedTools:r?.[`allowed-tools`],cliDisallowedTools:r?.[`disallowed-tools`]})}ie.current||=ae();let oe=ie.current;(0,Z.useEffect)(()=>{o.current=i,oe.setMode(i)},[i,oe]),(0,Z.useEffect)(()=>{r?.conversationId&&fe(r.conversationId)},[]),(0,Z.useEffect)(()=>{switch(v){case Sl.Submitted:case Sl.Streaming:jZ({state:`indeterminate`,label:`Processing`});break;case Sl.ExecutingTool:jZ({state:`indeterminate`,label:`Executing tools`});break;case Sl.WaitingForToolPermission:MZ();break;case Sl.Idle:MZ();break}},[v]);let se=(0,Z.useCallback)((e,t=`info`,n=!1)=>{x({type:`ADD_NOTIFICATION`,seg:{id:crypto.randomUUID(),status:`completed`,source:`bot`,type:`code_llm_notification`,severity:t,message:e,temp:n}})},[]),ce=(0,Z.useCallback)(()=>{x({type:`CLEAR`}),T(null),V(Sl.Idle),te(null),S.current.clear(),ie.current=ae()},[t,ne,re]),le=(0,Z.useCallback)(()=>{x({type:`CLEAR`})},[]),U=(0,Z.useCallback)(()=>{x({type:`REMOVE_TEMP`})},[]),ue=(0,Z.useCallback)(()=>{let e=oe.dequeue();oe.clearQueue(),k([]),e!==null&&j(e),oe.stop(),D(null),V(Sl.Idle)},[oe,V]),de=(0,Z.useCallback)(()=>{E&&E.resolve(`reject`)},[E]),fe=(0,Z.useCallback)(async e=>{V(Sl.LoadingConversation),x({type:`CLEAR`}),T(null),te(e);try{let t=await oe.loadConversation(e);t.title&&T(t.title),t.segments.length>0&&x({type:`LOAD`,segments:t.segments.map(e=>IZ(e))})}catch{se(`Failed to load conversation`,`error`)}finally{V(Sl.Idle)}},[oe,se,V]),pe=(0,Z.useCallback)(async(e,t)=>{await oe.mcp.refresh(),t&&se(`MCP tools refreshed`,`info`,!0)},[oe,se]),me=(0,Z.useCallback)(async({message:e,selectedModel:t,fileAttachments:n})=>{if(!e||v===Sl.LoadingConversation)return;t&&oe.setModel(t);let r=e;if(n&&n.length>0){let e=n.filter(e=>!e.mimeType.startsWith(`image/`));for(let t of e){let e=typeof t.content==`string`?t.content:t.content.toString(`utf-8`);r+=`\n\n<file path="${t.filePath}">\n${e}\n</file>`}}let i=crypto.randomUUID();x({type:`INIT_SEND`,userSeg:{id:i,status:`completed`,source:`user`,type:`text`,segment:e},spinnySeg:{id:crypto.randomUUID(),status:`transient`,source:`bot`,type:`collapsible_component`,title:`Processing request`,temp:!0,isSpinny:!0}}),V(Sl.Submitted),l();let o=null,s=null,m,h=g.current,_=h?.getCurrentFile(),y=h?.getSelectionRange();if(h&&_)try{let e=(await h.getDiagnostics([_])).filter(e=>e.severity===`error`||e.severity===`warning`);e.length>0&&(m=e.map(e=>`${e.file}:${e.line}:${e.column} [${e.severity}] ${e.message}`).join(`
|
|
12647
|
-
`))}catch{}let b=()=>new Promise(e=>setImmediate(e));try{let e=0;for await(let t of oe.send(r,{diagnosticIssues:m,currentFile:_??void 0,selectionStartLine:y?.startLine,selectionEndLine:y?.endLine})){switch(t.type){case`text_delta`:{V(Sl.Streaming),d(),u();let e=t.content;o||=crypto.randomUUID(),x({type:`TEXT_DELTA`,segId:o,content:e});break}case`thinking_delta`:{let e=t.content;s||=crypto.randomUUID(),x({type:`THINKING_DELTA`,segId:s,content:e,startTime:Date.now()});break}case`thinking_complete`:s&&=(x({type:`THINKING_COMPLETE`,segId:s,endTime:Date.now()}),null);break;case`tool_display_data`:{let{toolCallId:e,data:n}=t,r=S.current.get(e)??{};S.current.set(e,{...r,...n}),x({type:`TOOL_DISPLAY_DATA`,toolCallId:e,data:n});break}case`tool_requested`:{V(Sl.ExecutingTool),d(),l();let e=t.tool.id,n={id:e,status:`transient`,source:`bot`,type:`code_llm_tool_call`,toolUseRequest:{id:e,name:t.tool.name,input:t.tool.input},toolDisplayData:S.current.get(e)};x({type:`TOOL_REQUESTED`,toolCallId:e,textSegId:o,toolSeg:n}),o=null;break}case`tool_execution_complete`:{d(),u();let e=t.tool.id,{parsedResult:n,...r}=t.result,i={id:crypto.randomUUID(),status:`transient`,source:`bot`,type:`collapsible_component`,title:`Analyzing result`,temp:!0,isSpinny:!0};x({type:`TOOL_EXECUTION_COMPLETE`,toolCallId:e,rawResult:r,...n!==void 0&&{parsedResult:n},spinnySeg:i}),o=null;break}case`notification`:x({type:`ADD_NOTIFICATION`,seg:{id:crypto.randomUUID(),status:`completed`,source:`bot`,type:`code_llm_notification`,severity:t.severity,message:t.message,...t.actions!==void 0&&{actions:t.actions}}});break;case`error`:x({type:`ERROR`,errorSeg:{id:crypto.randomUUID(),status:`completed`,source:`bot`,type:`code_llm_notification`,severity:`error`,message:t.error.message}});break;case`mode_changed`:a(t.mode);break;case`tool_user_message`:x({type:`TOOL_USER_MESSAGE`,seg:{id:crypto.randomUUID(),status:`completed`,source:`user`,type:`text`,segment:t.message}});break;case`retry`:N({attempt:t.attempt,maxAttempts:t.maxAttempts,delayMs:t.delayMs,isNetworkError:t.isNetworkError});break;case`network_status`:t.online?(z.current&&=(clearTimeout(z.current),null),R.current=!0,F(!0),L(!0),N(null),setTimeout(()=>{if(B.current===Sl.Idle&&oe.getQueue().length>0){let e=oe.dequeue();e&&(k(oe.getQueue()),me({message:e}))}},0).unref?.()):(R.current=!1,F(!1),z.current||=setTimeout(()=>{z.current=null,R.current||L(!1)},3e4));break;case`user_message_dequeued`:x({type:`INIT_SEND`,userSeg:{id:crypto.randomUUID(),status:`completed`,source:`user`,type:`text`,segment:t.content},spinnySeg:{id:crypto.randomUUID(),status:`transient`,source:`bot`,type:`collapsible_component`,title:`Processing request`,temp:!0,isSpinny:!0}}),k(oe.getQueue()),o=null,s=null;break;case`turn_complete`:o&&=(x({type:`TEXT_COMPLETED`,segId:o}),null),k(oe.getQueue());break}e++,(t.type===`tool_requested`||t.type===`tool_execution_complete`||e>=20)&&(e=0,await b())}}catch(e){if(e instanceof Se)f.isEnvAuth()||(p(!0),f.logout()),x({type:`REMOVE_USER_SEG`,userSegId:i}),se(`Session expired — use /login to authenticate again.`,`error`,!0);else{let t=e instanceof Ce?`Unable to connect to API`:e instanceof Error?e.message:`An error occurred`;x({type:`REMOVE_USER_SEG`,userSegId:i}),se(t,`error`,!0)}j(r),oe.clearQueue(),k([])}finally{d(),N(null);let e=oe.getConversationId();e&&te(e),x({type:`FINALIZE`,textSegId:o}),V(Sl.Idle),c(`Abacus.AI completed the task`)}},[oe,v,se,c,l,u,d,a,f,p]),he=(0,Z.useCallback)(e=>{oe.enqueue(e),k(oe.getQueue())},[oe]),ge=(0,Z.useCallback)(()=>{oe.dequeue(),k(oe.getQueue())},[oe]),_e=(0,Z.useCallback)(()=>{oe.clearQueue(),k([])},[oe]),W=(0,Z.useCallback)(()=>{j(null)},[]),ve=(0,Z.useCallback)((e,t)=>oe.addAllowedDirectory(e,t),[oe]),ye=(0,Z.useMemo)(()=>({conversationId:ee,conversationTitle:w,segments:b,segmentsLength:b.length,sendMessage:me,stop:ue,rejectPendingPermission:de,agentStatus:v,clearSegments:ce,clearSegmentsOnly:le,clearTempSegments:U,loadConversation:fe,addNotification:se,mcp:oe.mcp,addAllowedDirectory:ve,pendingToolPermission:E,refreshMcpTools:pe,queuedMessages:O,addToQueue:he,removeFirstFromQueue:ge,clearQueue:_e,dequeuedOnStop:A,clearDequeuedOnStop:W,activeToolOutputs:H,retryState:M,networkOnline:P,debouncedNetworkOnline:I}),[ee,w,b,me,ue,de,v,ce,le,U,fe,se,oe,ve,E,pe,O,he,ge,_e,A,W,H,M,P,I]);return(0,X.jsx)(PZ.Provider,{value:ye,children:e})});LZ.displayName=`AgentProvider`;function RZ(){let e=(0,Z.use)(PZ);if(!e)throw Error(`Agent context not found. Did you forget to wrap your component in <${LZ.name}>?`);return e}const zZ=tc({query:J(),includePattern:J().optional(),excludePattern:J().optional(),explanation:J().optional()}),BZ={displayName:`FileSearch`,getHeaderParams(e){try{return`pattern: "${e?.query||`[no pattern]`}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=zZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data,a=[`pattern: "${i.query}"`];i.includePattern&&a.push(`path: "${i.includePattern}"`),i.excludePattern&&a.push(`exclude: "${i.excludePattern}"`);let o=a.join(`, `);return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:o,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error searching files`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Search`,params:o,status:`executing`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:o,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:o,status:`pending`})})}};function VZ(e){let t=[];return e.pattern&&t.push(`pattern: "${e.pattern}"`),e.path&&t.push(`path: "${e.path}"`),t.length>0?t.join(`, `):`[no pattern]`}const HZ={displayName:`Search`,getHeaderParams(e){try{return VZ(e)}catch{return`[unknown]`}},renderUI(e,t,n){let r=VZ(e);if(t===`error`)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error matching files`})]});if(t===`executing`)return(0,X.jsx)(PK,{name:`Search`,params:r,status:`executing`,showSpinner:!0});if(!n)return(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:r,status:`pending`})});let i=n.data.files??[],a=i.slice(0,10),o=i.length-a.length;return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`success`}),(0,X.jsx)(FK,{children:n.summary}),i.length>0&&(0,X.jsxs)(IK,{children:[a.map((e,t)=>(0,X.jsx)($,{dimColor:!0,children:e},t)),o>0&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,o,` more file`,o===1?``:`s`]})]})]})}};function UZ(e){let t=e,n=[];t.pattern&&n.push(`pattern: "${t.pattern}"`),t.path&&n.push(`path: "${t.path}"`);let r=t.outputMode||e.output_mode;return r&&n.push(`outputMode: "${r}"`),t.glob&&n.push(`glob: "${t.glob}"`),t[`-i`]&&n.push(`case-insensitive`),n.length>0?n.join(`, `):`[no pattern]`}const WZ={displayName:`Search`,getHeaderParams(e){try{return UZ(e)}catch{return`[unknown]`}},renderUI(e,t,n){let r=UZ(e);if(t===`error`)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error searching content`})]});if(t===`executing`)return(0,X.jsx)(PK,{name:`Search`,params:r,status:`executing`,showSpinner:!0});if(!n)return(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:r,status:`pending`})});let i=n.data.matches??[],a=i.slice(0,10),o=i.length-a.length;return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`success`}),(0,X.jsx)(FK,{children:n.summary}),i.length>0&&(0,X.jsxs)(IK,{children:[a.map((e,t)=>(0,X.jsx)($,{dimColor:!0,children:e},t)),o>0&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,o,` more match`,o===1?``:`es`]})]})]})}},GZ=tc({query:J(),command:J().optional(),explanation:J().optional()}),KZ={displayName:`Search`,getHeaderParams(e){try{return`"${e?.query||``}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=GZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`"${r.data.query}"`;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:i,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error performing semantic search`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Search`,params:i,status:`executing`,showSpinner:!0}):(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:i,status:`success`}),(0,X.jsx)(FK,{children:`Completed`})]})}},qZ=tc({url:J()}),JZ={displayName:`Web Fetch`,getHeaderParams(e){try{let t=e?.url||``;return t.length>50?t.substring(0,47)+`...`:t}catch{return`[unknown]`}},renderUI(e,t,n){let r=qZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data.url||``,a=i.length>50?i.substring(0,47)+`...`:i;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error fetching URL`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`executing`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`success`}),(0,X.jsx)(FK,{children:n.summary??`Fetched content`})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`pending`})})}},YZ=tc({searchTerm:J(),query:J().optional(),explanation:J().optional()}),XZ={displayName:`WebSearch`,getHeaderParams(e){try{return`"${e?.searchTerm||e?.search_term||e?.query||`[no query]`}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=YZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data,a=i.searchTerm||i.query||``,o=`"${a.length>40?a.substring(0,37)+`...`:a}"`;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error performing web search`})]}):t===`executing`?(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`executing`,showSpinner:!0}):(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`success`}),(0,X.jsx)(FK,{children:`Found results`})]})}},ZZ=tc({shellId:J(),filter:J().optional()}),QZ={displayName:`TerminalOutput`,getHeaderParams(e){try{let t=e,n=[`id: ${t.shellId||``}`];return t.filter&&n.push(`filter: ${t.filter}`),n.join(`, `)}catch{return`[unknown]`}},renderUI(e,t,n){let r=ZZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`id: ${r.data.shellId}`;return t===`interrupted`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`interrupted`}),(0,X.jsx)(FK,{color:`yellow`,children:`Interrupted · What should I do instead?`})]}):t===`rejected`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`rejected`}),n?.userNote?(0,X.jsxs)(FK,{color:`yellow`,children:[`Rejected · `,(0,X.jsxs)($,{italic:!0,children:[`"`,n.userNote,`"`]})]}):(0,X.jsx)(FK,{color:`yellow`,children:`Rejected`})]}):!n&&(t===`executing`||t===`pending`)?(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`pending`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`pending`})})}},$Z=tc({shellId:J()}),eQ={displayName:`KillShell`,getHeaderParams(e){try{return`id: ${e.shellId||``}`}catch{return`[unknown]`}},renderUI(e,t,n){let r=$Z.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`id: ${r.data.shellId}`;return t===`interrupted`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`interrupted`}),(0,X.jsx)(FK,{color:`yellow`,children:`Interrupted · What should I do instead?`})]}):t===`rejected`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`rejected`}),n?.userNote?(0,X.jsxs)(FK,{color:`yellow`,children:[`Rejected · `,(0,X.jsxs)($,{italic:!0,children:[`"`,n.userNote,`"`]})]}):(0,X.jsx)(FK,{color:`yellow`,children:`Rejected`})]}):!n&&(t===`executing`||t===`pending`)?(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`pending`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`pending`})})}};function tQ(e,t,n){let r=n?100:t,i=e.split(`
|
|
12647
|
+
`))}catch{}let b=()=>new Promise(e=>setImmediate(e));try{let e=0;for await(let t of oe.send(r,{diagnosticIssues:m,currentFile:_??void 0,selectionStartLine:y?.startLine,selectionEndLine:y?.endLine})){switch(t.type){case`text_delta`:{V(Sl.Streaming),d(),u();let e=t.content;o||=crypto.randomUUID(),x({type:`TEXT_DELTA`,segId:o,content:e});break}case`thinking_delta`:{let e=t.content;s||=crypto.randomUUID(),x({type:`THINKING_DELTA`,segId:s,content:e,startTime:Date.now()});break}case`thinking_complete`:s&&=(x({type:`THINKING_COMPLETE`,segId:s,endTime:Date.now()}),null);break;case`tool_display_data`:{let{toolCallId:e,data:n}=t,r=S.current.get(e)??{};S.current.set(e,{...r,...n}),x({type:`TOOL_DISPLAY_DATA`,toolCallId:e,data:n});break}case`tool_requested`:{V(Sl.ExecutingTool),d(),l();let e=t.tool.id,n={id:e,status:`transient`,source:`bot`,type:`code_llm_tool_call`,toolUseRequest:{id:e,name:t.tool.name,input:t.tool.input},toolDisplayData:S.current.get(e)};x({type:`TOOL_REQUESTED`,toolCallId:e,textSegId:o,toolSeg:n}),o=null;break}case`tool_execution_complete`:{d(),u();let e=t.tool.id,{parsedResult:n,...r}=t.result,i={id:crypto.randomUUID(),status:`transient`,source:`bot`,type:`collapsible_component`,title:`Analyzing result`,temp:!0,isSpinny:!0};x({type:`TOOL_EXECUTION_COMPLETE`,toolCallId:e,rawResult:r,...n!==void 0&&{parsedResult:n},spinnySeg:i}),o=null;break}case`notification`:x({type:`ADD_NOTIFICATION`,seg:{id:crypto.randomUUID(),status:`completed`,source:`bot`,type:`code_llm_notification`,severity:t.severity,message:t.message,...t.actions!==void 0&&{actions:t.actions}}});break;case`error`:x({type:`ERROR`,errorSeg:{id:crypto.randomUUID(),status:`completed`,source:`bot`,type:`code_llm_notification`,severity:`error`,message:t.error.message}});break;case`mode_changed`:a(t.mode);break;case`tool_user_message`:x({type:`TOOL_USER_MESSAGE`,seg:{id:crypto.randomUUID(),status:`completed`,source:`user`,type:`text`,segment:t.message}});break;case`retry`:N({attempt:t.attempt,maxAttempts:t.maxAttempts,delayMs:t.delayMs,isNetworkError:t.isNetworkError});break;case`network_status`:t.online?(z.current&&=(clearTimeout(z.current),null),R.current=!0,F(!0),L(!0),N(null),setTimeout(()=>{if(B.current===Sl.Idle&&oe.getQueue().length>0){let e=oe.dequeue();e&&(k(oe.getQueue()),me({message:e}))}},0).unref?.()):(R.current=!1,F(!1),z.current||=setTimeout(()=>{z.current=null,R.current||L(!1)},3e4));break;case`user_message_dequeued`:x({type:`INIT_SEND`,userSeg:{id:crypto.randomUUID(),status:`completed`,source:`user`,type:`text`,segment:t.content},spinnySeg:{id:crypto.randomUUID(),status:`transient`,source:`bot`,type:`collapsible_component`,title:`Processing request`,temp:!0,isSpinny:!0}}),k(oe.getQueue()),o=null,s=null;break;case`turn_complete`:o&&=(x({type:`TEXT_COMPLETED`,segId:o}),null),k(oe.getQueue());break}e++,(t.type===`tool_requested`||t.type===`tool_execution_complete`||e>=20)&&(e=0,await b())}}catch(e){if(e instanceof Se)f.isEnvAuth()||(p(!0),f.logout()),x({type:`REMOVE_USER_SEG`,userSegId:i}),se(`Session expired — use /login to authenticate again.`,`error`,!0);else{let t=e instanceof Ce?`Unable to connect to API`:e instanceof Error?e.message:`An error occurred`;x({type:`REMOVE_USER_SEG`,userSegId:i}),se(t,`error`,!0)}j(r),oe.clearQueue(),k([])}finally{d(),N(null);let e=oe.getConversationId();e&&te(e),x({type:`FINALIZE`,textSegId:o}),V(Sl.Idle),c(`Abacus.AI completed the task`)}},[oe,v,se,c,l,u,d,a,f,p]),he=(0,Z.useCallback)(e=>{oe.enqueue(e),k(oe.getQueue())},[oe]),ge=(0,Z.useCallback)(()=>{oe.dequeue(),k(oe.getQueue())},[oe]),_e=(0,Z.useCallback)(()=>{oe.clearQueue(),k([])},[oe]),W=(0,Z.useCallback)(()=>{j(null)},[]),ve=(0,Z.useCallback)((e,t)=>oe.addAllowedDirectory(e,t),[oe]),ye=(0,Z.useMemo)(()=>({conversationId:ee,conversationTitle:w,segments:b,segmentsLength:b.length,sendMessage:me,stop:ue,rejectPendingPermission:de,agentStatus:v,clearSegments:ce,clearSegmentsOnly:le,clearTempSegments:U,loadConversation:fe,addNotification:se,mcp:oe.mcp,addAllowedDirectory:ve,pendingToolPermission:E,refreshMcpTools:pe,queuedMessages:O,addToQueue:he,removeFirstFromQueue:ge,clearQueue:_e,dequeuedOnStop:A,clearDequeuedOnStop:W,activeToolOutputs:H,retryState:M,networkOnline:P,debouncedNetworkOnline:I}),[ee,w,b,me,ue,de,v,ce,le,U,fe,se,oe,ve,E,pe,O,he,ge,_e,A,W,H,M,P,I]);return(0,X.jsx)(PZ.Provider,{value:ye,children:e})});LZ.displayName=`AgentProvider`;function RZ(){let e=(0,Z.use)(PZ);if(!e)throw Error(`Agent context not found. Did you forget to wrap your component in <${LZ.name}>?`);return e}const zZ=tc({query:J(),includePattern:J().optional(),excludePattern:J().optional(),explanation:J().optional()}),BZ={displayName:`FileSearch`,getHeaderParams(e){try{return`pattern: "${e?.query||`[no pattern]`}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=zZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data,a=[`pattern: "${i.query}"`];i.includePattern&&a.push(`path: "${i.includePattern}"`),i.excludePattern&&a.push(`exclude: "${i.excludePattern}"`);let o=a.join(`, `);return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:o,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error searching files`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Search`,params:o,status:`executing`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:o,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:o,status:`pending`})})}};function VZ(e){let t=[];return e.pattern&&t.push(`pattern: "${e.pattern}"`),e.path&&t.push(`path: "${e.path}"`),t.length>0?t.join(`, `):`[no pattern]`}const HZ={displayName:`Search`,getHeaderParams(e){try{return VZ(e)}catch{return`[unknown]`}},renderUI(e,t,n){let r=VZ(e);if(t===`error`)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error matching files`})]});if(t===`executing`)return(0,X.jsx)(PK,{name:`Search`,params:r,status:`executing`,showSpinner:!0});if(!n)return(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:r,status:`pending`})});let i=n.data.files??[],a=i.slice(0,10),o=i.length-a.length;return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`success`}),(0,X.jsx)(FK,{children:n.summary}),i.length>0&&(0,X.jsxs)(IK,{children:[a.map((e,t)=>(0,X.jsx)($,{dimColor:!0,children:e},t)),o>0&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,o,` more file`,o===1?``:`s`]})]})]})}};function UZ(e){let t=e,n=[];t.pattern&&n.push(`pattern: "${t.pattern}"`),t.path&&n.push(`path: "${t.path}"`);let r=t.outputMode||e.output_mode;return r&&n.push(`outputMode: "${r}"`),t.glob&&n.push(`glob: "${t.glob}"`),t[`-i`]&&n.push(`case-insensitive`),n.length>0?n.join(`, `):`[no pattern]`}const WZ={displayName:`Search`,getHeaderParams(e){try{return UZ(e)}catch{return`[unknown]`}},renderUI(e,t,n){let r=UZ(e);if(t===`error`)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error searching content`})]});if(t===`executing`)return(0,X.jsx)(PK,{name:`Search`,params:r,status:`executing`,showSpinner:!0});if(!n)return(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Search`,params:r,status:`pending`})});let i=n.data.matches??[],a=i.slice(0,10),o=i.length-a.length;return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:r,status:`success`}),(0,X.jsx)(FK,{children:n.summary}),i.length>0&&(0,X.jsxs)(IK,{children:[a.map((e,t)=>(0,X.jsx)($,{dimColor:!0,children:e},t)),o>0&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,o,` more match`,o===1?``:`es`]})]})]})}},GZ=tc({query:J(),command:J().optional(),explanation:J().optional()}),KZ={displayName:`Search`,getHeaderParams(e){try{return`"${e?.query||``}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=GZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`"${r.data.query}"`;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:i,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error performing semantic search`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Search`,params:i,status:`executing`,showSpinner:!0}):(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Search`,params:i,status:`success`}),(0,X.jsx)(FK,{children:`Completed`})]})}},qZ=tc({url:J()}),JZ={displayName:`Web Fetch`,getHeaderParams(e){try{let t=e?.url||``;return t.length>50?t.substring(0,47)+`...`:t}catch{return`[unknown]`}},renderUI(e,t,n){let r=qZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data.url||``,a=i.length>50?i.substring(0,47)+`...`:i;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error fetching URL`})]}):t===`executing`?(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`executing`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`success`}),(0,X.jsx)(FK,{children:n.summary??`Fetched content`})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Fetch`,params:a,status:`pending`})})}},YZ=tc({searchTerm:J(),query:J().optional(),explanation:J().optional(),allowedDomains:$s(J()).optional(),blockedDomains:$s(J()).optional()}),XZ={displayName:`WebSearch`,getHeaderParams(e){try{return`"${e?.searchTerm||e?.search_term||e?.query||`[no query]`}"`}catch{return`[unknown]`}},renderUI(e,t,n){let r=YZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data,a=i.searchTerm||i.query||``,o=`"${a.length>40?a.substring(0,37)+`...`:a}"`;return t===`error`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Error performing web search`})]}):t===`executing`?(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`executing`,showSpinner:!0}):(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`WebSearch`,params:o,status:`success`}),(0,X.jsx)(FK,{children:`Found results`})]})}},ZZ=tc({shellId:J(),filter:J().optional()}),QZ={displayName:`TerminalOutput`,getHeaderParams(e){try{let t=e,n=[`id: ${t.shellId||``}`];return t.filter&&n.push(`filter: ${t.filter}`),n.join(`, `)}catch{return`[unknown]`}},renderUI(e,t,n){let r=ZZ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`id: ${r.data.shellId}`;return t===`interrupted`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`interrupted`}),(0,X.jsx)(FK,{color:`yellow`,children:`Interrupted · What should I do instead?`})]}):t===`rejected`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`rejected`}),n?.userNote?(0,X.jsxs)(FK,{color:`yellow`,children:[`Rejected · `,(0,X.jsxs)($,{italic:!0,children:[`"`,n.userNote,`"`]})]}):(0,X.jsx)(FK,{color:`yellow`,children:`Rejected`})]}):!n&&(t===`executing`||t===`pending`)?(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`pending`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`TerminalOutput`,params:i,status:`pending`})})}},$Z=tc({shellId:J()}),eQ={displayName:`KillShell`,getHeaderParams(e){try{return`id: ${e.shellId||``}`}catch{return`[unknown]`}},renderUI(e,t,n){let r=$Z.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:``,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=`id: ${r.data.shellId}`;return t===`interrupted`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`interrupted`}),(0,X.jsx)(FK,{color:`yellow`,children:`Interrupted · What should I do instead?`})]}):t===`rejected`?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`rejected`}),n?.userNote?(0,X.jsxs)(FK,{color:`yellow`,children:[`Rejected · `,(0,X.jsxs)($,{italic:!0,children:[`"`,n.userNote,`"`]})]}):(0,X.jsx)(FK,{color:`yellow`,children:`Rejected`})]}):!n&&(t===`executing`||t===`pending`)?(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`pending`,showSpinner:!0}):n?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]}):(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`KillShell`,params:i,status:`pending`})})}};function tQ(e,t,n){let r=n?100:t,i=e.split(`
|
|
12648
12648
|
`).filter(Boolean);return i.length<=r?{lines:i,isTruncated:!1,hiddenCount:0}:{lines:i.slice(0,r),isTruncated:!0,hiddenCount:i.length-r}}function nQ(e){return`${(e/1e3).toFixed(1)}s`}function rQ({command:e,toolCallId:t,executionResult:n}){let{agentStatus:r,activeToolOutputs:i}=RZ(),[a]=(0,Z.useState)(Date.now()),[o,s]=(0,Z.useState)(0),[c,l]=(0,Z.useState)(!1),u=!n&&(r===Sl.Streaming||r===Sl.ExecutingTool),d=i[t]||``,f=n?.output||``,p=u?d:f,m=(0,Z.useDeferredValue)(p),h=p!==m;(0,Z.useEffect)(()=>{if(u){let e=setInterval(()=>{s(Date.now()-a)},1e3);return()=>clearInterval(e)}else n&&s(n.duration??0);return()=>{}},[u,a,n]);let{lines:g,isTruncated:_,hiddenCount:v}=(0,Z.useMemo)(()=>tQ(m,7,c),[m,c]),y=!u&&n!==void 0&&(_||c),{isFocused:b}=cI({id:`bash-tool-${t}`,isActive:y});sI((e,t)=>{b&&t.ctrl&&e===`o`&&l(e=>!e)},{isActive:b&&y});let x=e,S=n?.exitCode??0,C=n?.status===`error`||S!==0,w=u?`pending`:C?`error`:`success`;if(u&&g.length===0)return(0,X.jsxs)(Q,{flexDirection:`column`,gap:0,children:[(0,X.jsx)(PK,{name:`Bash`,params:x,paramsLanguage:`bash`,status:w,showSpinner:!0}),(0,X.jsx)(FK,{color:`gray`,children:`Running…`})]});if(u&&g.length>0){let e=o>0?` (${nQ(o)})`:``;return(0,X.jsxs)(Q,{flexDirection:`column`,gap:0,children:[(0,X.jsx)(PK,{name:`Bash`,params:x,paramsLanguage:`bash`,status:w,showSpinner:!0}),(0,X.jsxs)(IK,{children:[g.map((e,t)=>(0,X.jsx)($,{children:e},t)),_&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,v,` more line`,v===1?``:`s`,e]}),h&&(0,X.jsx)($,{dimColor:!0,children:`Processing output...`})]})]})}if(n){let e=!f&&(n.duration??0)===0,t=AK(n.duration??0),r=e?`exit ${S}`:`exit ${S} (${t})`,i=g.length>0;return(0,X.jsxs)(Q,{flexDirection:`column`,gap:0,children:[(0,X.jsx)(PK,{name:`Bash`,params:x,paramsLanguage:`bash`,status:w}),i&&(0,X.jsxs)(IK,{children:[C&&(0,X.jsx)($,{color:`red`,dimColor:!0,children:`Error:`}),g.map((e,t)=>(0,X.jsx)($,{color:C?`red`:void 0,dimColor:!0,children:e},t)),_&&(0,X.jsxs)($,{dimColor:!0,children:[`… +`,v,` `,c?`more `:``,`line`,v===1?``:`s`,c?``:` (ctrl+o to expand)`]})]}),(0,X.jsx)(FK,{color:C?`red`:`gray`,children:r})]})}return(0,X.jsx)(Q,{flexDirection:`column`,children:(0,X.jsx)(PK,{name:`Bash`,params:x,paramsLanguage:`bash`,status:`pending`})})}const iQ=tc({command:J(),explanation:J().optional(),runInBackground:qK,shellId:J().optional(),interactiveMode:qK,timeout:Gc().optional()});function aQ({rawInput:e,status:t,parsedResult:n}){let r=iQ.safeParse(VK(e));if(!r.success)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:``,paramsLanguage:`bash`,status:`error`}),(0,X.jsx)(FK,{color:`red`,children:`Invalid params`})]});let i=r.data,a=i.command||``,o=i.timeout?` (timeout: ${(i.timeout/1e3).toFixed(0)}s)`:``;if(t===`interrupted`)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:a,paramsLanguage:`bash`,status:`interrupted`}),(0,X.jsx)(FK,{color:`yellow`,children:`Interrupted · What should I do instead?`})]});if(t===`rejected`)return n?.userNote?(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:a,paramsLanguage:`bash`,status:`rejected`}),(0,X.jsxs)(FK,{color:`yellow`,children:[`Rejected · `,(0,X.jsxs)($,{italic:!0,children:[`"`,n.userNote,`"`]})]})]}):(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:a,paramsLanguage:`bash`,status:`rejected`}),(0,X.jsx)(FK,{color:`yellow`,children:`Rejected`})]});if(n?.data?.timedOut)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:`${a}${o}`,paramsLanguage:`bash`,status:`success`}),(0,X.jsx)(FK,{children:`Running in the background`})]});if(n?.runInBackground)return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsx)(PK,{name:`Bash`,params:`${a}${o}`,paramsLanguage:`bash`,status:`success`}),(0,X.jsx)(FK,{children:n.summary})]});let s=e?.id||`unknown`,c=n?.data;return(0,X.jsx)(rQ,{command:`${a}${o}`,toolCallId:s,executionResult:c})}const oQ={read_file:Hq,edit:Rq,list_dir:Bq,delete_file:Aq,upload_image:Gq,grep:WZ,glob:HZ,file_search:BZ,semantic_search_server:KZ,web_search:XZ,web_fetch:JZ,bash:{displayName:`Bash`,getHeaderParams(e){try{return e?.command||`[no command]`}catch{return`[unknown]`}},renderUI(e,t,n){return(0,X.jsx)(aQ,{rawInput:e,status:t,parsedResult:n})}},bash_output:QZ,kill_shell:eQ,navigate_to:xq,new_tab:Cq,close_tab:pq,switch_active_tab:Oq,refresh_tab:Eq,get_tab_content:yq,computer:hq,get_interactive_elements:_q,perform_interactive_element_action:Tq,ask_user_question:YK,enter_plan_mode:XK,exit_plan_mode:aq,subagent:cq,hand_off_to_main:oq,todo_write:dq,get_diagnostics:qq};function sQ(e){let t=e.toolUseRequest;return t?(Array.isArray(t)?t:[t]).map(e=>{let t=e;return{name:t.name??``,input:t.input??{}}}).filter(e=>e.name):[]}function cQ(e,t=4){let n=[];for(let r of e){if(n.length>=t)break;for(let e of sQ(r)){if(n.length>=t)break;let r=oQ[e.name];if(!r)continue;let i=``;try{i=r.getHeaderParams(e.input)}catch{}if(!i)continue;let a=r.displayName??e.name;n.push({label:a,detail:i})}}return n}const lQ=(0,Z.memo)(({counts:e,segments:t})=>{let{colors:n}=RL(),r=(0,Z.useMemo)(()=>{let t=[];return e.toolUses>0&&t.push(`${e.toolUses} tool ${e.toolUses===1?`use`:`uses`}`),e.responses>0&&t.push(`${e.responses} ${e.responses===1?`response`:`responses`}`),t.length===0?`Conversation compacted`:t.join(`, `)+` compacted`},[e]),i=(0,Z.useMemo)(()=>cQ(t),[t]);return(0,X.jsxs)(Q,{flexDirection:`column`,children:[(0,X.jsxs)(Q,{flexDirection:`row`,gap:1,children:[(0,X.jsx)($,{color:n.textMuted,children:`⟐`}),(0,X.jsx)($,{color:n.textMuted,dimColor:!0,children:r})]}),i.map((e,t)=>(0,X.jsx)(Q,{flexDirection:`row`,paddingLeft:2,children:(0,X.jsxs)($,{color:n.textMuted,dimColor:!0,children:[`⎿ `,e.label,` `,e.detail]})},t))]})});lQ.displayName=`CompactedPlaceholder`;const uQ=(0,Z.createContext)(null);function dQ(){let e=(0,Z.use)(uQ);if(!e)throw Error(`useUpdate must be used within UpdateProvider`);return e}function fQ({children:e,configService:t}){let[n,r]=(0,Z.useState)(null),i=(0,Z.useMemo)(()=>t.get(`autoUpdate`)!==!1,[t]);(0,Z.useEffect)(()=>{let e=!0,t=()=>{jj(PA).then(t=>{e&&r(e=>e?.latestVersion===t?.latestVersion?e:t)}).catch(()=>{})};t();let n=setInterval(t,6e4);return()=>{e=!1,clearInterval(n)}},[]);let a=(0,Z.useMemo)(()=>({updateInfo:n,autoUpdate:i}),[n,i]);return(0,X.jsx)(uQ.Provider,{value:a,children:e})}const pQ=(0,Z.createContext)(null),mQ=()=>{let e=(0,Z.use)(pQ);if(!e)throw Error(`${mQ.name} must be used within a ${hQ.name}`);return e};function hQ({children:e}){let[t,n]=(0,Z.useState)({columns:process.stdout.columns-8,rows:process.stdout.rows}),r=(0,Z.useCallback)(()=>{n({columns:process.stdout.columns-8,rows:process.stdout.rows})},[]);(0,Z.useLayoutEffect)(()=>(process.stdout.on(`resize`,r),()=>{process.stdout.off(`resize`,r)}),[r]);let i=(0,Z.useMemo)(()=>({width:t.columns,height:t.rows}),[t.columns,t.rows]);return(0,X.jsx)(pQ.Provider,{value:i,children:e})}function gQ(){let{height:e}=mQ();return Math.max(0,e-3)}let _Q=function(e){return e.Models=`models`,e.CreateConversation=`create-conversation`,e.GetConversation=`get-conversation`,e.Grep=`grep`,e.FileSearch=`file-search`,e.ListDir=`list-dir`,e.ReadFile=`read-file`,e.DeleteFile=`delete-file`,e.EditFile=`edit-file`,e.RunTerminal=`run-terminal`,e.GetTerminalOutput=`get-terminal-output`,e.MCPTool=`mcp-tool`,e}({});function vQ(e){return PL({queryKey:[_Q.Models],queryFn:async()=>{try{return(await e.listLLMModels())?.result??[]}catch{return[]}},staleTime:300*1e3,retry:1,refetchOnMount:`always`,refetchOnWindowFocus:!1})}const yQ=/\/var\/folders\/.*\/T\/TemporaryItems\/.*screencaptureui.*\//i,bQ=`.abacusai/screenshots`;function xQ(e){return yQ.test(e)}function SQ(e){try{let t=CQ(e.replace(/\\ /g,` `));if(!g(t))return null;let n=C.resolve(process.cwd(),bQ);g(n)||_(n,{recursive:!0});let r=C.basename(t),i=C.join(n,r);return h(t,i),i}catch{return null}}function CQ(e){if(e.startsWith(`file://`))try{return decodeURIComponent(e.slice(7))}catch{return e.slice(7)}return e}let wQ;function TQ(){if(wQ!==void 0)return wQ;try{return c(`which`,[`wl-paste`],{stdio:`ignore`}),wQ=`wl-paste`,`wl-paste`}catch{}try{return c(`which`,[`xclip`],{stdio:`ignore`}),wQ=`xclip`,`xclip`}catch{}return wQ=null,null}async function EQ(){try{if(process.platform===`darwin`){let e=c(`osascript`,[`-e`,`clipboard info`],{encoding:`utf8`,timeout:2e3});return/PNGf|JPEG|TIFF|GIF/i.test(e)}if(process.platform===`win32`)return c(`powershell`,[`-NoProfile`,`-Command`,`Add-Type -AssemblyName System.Windows.Forms; [System.Windows.Forms.Clipboard]::ContainsImage()`],{encoding:`utf8`,timeout:2e3}).trim().toLowerCase()===`true`;let e=TQ();if(e===`wl-paste`)return c(`wl-paste`,[`--list-types`],{encoding:`utf8`,timeout:2e3}).includes(`image/`);if(e===`xclip`)return c(`xclip`,[`-selection`,`clipboard`,`-t`,`TARGETS`,`-o`],{encoding:`utf8`,timeout:2e3}).includes(`image/`)}catch{}return!1}async function DQ(e){try{let t=C.resolve(e,bQ);g(t)||_(t,{recursive:!0});let n=Date.now(),r=C.join(t,`clipboard-${n}.png`);if(process.platform===`darwin`)c(`osascript`,[`-e`,`
|
|
12649
12649
|
set destFile to "${r}"
|
|
12650
12650
|
try
|