@github/copilot 0.0.351-10 → 0.0.351-11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/index.js +2 -2
  2. package/package.json +2 -2
package/index.js CHANGED
@@ -2451,7 +2451,7 @@ ${this.escapeXml(this.secretFilter.filterSecrets(l.trim()))}
2451
2451
  `)[0],X=f.match(gPn)?.[0]??"";switch(we._free(n),W){case NY.Syntax:throw new Wbe(NY.Syntax,{suffix:`${V}: '${f}'...`},V,0);case NY.NodeName:throw new Wbe(W,{word:X},V,X.length);case NY.FieldName:throw new Wbe(W,{word:X},V,X.length);case NY.CaptureName:throw new Wbe(W,{word:X},V,X.length);case NY.PatternStructure:throw new Wbe(W,{suffix:`${V}: '${f}'...`},V,0)}}let a=we._ts_query_string_count(r),I=we._ts_query_capture_count(r),s=we._ts_query_pattern_count(r),o=new Array(I),c=new Array(s),d=new Array(a);for(let W=0;W<I;W++){let R=we._ts_query_capture_name_for_id(r,W,lr),V=we.getValue(lr,"i32");o[W]=we.UTF8ToString(R,V)}for(let W=0;W<s;W++){let R=new Array(I);for(let V=0;V<I;V++){let f=we._ts_query_capture_quantifier_for_id(r,W,V);R[V]=f}c[W]=R}for(let W=0;W<a;W++){let R=we._ts_query_string_value_for_id(r,W,lr),V=we.getValue(lr,"i32");d[W]=we.UTF8ToString(R,V)}let m=new Array(s),G=new Array(s),p=new Array(s),A=new Array(s),Z=new Array(s);for(let W=0;W<s;W++){let R=we._ts_query_predicates_for_pattern(r,W,lr),V=we.getValue(lr,"i32");A[W]=[],Z[W]=[];let f=new Array,X=R;for(let x=0;x<V;x++){let O=we.getValue(X,"i32");X+=ur;let T=we.getValue(X,"i32");X+=ur,$il(W,O,T,o,d,f,Z,A,m,G,p)}Object.freeze(Z[W]),Object.freeze(A[W]),Object.freeze(m[W]),Object.freeze(G[W]),Object.freeze(p[W])}we._free(n),this[0]=r,this.captureNames=o,this.captureQuantifiers=c,this.textPredicates=Z,this.predicates=A,this.setProperties=m,this.assertedProperties=G,this.refutedProperties=p,this.exceededMatchLimit=!1}delete(){we._ts_query_delete(this[0]),this[0]=0}matches(t,e={}){let l=e.startPosition??eJ,n=e.endPosition??eJ,r=e.startIndex??0,a=e.endIndex??0,I=e.matchLimit??4294967295,s=e.maxStartDepth??4294967295,o=e.timeoutMicros??0,c=e.progressCallback;if(typeof I!="number")throw new Error("Arguments must be numbers");if(this.matchLimit=I,a!==0&&r>a)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==eJ&&(l.row>n.row||l.row===n.row&&l.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");c&&(we.currentQueryProgressCallback=c),Da(t),we._ts_query_matches_wasm(this[0],t.tree[0],l.row,l.column,n.row,n.column,r,a,I,s,o);let d=we.getValue(lr,"i32"),m=we.getValue(lr+ur,"i32"),G=we.getValue(lr+2*ur,"i32"),p=new Array(d);this.exceededMatchLimit=!!G;let A=0,Z=m;for(let W=0;W<d;W++){let R=we.getValue(Z,"i32");Z+=ur;let V=we.getValue(Z,"i32");Z+=ur;let f=new Array(V);if(Z=ftt(this,t.tree,Z,R,f),this.textPredicates[R].every(X=>X(f))){p[A]={pattern:R,patternIndex:R,captures:f};let X=this.setProperties[R];p[A].setProperties=X;let x=this.assertedProperties[R];p[A].assertedProperties=x;let O=this.refutedProperties[R];p[A].refutedProperties=O,A++}}return p.length=A,we._free(m),we.currentQueryProgressCallback=null,p}captures(t,e={}){let l=e.startPosition??eJ,n=e.endPosition??eJ,r=e.startIndex??0,a=e.endIndex??0,I=e.matchLimit??4294967295,s=e.maxStartDepth??4294967295,o=e.timeoutMicros??0,c=e.progressCallback;if(typeof I!="number")throw new Error("Arguments must be numbers");if(this.matchLimit=I,a!==0&&r>a)throw new Error("`startIndex` cannot be greater than `endIndex`");if(n!==eJ&&(l.row>n.row||l.row===n.row&&l.column>n.column))throw new Error("`startPosition` cannot be greater than `endPosition`");c&&(we.currentQueryProgressCallback=c),Da(t),we._ts_query_captures_wasm(this[0],t.tree[0],l.row,l.column,n.row,n.column,r,a,I,s,o);let d=we.getValue(lr,"i32"),m=we.getValue(lr+ur,"i32"),G=we.getValue(lr+2*ur,"i32"),p=new Array;this.exceededMatchLimit=!!G;let A=new Array,Z=m;for(let W=0;W<d;W++){let R=we.getValue(Z,"i32");Z+=ur;let V=we.getValue(Z,"i32");Z+=ur;let f=we.getValue(Z,"i32");if(Z+=ur,A.length=V,Z=ftt(this,t.tree,Z,R,A),this.textPredicates[R].every(X=>X(A))){let X=A[f],x=this.setProperties[R];X.setProperties=x;let O=this.assertedProperties[R];X.assertedProperties=O;let T=this.refutedProperties[R];X.refutedProperties=T,p.push(X)}}return we._free(m),we.currentQueryProgressCallback=null,p}predicatesForPattern(t){return this.predicates[t]}disableCapture(t){let e=we.lengthBytesUTF8(t),l=we._malloc(e+1);we.stringToUTF8(t,l,e+1),we._ts_query_disable_capture(this[0],l,e),we._free(l)}disablePattern(t){if(t>=this.predicates.length)throw new Error(`Pattern index is ${t} but the pattern count is ${this.predicates.length}`);we._ts_query_disable_pattern(this[0],t)}didExceedMatchLimit(){return this.exceededMatchLimit}startIndexForPattern(t){if(t>=this.predicates.length)throw new Error(`Pattern index is ${t} but the pattern count is ${this.predicates.length}`);return we._ts_query_start_byte_for_pattern(this[0],t)}endIndexForPattern(t){if(t>=this.predicates.length)throw new Error(`Pattern index is ${t} but the pattern count is ${this.predicates.length}`);return we._ts_query_end_byte_for_pattern(this[0],t)}patternCount(){return we._ts_query_pattern_count(this[0])}captureIndexForName(t){return this.captureNames.indexOf(t)}isPatternRooted(t){return we._ts_query_is_pattern_rooted(this[0],t)===1}isPatternNonLocal(t){return we._ts_query_is_pattern_non_local(this[0],t)===1}isPatternGuaranteedAtStep(t){return we._ts_query_is_pattern_guaranteed_at_step(this[0],t)===1}},NPn=/^tree_sitter_\w+$/,ktt=class ecl{static{yt(this,"Language")}0=0;types;fields;constructor(e,l){R7(e),this[0]=l,this.types=new Array(we._ts_language_symbol_count(this[0]));for(let n=0,r=this.types.length;n<r;n++)we._ts_language_symbol_type(this[0],n)<2&&(this.types[n]=we.UTF8ToString(we._ts_language_symbol_name(this[0],n)));this.fields=new Array(we._ts_language_field_count(this[0])+1);for(let n=0,r=this.fields.length;n<r;n++){let a=we._ts_language_field_name_for_id(this[0],n);a!==0?this.fields[n]=we.UTF8ToString(a):this.fields[n]=null}}get name(){let e=we._ts_language_name(this[0]);return e===0?null:we.UTF8ToString(e)}get version(){return we._ts_language_version(this[0])}get abiVersion(){return we._ts_language_abi_version(this[0])}get metadata(){we._ts_language_metadata(this[0]);let e=we.getValue(lr,"i32"),l=we.getValue(lr+ur,"i32");return e===0?null:_il(l)}get fieldCount(){return this.fields.length-1}get stateCount(){return we._ts_language_state_count(this[0])}fieldIdForName(e){let l=this.fields.indexOf(e);return l!==-1?l:null}fieldNameForId(e){return this.fields[e]??null}idForNodeType(e,l){let n=we.lengthBytesUTF8(e),r=we._malloc(n+1);we.stringToUTF8(e,r,n+1);let a=we._ts_language_symbol_for_name(this[0],r,n,l?1:0);return we._free(r),a||null}get nodeTypeCount(){return we._ts_language_symbol_count(this[0])}nodeTypeForId(e){let l=we._ts_language_symbol_name(this[0],e);return l?we.UTF8ToString(l):null}nodeTypeIsNamed(e){return!!we._ts_language_type_is_named_wasm(this[0],e)}nodeTypeIsVisible(e){return!!we._ts_language_type_is_visible_wasm(this[0],e)}get supertypes(){we._ts_language_supertypes_wasm(this[0]);let e=we.getValue(lr,"i32"),l=we.getValue(lr+ur,"i32"),n=new Array(e);if(e>0){let r=l;for(let a=0;a<e;a++)n[a]=we.getValue(r,"i16"),r+=Sil}return n}subtypes(e){we._ts_language_subtypes_wasm(this[0],e);let l=we.getValue(lr,"i32"),n=we.getValue(lr+ur,"i32"),r=new Array(l);if(l>0){let a=n;for(let I=0;I<l;I++)r[I]=we.getValue(a,"i16"),a+=Sil}return r}nextState(e,l){return we._ts_language_next_state(this[0],e,l)}lookaheadIterator(e){let l=we._ts_lookahead_iterator_new(this[0],e);return l?new mPn(tJ,l,this):null}query(e){return console.warn("Language.query is deprecated. Use new Query(language, source) instead."),new ZPn(this,e)}static async load(e){let l;e instanceof Uint8Array?l=Promise.resolve(e):globalThis.process?.versions.node?l=(await import("fs/promises")).readFile(e):l=fetch(e).then(s=>s.arrayBuffer().then(o=>{if(s.ok)return new Uint8Array(o);{let c=new TextDecoder("utf-8").decode(o);throw new Error(`Language.load failed with status ${s.status}.
2452
2452
 
2453
2453
  ${c}`)}}));let n=await we.loadWebAssemblyModule(await l,{loadAsync:!0}),r=Object.keys(n),a=r.find(s=>NPn.test(s)&&!s.includes("external_scanner_"));if(!a)throw console.log(`Couldn't find language function in WASM file. Symbols:
2454
- ${JSON.stringify(r,null,2)}`),new Error("Language.load failed: no language function found in WASM file");let I=n[a]();return new ecl(tJ,I)}},WPn=(()=>{var _scriptName=import.meta.url;return async function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((t,e)=>{readyPromiseResolve=t,readyPromiseReject=e}),ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope<"u",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer",ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){let{createRequire:t}=await import("module");var require=t(import.meta.url)}Module.currentQueryProgressCallback=null,Module.currentProgressCallback=null,Module.currentLogCallback=null,Module.currentParseCallback=null;var moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=yt((t,e)=>{throw e},"quit_"),scriptDirectory="";function locateFile(t){return Module.locateFile?Module.locateFile(t,scriptDirectory):scriptDirectory+t}yt(locateFile,"locateFile");var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs"),nodePath=require("path");import.meta.url.startsWith("data:")||(scriptDirectory=nodePath.dirname(require("url").fileURLToPath(import.meta.url))+"/"),readBinary=yt(t=>{t=isFileURI(t)?new URL(t):t;var e=fs.readFileSync(t);return e},"readBinary"),readAsync=yt(async(t,e=!0)=>{t=isFileURI(t)?new URL(t):t;var l=fs.readFileSync(t,e?void 0:"utf8");return l},"readAsync"),!Module.thisProgram&&process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=yt((t,e)=>{throw process.exitCode=t,e},"quit_")}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:typeof document<"u"&&document.currentScript&&(scriptDirectory=document.currentScript.src),_scriptName&&(scriptDirectory=_scriptName),scriptDirectory.startsWith("blob:")?scriptDirectory="":scriptDirectory=scriptDirectory.slice(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1),ENVIRONMENT_IS_WORKER&&(readBinary=yt(t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)},"readBinary")),readAsync=yt(async t=>{if(isFileURI(t))return new Promise((l,n)=>{var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=()=>{if(r.status==200||r.status==0&&r.response){l(r.response);return}n(r.status)},r.onerror=n,r.send(null)});var e=await fetch(t,{credentials:"same-origin"});if(e.ok)return e.arrayBuffer();throw new Error(e.status+" : "+e.url)},"readAsync"));var out=Module.print||console.log.bind(console),err=Module.printErr||console.error.bind(console);Object.assign(Module,moduleOverrides),moduleOverrides=null,Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram);var dynamicLibraries=Module.dynamicLibraries||[],wasmBinary=Module.wasmBinary,wasmMemory,ABORT=!1,EXITSTATUS;function assert(t,e){t||abort(e)}yt(assert,"assert");var HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64,HEAP_DATA_VIEW,runtimeInitialized=!1,isFileURI=yt(t=>t.startsWith("file://"),"isFileURI");function updateMemoryViews(){var t=wasmMemory.buffer;Module.HEAP_DATA_VIEW=HEAP_DATA_VIEW=new DataView(t),Module.HEAP8=HEAP8=new Int8Array(t),Module.HEAP16=HEAP16=new Int16Array(t),Module.HEAPU8=HEAPU8=new Uint8Array(t),Module.HEAPU16=HEAPU16=new Uint16Array(t),Module.HEAP32=HEAP32=new Int32Array(t),Module.HEAPU32=HEAPU32=new Uint32Array(t),Module.HEAPF32=HEAPF32=new Float32Array(t),Module.HEAPF64=HEAPF64=new Float64Array(t),Module.HEAP64=HEAP64=new BigInt64Array(t),Module.HEAPU64=HEAPU64=new BigUint64Array(t)}if(yt(updateMemoryViews,"updateMemoryViews"),Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var INITIAL_MEMORY=Module.INITIAL_MEMORY||33554432;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:32768})}updateMemoryViews();var __RELOC_FUNCS__=[];function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(onPreRuns)}yt(preRun,"preRun");function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),wasmExports.__wasm_call_ctors(),callRuntimeCallbacks(onPostCtors)}yt(initRuntime,"initRuntime");function preMain(){}yt(preMain,"preMain");function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(onPostRuns)}yt(postRun,"postRun");var runDependencies=0,dependenciesFulfilled=null;function getUniqueRunDependency(t){return t}yt(getUniqueRunDependency,"getUniqueRunDependency");function addRunDependency(t){runDependencies++,Module.monitorRunDependencies?.(runDependencies)}yt(addRunDependency,"addRunDependency");function removeRunDependency(t){if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),runDependencies==0&&dependenciesFulfilled){var e=dependenciesFulfilled;dependenciesFulfilled=null,e()}}yt(removeRunDependency,"removeRunDependency");function abort(t){Module.onAbort?.(t),t="Aborted("+t+")",err(t),ABORT=!0,t+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(t);throw readyPromiseReject(e),e}yt(abort,"abort");var wasmBinaryFile;function findWasmBinary(){return Module.locateFile?locateFile("tree-sitter.wasm"):new URL("tree-sitter.wasm",import.meta.url).href}yt(findWasmBinary,"findWasmBinary");function getBinarySync(t){if(t==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(t);throw"both async and sync fetching of the wasm failed"}yt(getBinarySync,"getBinarySync");async function getWasmBinary(t){if(!wasmBinary)try{var e=await readAsync(t);return new Uint8Array(e)}catch{}return getBinarySync(t)}yt(getWasmBinary,"getWasmBinary");async function instantiateArrayBuffer(t,e){try{var l=await getWasmBinary(t),n=await WebAssembly.instantiate(l,e);return n}catch(r){err(`failed to asynchronously prepare wasm: ${r}`),abort(r)}}yt(instantiateArrayBuffer,"instantiateArrayBuffer");async function instantiateAsync(t,e,l){if(!t&&typeof WebAssembly.instantiateStreaming=="function"&&!isFileURI(e)&&!ENVIRONMENT_IS_NODE)try{var n=fetch(e,{credentials:"same-origin"}),r=await WebAssembly.instantiateStreaming(n,l);return r}catch(a){err(`wasm streaming compile failed: ${a}`),err("falling back to ArrayBuffer instantiation")}return instantiateArrayBuffer(e,l)}yt(instantiateAsync,"instantiateAsync");function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}yt(getWasmImports,"getWasmImports");async function createWasm(){function t(a,I){wasmExports=a.exports,wasmExports=relocateExports(wasmExports,1024);var s=getDylinkMetadata(I);return s.neededDynlibs&&(dynamicLibraries=s.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate"),wasmExports}yt(t,"receiveInstance"),addRunDependency("wasm-instantiate");function e(a){return t(a.instance,a.module)}yt(e,"receiveInstantiationResult");var l=getWasmImports();if(Module.instantiateWasm)return new Promise((a,I)=>{Module.instantiateWasm(l,(s,o)=>{t(s,o),a(s.exports)})});wasmBinaryFile??=findWasmBinary();try{var n=await instantiateAsync(wasmBinary,wasmBinaryFile,l),r=e(n);return r}catch(a){return readyPromiseReject(a),Promise.reject(a)}}yt(createWasm,"createWasm");var ASM_CONSTS={};class ExitStatus{static{yt(this,"ExitStatus")}name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(t,e){var l=GOT[e];return l||(l=GOT[e]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(e)||(l.required=!0),l}},LE_HEAP_LOAD_F32=yt(t=>HEAP_DATA_VIEW.getFloat32(t,!0),"LE_HEAP_LOAD_F32"),LE_HEAP_LOAD_F64=yt(t=>HEAP_DATA_VIEW.getFloat64(t,!0),"LE_HEAP_LOAD_F64"),LE_HEAP_LOAD_I16=yt(t=>HEAP_DATA_VIEW.getInt16(t,!0),"LE_HEAP_LOAD_I16"),LE_HEAP_LOAD_I32=yt(t=>HEAP_DATA_VIEW.getInt32(t,!0),"LE_HEAP_LOAD_I32"),LE_HEAP_LOAD_U16=yt(t=>HEAP_DATA_VIEW.getUint16(t,!0),"LE_HEAP_LOAD_U16"),LE_HEAP_LOAD_U32=yt(t=>HEAP_DATA_VIEW.getUint32(t,!0),"LE_HEAP_LOAD_U32"),LE_HEAP_STORE_F32=yt((t,e)=>HEAP_DATA_VIEW.setFloat32(t,e,!0),"LE_HEAP_STORE_F32"),LE_HEAP_STORE_F64=yt((t,e)=>HEAP_DATA_VIEW.setFloat64(t,e,!0),"LE_HEAP_STORE_F64"),LE_HEAP_STORE_I16=yt((t,e)=>HEAP_DATA_VIEW.setInt16(t,e,!0),"LE_HEAP_STORE_I16"),LE_HEAP_STORE_I32=yt((t,e)=>HEAP_DATA_VIEW.setInt32(t,e,!0),"LE_HEAP_STORE_I32"),LE_HEAP_STORE_U16=yt((t,e)=>HEAP_DATA_VIEW.setUint16(t,e,!0),"LE_HEAP_STORE_U16"),LE_HEAP_STORE_U32=yt((t,e)=>HEAP_DATA_VIEW.setUint32(t,e,!0),"LE_HEAP_STORE_U32"),callRuntimeCallbacks=yt(t=>{for(;t.length>0;)t.shift()(Module)},"callRuntimeCallbacks"),onPostRuns=[],addOnPostRun=yt(t=>onPostRuns.unshift(t),"addOnPostRun"),onPreRuns=[],addOnPreRun=yt(t=>onPreRuns.unshift(t),"addOnPreRun"),UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder:void 0,UTF8ArrayToString=yt((t,e=0,l=NaN)=>{for(var n=e+l,r=e;t[r]&&!(r>=n);)++r;if(r-e>16&&t.buffer&&UTF8Decoder)return UTF8Decoder.decode(t.subarray(e,r));for(var a="";e<r;){var I=t[e++];if(!(I&128)){a+=String.fromCharCode(I);continue}var s=t[e++]&63;if((I&224)==192){a+=String.fromCharCode((I&31)<<6|s);continue}var o=t[e++]&63;if((I&240)==224?I=(I&15)<<12|s<<6|o:I=(I&7)<<18|s<<12|o<<6|t[e++]&63,I<65536)a+=String.fromCharCode(I);else{var c=I-65536;a+=String.fromCharCode(55296|c>>10,56320|c&1023)}}return a},"UTF8ArrayToString"),getDylinkMetadata=yt(t=>{var e=0,l=0;function n(){return t[e++]}yt(n,"getU8");function r(){for(var he=0,K=1;;){var U=t[e++];if(he+=(U&127)*K,K*=128,!(U&128))break}return he}yt(r,"getLEB");function a(){var he=r();return e+=he,UTF8ArrayToString(t,e-he,he)}yt(a,"getString");function I(he,K){if(he)throw new Error(K)}yt(I,"failIf");var s="dylink.0";if(t instanceof WebAssembly.Module){var o=WebAssembly.Module.customSections(t,s);o.length===0&&(s="dylink",o=WebAssembly.Module.customSections(t,s)),I(o.length===0,"need dylink section"),t=new Uint8Array(o[0]),l=t.length}else{var c=new Uint32Array(new Uint8Array(t.subarray(0,24)).buffer),d=c[0]==1836278016||c[0]==6386541;I(!d,"need to see wasm magic number"),I(t[8]!==0,"need the dylink section to be first"),e=9;var m=r();l=e+m,s=a()}var G={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(s=="dylink"){G.memorySize=r(),G.memoryAlign=r(),G.tableSize=r(),G.tableAlign=r();for(var p=r(),A=0;A<p;++A){var Z=a();G.neededDynlibs.push(Z)}}else{I(s!=="dylink.0");for(var W=1,R=2,V=3,f=4,X=256,x=3,O=1;e<l;){var T=n(),_=r();if(T===W)G.memorySize=r(),G.memoryAlign=r(),G.tableSize=r(),G.tableAlign=r();else if(T===R)for(var p=r(),A=0;A<p;++A)Z=a(),G.neededDynlibs.push(Z);else if(T===V)for(var B=r();B--;){var z=a(),se=r();se&X&&G.tlsExports.add(z)}else if(T===f)for(var B=r();B--;){var me=a(),z=a(),se=r();(se&x)==O&&G.weakImports.add(z)}else e+=_}}return G},"getDylinkMetadata");function getValue(t,e="i8"){switch(e.endsWith("*")&&(e="*"),e){case"i1":return HEAP8[t];case"i8":return HEAP8[t];case"i16":return LE_HEAP_LOAD_I16((t>>1)*2);case"i32":return LE_HEAP_LOAD_I32((t>>2)*4);case"i64":return HEAP64[t>>3];case"float":return LE_HEAP_LOAD_F32((t>>2)*4);case"double":return LE_HEAP_LOAD_F64((t>>3)*8);case"*":return LE_HEAP_LOAD_U32((t>>2)*4);default:abort(`invalid type for getValue: ${e}`)}}yt(getValue,"getValue");var newDSO=yt((t,e,l)=>{var n={refcount:1/0,name:t,exports:l,global:!0};return LDSO.loadedLibsByName[t]=n,e!=null&&(LDSO.loadedLibsByHandle[e]=n),n},"newDSO"),LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=78224,alignMemory=yt((t,e)=>Math.ceil(t/e)*e,"alignMemory"),getMemory=yt(t=>{if(runtimeInitialized)return _calloc(t,1);var e=___heap_base,l=e+alignMemory(t,16);return ___heap_base=l,GOT.__heap_base.value=l,e},"getMemory"),isInternalSym=yt(t=>["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm","__start_em_js","__stop_em_js"].includes(t)||t.startsWith("__em_js__"),"isInternalSym"),uleb128Encode=yt((t,e)=>{t<128?e.push(t):e.push(t%128|128,t>>7)},"uleb128Encode"),sigToWasmTypes=yt(t=>{for(var e={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"},l={parameters:[],results:t[0]=="v"?[]:[e[t[0]]]},n=1;n<t.length;++n)l.parameters.push(e[t[n]]);return l},"sigToWasmTypes"),generateFuncType=yt((t,e)=>{var l=t.slice(0,1),n=t.slice(1),r={i:127,p:127,j:126,f:125,d:124,e:111};e.push(96),uleb128Encode(n.length,e);for(var a=0;a<n.length;++a)e.push(r[n[a]]);l=="v"?e.push(0):e.push(1,r[l])},"generateFuncType"),convertJsFunctionToWasm=yt((t,e)=>{if(typeof WebAssembly.Function=="function")return new WebAssembly.Function(sigToWasmTypes(e),t);var l=[1];generateFuncType(e,l);var n=[0,97,115,109,1,0,0,0,1];uleb128Encode(l.length,n),n.push(...l),n.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);var r=new WebAssembly.Module(new Uint8Array(n)),a=new WebAssembly.Instance(r,{e:{f:t}}),I=a.exports.f;return I},"convertJsFunctionToWasm"),wasmTableMirror=[],wasmTable=new WebAssembly.Table({initial:31,element:"anyfunc"}),getWasmTableEntry=yt(t=>{var e=wasmTableMirror[t];return e||(t>=wasmTableMirror.length&&(wasmTableMirror.length=t+1),wasmTableMirror[t]=e=wasmTable.get(t)),e},"getWasmTableEntry"),updateTableMap=yt((t,e)=>{if(functionsInTableMap)for(var l=t;l<t+e;l++){var n=getWasmTableEntry(l);n&&functionsInTableMap.set(n,l)}},"updateTableMap"),functionsInTableMap,getFunctionAddress=yt(t=>(functionsInTableMap||(functionsInTableMap=new WeakMap,updateTableMap(0,wasmTable.length)),functionsInTableMap.get(t)||0),"getFunctionAddress"),freeTableIndexes=[],getEmptyTableSlot=yt(()=>{if(freeTableIndexes.length)return freeTableIndexes.pop();try{wasmTable.grow(1)}catch(t){throw t instanceof RangeError?"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.":t}return wasmTable.length-1},"getEmptyTableSlot"),setWasmTableEntry=yt((t,e)=>{wasmTable.set(t,e),wasmTableMirror[t]=wasmTable.get(t)},"setWasmTableEntry"),addFunction=yt((t,e)=>{var l=getFunctionAddress(t);if(l)return l;var n=getEmptyTableSlot();try{setWasmTableEntry(n,t)}catch(a){if(!(a instanceof TypeError))throw a;var r=convertJsFunctionToWasm(t,e);setWasmTableEntry(n,r)}return functionsInTableMap.set(t,n),n},"addFunction"),updateGOT=yt((t,e)=>{for(var l in t)if(!isInternalSym(l)){var n=t[l];GOT[l]||=new WebAssembly.Global({value:"i32",mutable:!0}),(e||GOT[l].value==0)&&(typeof n=="function"?GOT[l].value=addFunction(n):typeof n=="number"?GOT[l].value=n:err(`unhandled export type for '${l}': ${typeof n}`))}},"updateGOT"),relocateExports=yt((t,e,l)=>{var n={};for(var r in t){var a=t[r];typeof a=="object"&&(a=a.value),typeof a=="number"&&(a+=e),n[r]=a}return updateGOT(n,l),n},"relocateExports"),isSymbolDefined=yt(t=>{var e=wasmImports[t];return!(!e||e.stub)},"isSymbolDefined"),dynCall=yt((t,e,l=[])=>{var n=getWasmTableEntry(e)(...l);return n},"dynCall"),stackSave=yt(()=>_emscripten_stack_get_current(),"stackSave"),stackRestore=yt(t=>__emscripten_stack_restore(t),"stackRestore"),createInvokeFunction=yt(t=>(e,...l)=>{var n=stackSave();try{return dynCall(t,e,l)}catch(r){if(stackRestore(n),r!==r+0)throw r;if(_setThrew(1,0),t[0]=="j")return 0n}},"createInvokeFunction"),resolveGlobalSymbol=yt((t,e=!1)=>{var l;return isSymbolDefined(t)?l=wasmImports[t]:t.startsWith("invoke_")&&(l=wasmImports[t]=createInvokeFunction(t.split("_")[1])),{sym:l,name:t}},"resolveGlobalSymbol"),onPostCtors=[],addOnPostCtor=yt(t=>onPostCtors.unshift(t),"addOnPostCtor"),UTF8ToString=yt((t,e)=>t?UTF8ArrayToString(HEAPU8,t,e):"","UTF8ToString"),loadWebAssemblyModule=yt((binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);currentModuleWeakSymbols=metadata.weakImports;function loadModule(){var memAlign=Math.pow(2,metadata.memoryAlign),memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0;handle&&(HEAP8[handle+8]=1,LE_HEAP_STORE_U32((handle+12>>2)*4,memoryBase),LE_HEAP_STORE_I32((handle+16>>2)*4,metadata.memorySize),LE_HEAP_STORE_U32((handle+20>>2)*4,tableBase),LE_HEAP_STORE_I32((handle+24>>2)*4,metadata.tableSize)),metadata.tableSize&&wasmTable.grow(metadata.tableSize);var moduleExports;function resolveSymbol(t){var e=resolveGlobalSymbol(t).sym;return!e&&localScope&&(e=localScope[t]),e||(e=moduleExports[t]),e}yt(resolveSymbol,"resolveSymbol");var proxyHandler={get(t,e){switch(e){case"__memory_base":return memoryBase;case"__table_base":return tableBase}if(e in wasmImports&&!wasmImports[e].stub){var l=wasmImports[e];return l}if(!(e in t)){var n;t[e]=(...r)=>(n||=resolveSymbol(e),n(...r))}return t[e]}},proxy=new Proxy({},proxyHandler),info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols();function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&body.indexOf("$"+arity)!=-1;arity++)args.push("$"+arity);args=args.join(",");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if(yt(addEmAsm,"addEmAsm"),"__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;start<stop;){var jsString=UTF8ToString(start);addEmAsm(start,jsString),start=HEAPU8.indexOf(0,start)+1}function addEmJs(name,cSig,body){var jsArgs=[];if(cSig=cSig.slice(1,-1),cSig!="void"){cSig=cSig.split(",");for(var i in cSig){var jsArg=cSig[i].split(" ").pop();jsArgs.push(jsArg.replace("*",""))}}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}yt(addEmJs,"addEmJs");for(var name in moduleExports)if(name.startsWith("__em_js__")){var start=moduleExports[name],jsString=UTF8ToString(start),parts=jsString.split("<::>");addEmJs(name.replace("__em_js__",""),parts[0],parts[1]),delete moduleExports[name]}var applyRelocs=moduleExports.__wasm_apply_data_relocs;applyRelocs&&(runtimeInitialized?applyRelocs():__RELOC_FUNCS__.push(applyRelocs));var init=moduleExports.__wasm_call_ctors;return init&&(runtimeInitialized?init():addOnPostCtor(init)),moduleExports}if(yt(postInstantiation,"postInstantiation"),flags.loadAsync){if(binary instanceof WebAssembly.Module){var instance=new WebAssembly.Instance(binary,info);return Promise.resolve(postInstantiation(binary,instance))}return WebAssembly.instantiate(binary,info).then(t=>postInstantiation(t.module,t.instance))}var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary),instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}return yt(loadModule,"loadModule"),flags.loadAsync?metadata.neededDynlibs.reduce((t,e)=>t.then(()=>loadDynamicLibrary(e,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(t=>loadDynamicLibrary(t,flags,localScope)),loadModule())},"loadWebAssemblyModule"),mergeLibSymbols=yt((t,e)=>{for(var[l,n]of Object.entries(t)){let r=yt(I=>{isSymbolDefined(I)||(wasmImports[I]=n)},"setImport");r(l);let a="__main_argc_argv";l=="main"&&r(a),l==a&&r("main")}},"mergeLibSymbols"),asyncLoad=yt(async t=>{var e=await readAsync(t);return new Uint8Array(e)},"asyncLoad");function loadDynamicLibrary(t,e={global:!0,nodelete:!0},l,n){var r=LDSO.loadedLibsByName[t];if(r)return e.global?r.global||(r.global=!0,mergeLibSymbols(r.exports,t)):l&&Object.assign(l,r.exports),e.nodelete&&r.refcount!==1/0&&(r.refcount=1/0),r.refcount++,n&&(LDSO.loadedLibsByHandle[n]=r),e.loadAsync?Promise.resolve(!0):!0;r=newDSO(t,n,"loading"),r.refcount=e.nodelete?1/0:1,r.global=e.global;function a(){if(n){var o=LE_HEAP_LOAD_U32((n+28>>2)*4),c=LE_HEAP_LOAD_U32((n+32>>2)*4);if(o&&c){var d=HEAP8.slice(o,o+c);return e.loadAsync?Promise.resolve(d):d}}var m=locateFile(t);if(e.loadAsync)return asyncLoad(m);if(!readBinary)throw new Error(`${m}: file not found, and synchronous loading of external files is not available`);return readBinary(m)}yt(a,"loadLibData");function I(){return e.loadAsync?a().then(o=>loadWebAssemblyModule(o,e,t,l,n)):loadWebAssemblyModule(a(),e,t,l,n)}yt(I,"getExports");function s(o){r.global?mergeLibSymbols(o,t):l&&Object.assign(l,o),r.exports=o}return yt(s,"moduleLoaded"),e.loadAsync?I().then(o=>(s(o),!0)):(s(I()),!0)}yt(loadDynamicLibrary,"loadDynamicLibrary");var reportUndefinedSymbols=yt(()=>{for(var[t,e]of Object.entries(GOT))if(e.value==0){var l=resolveGlobalSymbol(t,!0).sym;if(!l&&!e.required)continue;if(typeof l=="function")e.value=addFunction(l,l.sig);else if(typeof l=="number")e.value=l;else throw new Error(`bad export type for '${t}': ${typeof l}`)}},"reportUndefinedSymbols"),loadDylibs=yt(()=>{if(!dynamicLibraries.length){reportUndefinedSymbols();return}addRunDependency("loadDylibs"),dynamicLibraries.reduce((t,e)=>t.then(()=>loadDynamicLibrary(e,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})),Promise.resolve()).then(()=>{reportUndefinedSymbols(),removeRunDependency("loadDylibs")})},"loadDylibs"),noExitRuntime=Module.noExitRuntime||!0;function setValue(t,e,l="i8"){switch(l.endsWith("*")&&(l="*"),l){case"i1":HEAP8[t]=e;break;case"i8":HEAP8[t]=e;break;case"i16":LE_HEAP_STORE_I16((t>>1)*2,e);break;case"i32":LE_HEAP_STORE_I32((t>>2)*4,e);break;case"i64":HEAP64[t>>3]=BigInt(e);break;case"float":LE_HEAP_STORE_F32((t>>2)*4,e);break;case"double":LE_HEAP_STORE_F64((t>>3)*8,e);break;case"*":LE_HEAP_STORE_U32((t>>2)*4,e);break;default:abort(`invalid type for setValue: ${l}`)}}yt(setValue,"setValue");var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},78224),___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=yt(()=>abort(""),"__abort_js");__abort_js.sig="v";var _emscripten_get_now=yt(()=>performance.now(),"_emscripten_get_now");_emscripten_get_now.sig="d";var _emscripten_date_now=yt(()=>Date.now(),"_emscripten_date_now");_emscripten_date_now.sig="d";var nowIsMonotonic=1,checkWasiClock=yt(t=>t>=0&&t<=3,"checkWasiClock"),INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=yt(t=>t<INT53_MIN||t>INT53_MAX?NaN:Number(t),"bigintToI53Checked");function _clock_time_get(t,e,l){if(e=bigintToI53Checked(e),!checkWasiClock(t))return 28;var n;if(t===0)n=_emscripten_date_now();else if(nowIsMonotonic)n=_emscripten_get_now();else return 52;var r=Math.round(n*1e3*1e3);return HEAP64[l>>3]=BigInt(r),0}yt(_clock_time_get,"_clock_time_get"),_clock_time_get.sig="iijp";var getHeapMax=yt(()=>2147483648,"getHeapMax"),growMemory=yt(t=>{var e=wasmMemory.buffer,l=(t-e.byteLength+65535)/65536|0;try{return wasmMemory.grow(l),updateMemoryViews(),1}catch{}},"growMemory"),_emscripten_resize_heap=yt(t=>{var e=HEAPU8.length;t>>>=0;var l=getHeapMax();if(t>l)return!1;for(var n=1;n<=4;n*=2){var r=e*(1+.2/n);r=Math.min(r,t+100663296);var a=Math.min(l,alignMemory(Math.max(t,r),65536)),I=growMemory(a);if(I)return!0}return!1},"_emscripten_resize_heap");_emscripten_resize_heap.sig="ip";var _fd_close=yt(t=>52,"_fd_close");_fd_close.sig="ii";function _fd_seek(t,e,l,n){return e=bigintToI53Checked(e),70}yt(_fd_seek,"_fd_seek"),_fd_seek.sig="iijip";var printCharBuffers=[null,[],[]],printChar=yt((t,e)=>{var l=printCharBuffers[t];e===0||e===10?((t===1?out:err)(UTF8ArrayToString(l)),l.length=0):l.push(e)},"printChar"),flush_NO_FILESYSTEM=yt(()=>{printCharBuffers[1].length&&printChar(1,10),printCharBuffers[2].length&&printChar(2,10)},"flush_NO_FILESYSTEM"),SYSCALLS={varargs:void 0,getStr(t){var e=UTF8ToString(t);return e}},_fd_write=yt((t,e,l,n)=>{for(var r=0,a=0;a<l;a++){var I=LE_HEAP_LOAD_U32((e>>2)*4),s=LE_HEAP_LOAD_U32((e+4>>2)*4);e+=8;for(var o=0;o<s;o++)printChar(t,HEAPU8[I+o]);r+=s}return LE_HEAP_STORE_U32((n>>2)*4,r),0},"_fd_write");_fd_write.sig="iippp";function _tree_sitter_log_callback(t,e){if(Module.currentLogCallback){let l=UTF8ToString(e);Module.currentLogCallback(l,t!==0)}}yt(_tree_sitter_log_callback,"_tree_sitter_log_callback");function _tree_sitter_parse_callback(t,e,l,n,r){let I=Module.currentParseCallback(e,{row:l,column:n});typeof I=="string"?(setValue(r,I.length,"i32"),stringToUTF16(I,t,10240)):setValue(r,0,"i32")}yt(_tree_sitter_parse_callback,"_tree_sitter_parse_callback");function _tree_sitter_progress_callback(t,e){return Module.currentProgressCallback?Module.currentProgressCallback({currentOffset:t,hasError:e}):!1}yt(_tree_sitter_progress_callback,"_tree_sitter_progress_callback");function _tree_sitter_query_progress_callback(t){return Module.currentQueryProgressCallback?Module.currentQueryProgressCallback({currentOffset:t}):!1}yt(_tree_sitter_query_progress_callback,"_tree_sitter_query_progress_callback");var runtimeKeepaliveCounter=0,keepRuntimeAlive=yt(()=>noExitRuntime||runtimeKeepaliveCounter>0,"keepRuntimeAlive"),_proc_exit=yt(t=>{EXITSTATUS=t,keepRuntimeAlive()||(Module.onExit?.(t),ABORT=!0),quit_(t,new ExitStatus(t))},"_proc_exit");_proc_exit.sig="vi";var exitJS=yt((t,e)=>{EXITSTATUS=t,_proc_exit(t)},"exitJS"),handleException=yt(t=>{if(t instanceof ExitStatus||t=="unwind")return EXITSTATUS;quit_(1,t)},"handleException"),lengthBytesUTF8=yt(t=>{for(var e=0,l=0;l<t.length;++l){var n=t.charCodeAt(l);n<=127?e++:n<=2047?e+=2:n>=55296&&n<=57343?(e+=4,++l):e+=3}return e},"lengthBytesUTF8"),stringToUTF8Array=yt((t,e,l,n)=>{if(!(n>0))return 0;for(var r=l,a=l+n-1,I=0;I<t.length;++I){var s=t.charCodeAt(I);if(s>=55296&&s<=57343){var o=t.charCodeAt(++I);s=65536+((s&1023)<<10)|o&1023}if(s<=127){if(l>=a)break;e[l++]=s}else if(s<=2047){if(l+1>=a)break;e[l++]=192|s>>6,e[l++]=128|s&63}else if(s<=65535){if(l+2>=a)break;e[l++]=224|s>>12,e[l++]=128|s>>6&63,e[l++]=128|s&63}else{if(l+3>=a)break;e[l++]=240|s>>18,e[l++]=128|s>>12&63,e[l++]=128|s>>6&63,e[l++]=128|s&63}}return e[l]=0,l-r},"stringToUTF8Array"),stringToUTF8=yt((t,e,l)=>stringToUTF8Array(t,HEAPU8,e,l),"stringToUTF8"),stackAlloc=yt(t=>__emscripten_stack_alloc(t),"stackAlloc"),stringToUTF8OnStack=yt(t=>{var e=lengthBytesUTF8(t)+1,l=stackAlloc(e);return stringToUTF8(t,l,e),l},"stringToUTF8OnStack"),AsciiToString=yt(t=>{for(var e="";;){var l=HEAPU8[t++];if(!l)return e;e+=String.fromCharCode(l)}},"AsciiToString"),stringToUTF16=yt((t,e,l)=>{if(l??=2147483647,l<2)return 0;l-=2;for(var n=e,r=l<t.length*2?l/2:t.length,a=0;a<r;++a){var I=t.charCodeAt(a);LE_HEAP_STORE_I16((e>>1)*2,I),e+=2}return LE_HEAP_STORE_I16((e>>1)*2,0),e-n},"stringToUTF16"),wasmImports={__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_pointer:___stack_pointer,__table_base:___table_base,_abort_js:__abort_js,clock_time_get:_clock_time_get,emscripten_resize_heap:_emscripten_resize_heap,fd_close:_fd_close,fd_seek:_fd_seek,fd_write:_fd_write,memory:wasmMemory,tree_sitter_log_callback:_tree_sitter_log_callback,tree_sitter_parse_callback:_tree_sitter_parse_callback,tree_sitter_progress_callback:_tree_sitter_progress_callback,tree_sitter_query_progress_callback:_tree_sitter_query_progress_callback},wasmExports=await createWasm(),___wasm_call_ctors=wasmExports.__wasm_call_ctors,_malloc=Module._malloc=wasmExports.malloc,_calloc=Module._calloc=wasmExports.calloc,_realloc=Module._realloc=wasmExports.realloc,_free=Module._free=wasmExports.free,_memcmp=Module._memcmp=wasmExports.memcmp,_ts_language_symbol_count=Module._ts_language_symbol_count=wasmExports.ts_language_symbol_count,_ts_language_state_count=Module._ts_language_state_count=wasmExports.ts_language_state_count,_ts_language_version=Module._ts_language_version=wasmExports.ts_language_version,_ts_language_abi_version=Module._ts_language_abi_version=wasmExports.ts_language_abi_version,_ts_language_metadata=Module._ts_language_metadata=wasmExports.ts_language_metadata,_ts_language_name=Module._ts_language_name=wasmExports.ts_language_name,_ts_language_field_count=Module._ts_language_field_count=wasmExports.ts_language_field_count,_ts_language_next_state=Module._ts_language_next_state=wasmExports.ts_language_next_state,_ts_language_symbol_name=Module._ts_language_symbol_name=wasmExports.ts_language_symbol_name,_ts_language_symbol_for_name=Module._ts_language_symbol_for_name=wasmExports.ts_language_symbol_for_name,_strncmp=Module._strncmp=wasmExports.strncmp,_ts_language_symbol_type=Module._ts_language_symbol_type=wasmExports.ts_language_symbol_type,_ts_language_field_name_for_id=Module._ts_language_field_name_for_id=wasmExports.ts_language_field_name_for_id,_ts_lookahead_iterator_new=Module._ts_lookahead_iterator_new=wasmExports.ts_lookahead_iterator_new,_ts_lookahead_iterator_delete=Module._ts_lookahead_iterator_delete=wasmExports.ts_lookahead_iterator_delete,_ts_lookahead_iterator_reset_state=Module._ts_lookahead_iterator_reset_state=wasmExports.ts_lookahead_iterator_reset_state,_ts_lookahead_iterator_reset=Module._ts_lookahead_iterator_reset=wasmExports.ts_lookahead_iterator_reset,_ts_lookahead_iterator_next=Module._ts_lookahead_iterator_next=wasmExports.ts_lookahead_iterator_next,_ts_lookahead_iterator_current_symbol=Module._ts_lookahead_iterator_current_symbol=wasmExports.ts_lookahead_iterator_current_symbol,_ts_parser_delete=Module._ts_parser_delete=wasmExports.ts_parser_delete,_ts_parser_reset=Module._ts_parser_reset=wasmExports.ts_parser_reset,_ts_parser_set_language=Module._ts_parser_set_language=wasmExports.ts_parser_set_language,_ts_parser_timeout_micros=Module._ts_parser_timeout_micros=wasmExports.ts_parser_timeout_micros,_ts_parser_set_timeout_micros=Module._ts_parser_set_timeout_micros=wasmExports.ts_parser_set_timeout_micros,_ts_parser_set_included_ranges=Module._ts_parser_set_included_ranges=wasmExports.ts_parser_set_included_ranges,_ts_query_new=Module._ts_query_new=wasmExports.ts_query_new,_ts_query_delete=Module._ts_query_delete=wasmExports.ts_query_delete,_iswspace=Module._iswspace=wasmExports.iswspace,_iswalnum=Module._iswalnum=wasmExports.iswalnum,_ts_query_pattern_count=Module._ts_query_pattern_count=wasmExports.ts_query_pattern_count,_ts_query_capture_count=Module._ts_query_capture_count=wasmExports.ts_query_capture_count,_ts_query_string_count=Module._ts_query_string_count=wasmExports.ts_query_string_count,_ts_query_capture_name_for_id=Module._ts_query_capture_name_for_id=wasmExports.ts_query_capture_name_for_id,_ts_query_capture_quantifier_for_id=Module._ts_query_capture_quantifier_for_id=wasmExports.ts_query_capture_quantifier_for_id,_ts_query_string_value_for_id=Module._ts_query_string_value_for_id=wasmExports.ts_query_string_value_for_id,_ts_query_predicates_for_pattern=Module._ts_query_predicates_for_pattern=wasmExports.ts_query_predicates_for_pattern,_ts_query_start_byte_for_pattern=Module._ts_query_start_byte_for_pattern=wasmExports.ts_query_start_byte_for_pattern,_ts_query_end_byte_for_pattern=Module._ts_query_end_byte_for_pattern=wasmExports.ts_query_end_byte_for_pattern,_ts_query_is_pattern_rooted=Module._ts_query_is_pattern_rooted=wasmExports.ts_query_is_pattern_rooted,_ts_query_is_pattern_non_local=Module._ts_query_is_pattern_non_local=wasmExports.ts_query_is_pattern_non_local,_ts_query_is_pattern_guaranteed_at_step=Module._ts_query_is_pattern_guaranteed_at_step=wasmExports.ts_query_is_pattern_guaranteed_at_step,_ts_query_disable_capture=Module._ts_query_disable_capture=wasmExports.ts_query_disable_capture,_ts_query_disable_pattern=Module._ts_query_disable_pattern=wasmExports.ts_query_disable_pattern,_ts_tree_copy=Module._ts_tree_copy=wasmExports.ts_tree_copy,_ts_tree_delete=Module._ts_tree_delete=wasmExports.ts_tree_delete,_ts_init=Module._ts_init=wasmExports.ts_init,_ts_parser_new_wasm=Module._ts_parser_new_wasm=wasmExports.ts_parser_new_wasm,_ts_parser_enable_logger_wasm=Module._ts_parser_enable_logger_wasm=wasmExports.ts_parser_enable_logger_wasm,_ts_parser_parse_wasm=Module._ts_parser_parse_wasm=wasmExports.ts_parser_parse_wasm,_ts_parser_included_ranges_wasm=Module._ts_parser_included_ranges_wasm=wasmExports.ts_parser_included_ranges_wasm,_ts_language_type_is_named_wasm=Module._ts_language_type_is_named_wasm=wasmExports.ts_language_type_is_named_wasm,_ts_language_type_is_visible_wasm=Module._ts_language_type_is_visible_wasm=wasmExports.ts_language_type_is_visible_wasm,_ts_language_supertypes_wasm=Module._ts_language_supertypes_wasm=wasmExports.ts_language_supertypes_wasm,_ts_language_subtypes_wasm=Module._ts_language_subtypes_wasm=wasmExports.ts_language_subtypes_wasm,_ts_tree_root_node_wasm=Module._ts_tree_root_node_wasm=wasmExports.ts_tree_root_node_wasm,_ts_tree_root_node_with_offset_wasm=Module._ts_tree_root_node_with_offset_wasm=wasmExports.ts_tree_root_node_with_offset_wasm,_ts_tree_edit_wasm=Module._ts_tree_edit_wasm=wasmExports.ts_tree_edit_wasm,_ts_tree_included_ranges_wasm=Module._ts_tree_included_ranges_wasm=wasmExports.ts_tree_included_ranges_wasm,_ts_tree_get_changed_ranges_wasm=Module._ts_tree_get_changed_ranges_wasm=wasmExports.ts_tree_get_changed_ranges_wasm,_ts_tree_cursor_new_wasm=Module._ts_tree_cursor_new_wasm=wasmExports.ts_tree_cursor_new_wasm,_ts_tree_cursor_copy_wasm=Module._ts_tree_cursor_copy_wasm=wasmExports.ts_tree_cursor_copy_wasm,_ts_tree_cursor_delete_wasm=Module._ts_tree_cursor_delete_wasm=wasmExports.ts_tree_cursor_delete_wasm,_ts_tree_cursor_reset_wasm=Module._ts_tree_cursor_reset_wasm=wasmExports.ts_tree_cursor_reset_wasm,_ts_tree_cursor_reset_to_wasm=Module._ts_tree_cursor_reset_to_wasm=wasmExports.ts_tree_cursor_reset_to_wasm,_ts_tree_cursor_goto_first_child_wasm=Module._ts_tree_cursor_goto_first_child_wasm=wasmExports.ts_tree_cursor_goto_first_child_wasm,_ts_tree_cursor_goto_last_child_wasm=Module._ts_tree_cursor_goto_last_child_wasm=wasmExports.ts_tree_cursor_goto_last_child_wasm,_ts_tree_cursor_goto_first_child_for_index_wasm=Module._ts_tree_cursor_goto_first_child_for_index_wasm=wasmExports.ts_tree_cursor_goto_first_child_for_index_wasm,_ts_tree_cursor_goto_first_child_for_position_wasm=Module._ts_tree_cursor_goto_first_child_for_position_wasm=wasmExports.ts_tree_cursor_goto_first_child_for_position_wasm,_ts_tree_cursor_goto_next_sibling_wasm=Module._ts_tree_cursor_goto_next_sibling_wasm=wasmExports.ts_tree_cursor_goto_next_sibling_wasm,_ts_tree_cursor_goto_previous_sibling_wasm=Module._ts_tree_cursor_goto_previous_sibling_wasm=wasmExports.ts_tree_cursor_goto_previous_sibling_wasm,_ts_tree_cursor_goto_descendant_wasm=Module._ts_tree_cursor_goto_descendant_wasm=wasmExports.ts_tree_cursor_goto_descendant_wasm,_ts_tree_cursor_goto_parent_wasm=Module._ts_tree_cursor_goto_parent_wasm=wasmExports.ts_tree_cursor_goto_parent_wasm,_ts_tree_cursor_current_node_type_id_wasm=Module._ts_tree_cursor_current_node_type_id_wasm=wasmExports.ts_tree_cursor_current_node_type_id_wasm,_ts_tree_cursor_current_node_state_id_wasm=Module._ts_tree_cursor_current_node_state_id_wasm=wasmExports.ts_tree_cursor_current_node_state_id_wasm,_ts_tree_cursor_current_node_is_named_wasm=Module._ts_tree_cursor_current_node_is_named_wasm=wasmExports.ts_tree_cursor_current_node_is_named_wasm,_ts_tree_cursor_current_node_is_missing_wasm=Module._ts_tree_cursor_current_node_is_missing_wasm=wasmExports.ts_tree_cursor_current_node_is_missing_wasm,_ts_tree_cursor_current_node_id_wasm=Module._ts_tree_cursor_current_node_id_wasm=wasmExports.ts_tree_cursor_current_node_id_wasm,_ts_tree_cursor_start_position_wasm=Module._ts_tree_cursor_start_position_wasm=wasmExports.ts_tree_cursor_start_position_wasm,_ts_tree_cursor_end_position_wasm=Module._ts_tree_cursor_end_position_wasm=wasmExports.ts_tree_cursor_end_position_wasm,_ts_tree_cursor_start_index_wasm=Module._ts_tree_cursor_start_index_wasm=wasmExports.ts_tree_cursor_start_index_wasm,_ts_tree_cursor_end_index_wasm=Module._ts_tree_cursor_end_index_wasm=wasmExports.ts_tree_cursor_end_index_wasm,_ts_tree_cursor_current_field_id_wasm=Module._ts_tree_cursor_current_field_id_wasm=wasmExports.ts_tree_cursor_current_field_id_wasm,_ts_tree_cursor_current_depth_wasm=Module._ts_tree_cursor_current_depth_wasm=wasmExports.ts_tree_cursor_current_depth_wasm,_ts_tree_cursor_current_descendant_index_wasm=Module._ts_tree_cursor_current_descendant_index_wasm=wasmExports.ts_tree_cursor_current_descendant_index_wasm,_ts_tree_cursor_current_node_wasm=Module._ts_tree_cursor_current_node_wasm=wasmExports.ts_tree_cursor_current_node_wasm,_ts_node_symbol_wasm=Module._ts_node_symbol_wasm=wasmExports.ts_node_symbol_wasm,_ts_node_field_name_for_child_wasm=Module._ts_node_field_name_for_child_wasm=wasmExports.ts_node_field_name_for_child_wasm,_ts_node_field_name_for_named_child_wasm=Module._ts_node_field_name_for_named_child_wasm=wasmExports.ts_node_field_name_for_named_child_wasm,_ts_node_children_by_field_id_wasm=Module._ts_node_children_by_field_id_wasm=wasmExports.ts_node_children_by_field_id_wasm,_ts_node_first_child_for_byte_wasm=Module._ts_node_first_child_for_byte_wasm=wasmExports.ts_node_first_child_for_byte_wasm,_ts_node_first_named_child_for_byte_wasm=Module._ts_node_first_named_child_for_byte_wasm=wasmExports.ts_node_first_named_child_for_byte_wasm,_ts_node_grammar_symbol_wasm=Module._ts_node_grammar_symbol_wasm=wasmExports.ts_node_grammar_symbol_wasm,_ts_node_child_count_wasm=Module._ts_node_child_count_wasm=wasmExports.ts_node_child_count_wasm,_ts_node_named_child_count_wasm=Module._ts_node_named_child_count_wasm=wasmExports.ts_node_named_child_count_wasm,_ts_node_child_wasm=Module._ts_node_child_wasm=wasmExports.ts_node_child_wasm,_ts_node_named_child_wasm=Module._ts_node_named_child_wasm=wasmExports.ts_node_named_child_wasm,_ts_node_child_by_field_id_wasm=Module._ts_node_child_by_field_id_wasm=wasmExports.ts_node_child_by_field_id_wasm,_ts_node_next_sibling_wasm=Module._ts_node_next_sibling_wasm=wasmExports.ts_node_next_sibling_wasm,_ts_node_prev_sibling_wasm=Module._ts_node_prev_sibling_wasm=wasmExports.ts_node_prev_sibling_wasm,_ts_node_next_named_sibling_wasm=Module._ts_node_next_named_sibling_wasm=wasmExports.ts_node_next_named_sibling_wasm,_ts_node_prev_named_sibling_wasm=Module._ts_node_prev_named_sibling_wasm=wasmExports.ts_node_prev_named_sibling_wasm,_ts_node_descendant_count_wasm=Module._ts_node_descendant_count_wasm=wasmExports.ts_node_descendant_count_wasm,_ts_node_parent_wasm=Module._ts_node_parent_wasm=wasmExports.ts_node_parent_wasm,_ts_node_child_with_descendant_wasm=Module._ts_node_child_with_descendant_wasm=wasmExports.ts_node_child_with_descendant_wasm,_ts_node_descendant_for_index_wasm=Module._ts_node_descendant_for_index_wasm=wasmExports.ts_node_descendant_for_index_wasm,_ts_node_named_descendant_for_index_wasm=Module._ts_node_named_descendant_for_index_wasm=wasmExports.ts_node_named_descendant_for_index_wasm,_ts_node_descendant_for_position_wasm=Module._ts_node_descendant_for_position_wasm=wasmExports.ts_node_descendant_for_position_wasm,_ts_node_named_descendant_for_position_wasm=Module._ts_node_named_descendant_for_position_wasm=wasmExports.ts_node_named_descendant_for_position_wasm,_ts_node_start_point_wasm=Module._ts_node_start_point_wasm=wasmExports.ts_node_start_point_wasm,_ts_node_end_point_wasm=Module._ts_node_end_point_wasm=wasmExports.ts_node_end_point_wasm,_ts_node_start_index_wasm=Module._ts_node_start_index_wasm=wasmExports.ts_node_start_index_wasm,_ts_node_end_index_wasm=Module._ts_node_end_index_wasm=wasmExports.ts_node_end_index_wasm,_ts_node_to_string_wasm=Module._ts_node_to_string_wasm=wasmExports.ts_node_to_string_wasm,_ts_node_children_wasm=Module._ts_node_children_wasm=wasmExports.ts_node_children_wasm,_ts_node_named_children_wasm=Module._ts_node_named_children_wasm=wasmExports.ts_node_named_children_wasm,_ts_node_descendants_of_type_wasm=Module._ts_node_descendants_of_type_wasm=wasmExports.ts_node_descendants_of_type_wasm,_ts_node_is_named_wasm=Module._ts_node_is_named_wasm=wasmExports.ts_node_is_named_wasm,_ts_node_has_changes_wasm=Module._ts_node_has_changes_wasm=wasmExports.ts_node_has_changes_wasm,_ts_node_has_error_wasm=Module._ts_node_has_error_wasm=wasmExports.ts_node_has_error_wasm,_ts_node_is_error_wasm=Module._ts_node_is_error_wasm=wasmExports.ts_node_is_error_wasm,_ts_node_is_missing_wasm=Module._ts_node_is_missing_wasm=wasmExports.ts_node_is_missing_wasm,_ts_node_is_extra_wasm=Module._ts_node_is_extra_wasm=wasmExports.ts_node_is_extra_wasm,_ts_node_parse_state_wasm=Module._ts_node_parse_state_wasm=wasmExports.ts_node_parse_state_wasm,_ts_node_next_parse_state_wasm=Module._ts_node_next_parse_state_wasm=wasmExports.ts_node_next_parse_state_wasm,_ts_query_matches_wasm=Module._ts_query_matches_wasm=wasmExports.ts_query_matches_wasm,_ts_query_captures_wasm=Module._ts_query_captures_wasm=wasmExports.ts_query_captures_wasm,_memset=Module._memset=wasmExports.memset,_memcpy=Module._memcpy=wasmExports.memcpy,_memmove=Module._memmove=wasmExports.memmove,_iswalpha=Module._iswalpha=wasmExports.iswalpha,_iswblank=Module._iswblank=wasmExports.iswblank,_iswdigit=Module._iswdigit=wasmExports.iswdigit,_iswlower=Module._iswlower=wasmExports.iswlower,_iswupper=Module._iswupper=wasmExports.iswupper,_iswxdigit=Module._iswxdigit=wasmExports.iswxdigit,_memchr=Module._memchr=wasmExports.memchr,_strlen=Module._strlen=wasmExports.strlen,_strcmp=Module._strcmp=wasmExports.strcmp,_strncat=Module._strncat=wasmExports.strncat,_strncpy=Module._strncpy=wasmExports.strncpy,_towlower=Module._towlower=wasmExports.towlower,_towupper=Module._towupper=wasmExports.towupper,_setThrew=wasmExports.setThrew,__emscripten_stack_restore=wasmExports._emscripten_stack_restore,__emscripten_stack_alloc=wasmExports._emscripten_stack_alloc,_emscripten_stack_get_current=wasmExports.emscripten_stack_get_current,___wasm_apply_data_relocs=wasmExports.__wasm_apply_data_relocs;Module.setValue=setValue,Module.getValue=getValue,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.AsciiToString=AsciiToString,Module.stringToUTF16=stringToUTF16,Module.loadWebAssemblyModule=loadWebAssemblyModule;function callMain(t=[]){var e=resolveGlobalSymbol("main").sym;if(e){t.unshift(thisProgram);var l=t.length,n=stackAlloc((l+1)*4),r=n;t.forEach(I=>{LE_HEAP_STORE_U32((r>>2)*4,stringToUTF8OnStack(I)),r+=4}),LE_HEAP_STORE_U32((r>>2)*4,0);try{var a=e(l,n);return exitJS(a,!0),a}catch(I){return handleException(I)}}}yt(callMain,"callMain");function run(t=arguments_){if(runDependencies>0){dependenciesFulfilled=run;return}if(preRun(),runDependencies>0){dependenciesFulfilled=run;return}function e(){if(Module.calledRun=!0,!ABORT){initRuntime(),readyPromiseResolve(Module),Module.onRuntimeInitialized?.();var l=Module.noInitialRun;l||callMain(t),postRun()}}yt(e,"doRun"),Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),e()},1)):e()}if(yt(run,"run"),Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();return run(),moduleRtn=readyPromise,moduleRtn}})(),yPn=WPn,dCe=null;async function tcl(t){return dCe||(dCe=await yPn(t)),dCe}yt(tcl,"initializeBinding");function lcl(){return!!dCe}yt(lcl,"checkModule");var lr,Ftt,Ctt,Ltt=class{static{yt(this,"Parser")}0=0;1=0;logCallback=null;language=null;static async init(t){Til(await tcl(t)),lr=we._ts_init(),Ftt=we.getValue(lr,"i32"),Ctt=we.getValue(lr+ur,"i32")}constructor(){this.initialize()}initialize(){if(!lcl())throw new Error("cannot construct a Parser before calling `init()`");we._ts_parser_new_wasm(),this[0]=we.getValue(lr,"i32"),this[1]=we.getValue(lr+ur,"i32")}delete(){we._ts_parser_delete(this[0]),we._free(this[1]),this[0]=0,this[1]=0}setLanguage(t){let e;if(!t)e=0,this.language=null;else if(t.constructor===ktt){e=t[0];let l=we._ts_language_version(e);if(l<Ctt||Ftt<l)throw new Error(`Incompatible language version ${l}. Compatibility range ${Ctt} through ${Ftt}.`);this.language=t}else throw new Error("Argument must be a Language");return we._ts_parser_set_language(this[0],e),this}parse(t,e,l){if(typeof t=="string")we.currentParseCallback=s=>t.slice(s);else if(typeof t=="function")we.currentParseCallback=t;else throw new Error("Argument must be a string or a function");l?.progressCallback?we.currentProgressCallback=l.progressCallback:we.currentProgressCallback=null,this.logCallback?(we.currentLogCallback=this.logCallback,we._ts_parser_enable_logger_wasm(this[0],1)):(we.currentLogCallback=null,we._ts_parser_enable_logger_wasm(this[0],0));let n=0,r=0;if(l?.includedRanges){n=l.includedRanges.length,r=we._calloc(n,Ebe);let s=r;for(let o=0;o<n;o++)Uil(s,l.includedRanges[o]),s+=Ebe}let a=we._ts_parser_parse_wasm(this[0],this[1],e?e[0]:0,r,n);if(!a)return we.currentParseCallback=null,we.currentLogCallback=null,we.currentProgressCallback=null,null;if(!this.language)throw new Error("Parser must have a language to parse");let I=new bPn(tJ,a,this.language,we.currentParseCallback);return we.currentParseCallback=null,we.currentLogCallback=null,we.currentProgressCallback=null,I}reset(){we._ts_parser_reset(this[0])}getIncludedRanges(){we._ts_parser_included_ranges_wasm(this[0]);let t=we.getValue(lr,"i32"),e=we.getValue(lr+ur,"i32"),l=new Array(t);if(t>0){let n=e;for(let r=0;r<t;r++)l[r]=uCe(n),n+=Ebe;we._free(e)}return l}getTimeoutMicros(){return we._ts_parser_timeout_micros(this[0])}setTimeoutMicros(t){we._ts_parser_set_timeout_micros(this[0],0,t)}setLogger(t){if(!t)this.logCallback=null;else{if(typeof t!="function")throw new Error("Logger callback must be a function");this.logCallback=t}return this}getLogger(){return this.logCallback}};var ncl=()=>!0;var Jtt=new Map,xtt=null;async function acl(t,e,l){t==="powershell"&&(e=e.replace(/&&/g,";"));let n=await EPn(t,e);if(!n)return{kind:"error",reason:"failed to parse script"};let r=new Set(["expansion","simple_expansion","command_substitution","process_substitution","arithmetic_expansion","variable_assignment","variable_assignments","if_statement","for_statement","c_style_for_statement","while_statement","case_statement","function_definition","subshell","compound_statement","binary_expression","unary_expression","ternary_expression","test_command","negated_command","declaration_command","unset_command","brace_expression","command_name_expr"]),a=new Set(["integer_literal","string_literal","real_literal"]),I=[n.rootNode],s=[],o=!1,c=!1;for(;I.length>0;){let d=I.pop();if(d.isNamed){if(d.type==="command"){let m=VPn(t,d,l);m!==null&&s.push({fullCommandText:d.text.trim(),commandIdentifier:m})}if(r.has(d.type)){let m=d.children.length===1?d.children[0]:null;d.type==="unary_expression"&&m&&a.has(m.type)||(c=!0)}d.type==="file_redirect"&&(o||=!FPn(d)),d.type==="redirection"&&(o||=!CPn(d));for(let m=d.children.length-1;m>=0;m--){let G=d.children[m];G&&I.push(G)}}}return{kind:"success",commands:s,hasWriteFileRedirection:o,hasPotentiallyConfusingConstructs:c}}async function EPn(t,e){xtt||(xtt=Ltt.init()),await xtt;let l=await RPn(t),n=new Ltt;return n.setLanguage(l),n.parse(e)}function RPn(t){let e=Jtt.get(t);if(e)return e;let l=YPn(t),n=ncl()?rcl.join(import.meta.dirname,l.file):rcl.join("node_modules",l.package,l.file),r=ktt.load(n).catch(a=>{throw Jtt.delete(t),a});return Jtt.set(t,r),r}function YPn(t){switch(t){case"bash":return{package:"tree-sitter-bash",file:"tree-sitter-bash.wasm"};case"powershell":return{package:"tree-sitter-powershell",file:"tree-sitter-powershell.wasm"};default:ci(t,`Unknown shell type: ${t}`)}}function VPn(t,e,l){switch(t){case"bash":return wPn(e,l);case"powershell":return QPn(e,l);default:ci(t,`Unknown shell type: ${t}`)}}function wPn(t,e){if(!t||t.type!=="command")throw new Error(`expected a command node, got ${t.type}`);let l=t.childForFieldName("name")??t.namedChildren.find(I=>I?.type==="command_name");if(!l)throw new Error("command node has no name or command_name child");let n=l.text,r=e?.find(I=>I.stem===n);if(!r)return n;let a=l.nextNamedSibling;for(;a&&a.type==="word";){if(!r?.flagsToIgnore?.includes(a.text))return`${n} ${a.text}`;a=a.nextNamedSibling}return n}function QPn(t,e){if(!t||t.type!=="command")throw new Error(`expected a command node, got ${t.type}`);let l=t.childForFieldName("name")??t.namedChildren.find(I=>I?.type==="command_name");if(!l){if(t.namedChildren.find(s=>s?.type==="foreach_command"))return"ForEach-Object";let I=t.namedChildren.find(s=>s?.type==="command_name_expr");if(I)return I.childCount===1&&I.firstChild?.type==="script_block_expression"?null:"<command with expression as name>";throw new Error("command node has no name, command_name, foreach_command, or command_name_expr child")}let n=l.text,r=e?.find(I=>I.stem===n);if(!r)return n;let a=l.nextNamedSibling;for(;a;){if(a.type==="command_argument_sep"){a=a.nextNamedSibling;continue}if(a.type==="command_elements"){a=a.namedChildren[0];continue}if(a.type!=="command_parameter"&&a.type!=="generic_token")break;if(!r?.flagsToIgnore?.includes(a.text))return`${n} ${a.text}`;a=a.nextNamedSibling}return n}function FPn(t){if(t.children.length===3&&["2>&1","1>&2"].includes(t.text))return!0;for(let e of t.children){if(!e||e.isNamed)continue;let l=e.text;return l==="<"||l==="<&"||l==="<&-"}return!1}function CPn(t){for(let e of t.children)if(e){if(e.type==="merging_redirection_operator")return!1;if(e.type==="file_redirection_operator")return e.text.trim().startsWith("<")}return!1}var vPn=[{stem:"git",flagsToIgnore:["--no-pager"]},{stem:"gh"},{stem:"glab"},{stem:"npm"},{stem:"npx"},{stem:"yarn"},{stem:"pnpm"},{stem:"cargo"},{stem:"go"},{stem:"composer"},{stem:"pip"},{stem:"pipenv"},{stem:"poetry"},{stem:"conda"},{stem:"mvn"},{stem:"gradle"},{stem:"gradlew"},{stem:"dotnet"},{stem:"bundle"},{stem:"swift"},{stem:"sbt"},{stem:"flutter"},{stem:"mix"},{stem:"cabal"},{stem:"stack"}];async function Icl(t,e){let l=xil(e),n=await acl(t,e,vPn);return n.kind==="error"?{result:"failed",reason:`Command could not be assured as safe: ${n.reason}`}:n.commands.length===0?{result:"completed",commands:[{identifier:e,readOnly:!1}],possiblePaths:l,hasWriteFileRedirection:n.hasWriteFileRedirection,canOfferSessionApproval:!1}:{result:"completed",commands:n.commands.map(I=>fPn(t,I.fullCommandText,I.commandIdentifier)).reduce((I,s)=>{let o=I.find(c=>c.identifier===s.identifier);return o?o.readOnly=o.readOnly&&s.readOnly:(o={identifier:s.identifier,readOnly:s.readOnly},I.push(o)),I},[]),possiblePaths:l,hasWriteFileRedirection:n.hasWriteFileRedirection,canOfferSessionApproval:!n.hasPotentiallyConfusingConstructs}}function fPn(t,e,l){switch(l){case"cat":case"cd":case"echo":case"false":case"head":case"hostname":case"ls":case"pwd":case"timeout":case"true":case"whoami":return{identifier:l,readOnly:!0}}if(l==="git"||l.startsWith("git "))return kPn(l);if(t==="bash")switch(l){case"cal":case"df":case"du":case"env":case"free":case"groups":case"id":case"nice":case"nl":case"printenv":case"ps":case"set":case"tail":case"time":case"top":case"type":case"uname":case"unset":case"uptime":case"wc":case"whatis":case"whereis":case"which":return{identifier:l,readOnly:!0};case"date":return HPn(e);case"find":return XPn(e)}if(t==="powershell")switch(l){case"Get-Command":case"Get-Content":case"Get-Process":case"Get-ChildItem":case"Get-Location":case"Select-String":case"Select-Object":case"Test-Path":return{identifier:l,readOnly:!0}}return{identifier:l,readOnly:!1}}function HPn(t){return t.match(/\s-s/)||t.match(/\s--set\b/)?{identifier:"date",readOnly:!1}:{identifier:"date",readOnly:!0}}function XPn(t){let e=["-exec","-execdir","-ok","-okdir","-delete","-fls","-fprint","-fprint0","-fprintf"];for(let l of e)if(t.includes(l))return{identifier:"find",readOnly:!1};return{identifier:"find",readOnly:!0}}function kPn(t){return t==="git"?{identifier:t,readOnly:!0}:["git blame","git branch","git describe","git diff","git grep","git log","git ls-files","git ls-remote","git remote","git rev-parse","git shortlog","git show","git status","git tag"].includes(t)?{identifier:t,readOnly:!0}:{identifier:t,readOnly:!1}}var mCe=class t{agentKind;client;settings;logger;toolConfig;availableTools=[];callback=new Sne;executeToolsInParallel=!0;customAgentEventSubscribers=new Set;constructor(){}static async createFromOptions(e){let l=new t;return await l.initializeFromOptions(e),l}async initializeFromOptions(e){this.logger=e.logger,this.executeToolsInParallel=e.executeToolsInParallel??!0;let l=new _X;l.setProblemStatement(e.problemStatement).setInstanceId(WE(e.serviceInstanceId)).setAgentModel(WE(e.serviceAgentModel)).setCallbackUrl(WE(e.serviceCallbackUrl)).setAipSweAgentToken(WE(e.apiAipSweAgentToken)).setAnthropicApiKey(WE(e.apiAnthropicKey)).setCopilotUrl(WE(e.apiCopilotUrl)).setCopilotIntegrationId(WE(e.apiCopilotIntegrationId)).setCopilotHmacKey(WE(e.apiCopilotHmacKey)).setCopilotToken(WE(e.apiCopilotToken)).setTrajectoryOutputFile(WE(e.saveTrajectoryOutput)).setEventsLogDirectory(WE(e.saveEventLogs)).setDisableOnlineEvaluation(e.disableOnlineEvaluation).setGithubRepoName("temp-repo").setGithubRepoCommit("temp-commit").setGithubRepoReadWrite(!1);let n=l.build();dD()?(Rx(),this.settings=await ume(n)):this.settings=await ume(n),this.callback.addSettings(this.settings);let r=new Sne,a,I={progress:async W=>{if(W.kind==="message"&&W.turn===0){if(!W.callId)throw new Error("message on turn 0 event missing callId");a=W.callId}if(iCe(W)){if(!a)throw new Error("Custom agent event received without parentToolCallId");switch(W.kind){case"message":case"model_call_failure":case"model_call_success":case"tool_execution":this.customAgentEventSubscribers.forEach(R=>R({...W,parentToolCallId:a}));break;case"image_processing":case"images_removed":break;case"response":break;case"history_truncated":break;case"turn_started":case"turn_ended":case"turn_failed":case"turn_retry":break;default:ci(W,`Unknown event kind: ${JSON.stringify(W)}`)}}},partialResult:()=>Promise.resolve(),commentReply:()=>Promise.resolve(),result:()=>Promise.resolve(),error:()=>Promise.resolve()};if(r.addSettings(this.settings),r.addCallback(I),this.settings.trajectory?.outputFile){let W=new cCe(this.logger,this.settings.trajectory.outputFile);this.callback.addCallback(W),r.addCallback(W)}if(this.settings.logs?.eventsLogDir){let W=new ICe(this.logger,this.settings.logs.eventsLogDir);this.callback.addCallback(W),r.addCallback(W)}let s=this.settings.service?.agent?.model,o=fB(s),c=o.agent;this.agentKind=c;let d=o.model?{model:o.model}:void 0;this.client=Mde(this.settings,this.logger,c,d);let m=!1,G=async W=>{if(m)return{kind:"denied-interactively-by-user",reason:"A previous tool call was rejected"};let R=await e.requestPermission(W);return R.kind==="denied-interactively-by-user"&&(m=!0),R};this.toolConfig={location:".",timeout:3e4,permissions:{requestRequired:!0,request:G},requireReasoning:!1,splitEditingTools:!0,toolPartialResultCallback:e.onToolPartialOutput,shellConfig:(process.platform==="win32"?Gp.powerShell:Gp.bash).withScriptSafetyAssessor(Icl)};let p=await P1e(this.toolConfig,this.logger),A=[];if(e.mcpHost)try{A=await e.mcpHost.getTools(this.settings,this.logger,this.toolConfig.permissions)}catch(W){this.logger.error(`Failed to get MCP tools: ${W}`)}let Z=[];if(!e.customAgents.isCustomAgentSelected&&e.customAgents.available.length>0){let W={client:this.client,settings:this.settings,logger:this.logger,exec:new vA(e.logger),callback:r,customAgents:e.customAgents.available},V=(O8()[this.getAgentKind()]?.[this.getModel()]??T8()).supports??{};V.customAgents=!1;let f=this.getToolConfig()??{},X=process.cwd(),x=async O=>await V6({location:e.gitRoot??"",version:uL(),currentWorkingDirectory:X,parts:{},capabilities:V,toolConfigOverrides:f,tools:O,organizationCustomInstructions:void 0,skipCustomInstructions:e.noCustomInstructions});for(let O of e.customAgents.available)Z.push(JOt(x,YXt,O,X,W,[...p,...A]));this.logger.info(`Loaded ${Z.length} custom agent(s): ${Z.map(O=>O.name).join(", ")}`)}this.availableTools=[...p,...A,...Z]}async*getCompletionWithTools(e,l,n){if(!this.client)throw new Error("CLI not properly initialized");let r={...n,executeToolsInParallel:this.executeToolsInParallel},a=this.client.getCompletionWithTools(e,l,this.availableTools,r),I=Xil();try{this.customAgentEventSubscribers.add(I.next);let s=kil([a,I.iterator()],"any");for await(let o of s)await this.handleEvent(o),yield o}finally{this.customAgentEventSubscribers.delete(I.next)}}getToolIntentionSummary(e,l){return this.availableTools.find(r=>r.name===e)?.summariseIntention?.(l)||null}getToolTitle(e){return this.availableTools.find(n=>n.name===e)?.title||null}getAvailableTools(){return this.availableTools}getModel(){return this.client?.model||"unknown"}getAgentKind(){return this.agentKind||"sweagent-capi"}getToolConfig(){return this.toolConfig}async shutdown(){for(let e of this.availableTools)e.shutdown&&await e.shutdown()}async handleEvent(e){if(this.callback)try{await this.callback.progress(e)}catch(l){this.logger?.error(`Error in callback: ${l}`)}}};var Rbe={CUSTOM_AGENTS:!1,CCA_DELEGATE:!1,COPILOT_KITTY:!0},LPn=["CUSTOM_AGENTS","CCA_DELEGATE"],scl=t=>t in Rbe;function ocl(t){let e={...t},l=process.env.COPILOT_CLI_ENABLED_FEATURE_FLAGS;if(l){let n=l.split(",").map(r=>r.trim().toUpperCase());for(let r of n)scl(r)&&(e[r]=!0)}for(let n of Object.keys(t)){let r=n,a=process.env[r];a&&(a.toLowerCase()==="true"?e[r]=!0:a.toLowerCase()==="false"&&(e[r]=!1))}return e}function icl(t,e){let l={...e};if(t.staff)for(let n of LPn)l[n]=!0;if(t.feature_flags?.enabled)for(let n of t.feature_flags.enabled){let r=n.toUpperCase();scl(r)&&(l[r]=!0)}return l}import{realpathSync as bCe}from"fs";import JPn from"path";var Ybe=class{static async isFolderTrusted(e){try{let n=(await xr.load())?.trusted_folders||[],r=bCe(e);return n.some(a=>{try{let I=bCe(a);return r===I||r.startsWith(I+JPn.sep)}catch{return!1}})}catch{return!1}}static async addTrustedFolder(e){try{let l=await xr.load()||{},n=l.trusted_folders||[],r=bCe(e);n.some(I=>{try{return bCe(I)===r}catch{return!1}})||(n.push(r),l.trusted_folders=n,await xr.write(l))}catch(l){throw new Error(`Failed to add trusted folder: ${l instanceof Error?l.message:String(l)}`)}}};import{Transform as xPn}from"node:stream";var SPn=Buffer.from([10]),BPn=()=>{let t,e,l,n=!1;function r(){t=Buffer.alloc(1024),l=e=0,n=!1}return r(),new xPn({decodeStrings:!0,transform(a,I,s){let o=0,c,d,m;for(;o<a.length;){d=a.indexOf(13,o),d===-1&&!n?(m=a.subarray(o).lastIndexOf(10),m=m===-1?-1:m+o):(m=a.indexOf(10,o),n=!0),c=Math.min(d===-1?a.length-1:d,m===-1?a.length-1:m),c=c===-1?a.length-1:c;let G,p=o,A=[13,10].includes(a[c])?c:c+1;for(;(G=A-p)>0;)if(l+G>t.length){l>0&&this.push(t.subarray(0,l));let Z=t.length-l;this.push(a.subarray(p,p+Z)),p+=Z,r()}else{a.copy(t,l,p,A),l+=G,e=Math.max(l,e);break}a[c]===10?(this.push(Buffer.concat([t.subarray(0,e),SPn])),r()):a[c]===13&&(l=0),o=c+1}s()},flush(a){a(null,e>0?t.subarray(0,e):null)}})},ccl=t=>{let e=BPn(),l=[];return e.on("data",n=>l.push(n)),e.write(t),e.end(),Buffer.concat(l).toString("utf-8").replaceAll("\r","")};var GCe=class{constructor(e,l,n,r){this.session=e;this.onStreamingResponseSizeChanged=l;this.promptMode=n;this.logger=r}streamingMessageText="";streamingMessageId=null;totalResponseSizeBytes=0;onStreamingChunk(e){this.logger.debug("StreamingChunkDisplay received chunk.");let n=e.chunk.choices[0]?.delta?.content||"";if(this.promptMode){process.stdout.write(n);return}this.streamingMessageText+=n;let r=TPn(e);r&&(this.totalResponseSizeBytes+=r,this.onStreamingResponseSizeChanged(this.totalResponseSizeBytes)),n&&(this.streamingMessageId||(this.streamingMessageId=mu()),this.session.emitEphemeral("assistant.message",{messageId:this.streamingMessageId,content:this.streamingMessageText}))}endCurrentStreamingMessage(){this.streamingMessageText="";let e=this.streamingMessageId;return e?(this.streamingMessageId=null,e):null}toJSON(){return"StreamingChunkDisplay"}};function TPn(t){let e=[];t.chunk.choices.forEach(n=>{e.push(n.delta.content),n.delta.tool_calls?.forEach(r=>{r.function&&(e.push(r.function.name),e.push(r.function.arguments))})});let l=e.join("");return l?new TextEncoder().encode(l).length:0}var pCe=class{constructor(e){this.onIntentDetected=e}accumulatorsByCallIndex=new Map;onStreamingChunk(e){let l=e.chunk.choices?.[0]?.delta?.tool_calls;if(l)for(let n of l){let r=n.index??0;this.accumulatorsByCallIndex.has(r)||this.accumulatorsByCallIndex.set(r,{name:null,args:""});let a=this.accumulatorsByCallIndex.get(r);if(n.function?.name&&(a.name=n.function.name),n.function?.arguments&&(a.args+=n.function.arguments,a.name===NE.name&&a.args.endsWith("}")))try{let I=JSON.parse(a.args);I.intent&&(this.onIntentDetected(I.intent),this.accumulatorsByCallIndex.delete(r))}catch{}}}toJSON(){return"ReportIntentExtractor"}};function dcl(t){let l=t.findLastIndex(OPn)+1,n=t.slice(l).findIndex(UPn);if(n===-1)return{staticEntries:t,dynamicEntries:[]};let r=l+n;return{staticEntries:t.slice(0,r),dynamicEntries:t.slice(r)}}function OPn(t){return t.type==="copilot"&&!t.isStreaming}function UPn(t){return t.type==="tool_call_requested"||t.type==="group_tool_call_requested"||t.type==="copilot"&&t.isStreaming===!0}import qO from"node:process";import{spawn as aKn}from"node:child_process";import{fileURLToPath as IKn}from"node:url";import uml from"node:path";import{format as Blt}from"node:util";var Fbe=$e(Wcl(),1);import Qbe from"node:path";import ijn from"node:os";import tjn from"os";import NCe from"path";var nJ=tjn.homedir(),{env:BO}=process,ycl=BO.XDG_DATA_HOME||(nJ?NCe.join(nJ,".local","share"):void 0),V7=BO.XDG_CONFIG_HOME||(nJ?NCe.join(nJ,".config"):void 0),lGI=BO.XDG_STATE_HOME||(nJ?NCe.join(nJ,".local","state"):void 0),nGI=BO.XDG_CACHE_HOME||(nJ?NCe.join(nJ,".cache"):void 0),rGI=BO.XDG_RUNTIME_DIR||void 0,ljn=(BO.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");ycl&&ljn.unshift(ycl);var njn=(BO.XDG_CONFIG_DIRS||"/etc/xdg").split(":");V7&&njn.unshift(V7);import sjn from"node:path";import oo from"node:fs";import{promisify as Ph}from"node:util";var zf=(t,e)=>function(...n){return t.apply(void 0,n).catch(e)},sQ=(t,e)=>function(...n){try{return t.apply(void 0,n)}catch(r){return e(r)}};import Ecl from"node:process";var Rcl=Ecl.getuid?!Ecl.getuid():!1,Ycl=1e4,AN=()=>{};var Vbe={isChangeErrorOk:t=>{if(!Vbe.isNodeError(t))return!1;let{code:e}=t;return e==="ENOSYS"||!Rcl&&(e==="EINVAL"||e==="EPERM")},isNodeError:t=>t instanceof Error,isRetriableError:t=>{if(!Vbe.isNodeError(t))return!1;let{code:e}=t;return e==="EMFILE"||e==="ENFILE"||e==="EAGAIN"||e==="EBUSY"||e==="EACCESS"||e==="EACCES"||e==="EACCS"||e==="EPERM"},onChangeError:t=>{if(!Vbe.isNodeError(t))throw t;if(!Vbe.isChangeErrorOk(t))throw t}},mm=Vbe;var Utt=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=Ycl,this.queueActive=new Set,this.queueWaiting=new Set,this.init=()=>{this.intervalId||(this.intervalId=setInterval(this.tick,this.interval))},this.reset=()=>{this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId)},this.add=e=>{this.queueWaiting.add(e),this.queueActive.size<this.limit/2?this.tick():this.init()},this.remove=e=>{this.queueWaiting.delete(e),this.queueActive.delete(e)},this.schedule=()=>new Promise(e=>{let l=()=>this.remove(n),n=()=>e(l);this.add(n)}),this.tick=()=>{if(!(this.queueActive.size>=this.limit)){if(!this.queueWaiting.size)return this.reset();for(let e of this.queueWaiting){if(this.queueActive.size>=this.limit)break;this.queueWaiting.delete(e),this.queueActive.add(e),e()}}}}},Vcl=new Utt;var Pf=(t,e)=>function(n){return function r(...a){return Vcl.schedule().then(I=>{let s=c=>(I(),c),o=c=>{if(I(),Date.now()>=n)throw c;if(e(c)){let d=Math.round(100*Math.random());return new Promise(G=>setTimeout(G,d)).then(()=>r.apply(void 0,a))}throw c};return t.apply(void 0,a).then(s,o)})}},jf=(t,e)=>function(n){return function r(...a){try{return t.apply(void 0,a)}catch(I){if(Date.now()>n)throw I;if(e(I))return r.apply(void 0,a);throw I}}};var rjn={attempt:{chmod:zf(Ph(oo.chmod),mm.onChangeError),chown:zf(Ph(oo.chown),mm.onChangeError),close:zf(Ph(oo.close),AN),fsync:zf(Ph(oo.fsync),AN),mkdir:zf(Ph(oo.mkdir),AN),realpath:zf(Ph(oo.realpath),AN),stat:zf(Ph(oo.stat),AN),unlink:zf(Ph(oo.unlink),AN),chmodSync:sQ(oo.chmodSync,mm.onChangeError),chownSync:sQ(oo.chownSync,mm.onChangeError),closeSync:sQ(oo.closeSync,AN),existsSync:sQ(oo.existsSync,AN),fsyncSync:sQ(oo.fsync,AN),mkdirSync:sQ(oo.mkdirSync,AN),realpathSync:sQ(oo.realpathSync,AN),statSync:sQ(oo.statSync,AN),unlinkSync:sQ(oo.unlinkSync,AN)},retry:{close:Pf(Ph(oo.close),mm.isRetriableError),fsync:Pf(Ph(oo.fsync),mm.isRetriableError),open:Pf(Ph(oo.open),mm.isRetriableError),readFile:Pf(Ph(oo.readFile),mm.isRetriableError),rename:Pf(Ph(oo.rename),mm.isRetriableError),stat:Pf(Ph(oo.stat),mm.isRetriableError),write:Pf(Ph(oo.write),mm.isRetriableError),writeFile:Pf(Ph(oo.writeFile),mm.isRetriableError),closeSync:jf(oo.closeSync,mm.isRetriableError),fsyncSync:jf(oo.fsyncSync,mm.isRetriableError),openSync:jf(oo.openSync,mm.isRetriableError),readFileSync:jf(oo.readFileSync,mm.isRetriableError),renameSync:jf(oo.renameSync,mm.isRetriableError),statSync:jf(oo.statSync,mm.isRetriableError),writeSync:jf(oo.writeSync,mm.isRetriableError),writeFileSync:jf(oo.writeFileSync,mm.isRetriableError)}},OG=rjn;import wcl from"node:os";import Mtt from"node:process";var Qcl="utf8",_tt=438,Fcl=511;var Ccl={},vcl=wcl.userInfo().uid,fcl=wcl.userInfo().gid;var Hcl=1e3,Xcl=!!Mtt.getuid,EGI=Mtt.getuid?!Mtt.getuid():!1,Dtt=128;var kcl=t=>t instanceof Error&&"code"in t;var ztt=t=>typeof t=="string",WCe=t=>t===void 0;import Ijn from"node:path";import w7 from"node:process";import Lcl from"node:process";var Jcl=Lcl.platform==="linux",yCe=Lcl.platform==="win32";var Ptt=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];yCe||Ptt.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");Jcl&&Ptt.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED");var xcl=Ptt;var jtt=class{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=e=>{if(!this.exited){this.exited=!0;for(let l of this.callbacks)l();e&&(yCe&&e!=="SIGINT"&&e!=="SIGTERM"&&e!=="SIGKILL"?w7.kill(w7.pid,"SIGTERM"):w7.kill(w7.pid,e))}},this.hook=()=>{w7.once("exit",()=>this.exit());for(let e of xcl)try{w7.once(e,()=>this.exit(e))}catch{}},this.register=e=>(this.callbacks.add(e),()=>{this.callbacks.delete(e)}),this.hook()}},Scl=new jtt;var ajn=Scl.register,Bcl=ajn;var ay={store:{},create:t=>{let e=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),r=`.tmp-${Date.now().toString().slice(-10)}${e}`;return`${t}${r}`},get:(t,e,l=!0)=>{let n=ay.truncate(e(t));return n in ay.store?ay.get(t,e,l):(ay.store[n]=l,[n,()=>delete ay.store[n]])},purge:t=>{ay.store[t]&&(delete ay.store[t],OG.attempt.unlink(t))},purgeSync:t=>{ay.store[t]&&(delete ay.store[t],OG.attempt.unlinkSync(t))},purgeSyncAll:()=>{for(let t in ay.store)ay.purgeSync(t)},truncate:t=>{let e=Ijn.basename(t);if(e.length<=Dtt)return t;let l=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(e);if(!l)return t;let n=e.length-Dtt;return`${t.slice(0,-e.length)}${l[1]}${l[2].slice(0,-n)}${l[3]}`}};Bcl(ay.purgeSyncAll);var wbe=ay;function ECe(t,e,l=Ccl){if(ztt(l))return ECe(t,e,{encoding:l});let n=Date.now()+((l.timeout??Hcl)||-1),r=null,a=null,I=null;try{let s=OG.attempt.realpathSync(t),o=!!s;t=s||t,[a,r]=wbe.get(t,l.tmpCreate||wbe.create,l.tmpPurge!==!1);let c=Xcl&&WCe(l.chown),d=WCe(l.mode);if(o&&(c||d)){let m=OG.attempt.statSync(t);m&&(l={...l},c&&(l.chown={uid:m.uid,gid:m.gid}),d&&(l.mode=m.mode))}if(!o){let m=sjn.dirname(t);OG.attempt.mkdirSync(m,{mode:Fcl,recursive:!0})}I=OG.retry.openSync(n)(a,"w",l.mode||_tt),l.tmpCreated&&l.tmpCreated(a),ztt(e)?OG.retry.writeSync(n)(I,e,0,l.encoding||Qcl):WCe(e)||OG.retry.writeSync(n)(I,e,0,e.length,0),l.fsync!==!1&&(l.fsyncWait!==!1?OG.retry.fsyncSync(n)(I):OG.attempt.fsync(I)),OG.retry.closeSync(n)(I),I=null,l.chown&&(l.chown.uid!==vcl||l.chown.gid!==fcl)&&OG.attempt.chownSync(a,l.chown.uid,l.chown.gid),l.mode&&l.mode!==_tt&&OG.attempt.chmodSync(a,l.mode);try{OG.retry.renameSync(n)(a,t)}catch(m){if(!kcl(m)||m.code!=="ENAMETOOLONG")throw m;OG.retry.renameSync(n)(a,wbe.truncate(t))}r(),a=null}finally{I&&OG.attempt.closeSync(I),a&&wbe.purge(a)}}var TO=t=>{let e=typeof t;return t!==null&&(e==="object"||e==="function")};var Ktt=new Set(["__proto__","prototype","constructor"]),ojn=new Set("0123456789");function RCe(t){let e=[],l="",n="start",r=!1;for(let a of t)switch(a){case"\\":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd")throw new Error("Invalid character after an index");r&&(l+=a),n="property",r=!r;break}case".":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd"){n="property";break}if(r){r=!1,l+=a;break}if(Ktt.has(l))return[];e.push(l),l="",n="property";break}case"[":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd"){n="index";break}if(r){r=!1,l+=a;break}if(n==="property"){if(Ktt.has(l))return[];e.push(l),l=""}n="index";break}case"]":{if(n==="index"){e.push(Number.parseInt(l,10)),l="",n="indexEnd";break}if(n==="indexEnd")throw new Error("Invalid character after an index")}default:{if(n==="index"&&!ojn.has(a))throw new Error("Invalid character in an index");if(n==="indexEnd")throw new Error("Invalid character after an index");n==="start"&&(n="property"),r&&(r=!1,l+="\\"),l+=a}}switch(r&&(l+="\\"),n){case"property":{if(Ktt.has(l))return[];e.push(l);break}case"index":throw new Error("Index was not closed");case"start":{e.push("");break}}return e}function qtt(t,e){if(typeof e!="number"&&Array.isArray(t)){let l=Number.parseInt(e,10);return Number.isInteger(l)&&t[l]===t[e]}return!1}function Tcl(t,e){if(qtt(t,e))throw new Error("Cannot use string index")}function Ocl(t,e,l){if(!TO(t)||typeof e!="string")return l===void 0?t:l;let n=RCe(e);if(n.length===0)return l;for(let r=0;r<n.length;r++){let a=n[r];if(qtt(t,a)?t=r===n.length-1?void 0:null:t=t[a],t==null){if(r!==n.length-1)return l;break}}return t===void 0?l:t}function $tt(t,e,l){if(!TO(t)||typeof e!="string")return t;let n=t,r=RCe(e);for(let a=0;a<r.length;a++){let I=r[a];Tcl(t,I),a===r.length-1?t[I]=l:TO(t[I])||(t[I]=typeof r[a+1]=="number"?[]:{}),t=t[I]}return n}function Ucl(t,e){if(!TO(t)||typeof e!="string")return!1;let l=RCe(e);for(let n=0;n<l.length;n++){let r=l[n];if(Tcl(t,r),n===l.length-1)return delete t[r],!0;if(t=t[r],!TO(t))return!1}}function Mcl(t,e){if(!TO(t)||typeof e!="string")return!1;let l=RCe(e);if(l.length===0)return!1;for(let n of l){if(!TO(t)||!(n in t)||qtt(t,n))return!1;t=t[n]}return!0}function cjn(t,e){let l=e?Qbe.join(t,"config.json"):Qbe.join("configstore",`${t}.json`),n=V7??Fbe.default.mkdtempSync(Fbe.default.realpathSync(ijn.tmpdir())+Qbe.sep);return Qbe.join(n,l)}var _cl="You don't have access to this file.",djn={mode:448,recursive:!0},Dcl={mode:384},Cbe=class{constructor(e,l,n={}){this._path=n.configPath??cjn(e,n.globalConfigPath),l&&(this.all={...l,...this.all})}get all(){try{return JSON.parse(Fbe.default.readFileSync(this._path,"utf8"))}catch(e){if(e.code==="ENOENT")return{};if(e.code==="EACCES"&&(e.message=`${e.message}
2454
+ ${JSON.stringify(r,null,2)}`),new Error("Language.load failed: no language function found in WASM file");let I=n[a]();return new ecl(tJ,I)}},WPn=(()=>{var _scriptName=import.meta.url;return async function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((t,e)=>{readyPromiseResolve=t,readyPromiseReject=e}),ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope<"u",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer",ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){let{createRequire:t}=await import("module");var require=t(import.meta.url)}Module.currentQueryProgressCallback=null,Module.currentProgressCallback=null,Module.currentLogCallback=null,Module.currentParseCallback=null;var moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=yt((t,e)=>{throw e},"quit_"),scriptDirectory="";function locateFile(t){return Module.locateFile?Module.locateFile(t,scriptDirectory):scriptDirectory+t}yt(locateFile,"locateFile");var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs"),nodePath=require("path");import.meta.url.startsWith("data:")||(scriptDirectory=nodePath.dirname(require("url").fileURLToPath(import.meta.url))+"/"),readBinary=yt(t=>{t=isFileURI(t)?new URL(t):t;var e=fs.readFileSync(t);return e},"readBinary"),readAsync=yt(async(t,e=!0)=>{t=isFileURI(t)?new URL(t):t;var l=fs.readFileSync(t,e?void 0:"utf8");return l},"readAsync"),!Module.thisProgram&&process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=yt((t,e)=>{throw process.exitCode=t,e},"quit_")}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:typeof document<"u"&&document.currentScript&&(scriptDirectory=document.currentScript.src),_scriptName&&(scriptDirectory=_scriptName),scriptDirectory.startsWith("blob:")?scriptDirectory="":scriptDirectory=scriptDirectory.slice(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1),ENVIRONMENT_IS_WORKER&&(readBinary=yt(t=>{var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)},"readBinary")),readAsync=yt(async t=>{if(isFileURI(t))return new Promise((l,n)=>{var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=()=>{if(r.status==200||r.status==0&&r.response){l(r.response);return}n(r.status)},r.onerror=n,r.send(null)});var e=await fetch(t,{credentials:"same-origin"});if(e.ok)return e.arrayBuffer();throw new Error(e.status+" : "+e.url)},"readAsync"));var out=Module.print||console.log.bind(console),err=Module.printErr||console.error.bind(console);Object.assign(Module,moduleOverrides),moduleOverrides=null,Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram);var dynamicLibraries=Module.dynamicLibraries||[],wasmBinary=Module.wasmBinary,wasmMemory,ABORT=!1,EXITSTATUS;function assert(t,e){t||abort(e)}yt(assert,"assert");var HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64,HEAP_DATA_VIEW,runtimeInitialized=!1,isFileURI=yt(t=>t.startsWith("file://"),"isFileURI");function updateMemoryViews(){var t=wasmMemory.buffer;Module.HEAP_DATA_VIEW=HEAP_DATA_VIEW=new DataView(t),Module.HEAP8=HEAP8=new Int8Array(t),Module.HEAP16=HEAP16=new Int16Array(t),Module.HEAPU8=HEAPU8=new Uint8Array(t),Module.HEAPU16=HEAPU16=new Uint16Array(t),Module.HEAP32=HEAP32=new Int32Array(t),Module.HEAPU32=HEAPU32=new Uint32Array(t),Module.HEAPF32=HEAPF32=new Float32Array(t),Module.HEAPF64=HEAPF64=new Float64Array(t),Module.HEAP64=HEAP64=new BigInt64Array(t),Module.HEAPU64=HEAPU64=new BigUint64Array(t)}if(yt(updateMemoryViews,"updateMemoryViews"),Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var INITIAL_MEMORY=Module.INITIAL_MEMORY||33554432;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:32768})}updateMemoryViews();var __RELOC_FUNCS__=[];function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(onPreRuns)}yt(preRun,"preRun");function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),wasmExports.__wasm_call_ctors(),callRuntimeCallbacks(onPostCtors)}yt(initRuntime,"initRuntime");function preMain(){}yt(preMain,"preMain");function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(onPostRuns)}yt(postRun,"postRun");var runDependencies=0,dependenciesFulfilled=null;function getUniqueRunDependency(t){return t}yt(getUniqueRunDependency,"getUniqueRunDependency");function addRunDependency(t){runDependencies++,Module.monitorRunDependencies?.(runDependencies)}yt(addRunDependency,"addRunDependency");function removeRunDependency(t){if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),runDependencies==0&&dependenciesFulfilled){var e=dependenciesFulfilled;dependenciesFulfilled=null,e()}}yt(removeRunDependency,"removeRunDependency");function abort(t){Module.onAbort?.(t),t="Aborted("+t+")",err(t),ABORT=!0,t+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(t);throw readyPromiseReject(e),e}yt(abort,"abort");var wasmBinaryFile;function findWasmBinary(){return Module.locateFile?locateFile("tree-sitter.wasm"):new URL("tree-sitter.wasm",import.meta.url).href}yt(findWasmBinary,"findWasmBinary");function getBinarySync(t){if(t==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(t);throw"both async and sync fetching of the wasm failed"}yt(getBinarySync,"getBinarySync");async function getWasmBinary(t){if(!wasmBinary)try{var e=await readAsync(t);return new Uint8Array(e)}catch{}return getBinarySync(t)}yt(getWasmBinary,"getWasmBinary");async function instantiateArrayBuffer(t,e){try{var l=await getWasmBinary(t),n=await WebAssembly.instantiate(l,e);return n}catch(r){err(`failed to asynchronously prepare wasm: ${r}`),abort(r)}}yt(instantiateArrayBuffer,"instantiateArrayBuffer");async function instantiateAsync(t,e,l){if(!t&&typeof WebAssembly.instantiateStreaming=="function"&&!isFileURI(e)&&!ENVIRONMENT_IS_NODE)try{var n=fetch(e,{credentials:"same-origin"}),r=await WebAssembly.instantiateStreaming(n,l);return r}catch(a){err(`wasm streaming compile failed: ${a}`),err("falling back to ArrayBuffer instantiation")}return instantiateArrayBuffer(e,l)}yt(instantiateAsync,"instantiateAsync");function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}yt(getWasmImports,"getWasmImports");async function createWasm(){function t(a,I){wasmExports=a.exports,wasmExports=relocateExports(wasmExports,1024);var s=getDylinkMetadata(I);return s.neededDynlibs&&(dynamicLibraries=s.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate"),wasmExports}yt(t,"receiveInstance"),addRunDependency("wasm-instantiate");function e(a){return t(a.instance,a.module)}yt(e,"receiveInstantiationResult");var l=getWasmImports();if(Module.instantiateWasm)return new Promise((a,I)=>{Module.instantiateWasm(l,(s,o)=>{t(s,o),a(s.exports)})});wasmBinaryFile??=findWasmBinary();try{var n=await instantiateAsync(wasmBinary,wasmBinaryFile,l),r=e(n);return r}catch(a){return readyPromiseReject(a),Promise.reject(a)}}yt(createWasm,"createWasm");var ASM_CONSTS={};class ExitStatus{static{yt(this,"ExitStatus")}name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(t,e){var l=GOT[e];return l||(l=GOT[e]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(e)||(l.required=!0),l}},LE_HEAP_LOAD_F32=yt(t=>HEAP_DATA_VIEW.getFloat32(t,!0),"LE_HEAP_LOAD_F32"),LE_HEAP_LOAD_F64=yt(t=>HEAP_DATA_VIEW.getFloat64(t,!0),"LE_HEAP_LOAD_F64"),LE_HEAP_LOAD_I16=yt(t=>HEAP_DATA_VIEW.getInt16(t,!0),"LE_HEAP_LOAD_I16"),LE_HEAP_LOAD_I32=yt(t=>HEAP_DATA_VIEW.getInt32(t,!0),"LE_HEAP_LOAD_I32"),LE_HEAP_LOAD_U16=yt(t=>HEAP_DATA_VIEW.getUint16(t,!0),"LE_HEAP_LOAD_U16"),LE_HEAP_LOAD_U32=yt(t=>HEAP_DATA_VIEW.getUint32(t,!0),"LE_HEAP_LOAD_U32"),LE_HEAP_STORE_F32=yt((t,e)=>HEAP_DATA_VIEW.setFloat32(t,e,!0),"LE_HEAP_STORE_F32"),LE_HEAP_STORE_F64=yt((t,e)=>HEAP_DATA_VIEW.setFloat64(t,e,!0),"LE_HEAP_STORE_F64"),LE_HEAP_STORE_I16=yt((t,e)=>HEAP_DATA_VIEW.setInt16(t,e,!0),"LE_HEAP_STORE_I16"),LE_HEAP_STORE_I32=yt((t,e)=>HEAP_DATA_VIEW.setInt32(t,e,!0),"LE_HEAP_STORE_I32"),LE_HEAP_STORE_U16=yt((t,e)=>HEAP_DATA_VIEW.setUint16(t,e,!0),"LE_HEAP_STORE_U16"),LE_HEAP_STORE_U32=yt((t,e)=>HEAP_DATA_VIEW.setUint32(t,e,!0),"LE_HEAP_STORE_U32"),callRuntimeCallbacks=yt(t=>{for(;t.length>0;)t.shift()(Module)},"callRuntimeCallbacks"),onPostRuns=[],addOnPostRun=yt(t=>onPostRuns.unshift(t),"addOnPostRun"),onPreRuns=[],addOnPreRun=yt(t=>onPreRuns.unshift(t),"addOnPreRun"),UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder:void 0,UTF8ArrayToString=yt((t,e=0,l=NaN)=>{for(var n=e+l,r=e;t[r]&&!(r>=n);)++r;if(r-e>16&&t.buffer&&UTF8Decoder)return UTF8Decoder.decode(t.subarray(e,r));for(var a="";e<r;){var I=t[e++];if(!(I&128)){a+=String.fromCharCode(I);continue}var s=t[e++]&63;if((I&224)==192){a+=String.fromCharCode((I&31)<<6|s);continue}var o=t[e++]&63;if((I&240)==224?I=(I&15)<<12|s<<6|o:I=(I&7)<<18|s<<12|o<<6|t[e++]&63,I<65536)a+=String.fromCharCode(I);else{var c=I-65536;a+=String.fromCharCode(55296|c>>10,56320|c&1023)}}return a},"UTF8ArrayToString"),getDylinkMetadata=yt(t=>{var e=0,l=0;function n(){return t[e++]}yt(n,"getU8");function r(){for(var he=0,K=1;;){var U=t[e++];if(he+=(U&127)*K,K*=128,!(U&128))break}return he}yt(r,"getLEB");function a(){var he=r();return e+=he,UTF8ArrayToString(t,e-he,he)}yt(a,"getString");function I(he,K){if(he)throw new Error(K)}yt(I,"failIf");var s="dylink.0";if(t instanceof WebAssembly.Module){var o=WebAssembly.Module.customSections(t,s);o.length===0&&(s="dylink",o=WebAssembly.Module.customSections(t,s)),I(o.length===0,"need dylink section"),t=new Uint8Array(o[0]),l=t.length}else{var c=new Uint32Array(new Uint8Array(t.subarray(0,24)).buffer),d=c[0]==1836278016||c[0]==6386541;I(!d,"need to see wasm magic number"),I(t[8]!==0,"need the dylink section to be first"),e=9;var m=r();l=e+m,s=a()}var G={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(s=="dylink"){G.memorySize=r(),G.memoryAlign=r(),G.tableSize=r(),G.tableAlign=r();for(var p=r(),A=0;A<p;++A){var Z=a();G.neededDynlibs.push(Z)}}else{I(s!=="dylink.0");for(var W=1,R=2,V=3,f=4,X=256,x=3,O=1;e<l;){var T=n(),_=r();if(T===W)G.memorySize=r(),G.memoryAlign=r(),G.tableSize=r(),G.tableAlign=r();else if(T===R)for(var p=r(),A=0;A<p;++A)Z=a(),G.neededDynlibs.push(Z);else if(T===V)for(var B=r();B--;){var z=a(),se=r();se&X&&G.tlsExports.add(z)}else if(T===f)for(var B=r();B--;){var me=a(),z=a(),se=r();(se&x)==O&&G.weakImports.add(z)}else e+=_}}return G},"getDylinkMetadata");function getValue(t,e="i8"){switch(e.endsWith("*")&&(e="*"),e){case"i1":return HEAP8[t];case"i8":return HEAP8[t];case"i16":return LE_HEAP_LOAD_I16((t>>1)*2);case"i32":return LE_HEAP_LOAD_I32((t>>2)*4);case"i64":return HEAP64[t>>3];case"float":return LE_HEAP_LOAD_F32((t>>2)*4);case"double":return LE_HEAP_LOAD_F64((t>>3)*8);case"*":return LE_HEAP_LOAD_U32((t>>2)*4);default:abort(`invalid type for getValue: ${e}`)}}yt(getValue,"getValue");var newDSO=yt((t,e,l)=>{var n={refcount:1/0,name:t,exports:l,global:!0};return LDSO.loadedLibsByName[t]=n,e!=null&&(LDSO.loadedLibsByHandle[e]=n),n},"newDSO"),LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=78224,alignMemory=yt((t,e)=>Math.ceil(t/e)*e,"alignMemory"),getMemory=yt(t=>{if(runtimeInitialized)return _calloc(t,1);var e=___heap_base,l=e+alignMemory(t,16);return ___heap_base=l,GOT.__heap_base.value=l,e},"getMemory"),isInternalSym=yt(t=>["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm","__start_em_js","__stop_em_js"].includes(t)||t.startsWith("__em_js__"),"isInternalSym"),uleb128Encode=yt((t,e)=>{t<128?e.push(t):e.push(t%128|128,t>>7)},"uleb128Encode"),sigToWasmTypes=yt(t=>{for(var e={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"},l={parameters:[],results:t[0]=="v"?[]:[e[t[0]]]},n=1;n<t.length;++n)l.parameters.push(e[t[n]]);return l},"sigToWasmTypes"),generateFuncType=yt((t,e)=>{var l=t.slice(0,1),n=t.slice(1),r={i:127,p:127,j:126,f:125,d:124,e:111};e.push(96),uleb128Encode(n.length,e);for(var a=0;a<n.length;++a)e.push(r[n[a]]);l=="v"?e.push(0):e.push(1,r[l])},"generateFuncType"),convertJsFunctionToWasm=yt((t,e)=>{if(typeof WebAssembly.Function=="function")return new WebAssembly.Function(sigToWasmTypes(e),t);var l=[1];generateFuncType(e,l);var n=[0,97,115,109,1,0,0,0,1];uleb128Encode(l.length,n),n.push(...l),n.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);var r=new WebAssembly.Module(new Uint8Array(n)),a=new WebAssembly.Instance(r,{e:{f:t}}),I=a.exports.f;return I},"convertJsFunctionToWasm"),wasmTableMirror=[],wasmTable=new WebAssembly.Table({initial:31,element:"anyfunc"}),getWasmTableEntry=yt(t=>{var e=wasmTableMirror[t];return e||(t>=wasmTableMirror.length&&(wasmTableMirror.length=t+1),wasmTableMirror[t]=e=wasmTable.get(t)),e},"getWasmTableEntry"),updateTableMap=yt((t,e)=>{if(functionsInTableMap)for(var l=t;l<t+e;l++){var n=getWasmTableEntry(l);n&&functionsInTableMap.set(n,l)}},"updateTableMap"),functionsInTableMap,getFunctionAddress=yt(t=>(functionsInTableMap||(functionsInTableMap=new WeakMap,updateTableMap(0,wasmTable.length)),functionsInTableMap.get(t)||0),"getFunctionAddress"),freeTableIndexes=[],getEmptyTableSlot=yt(()=>{if(freeTableIndexes.length)return freeTableIndexes.pop();try{wasmTable.grow(1)}catch(t){throw t instanceof RangeError?"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.":t}return wasmTable.length-1},"getEmptyTableSlot"),setWasmTableEntry=yt((t,e)=>{wasmTable.set(t,e),wasmTableMirror[t]=wasmTable.get(t)},"setWasmTableEntry"),addFunction=yt((t,e)=>{var l=getFunctionAddress(t);if(l)return l;var n=getEmptyTableSlot();try{setWasmTableEntry(n,t)}catch(a){if(!(a instanceof TypeError))throw a;var r=convertJsFunctionToWasm(t,e);setWasmTableEntry(n,r)}return functionsInTableMap.set(t,n),n},"addFunction"),updateGOT=yt((t,e)=>{for(var l in t)if(!isInternalSym(l)){var n=t[l];GOT[l]||=new WebAssembly.Global({value:"i32",mutable:!0}),(e||GOT[l].value==0)&&(typeof n=="function"?GOT[l].value=addFunction(n):typeof n=="number"?GOT[l].value=n:err(`unhandled export type for '${l}': ${typeof n}`))}},"updateGOT"),relocateExports=yt((t,e,l)=>{var n={};for(var r in t){var a=t[r];typeof a=="object"&&(a=a.value),typeof a=="number"&&(a+=e),n[r]=a}return updateGOT(n,l),n},"relocateExports"),isSymbolDefined=yt(t=>{var e=wasmImports[t];return!(!e||e.stub)},"isSymbolDefined"),dynCall=yt((t,e,l=[])=>{var n=getWasmTableEntry(e)(...l);return n},"dynCall"),stackSave=yt(()=>_emscripten_stack_get_current(),"stackSave"),stackRestore=yt(t=>__emscripten_stack_restore(t),"stackRestore"),createInvokeFunction=yt(t=>(e,...l)=>{var n=stackSave();try{return dynCall(t,e,l)}catch(r){if(stackRestore(n),r!==r+0)throw r;if(_setThrew(1,0),t[0]=="j")return 0n}},"createInvokeFunction"),resolveGlobalSymbol=yt((t,e=!1)=>{var l;return isSymbolDefined(t)?l=wasmImports[t]:t.startsWith("invoke_")&&(l=wasmImports[t]=createInvokeFunction(t.split("_")[1])),{sym:l,name:t}},"resolveGlobalSymbol"),onPostCtors=[],addOnPostCtor=yt(t=>onPostCtors.unshift(t),"addOnPostCtor"),UTF8ToString=yt((t,e)=>t?UTF8ArrayToString(HEAPU8,t,e):"","UTF8ToString"),loadWebAssemblyModule=yt((binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);currentModuleWeakSymbols=metadata.weakImports;function loadModule(){var memAlign=Math.pow(2,metadata.memoryAlign),memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0;handle&&(HEAP8[handle+8]=1,LE_HEAP_STORE_U32((handle+12>>2)*4,memoryBase),LE_HEAP_STORE_I32((handle+16>>2)*4,metadata.memorySize),LE_HEAP_STORE_U32((handle+20>>2)*4,tableBase),LE_HEAP_STORE_I32((handle+24>>2)*4,metadata.tableSize)),metadata.tableSize&&wasmTable.grow(metadata.tableSize);var moduleExports;function resolveSymbol(t){var e=resolveGlobalSymbol(t).sym;return!e&&localScope&&(e=localScope[t]),e||(e=moduleExports[t]),e}yt(resolveSymbol,"resolveSymbol");var proxyHandler={get(t,e){switch(e){case"__memory_base":return memoryBase;case"__table_base":return tableBase}if(e in wasmImports&&!wasmImports[e].stub){var l=wasmImports[e];return l}if(!(e in t)){var n;t[e]=(...r)=>(n||=resolveSymbol(e),n(...r))}return t[e]}},proxy=new Proxy({},proxyHandler),info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols();function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&body.indexOf("$"+arity)!=-1;arity++)args.push("$"+arity);args=args.join(",");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if(yt(addEmAsm,"addEmAsm"),"__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;start<stop;){var jsString=UTF8ToString(start);addEmAsm(start,jsString),start=HEAPU8.indexOf(0,start)+1}function addEmJs(name,cSig,body){var jsArgs=[];if(cSig=cSig.slice(1,-1),cSig!="void"){cSig=cSig.split(",");for(var i in cSig){var jsArg=cSig[i].split(" ").pop();jsArgs.push(jsArg.replace("*",""))}}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}yt(addEmJs,"addEmJs");for(var name in moduleExports)if(name.startsWith("__em_js__")){var start=moduleExports[name],jsString=UTF8ToString(start),parts=jsString.split("<::>");addEmJs(name.replace("__em_js__",""),parts[0],parts[1]),delete moduleExports[name]}var applyRelocs=moduleExports.__wasm_apply_data_relocs;applyRelocs&&(runtimeInitialized?applyRelocs():__RELOC_FUNCS__.push(applyRelocs));var init=moduleExports.__wasm_call_ctors;return init&&(runtimeInitialized?init():addOnPostCtor(init)),moduleExports}if(yt(postInstantiation,"postInstantiation"),flags.loadAsync){if(binary instanceof WebAssembly.Module){var instance=new WebAssembly.Instance(binary,info);return Promise.resolve(postInstantiation(binary,instance))}return WebAssembly.instantiate(binary,info).then(t=>postInstantiation(t.module,t.instance))}var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary),instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}return yt(loadModule,"loadModule"),flags.loadAsync?metadata.neededDynlibs.reduce((t,e)=>t.then(()=>loadDynamicLibrary(e,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(t=>loadDynamicLibrary(t,flags,localScope)),loadModule())},"loadWebAssemblyModule"),mergeLibSymbols=yt((t,e)=>{for(var[l,n]of Object.entries(t)){let r=yt(I=>{isSymbolDefined(I)||(wasmImports[I]=n)},"setImport");r(l);let a="__main_argc_argv";l=="main"&&r(a),l==a&&r("main")}},"mergeLibSymbols"),asyncLoad=yt(async t=>{var e=await readAsync(t);return new Uint8Array(e)},"asyncLoad");function loadDynamicLibrary(t,e={global:!0,nodelete:!0},l,n){var r=LDSO.loadedLibsByName[t];if(r)return e.global?r.global||(r.global=!0,mergeLibSymbols(r.exports,t)):l&&Object.assign(l,r.exports),e.nodelete&&r.refcount!==1/0&&(r.refcount=1/0),r.refcount++,n&&(LDSO.loadedLibsByHandle[n]=r),e.loadAsync?Promise.resolve(!0):!0;r=newDSO(t,n,"loading"),r.refcount=e.nodelete?1/0:1,r.global=e.global;function a(){if(n){var o=LE_HEAP_LOAD_U32((n+28>>2)*4),c=LE_HEAP_LOAD_U32((n+32>>2)*4);if(o&&c){var d=HEAP8.slice(o,o+c);return e.loadAsync?Promise.resolve(d):d}}var m=locateFile(t);if(e.loadAsync)return asyncLoad(m);if(!readBinary)throw new Error(`${m}: file not found, and synchronous loading of external files is not available`);return readBinary(m)}yt(a,"loadLibData");function I(){return e.loadAsync?a().then(o=>loadWebAssemblyModule(o,e,t,l,n)):loadWebAssemblyModule(a(),e,t,l,n)}yt(I,"getExports");function s(o){r.global?mergeLibSymbols(o,t):l&&Object.assign(l,o),r.exports=o}return yt(s,"moduleLoaded"),e.loadAsync?I().then(o=>(s(o),!0)):(s(I()),!0)}yt(loadDynamicLibrary,"loadDynamicLibrary");var reportUndefinedSymbols=yt(()=>{for(var[t,e]of Object.entries(GOT))if(e.value==0){var l=resolveGlobalSymbol(t,!0).sym;if(!l&&!e.required)continue;if(typeof l=="function")e.value=addFunction(l,l.sig);else if(typeof l=="number")e.value=l;else throw new Error(`bad export type for '${t}': ${typeof l}`)}},"reportUndefinedSymbols"),loadDylibs=yt(()=>{if(!dynamicLibraries.length){reportUndefinedSymbols();return}addRunDependency("loadDylibs"),dynamicLibraries.reduce((t,e)=>t.then(()=>loadDynamicLibrary(e,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})),Promise.resolve()).then(()=>{reportUndefinedSymbols(),removeRunDependency("loadDylibs")})},"loadDylibs"),noExitRuntime=Module.noExitRuntime||!0;function setValue(t,e,l="i8"){switch(l.endsWith("*")&&(l="*"),l){case"i1":HEAP8[t]=e;break;case"i8":HEAP8[t]=e;break;case"i16":LE_HEAP_STORE_I16((t>>1)*2,e);break;case"i32":LE_HEAP_STORE_I32((t>>2)*4,e);break;case"i64":HEAP64[t>>3]=BigInt(e);break;case"float":LE_HEAP_STORE_F32((t>>2)*4,e);break;case"double":LE_HEAP_STORE_F64((t>>3)*8,e);break;case"*":LE_HEAP_STORE_U32((t>>2)*4,e);break;default:abort(`invalid type for setValue: ${l}`)}}yt(setValue,"setValue");var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},78224),___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=yt(()=>abort(""),"__abort_js");__abort_js.sig="v";var _emscripten_get_now=yt(()=>performance.now(),"_emscripten_get_now");_emscripten_get_now.sig="d";var _emscripten_date_now=yt(()=>Date.now(),"_emscripten_date_now");_emscripten_date_now.sig="d";var nowIsMonotonic=1,checkWasiClock=yt(t=>t>=0&&t<=3,"checkWasiClock"),INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=yt(t=>t<INT53_MIN||t>INT53_MAX?NaN:Number(t),"bigintToI53Checked");function _clock_time_get(t,e,l){if(e=bigintToI53Checked(e),!checkWasiClock(t))return 28;var n;if(t===0)n=_emscripten_date_now();else if(nowIsMonotonic)n=_emscripten_get_now();else return 52;var r=Math.round(n*1e3*1e3);return HEAP64[l>>3]=BigInt(r),0}yt(_clock_time_get,"_clock_time_get"),_clock_time_get.sig="iijp";var getHeapMax=yt(()=>2147483648,"getHeapMax"),growMemory=yt(t=>{var e=wasmMemory.buffer,l=(t-e.byteLength+65535)/65536|0;try{return wasmMemory.grow(l),updateMemoryViews(),1}catch{}},"growMemory"),_emscripten_resize_heap=yt(t=>{var e=HEAPU8.length;t>>>=0;var l=getHeapMax();if(t>l)return!1;for(var n=1;n<=4;n*=2){var r=e*(1+.2/n);r=Math.min(r,t+100663296);var a=Math.min(l,alignMemory(Math.max(t,r),65536)),I=growMemory(a);if(I)return!0}return!1},"_emscripten_resize_heap");_emscripten_resize_heap.sig="ip";var _fd_close=yt(t=>52,"_fd_close");_fd_close.sig="ii";function _fd_seek(t,e,l,n){return e=bigintToI53Checked(e),70}yt(_fd_seek,"_fd_seek"),_fd_seek.sig="iijip";var printCharBuffers=[null,[],[]],printChar=yt((t,e)=>{var l=printCharBuffers[t];e===0||e===10?((t===1?out:err)(UTF8ArrayToString(l)),l.length=0):l.push(e)},"printChar"),flush_NO_FILESYSTEM=yt(()=>{printCharBuffers[1].length&&printChar(1,10),printCharBuffers[2].length&&printChar(2,10)},"flush_NO_FILESYSTEM"),SYSCALLS={varargs:void 0,getStr(t){var e=UTF8ToString(t);return e}},_fd_write=yt((t,e,l,n)=>{for(var r=0,a=0;a<l;a++){var I=LE_HEAP_LOAD_U32((e>>2)*4),s=LE_HEAP_LOAD_U32((e+4>>2)*4);e+=8;for(var o=0;o<s;o++)printChar(t,HEAPU8[I+o]);r+=s}return LE_HEAP_STORE_U32((n>>2)*4,r),0},"_fd_write");_fd_write.sig="iippp";function _tree_sitter_log_callback(t,e){if(Module.currentLogCallback){let l=UTF8ToString(e);Module.currentLogCallback(l,t!==0)}}yt(_tree_sitter_log_callback,"_tree_sitter_log_callback");function _tree_sitter_parse_callback(t,e,l,n,r){let I=Module.currentParseCallback(e,{row:l,column:n});typeof I=="string"?(setValue(r,I.length,"i32"),stringToUTF16(I,t,10240)):setValue(r,0,"i32")}yt(_tree_sitter_parse_callback,"_tree_sitter_parse_callback");function _tree_sitter_progress_callback(t,e){return Module.currentProgressCallback?Module.currentProgressCallback({currentOffset:t,hasError:e}):!1}yt(_tree_sitter_progress_callback,"_tree_sitter_progress_callback");function _tree_sitter_query_progress_callback(t){return Module.currentQueryProgressCallback?Module.currentQueryProgressCallback({currentOffset:t}):!1}yt(_tree_sitter_query_progress_callback,"_tree_sitter_query_progress_callback");var runtimeKeepaliveCounter=0,keepRuntimeAlive=yt(()=>noExitRuntime||runtimeKeepaliveCounter>0,"keepRuntimeAlive"),_proc_exit=yt(t=>{EXITSTATUS=t,keepRuntimeAlive()||(Module.onExit?.(t),ABORT=!0),quit_(t,new ExitStatus(t))},"_proc_exit");_proc_exit.sig="vi";var exitJS=yt((t,e)=>{EXITSTATUS=t,_proc_exit(t)},"exitJS"),handleException=yt(t=>{if(t instanceof ExitStatus||t=="unwind")return EXITSTATUS;quit_(1,t)},"handleException"),lengthBytesUTF8=yt(t=>{for(var e=0,l=0;l<t.length;++l){var n=t.charCodeAt(l);n<=127?e++:n<=2047?e+=2:n>=55296&&n<=57343?(e+=4,++l):e+=3}return e},"lengthBytesUTF8"),stringToUTF8Array=yt((t,e,l,n)=>{if(!(n>0))return 0;for(var r=l,a=l+n-1,I=0;I<t.length;++I){var s=t.charCodeAt(I);if(s>=55296&&s<=57343){var o=t.charCodeAt(++I);s=65536+((s&1023)<<10)|o&1023}if(s<=127){if(l>=a)break;e[l++]=s}else if(s<=2047){if(l+1>=a)break;e[l++]=192|s>>6,e[l++]=128|s&63}else if(s<=65535){if(l+2>=a)break;e[l++]=224|s>>12,e[l++]=128|s>>6&63,e[l++]=128|s&63}else{if(l+3>=a)break;e[l++]=240|s>>18,e[l++]=128|s>>12&63,e[l++]=128|s>>6&63,e[l++]=128|s&63}}return e[l]=0,l-r},"stringToUTF8Array"),stringToUTF8=yt((t,e,l)=>stringToUTF8Array(t,HEAPU8,e,l),"stringToUTF8"),stackAlloc=yt(t=>__emscripten_stack_alloc(t),"stackAlloc"),stringToUTF8OnStack=yt(t=>{var e=lengthBytesUTF8(t)+1,l=stackAlloc(e);return stringToUTF8(t,l,e),l},"stringToUTF8OnStack"),AsciiToString=yt(t=>{for(var e="";;){var l=HEAPU8[t++];if(!l)return e;e+=String.fromCharCode(l)}},"AsciiToString"),stringToUTF16=yt((t,e,l)=>{if(l??=2147483647,l<2)return 0;l-=2;for(var n=e,r=l<t.length*2?l/2:t.length,a=0;a<r;++a){var I=t.charCodeAt(a);LE_HEAP_STORE_I16((e>>1)*2,I),e+=2}return LE_HEAP_STORE_I16((e>>1)*2,0),e-n},"stringToUTF16"),wasmImports={__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_pointer:___stack_pointer,__table_base:___table_base,_abort_js:__abort_js,clock_time_get:_clock_time_get,emscripten_resize_heap:_emscripten_resize_heap,fd_close:_fd_close,fd_seek:_fd_seek,fd_write:_fd_write,memory:wasmMemory,tree_sitter_log_callback:_tree_sitter_log_callback,tree_sitter_parse_callback:_tree_sitter_parse_callback,tree_sitter_progress_callback:_tree_sitter_progress_callback,tree_sitter_query_progress_callback:_tree_sitter_query_progress_callback},wasmExports=await createWasm(),___wasm_call_ctors=wasmExports.__wasm_call_ctors,_malloc=Module._malloc=wasmExports.malloc,_calloc=Module._calloc=wasmExports.calloc,_realloc=Module._realloc=wasmExports.realloc,_free=Module._free=wasmExports.free,_memcmp=Module._memcmp=wasmExports.memcmp,_ts_language_symbol_count=Module._ts_language_symbol_count=wasmExports.ts_language_symbol_count,_ts_language_state_count=Module._ts_language_state_count=wasmExports.ts_language_state_count,_ts_language_version=Module._ts_language_version=wasmExports.ts_language_version,_ts_language_abi_version=Module._ts_language_abi_version=wasmExports.ts_language_abi_version,_ts_language_metadata=Module._ts_language_metadata=wasmExports.ts_language_metadata,_ts_language_name=Module._ts_language_name=wasmExports.ts_language_name,_ts_language_field_count=Module._ts_language_field_count=wasmExports.ts_language_field_count,_ts_language_next_state=Module._ts_language_next_state=wasmExports.ts_language_next_state,_ts_language_symbol_name=Module._ts_language_symbol_name=wasmExports.ts_language_symbol_name,_ts_language_symbol_for_name=Module._ts_language_symbol_for_name=wasmExports.ts_language_symbol_for_name,_strncmp=Module._strncmp=wasmExports.strncmp,_ts_language_symbol_type=Module._ts_language_symbol_type=wasmExports.ts_language_symbol_type,_ts_language_field_name_for_id=Module._ts_language_field_name_for_id=wasmExports.ts_language_field_name_for_id,_ts_lookahead_iterator_new=Module._ts_lookahead_iterator_new=wasmExports.ts_lookahead_iterator_new,_ts_lookahead_iterator_delete=Module._ts_lookahead_iterator_delete=wasmExports.ts_lookahead_iterator_delete,_ts_lookahead_iterator_reset_state=Module._ts_lookahead_iterator_reset_state=wasmExports.ts_lookahead_iterator_reset_state,_ts_lookahead_iterator_reset=Module._ts_lookahead_iterator_reset=wasmExports.ts_lookahead_iterator_reset,_ts_lookahead_iterator_next=Module._ts_lookahead_iterator_next=wasmExports.ts_lookahead_iterator_next,_ts_lookahead_iterator_current_symbol=Module._ts_lookahead_iterator_current_symbol=wasmExports.ts_lookahead_iterator_current_symbol,_ts_parser_delete=Module._ts_parser_delete=wasmExports.ts_parser_delete,_ts_parser_reset=Module._ts_parser_reset=wasmExports.ts_parser_reset,_ts_parser_set_language=Module._ts_parser_set_language=wasmExports.ts_parser_set_language,_ts_parser_timeout_micros=Module._ts_parser_timeout_micros=wasmExports.ts_parser_timeout_micros,_ts_parser_set_timeout_micros=Module._ts_parser_set_timeout_micros=wasmExports.ts_parser_set_timeout_micros,_ts_parser_set_included_ranges=Module._ts_parser_set_included_ranges=wasmExports.ts_parser_set_included_ranges,_ts_query_new=Module._ts_query_new=wasmExports.ts_query_new,_ts_query_delete=Module._ts_query_delete=wasmExports.ts_query_delete,_iswspace=Module._iswspace=wasmExports.iswspace,_iswalnum=Module._iswalnum=wasmExports.iswalnum,_ts_query_pattern_count=Module._ts_query_pattern_count=wasmExports.ts_query_pattern_count,_ts_query_capture_count=Module._ts_query_capture_count=wasmExports.ts_query_capture_count,_ts_query_string_count=Module._ts_query_string_count=wasmExports.ts_query_string_count,_ts_query_capture_name_for_id=Module._ts_query_capture_name_for_id=wasmExports.ts_query_capture_name_for_id,_ts_query_capture_quantifier_for_id=Module._ts_query_capture_quantifier_for_id=wasmExports.ts_query_capture_quantifier_for_id,_ts_query_string_value_for_id=Module._ts_query_string_value_for_id=wasmExports.ts_query_string_value_for_id,_ts_query_predicates_for_pattern=Module._ts_query_predicates_for_pattern=wasmExports.ts_query_predicates_for_pattern,_ts_query_start_byte_for_pattern=Module._ts_query_start_byte_for_pattern=wasmExports.ts_query_start_byte_for_pattern,_ts_query_end_byte_for_pattern=Module._ts_query_end_byte_for_pattern=wasmExports.ts_query_end_byte_for_pattern,_ts_query_is_pattern_rooted=Module._ts_query_is_pattern_rooted=wasmExports.ts_query_is_pattern_rooted,_ts_query_is_pattern_non_local=Module._ts_query_is_pattern_non_local=wasmExports.ts_query_is_pattern_non_local,_ts_query_is_pattern_guaranteed_at_step=Module._ts_query_is_pattern_guaranteed_at_step=wasmExports.ts_query_is_pattern_guaranteed_at_step,_ts_query_disable_capture=Module._ts_query_disable_capture=wasmExports.ts_query_disable_capture,_ts_query_disable_pattern=Module._ts_query_disable_pattern=wasmExports.ts_query_disable_pattern,_ts_tree_copy=Module._ts_tree_copy=wasmExports.ts_tree_copy,_ts_tree_delete=Module._ts_tree_delete=wasmExports.ts_tree_delete,_ts_init=Module._ts_init=wasmExports.ts_init,_ts_parser_new_wasm=Module._ts_parser_new_wasm=wasmExports.ts_parser_new_wasm,_ts_parser_enable_logger_wasm=Module._ts_parser_enable_logger_wasm=wasmExports.ts_parser_enable_logger_wasm,_ts_parser_parse_wasm=Module._ts_parser_parse_wasm=wasmExports.ts_parser_parse_wasm,_ts_parser_included_ranges_wasm=Module._ts_parser_included_ranges_wasm=wasmExports.ts_parser_included_ranges_wasm,_ts_language_type_is_named_wasm=Module._ts_language_type_is_named_wasm=wasmExports.ts_language_type_is_named_wasm,_ts_language_type_is_visible_wasm=Module._ts_language_type_is_visible_wasm=wasmExports.ts_language_type_is_visible_wasm,_ts_language_supertypes_wasm=Module._ts_language_supertypes_wasm=wasmExports.ts_language_supertypes_wasm,_ts_language_subtypes_wasm=Module._ts_language_subtypes_wasm=wasmExports.ts_language_subtypes_wasm,_ts_tree_root_node_wasm=Module._ts_tree_root_node_wasm=wasmExports.ts_tree_root_node_wasm,_ts_tree_root_node_with_offset_wasm=Module._ts_tree_root_node_with_offset_wasm=wasmExports.ts_tree_root_node_with_offset_wasm,_ts_tree_edit_wasm=Module._ts_tree_edit_wasm=wasmExports.ts_tree_edit_wasm,_ts_tree_included_ranges_wasm=Module._ts_tree_included_ranges_wasm=wasmExports.ts_tree_included_ranges_wasm,_ts_tree_get_changed_ranges_wasm=Module._ts_tree_get_changed_ranges_wasm=wasmExports.ts_tree_get_changed_ranges_wasm,_ts_tree_cursor_new_wasm=Module._ts_tree_cursor_new_wasm=wasmExports.ts_tree_cursor_new_wasm,_ts_tree_cursor_copy_wasm=Module._ts_tree_cursor_copy_wasm=wasmExports.ts_tree_cursor_copy_wasm,_ts_tree_cursor_delete_wasm=Module._ts_tree_cursor_delete_wasm=wasmExports.ts_tree_cursor_delete_wasm,_ts_tree_cursor_reset_wasm=Module._ts_tree_cursor_reset_wasm=wasmExports.ts_tree_cursor_reset_wasm,_ts_tree_cursor_reset_to_wasm=Module._ts_tree_cursor_reset_to_wasm=wasmExports.ts_tree_cursor_reset_to_wasm,_ts_tree_cursor_goto_first_child_wasm=Module._ts_tree_cursor_goto_first_child_wasm=wasmExports.ts_tree_cursor_goto_first_child_wasm,_ts_tree_cursor_goto_last_child_wasm=Module._ts_tree_cursor_goto_last_child_wasm=wasmExports.ts_tree_cursor_goto_last_child_wasm,_ts_tree_cursor_goto_first_child_for_index_wasm=Module._ts_tree_cursor_goto_first_child_for_index_wasm=wasmExports.ts_tree_cursor_goto_first_child_for_index_wasm,_ts_tree_cursor_goto_first_child_for_position_wasm=Module._ts_tree_cursor_goto_first_child_for_position_wasm=wasmExports.ts_tree_cursor_goto_first_child_for_position_wasm,_ts_tree_cursor_goto_next_sibling_wasm=Module._ts_tree_cursor_goto_next_sibling_wasm=wasmExports.ts_tree_cursor_goto_next_sibling_wasm,_ts_tree_cursor_goto_previous_sibling_wasm=Module._ts_tree_cursor_goto_previous_sibling_wasm=wasmExports.ts_tree_cursor_goto_previous_sibling_wasm,_ts_tree_cursor_goto_descendant_wasm=Module._ts_tree_cursor_goto_descendant_wasm=wasmExports.ts_tree_cursor_goto_descendant_wasm,_ts_tree_cursor_goto_parent_wasm=Module._ts_tree_cursor_goto_parent_wasm=wasmExports.ts_tree_cursor_goto_parent_wasm,_ts_tree_cursor_current_node_type_id_wasm=Module._ts_tree_cursor_current_node_type_id_wasm=wasmExports.ts_tree_cursor_current_node_type_id_wasm,_ts_tree_cursor_current_node_state_id_wasm=Module._ts_tree_cursor_current_node_state_id_wasm=wasmExports.ts_tree_cursor_current_node_state_id_wasm,_ts_tree_cursor_current_node_is_named_wasm=Module._ts_tree_cursor_current_node_is_named_wasm=wasmExports.ts_tree_cursor_current_node_is_named_wasm,_ts_tree_cursor_current_node_is_missing_wasm=Module._ts_tree_cursor_current_node_is_missing_wasm=wasmExports.ts_tree_cursor_current_node_is_missing_wasm,_ts_tree_cursor_current_node_id_wasm=Module._ts_tree_cursor_current_node_id_wasm=wasmExports.ts_tree_cursor_current_node_id_wasm,_ts_tree_cursor_start_position_wasm=Module._ts_tree_cursor_start_position_wasm=wasmExports.ts_tree_cursor_start_position_wasm,_ts_tree_cursor_end_position_wasm=Module._ts_tree_cursor_end_position_wasm=wasmExports.ts_tree_cursor_end_position_wasm,_ts_tree_cursor_start_index_wasm=Module._ts_tree_cursor_start_index_wasm=wasmExports.ts_tree_cursor_start_index_wasm,_ts_tree_cursor_end_index_wasm=Module._ts_tree_cursor_end_index_wasm=wasmExports.ts_tree_cursor_end_index_wasm,_ts_tree_cursor_current_field_id_wasm=Module._ts_tree_cursor_current_field_id_wasm=wasmExports.ts_tree_cursor_current_field_id_wasm,_ts_tree_cursor_current_depth_wasm=Module._ts_tree_cursor_current_depth_wasm=wasmExports.ts_tree_cursor_current_depth_wasm,_ts_tree_cursor_current_descendant_index_wasm=Module._ts_tree_cursor_current_descendant_index_wasm=wasmExports.ts_tree_cursor_current_descendant_index_wasm,_ts_tree_cursor_current_node_wasm=Module._ts_tree_cursor_current_node_wasm=wasmExports.ts_tree_cursor_current_node_wasm,_ts_node_symbol_wasm=Module._ts_node_symbol_wasm=wasmExports.ts_node_symbol_wasm,_ts_node_field_name_for_child_wasm=Module._ts_node_field_name_for_child_wasm=wasmExports.ts_node_field_name_for_child_wasm,_ts_node_field_name_for_named_child_wasm=Module._ts_node_field_name_for_named_child_wasm=wasmExports.ts_node_field_name_for_named_child_wasm,_ts_node_children_by_field_id_wasm=Module._ts_node_children_by_field_id_wasm=wasmExports.ts_node_children_by_field_id_wasm,_ts_node_first_child_for_byte_wasm=Module._ts_node_first_child_for_byte_wasm=wasmExports.ts_node_first_child_for_byte_wasm,_ts_node_first_named_child_for_byte_wasm=Module._ts_node_first_named_child_for_byte_wasm=wasmExports.ts_node_first_named_child_for_byte_wasm,_ts_node_grammar_symbol_wasm=Module._ts_node_grammar_symbol_wasm=wasmExports.ts_node_grammar_symbol_wasm,_ts_node_child_count_wasm=Module._ts_node_child_count_wasm=wasmExports.ts_node_child_count_wasm,_ts_node_named_child_count_wasm=Module._ts_node_named_child_count_wasm=wasmExports.ts_node_named_child_count_wasm,_ts_node_child_wasm=Module._ts_node_child_wasm=wasmExports.ts_node_child_wasm,_ts_node_named_child_wasm=Module._ts_node_named_child_wasm=wasmExports.ts_node_named_child_wasm,_ts_node_child_by_field_id_wasm=Module._ts_node_child_by_field_id_wasm=wasmExports.ts_node_child_by_field_id_wasm,_ts_node_next_sibling_wasm=Module._ts_node_next_sibling_wasm=wasmExports.ts_node_next_sibling_wasm,_ts_node_prev_sibling_wasm=Module._ts_node_prev_sibling_wasm=wasmExports.ts_node_prev_sibling_wasm,_ts_node_next_named_sibling_wasm=Module._ts_node_next_named_sibling_wasm=wasmExports.ts_node_next_named_sibling_wasm,_ts_node_prev_named_sibling_wasm=Module._ts_node_prev_named_sibling_wasm=wasmExports.ts_node_prev_named_sibling_wasm,_ts_node_descendant_count_wasm=Module._ts_node_descendant_count_wasm=wasmExports.ts_node_descendant_count_wasm,_ts_node_parent_wasm=Module._ts_node_parent_wasm=wasmExports.ts_node_parent_wasm,_ts_node_child_with_descendant_wasm=Module._ts_node_child_with_descendant_wasm=wasmExports.ts_node_child_with_descendant_wasm,_ts_node_descendant_for_index_wasm=Module._ts_node_descendant_for_index_wasm=wasmExports.ts_node_descendant_for_index_wasm,_ts_node_named_descendant_for_index_wasm=Module._ts_node_named_descendant_for_index_wasm=wasmExports.ts_node_named_descendant_for_index_wasm,_ts_node_descendant_for_position_wasm=Module._ts_node_descendant_for_position_wasm=wasmExports.ts_node_descendant_for_position_wasm,_ts_node_named_descendant_for_position_wasm=Module._ts_node_named_descendant_for_position_wasm=wasmExports.ts_node_named_descendant_for_position_wasm,_ts_node_start_point_wasm=Module._ts_node_start_point_wasm=wasmExports.ts_node_start_point_wasm,_ts_node_end_point_wasm=Module._ts_node_end_point_wasm=wasmExports.ts_node_end_point_wasm,_ts_node_start_index_wasm=Module._ts_node_start_index_wasm=wasmExports.ts_node_start_index_wasm,_ts_node_end_index_wasm=Module._ts_node_end_index_wasm=wasmExports.ts_node_end_index_wasm,_ts_node_to_string_wasm=Module._ts_node_to_string_wasm=wasmExports.ts_node_to_string_wasm,_ts_node_children_wasm=Module._ts_node_children_wasm=wasmExports.ts_node_children_wasm,_ts_node_named_children_wasm=Module._ts_node_named_children_wasm=wasmExports.ts_node_named_children_wasm,_ts_node_descendants_of_type_wasm=Module._ts_node_descendants_of_type_wasm=wasmExports.ts_node_descendants_of_type_wasm,_ts_node_is_named_wasm=Module._ts_node_is_named_wasm=wasmExports.ts_node_is_named_wasm,_ts_node_has_changes_wasm=Module._ts_node_has_changes_wasm=wasmExports.ts_node_has_changes_wasm,_ts_node_has_error_wasm=Module._ts_node_has_error_wasm=wasmExports.ts_node_has_error_wasm,_ts_node_is_error_wasm=Module._ts_node_is_error_wasm=wasmExports.ts_node_is_error_wasm,_ts_node_is_missing_wasm=Module._ts_node_is_missing_wasm=wasmExports.ts_node_is_missing_wasm,_ts_node_is_extra_wasm=Module._ts_node_is_extra_wasm=wasmExports.ts_node_is_extra_wasm,_ts_node_parse_state_wasm=Module._ts_node_parse_state_wasm=wasmExports.ts_node_parse_state_wasm,_ts_node_next_parse_state_wasm=Module._ts_node_next_parse_state_wasm=wasmExports.ts_node_next_parse_state_wasm,_ts_query_matches_wasm=Module._ts_query_matches_wasm=wasmExports.ts_query_matches_wasm,_ts_query_captures_wasm=Module._ts_query_captures_wasm=wasmExports.ts_query_captures_wasm,_memset=Module._memset=wasmExports.memset,_memcpy=Module._memcpy=wasmExports.memcpy,_memmove=Module._memmove=wasmExports.memmove,_iswalpha=Module._iswalpha=wasmExports.iswalpha,_iswblank=Module._iswblank=wasmExports.iswblank,_iswdigit=Module._iswdigit=wasmExports.iswdigit,_iswlower=Module._iswlower=wasmExports.iswlower,_iswupper=Module._iswupper=wasmExports.iswupper,_iswxdigit=Module._iswxdigit=wasmExports.iswxdigit,_memchr=Module._memchr=wasmExports.memchr,_strlen=Module._strlen=wasmExports.strlen,_strcmp=Module._strcmp=wasmExports.strcmp,_strncat=Module._strncat=wasmExports.strncat,_strncpy=Module._strncpy=wasmExports.strncpy,_towlower=Module._towlower=wasmExports.towlower,_towupper=Module._towupper=wasmExports.towupper,_setThrew=wasmExports.setThrew,__emscripten_stack_restore=wasmExports._emscripten_stack_restore,__emscripten_stack_alloc=wasmExports._emscripten_stack_alloc,_emscripten_stack_get_current=wasmExports.emscripten_stack_get_current,___wasm_apply_data_relocs=wasmExports.__wasm_apply_data_relocs;Module.setValue=setValue,Module.getValue=getValue,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.AsciiToString=AsciiToString,Module.stringToUTF16=stringToUTF16,Module.loadWebAssemblyModule=loadWebAssemblyModule;function callMain(t=[]){var e=resolveGlobalSymbol("main").sym;if(e){t.unshift(thisProgram);var l=t.length,n=stackAlloc((l+1)*4),r=n;t.forEach(I=>{LE_HEAP_STORE_U32((r>>2)*4,stringToUTF8OnStack(I)),r+=4}),LE_HEAP_STORE_U32((r>>2)*4,0);try{var a=e(l,n);return exitJS(a,!0),a}catch(I){return handleException(I)}}}yt(callMain,"callMain");function run(t=arguments_){if(runDependencies>0){dependenciesFulfilled=run;return}if(preRun(),runDependencies>0){dependenciesFulfilled=run;return}function e(){if(Module.calledRun=!0,!ABORT){initRuntime(),readyPromiseResolve(Module),Module.onRuntimeInitialized?.();var l=Module.noInitialRun;l||callMain(t),postRun()}}yt(e,"doRun"),Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),e()},1)):e()}if(yt(run,"run"),Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();return run(),moduleRtn=readyPromise,moduleRtn}})(),yPn=WPn,dCe=null;async function tcl(t){return dCe||(dCe=await yPn(t)),dCe}yt(tcl,"initializeBinding");function lcl(){return!!dCe}yt(lcl,"checkModule");var lr,Ftt,Ctt,Ltt=class{static{yt(this,"Parser")}0=0;1=0;logCallback=null;language=null;static async init(t){Til(await tcl(t)),lr=we._ts_init(),Ftt=we.getValue(lr,"i32"),Ctt=we.getValue(lr+ur,"i32")}constructor(){this.initialize()}initialize(){if(!lcl())throw new Error("cannot construct a Parser before calling `init()`");we._ts_parser_new_wasm(),this[0]=we.getValue(lr,"i32"),this[1]=we.getValue(lr+ur,"i32")}delete(){we._ts_parser_delete(this[0]),we._free(this[1]),this[0]=0,this[1]=0}setLanguage(t){let e;if(!t)e=0,this.language=null;else if(t.constructor===ktt){e=t[0];let l=we._ts_language_version(e);if(l<Ctt||Ftt<l)throw new Error(`Incompatible language version ${l}. Compatibility range ${Ctt} through ${Ftt}.`);this.language=t}else throw new Error("Argument must be a Language");return we._ts_parser_set_language(this[0],e),this}parse(t,e,l){if(typeof t=="string")we.currentParseCallback=s=>t.slice(s);else if(typeof t=="function")we.currentParseCallback=t;else throw new Error("Argument must be a string or a function");l?.progressCallback?we.currentProgressCallback=l.progressCallback:we.currentProgressCallback=null,this.logCallback?(we.currentLogCallback=this.logCallback,we._ts_parser_enable_logger_wasm(this[0],1)):(we.currentLogCallback=null,we._ts_parser_enable_logger_wasm(this[0],0));let n=0,r=0;if(l?.includedRanges){n=l.includedRanges.length,r=we._calloc(n,Ebe);let s=r;for(let o=0;o<n;o++)Uil(s,l.includedRanges[o]),s+=Ebe}let a=we._ts_parser_parse_wasm(this[0],this[1],e?e[0]:0,r,n);if(!a)return we.currentParseCallback=null,we.currentLogCallback=null,we.currentProgressCallback=null,null;if(!this.language)throw new Error("Parser must have a language to parse");let I=new bPn(tJ,a,this.language,we.currentParseCallback);return we.currentParseCallback=null,we.currentLogCallback=null,we.currentProgressCallback=null,I}reset(){we._ts_parser_reset(this[0])}getIncludedRanges(){we._ts_parser_included_ranges_wasm(this[0]);let t=we.getValue(lr,"i32"),e=we.getValue(lr+ur,"i32"),l=new Array(t);if(t>0){let n=e;for(let r=0;r<t;r++)l[r]=uCe(n),n+=Ebe;we._free(e)}return l}getTimeoutMicros(){return we._ts_parser_timeout_micros(this[0])}setTimeoutMicros(t){we._ts_parser_set_timeout_micros(this[0],0,t)}setLogger(t){if(!t)this.logCallback=null;else{if(typeof t!="function")throw new Error("Logger callback must be a function");this.logCallback=t}return this}getLogger(){return this.logCallback}};var ncl=()=>!0;var Jtt=new Map,xtt=null;async function acl(t,e,l){t==="powershell"&&(e=e.replace(/&&/g,";"));let n=await EPn(t,e);if(!n)return{kind:"error",reason:"failed to parse script"};let r=new Set(["expansion","simple_expansion","command_substitution","process_substitution","arithmetic_expansion","variable_assignment","variable_assignments","if_statement","for_statement","c_style_for_statement","while_statement","case_statement","function_definition","subshell","compound_statement","binary_expression","unary_expression","ternary_expression","test_command","negated_command","declaration_command","unset_command","brace_expression","command_name_expr"]),a=new Set(["integer_literal","string_literal","real_literal"]),I=[n.rootNode],s=[],o=!1,c=!1;for(;I.length>0;){let d=I.pop();if(d.isNamed){if(d.type==="command"){let m=VPn(t,d,l);m!==null&&s.push({fullCommandText:d.text.trim(),commandIdentifier:m})}if(r.has(d.type)){let m=d.children.length===1?d.children[0]:null;d.type==="unary_expression"&&m&&a.has(m.type)||(c=!0)}d.type==="file_redirect"&&(o||=!FPn(d)),d.type==="redirection"&&(o||=!CPn(d));for(let m=d.children.length-1;m>=0;m--){let G=d.children[m];G&&I.push(G)}}}return{kind:"success",commands:s,hasWriteFileRedirection:o,hasPotentiallyConfusingConstructs:c}}async function EPn(t,e){xtt||(xtt=Ltt.init()),await xtt;let l=await RPn(t),n=new Ltt;return n.setLanguage(l),n.parse(e)}function RPn(t){let e=Jtt.get(t);if(e)return e;let l=YPn(t),n=ncl()?rcl.join(import.meta.dirname,l.file):rcl.join("node_modules",l.package,l.file),r=ktt.load(n).catch(a=>{throw Jtt.delete(t),a});return Jtt.set(t,r),r}function YPn(t){switch(t){case"bash":return{package:"tree-sitter-bash",file:"tree-sitter-bash.wasm"};case"powershell":return{package:"tree-sitter-powershell",file:"tree-sitter-powershell.wasm"};default:ci(t,`Unknown shell type: ${t}`)}}function VPn(t,e,l){switch(t){case"bash":return wPn(e,l);case"powershell":return QPn(e,l);default:ci(t,`Unknown shell type: ${t}`)}}function wPn(t,e){if(!t||t.type!=="command")throw new Error(`expected a command node, got ${t.type}`);let l=t.childForFieldName("name")??t.namedChildren.find(I=>I?.type==="command_name");if(!l)throw new Error("command node has no name or command_name child");let n=l.text,r=e?.find(I=>I.stem===n);if(!r)return n;let a=l.nextNamedSibling;for(;a&&a.type==="word";){if(!r?.flagsToIgnore?.includes(a.text))return`${n} ${a.text}`;a=a.nextNamedSibling}return n}function QPn(t,e){if(!t||t.type!=="command")throw new Error(`expected a command node, got ${t.type}`);let l=t.childForFieldName("name")??t.namedChildren.find(I=>I?.type==="command_name");if(!l){if(t.namedChildren.find(s=>s?.type==="foreach_command"))return"ForEach-Object";let I=t.namedChildren.find(s=>s?.type==="command_name_expr");if(I)return I.childCount===1&&I.firstChild?.type==="script_block_expression"?null:"<command with expression as name>";throw new Error("command node has no name, command_name, foreach_command, or command_name_expr child")}let n=l.text,r=e?.find(I=>I.stem===n);if(!r)return n;let a=l.nextNamedSibling;for(;a;){if(a.type==="command_argument_sep"){a=a.nextNamedSibling;continue}if(a.type==="command_elements"){a=a.namedChildren[0];continue}if(a.type!=="command_parameter"&&a.type!=="generic_token")break;if(!r?.flagsToIgnore?.includes(a.text))return`${n} ${a.text}`;a=a.nextNamedSibling}return n}function FPn(t){if(t.children.length===3&&["2>&1","1>&2"].includes(t.text))return!0;for(let e of t.children){if(!e||e.isNamed)continue;let l=e.text;return l==="<"||l==="<&"||l==="<&-"}return!1}function CPn(t){for(let e of t.children)if(e){if(e.type==="merging_redirection_operator")return!1;if(e.type==="file_redirection_operator")return e.text.trim().startsWith("<")}return!1}var vPn=[{stem:"git",flagsToIgnore:["--no-pager"]},{stem:"gh"},{stem:"glab"},{stem:"npm"},{stem:"npx"},{stem:"yarn"},{stem:"pnpm"},{stem:"cargo"},{stem:"go"},{stem:"composer"},{stem:"pip"},{stem:"pipenv"},{stem:"poetry"},{stem:"conda"},{stem:"mvn"},{stem:"gradle"},{stem:"gradlew"},{stem:"dotnet"},{stem:"bundle"},{stem:"swift"},{stem:"sbt"},{stem:"flutter"},{stem:"mix"},{stem:"cabal"},{stem:"stack"}];async function Icl(t,e){let l=xil(e),n=await acl(t,e,vPn);return n.kind==="error"?{result:"failed",reason:`Command could not be assured as safe: ${n.reason}`}:n.commands.length===0?{result:"completed",commands:[{identifier:e,readOnly:!1}],possiblePaths:l,hasWriteFileRedirection:n.hasWriteFileRedirection,canOfferSessionApproval:!1}:{result:"completed",commands:n.commands.map(I=>fPn(t,I.fullCommandText,I.commandIdentifier)).reduce((I,s)=>{let o=I.find(c=>c.identifier===s.identifier);return o?o.readOnly=o.readOnly&&s.readOnly:(o={identifier:s.identifier,readOnly:s.readOnly},I.push(o)),I},[]),possiblePaths:l,hasWriteFileRedirection:n.hasWriteFileRedirection,canOfferSessionApproval:!n.hasPotentiallyConfusingConstructs}}function fPn(t,e,l){switch(l){case"cat":case"cd":case"echo":case"false":case"head":case"hostname":case"ls":case"pwd":case"timeout":case"true":case"whoami":return{identifier:l,readOnly:!0}}if(l==="git"||l.startsWith("git "))return kPn(l);if(t==="bash")switch(l){case"cal":case"df":case"du":case"env":case"free":case"groups":case"id":case"nice":case"nl":case"printenv":case"ps":case"set":case"tail":case"time":case"top":case"type":case"uname":case"unset":case"uptime":case"wc":case"whatis":case"whereis":case"which":return{identifier:l,readOnly:!0};case"date":return HPn(e);case"find":return XPn(e)}if(t==="powershell")switch(l){case"Get-Command":case"Get-Content":case"Get-Process":case"Get-ChildItem":case"Get-Location":case"Select-String":case"Select-Object":case"Test-Path":return{identifier:l,readOnly:!0}}return{identifier:l,readOnly:!1}}function HPn(t){return t.match(/\s-s/)||t.match(/\s--set\b/)?{identifier:"date",readOnly:!1}:{identifier:"date",readOnly:!0}}function XPn(t){let e=["-exec","-execdir","-ok","-okdir","-delete","-fls","-fprint","-fprint0","-fprintf"];for(let l of e)if(t.includes(l))return{identifier:"find",readOnly:!1};return{identifier:"find",readOnly:!0}}function kPn(t){return t==="git"?{identifier:t,readOnly:!0}:["git blame","git branch","git describe","git diff","git grep","git log","git ls-files","git ls-remote","git remote","git rev-parse","git shortlog","git show","git status","git tag"].includes(t)?{identifier:t,readOnly:!0}:{identifier:t,readOnly:!1}}var mCe=class t{agentKind;client;settings;logger;toolConfig;availableTools=[];callback=new Sne;executeToolsInParallel=!0;customAgentEventSubscribers=new Set;constructor(){}static async createFromOptions(e){let l=new t;return await l.initializeFromOptions(e),l}async initializeFromOptions(e){this.logger=e.logger,this.executeToolsInParallel=e.executeToolsInParallel??!0;let l=new _X;l.setProblemStatement(e.problemStatement).setInstanceId(WE(e.serviceInstanceId)).setAgentModel(WE(e.serviceAgentModel)).setCallbackUrl(WE(e.serviceCallbackUrl)).setAipSweAgentToken(WE(e.apiAipSweAgentToken)).setAnthropicApiKey(WE(e.apiAnthropicKey)).setCopilotUrl(WE(e.apiCopilotUrl)).setCopilotIntegrationId(WE(e.apiCopilotIntegrationId)).setCopilotHmacKey(WE(e.apiCopilotHmacKey)).setCopilotToken(WE(e.apiCopilotToken)).setTrajectoryOutputFile(WE(e.saveTrajectoryOutput)).setEventsLogDirectory(WE(e.saveEventLogs)).setDisableOnlineEvaluation(e.disableOnlineEvaluation).setGithubRepoName("temp-repo").setGithubRepoCommit("temp-commit").setGithubRepoReadWrite(!1);let n=l.build();dD()?(Rx(),this.settings=await ume(n)):this.settings=await ume(n),this.callback.addSettings(this.settings);let r=new Sne,a,I={progress:async W=>{if(W.kind==="message"&&W.turn===0){if(!W.callId)throw new Error("message on turn 0 event missing callId");a=W.callId}if(iCe(W)){if(!a)throw new Error("Custom agent event received without parentToolCallId");switch(W.kind){case"message":case"model_call_failure":case"model_call_success":case"tool_execution":this.customAgentEventSubscribers.forEach(R=>R({...W,parentToolCallId:a}));break;case"image_processing":case"images_removed":break;case"response":break;case"history_truncated":break;case"turn_started":case"turn_ended":case"turn_failed":case"turn_retry":break;default:ci(W,`Unknown event kind: ${JSON.stringify(W)}`)}}},partialResult:()=>Promise.resolve(),commentReply:()=>Promise.resolve(),result:()=>Promise.resolve(),error:()=>Promise.resolve()};if(r.addSettings(this.settings),r.addCallback(I),this.settings.trajectory?.outputFile){let W=new cCe(this.logger,this.settings.trajectory.outputFile);this.callback.addCallback(W),r.addCallback(W)}if(this.settings.logs?.eventsLogDir){let W=new ICe(this.logger,this.settings.logs.eventsLogDir);this.callback.addCallback(W),r.addCallback(W)}let s=this.settings.service?.agent?.model,o=fB(s),c=o.agent;this.agentKind=c;let d=o.model?{model:o.model}:void 0;this.client=Mde(this.settings,this.logger,c,d);let m=!1,G=async W=>{if(m)return{kind:"denied-interactively-by-user",reason:"A previous tool call was rejected"};let R=await e.requestPermission(W);return R.kind==="denied-interactively-by-user"&&(m=!0),R};this.toolConfig={location:".",timeout:3e4,permissions:{requestRequired:!0,request:G},requireReasoning:!1,splitEditingTools:!0,toolPartialResultCallback:e.onToolPartialOutput,shellConfig:(process.platform==="win32"?Gp.powerShell:Gp.bash).withScriptSafetyAssessor(Icl)};let p=await P1e(this.toolConfig,this.logger),A=[];if(e.mcpHost)try{A=await e.mcpHost.getTools(this.settings,this.logger,this.toolConfig.permissions)}catch(W){this.logger.error(`Failed to get MCP tools: ${W}`)}let Z=[];if(!e.customAgents.isCustomAgentSelected&&e.customAgents.available.length>0){let W={client:this.client,settings:this.settings,logger:this.logger,exec:new vA(e.logger),callback:r,customAgents:e.customAgents.available},V=(O8()[this.getAgentKind()]?.[this.getModel()]??T8()).supports??{};V.customAgents=!1;let f=this.getToolConfig()??{},X=process.cwd(),x=async O=>await V6({location:e.gitRoot??"",version:uL(),currentWorkingDirectory:X,parts:{},capabilities:V,toolConfigOverrides:f,tools:O,organizationCustomInstructions:void 0,skipCustomInstructions:e.noCustomInstructions});for(let O of e.customAgents.available)Z.push(JOt(x,YXt,O,X,W,[...p,...A]));this.logger.info(`Loaded ${Z.length} custom agent(s): ${Z.map(O=>O.name).join(", ")}`)}this.availableTools=[...p,...A,...Z]}async*getCompletionWithTools(e,l,n){if(!this.client)throw new Error("CLI not properly initialized");let r={...n,executeToolsInParallel:this.executeToolsInParallel},a=this.client.getCompletionWithTools(e,l,this.availableTools,r),I=Xil();try{this.customAgentEventSubscribers.add(I.next);let s=kil([a,I.iterator()],"any");for await(let o of s)await this.handleEvent(o),yield o}finally{this.customAgentEventSubscribers.delete(I.next)}}getToolIntentionSummary(e,l){return this.availableTools.find(r=>r.name===e)?.summariseIntention?.(l)||null}getToolTitle(e){return this.availableTools.find(n=>n.name===e)?.title||null}getAvailableTools(){return this.availableTools}getModel(){return this.client?.model||"unknown"}getAgentKind(){return this.agentKind||"sweagent-capi"}getToolConfig(){return this.toolConfig}async shutdown(){for(let e of this.availableTools)e.shutdown&&await e.shutdown()}async handleEvent(e){if(this.callback)try{await this.callback.progress(e)}catch(l){this.logger?.error(`Error in callback: ${l}`)}}};var Rbe={CUSTOM_AGENTS:!1,CCA_DELEGATE:!1,COPILOT_KITTY:!0},LPn=["CUSTOM_AGENTS","CCA_DELEGATE"],scl=t=>t in Rbe;function ocl(t){let e={...t},l=process.env.COPILOT_CLI_ENABLED_FEATURE_FLAGS;if(l){let n=l.split(",").map(r=>r.trim().toUpperCase());for(let r of n)scl(r)&&(e[r]=!0)}for(let n of Object.keys(t)){let r=n,a=process.env[r];a&&(a.toLowerCase()==="true"?e[r]=!0:a.toLowerCase()==="false"&&(e[r]=!1))}return e}function icl(t,e){let l={...e};if(t.staff)for(let n of LPn)l[n]=!0;if(t.feature_flags?.enabled)for(let n of t.feature_flags.enabled){let r=n.toUpperCase();scl(r)&&(l[r]=!0)}return l}import{realpathSync as bCe}from"fs";import JPn from"path";var Ybe=class{static async isFolderTrusted(e){try{let n=(await xr.load())?.trusted_folders||[],r=bCe(e);return n.some(a=>{try{let I=bCe(a);return r===I||r.startsWith(I+JPn.sep)}catch{return!1}})}catch{return!1}}static async addTrustedFolder(e){try{let l=await xr.load()||{},n=l.trusted_folders||[],r=bCe(e);n.some(I=>{try{return bCe(I)===r}catch{return!1}})||(n.push(r),l.trusted_folders=n,await xr.write(l))}catch(l){throw new Error(`Failed to add trusted folder: ${l instanceof Error?l.message:String(l)}`)}}};import{Transform as xPn}from"node:stream";var SPn=Buffer.from([10]),BPn=()=>{let t,e,l,n=!1;function r(){t=Buffer.alloc(1024),l=e=0,n=!1}return r(),new xPn({decodeStrings:!0,transform(a,I,s){let o=0,c,d,m;for(;o<a.length;){d=a.indexOf(13,o),d===-1&&!n?(m=a.subarray(o).lastIndexOf(10),m=m===-1?-1:m+o):(m=a.indexOf(10,o),n=!0),c=Math.min(d===-1?a.length-1:d,m===-1?a.length-1:m),c=c===-1?a.length-1:c;let G,p=o,A=[13,10].includes(a[c])?c:c+1;for(;(G=A-p)>0;)if(l+G>t.length){l>0&&this.push(t.subarray(0,l));let Z=t.length-l;this.push(a.subarray(p,p+Z)),p+=Z,r()}else{a.copy(t,l,p,A),l+=G,e=Math.max(l,e);break}a[c]===10?(this.push(Buffer.concat([t.subarray(0,e),SPn])),r()):a[c]===13&&(l=0),o=c+1}s()},flush(a){a(null,e>0?t.subarray(0,e):null)}})},ccl=t=>{let e=BPn(),l=[];return e.on("data",n=>l.push(n)),e.write(t),e.end(),Buffer.concat(l).toString("utf-8").replaceAll("\r","")};var GCe=class{constructor(e,l,n){this.session=e;this.onStreamingResponseSizeChanged=l;this.promptMode=n}streamingMessageText="";streamingMessageId=null;totalResponseSizeBytes=0;onStreamingChunk(e){let n=e.chunk.choices[0]?.delta?.content||"";if(this.promptMode){process.stdout.write(n);return}this.streamingMessageText+=n;let r=TPn(e);r&&(this.totalResponseSizeBytes+=r,this.onStreamingResponseSizeChanged(this.totalResponseSizeBytes)),n&&(this.streamingMessageId||(this.streamingMessageId=mu()),this.session.emitEphemeral("assistant.message",{messageId:this.streamingMessageId,content:this.streamingMessageText}))}endCurrentStreamingMessage(){this.streamingMessageText="";let e=this.streamingMessageId;return e?(this.streamingMessageId=null,e):null}toJSON(){return"StreamingChunkDisplay"}};function TPn(t){let e=[];t.chunk.choices.forEach(n=>{e.push(n.delta.content),n.delta.tool_calls?.forEach(r=>{r.function&&(e.push(r.function.name),e.push(r.function.arguments))})});let l=e.join("");return l?new TextEncoder().encode(l).length:0}var pCe=class{constructor(e){this.onIntentDetected=e}accumulatorsByCallIndex=new Map;onStreamingChunk(e){let l=e.chunk.choices?.[0]?.delta?.tool_calls;if(l)for(let n of l){let r=n.index??0;this.accumulatorsByCallIndex.has(r)||this.accumulatorsByCallIndex.set(r,{name:null,args:""});let a=this.accumulatorsByCallIndex.get(r);if(n.function?.name&&(a.name=n.function.name),n.function?.arguments&&(a.args+=n.function.arguments,a.name===NE.name&&a.args.endsWith("}")))try{let I=JSON.parse(a.args);I.intent&&(this.onIntentDetected(I.intent),this.accumulatorsByCallIndex.delete(r))}catch{}}}toJSON(){return"ReportIntentExtractor"}};function dcl(t){let l=t.findLastIndex(OPn)+1,n=t.slice(l).findIndex(UPn);if(n===-1)return{staticEntries:t,dynamicEntries:[]};let r=l+n;return{staticEntries:t.slice(0,r),dynamicEntries:t.slice(r)}}function OPn(t){return t.type==="copilot"&&!t.isStreaming}function UPn(t){return t.type==="tool_call_requested"||t.type==="group_tool_call_requested"||t.type==="copilot"&&t.isStreaming===!0}import qO from"node:process";import{spawn as aKn}from"node:child_process";import{fileURLToPath as IKn}from"node:url";import uml from"node:path";import{format as Blt}from"node:util";var Fbe=$e(Wcl(),1);import Qbe from"node:path";import ijn from"node:os";import tjn from"os";import NCe from"path";var nJ=tjn.homedir(),{env:BO}=process,ycl=BO.XDG_DATA_HOME||(nJ?NCe.join(nJ,".local","share"):void 0),V7=BO.XDG_CONFIG_HOME||(nJ?NCe.join(nJ,".config"):void 0),lGI=BO.XDG_STATE_HOME||(nJ?NCe.join(nJ,".local","state"):void 0),nGI=BO.XDG_CACHE_HOME||(nJ?NCe.join(nJ,".cache"):void 0),rGI=BO.XDG_RUNTIME_DIR||void 0,ljn=(BO.XDG_DATA_DIRS||"/usr/local/share/:/usr/share/").split(":");ycl&&ljn.unshift(ycl);var njn=(BO.XDG_CONFIG_DIRS||"/etc/xdg").split(":");V7&&njn.unshift(V7);import sjn from"node:path";import oo from"node:fs";import{promisify as Ph}from"node:util";var zf=(t,e)=>function(...n){return t.apply(void 0,n).catch(e)},sQ=(t,e)=>function(...n){try{return t.apply(void 0,n)}catch(r){return e(r)}};import Ecl from"node:process";var Rcl=Ecl.getuid?!Ecl.getuid():!1,Ycl=1e4,AN=()=>{};var Vbe={isChangeErrorOk:t=>{if(!Vbe.isNodeError(t))return!1;let{code:e}=t;return e==="ENOSYS"||!Rcl&&(e==="EINVAL"||e==="EPERM")},isNodeError:t=>t instanceof Error,isRetriableError:t=>{if(!Vbe.isNodeError(t))return!1;let{code:e}=t;return e==="EMFILE"||e==="ENFILE"||e==="EAGAIN"||e==="EBUSY"||e==="EACCESS"||e==="EACCES"||e==="EACCS"||e==="EPERM"},onChangeError:t=>{if(!Vbe.isNodeError(t))throw t;if(!Vbe.isChangeErrorOk(t))throw t}},mm=Vbe;var Utt=class{constructor(){this.interval=25,this.intervalId=void 0,this.limit=Ycl,this.queueActive=new Set,this.queueWaiting=new Set,this.init=()=>{this.intervalId||(this.intervalId=setInterval(this.tick,this.interval))},this.reset=()=>{this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId)},this.add=e=>{this.queueWaiting.add(e),this.queueActive.size<this.limit/2?this.tick():this.init()},this.remove=e=>{this.queueWaiting.delete(e),this.queueActive.delete(e)},this.schedule=()=>new Promise(e=>{let l=()=>this.remove(n),n=()=>e(l);this.add(n)}),this.tick=()=>{if(!(this.queueActive.size>=this.limit)){if(!this.queueWaiting.size)return this.reset();for(let e of this.queueWaiting){if(this.queueActive.size>=this.limit)break;this.queueWaiting.delete(e),this.queueActive.add(e),e()}}}}},Vcl=new Utt;var Pf=(t,e)=>function(n){return function r(...a){return Vcl.schedule().then(I=>{let s=c=>(I(),c),o=c=>{if(I(),Date.now()>=n)throw c;if(e(c)){let d=Math.round(100*Math.random());return new Promise(G=>setTimeout(G,d)).then(()=>r.apply(void 0,a))}throw c};return t.apply(void 0,a).then(s,o)})}},jf=(t,e)=>function(n){return function r(...a){try{return t.apply(void 0,a)}catch(I){if(Date.now()>n)throw I;if(e(I))return r.apply(void 0,a);throw I}}};var rjn={attempt:{chmod:zf(Ph(oo.chmod),mm.onChangeError),chown:zf(Ph(oo.chown),mm.onChangeError),close:zf(Ph(oo.close),AN),fsync:zf(Ph(oo.fsync),AN),mkdir:zf(Ph(oo.mkdir),AN),realpath:zf(Ph(oo.realpath),AN),stat:zf(Ph(oo.stat),AN),unlink:zf(Ph(oo.unlink),AN),chmodSync:sQ(oo.chmodSync,mm.onChangeError),chownSync:sQ(oo.chownSync,mm.onChangeError),closeSync:sQ(oo.closeSync,AN),existsSync:sQ(oo.existsSync,AN),fsyncSync:sQ(oo.fsync,AN),mkdirSync:sQ(oo.mkdirSync,AN),realpathSync:sQ(oo.realpathSync,AN),statSync:sQ(oo.statSync,AN),unlinkSync:sQ(oo.unlinkSync,AN)},retry:{close:Pf(Ph(oo.close),mm.isRetriableError),fsync:Pf(Ph(oo.fsync),mm.isRetriableError),open:Pf(Ph(oo.open),mm.isRetriableError),readFile:Pf(Ph(oo.readFile),mm.isRetriableError),rename:Pf(Ph(oo.rename),mm.isRetriableError),stat:Pf(Ph(oo.stat),mm.isRetriableError),write:Pf(Ph(oo.write),mm.isRetriableError),writeFile:Pf(Ph(oo.writeFile),mm.isRetriableError),closeSync:jf(oo.closeSync,mm.isRetriableError),fsyncSync:jf(oo.fsyncSync,mm.isRetriableError),openSync:jf(oo.openSync,mm.isRetriableError),readFileSync:jf(oo.readFileSync,mm.isRetriableError),renameSync:jf(oo.renameSync,mm.isRetriableError),statSync:jf(oo.statSync,mm.isRetriableError),writeSync:jf(oo.writeSync,mm.isRetriableError),writeFileSync:jf(oo.writeFileSync,mm.isRetriableError)}},OG=rjn;import wcl from"node:os";import Mtt from"node:process";var Qcl="utf8",_tt=438,Fcl=511;var Ccl={},vcl=wcl.userInfo().uid,fcl=wcl.userInfo().gid;var Hcl=1e3,Xcl=!!Mtt.getuid,EGI=Mtt.getuid?!Mtt.getuid():!1,Dtt=128;var kcl=t=>t instanceof Error&&"code"in t;var ztt=t=>typeof t=="string",WCe=t=>t===void 0;import Ijn from"node:path";import w7 from"node:process";import Lcl from"node:process";var Jcl=Lcl.platform==="linux",yCe=Lcl.platform==="win32";var Ptt=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];yCe||Ptt.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");Jcl&&Ptt.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED");var xcl=Ptt;var jtt=class{constructor(){this.callbacks=new Set,this.exited=!1,this.exit=e=>{if(!this.exited){this.exited=!0;for(let l of this.callbacks)l();e&&(yCe&&e!=="SIGINT"&&e!=="SIGTERM"&&e!=="SIGKILL"?w7.kill(w7.pid,"SIGTERM"):w7.kill(w7.pid,e))}},this.hook=()=>{w7.once("exit",()=>this.exit());for(let e of xcl)try{w7.once(e,()=>this.exit(e))}catch{}},this.register=e=>(this.callbacks.add(e),()=>{this.callbacks.delete(e)}),this.hook()}},Scl=new jtt;var ajn=Scl.register,Bcl=ajn;var ay={store:{},create:t=>{let e=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6),r=`.tmp-${Date.now().toString().slice(-10)}${e}`;return`${t}${r}`},get:(t,e,l=!0)=>{let n=ay.truncate(e(t));return n in ay.store?ay.get(t,e,l):(ay.store[n]=l,[n,()=>delete ay.store[n]])},purge:t=>{ay.store[t]&&(delete ay.store[t],OG.attempt.unlink(t))},purgeSync:t=>{ay.store[t]&&(delete ay.store[t],OG.attempt.unlinkSync(t))},purgeSyncAll:()=>{for(let t in ay.store)ay.purgeSync(t)},truncate:t=>{let e=Ijn.basename(t);if(e.length<=Dtt)return t;let l=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(e);if(!l)return t;let n=e.length-Dtt;return`${t.slice(0,-e.length)}${l[1]}${l[2].slice(0,-n)}${l[3]}`}};Bcl(ay.purgeSyncAll);var wbe=ay;function ECe(t,e,l=Ccl){if(ztt(l))return ECe(t,e,{encoding:l});let n=Date.now()+((l.timeout??Hcl)||-1),r=null,a=null,I=null;try{let s=OG.attempt.realpathSync(t),o=!!s;t=s||t,[a,r]=wbe.get(t,l.tmpCreate||wbe.create,l.tmpPurge!==!1);let c=Xcl&&WCe(l.chown),d=WCe(l.mode);if(o&&(c||d)){let m=OG.attempt.statSync(t);m&&(l={...l},c&&(l.chown={uid:m.uid,gid:m.gid}),d&&(l.mode=m.mode))}if(!o){let m=sjn.dirname(t);OG.attempt.mkdirSync(m,{mode:Fcl,recursive:!0})}I=OG.retry.openSync(n)(a,"w",l.mode||_tt),l.tmpCreated&&l.tmpCreated(a),ztt(e)?OG.retry.writeSync(n)(I,e,0,l.encoding||Qcl):WCe(e)||OG.retry.writeSync(n)(I,e,0,e.length,0),l.fsync!==!1&&(l.fsyncWait!==!1?OG.retry.fsyncSync(n)(I):OG.attempt.fsync(I)),OG.retry.closeSync(n)(I),I=null,l.chown&&(l.chown.uid!==vcl||l.chown.gid!==fcl)&&OG.attempt.chownSync(a,l.chown.uid,l.chown.gid),l.mode&&l.mode!==_tt&&OG.attempt.chmodSync(a,l.mode);try{OG.retry.renameSync(n)(a,t)}catch(m){if(!kcl(m)||m.code!=="ENAMETOOLONG")throw m;OG.retry.renameSync(n)(a,wbe.truncate(t))}r(),a=null}finally{I&&OG.attempt.closeSync(I),a&&wbe.purge(a)}}var TO=t=>{let e=typeof t;return t!==null&&(e==="object"||e==="function")};var Ktt=new Set(["__proto__","prototype","constructor"]),ojn=new Set("0123456789");function RCe(t){let e=[],l="",n="start",r=!1;for(let a of t)switch(a){case"\\":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd")throw new Error("Invalid character after an index");r&&(l+=a),n="property",r=!r;break}case".":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd"){n="property";break}if(r){r=!1,l+=a;break}if(Ktt.has(l))return[];e.push(l),l="",n="property";break}case"[":{if(n==="index")throw new Error("Invalid character in an index");if(n==="indexEnd"){n="index";break}if(r){r=!1,l+=a;break}if(n==="property"){if(Ktt.has(l))return[];e.push(l),l=""}n="index";break}case"]":{if(n==="index"){e.push(Number.parseInt(l,10)),l="",n="indexEnd";break}if(n==="indexEnd")throw new Error("Invalid character after an index")}default:{if(n==="index"&&!ojn.has(a))throw new Error("Invalid character in an index");if(n==="indexEnd")throw new Error("Invalid character after an index");n==="start"&&(n="property"),r&&(r=!1,l+="\\"),l+=a}}switch(r&&(l+="\\"),n){case"property":{if(Ktt.has(l))return[];e.push(l);break}case"index":throw new Error("Index was not closed");case"start":{e.push("");break}}return e}function qtt(t,e){if(typeof e!="number"&&Array.isArray(t)){let l=Number.parseInt(e,10);return Number.isInteger(l)&&t[l]===t[e]}return!1}function Tcl(t,e){if(qtt(t,e))throw new Error("Cannot use string index")}function Ocl(t,e,l){if(!TO(t)||typeof e!="string")return l===void 0?t:l;let n=RCe(e);if(n.length===0)return l;for(let r=0;r<n.length;r++){let a=n[r];if(qtt(t,a)?t=r===n.length-1?void 0:null:t=t[a],t==null){if(r!==n.length-1)return l;break}}return t===void 0?l:t}function $tt(t,e,l){if(!TO(t)||typeof e!="string")return t;let n=t,r=RCe(e);for(let a=0;a<r.length;a++){let I=r[a];Tcl(t,I),a===r.length-1?t[I]=l:TO(t[I])||(t[I]=typeof r[a+1]=="number"?[]:{}),t=t[I]}return n}function Ucl(t,e){if(!TO(t)||typeof e!="string")return!1;let l=RCe(e);for(let n=0;n<l.length;n++){let r=l[n];if(Tcl(t,r),n===l.length-1)return delete t[r],!0;if(t=t[r],!TO(t))return!1}}function Mcl(t,e){if(!TO(t)||typeof e!="string")return!1;let l=RCe(e);if(l.length===0)return!1;for(let n of l){if(!TO(t)||!(n in t)||qtt(t,n))return!1;t=t[n]}return!0}function cjn(t,e){let l=e?Qbe.join(t,"config.json"):Qbe.join("configstore",`${t}.json`),n=V7??Fbe.default.mkdtempSync(Fbe.default.realpathSync(ijn.tmpdir())+Qbe.sep);return Qbe.join(n,l)}var _cl="You don't have access to this file.",djn={mode:448,recursive:!0},Dcl={mode:384},Cbe=class{constructor(e,l,n={}){this._path=n.configPath??cjn(e,n.globalConfigPath),l&&(this.all={...l,...this.all})}get all(){try{return JSON.parse(Fbe.default.readFileSync(this._path,"utf8"))}catch(e){if(e.code==="ENOENT")return{};if(e.code==="EACCES"&&(e.message=`${e.message}
2455
2455
  ${_cl}
2456
2456
  `),e.name==="SyntaxError")return ECe(this._path,"",Dcl),{};throw e}}set all(e){try{Fbe.default.mkdirSync(Qbe.dirname(this._path),djn),ECe(this._path,JSON.stringify(e,void 0," "),Dcl)}catch(l){throw l.code==="EACCES"&&(l.message=`${l.message}
2457
2457
  ${_cl}
@@ -2476,7 +2476,7 @@ Run `+xl.cyan("{updateCommand}")+" to update",a=e.message||r;e.boxenOptions??={p
2476
2476
  Length provided: ${this.length}. Number of dictionaries provided: ${this.dictionaries.length}`);let e=this.seed;return this.dictionaries.slice(0,this.length).reduce((l,n)=>{let r;e?(r=(I=>{if(typeof I=="string"){let s=I.split("").map(c=>c.charCodeAt(0)).reduce((c,d)=>c+d,1),o=Math.floor(Number(s));return VGl(o)}return VGl(I)})(e),e=4294967296*r):r=Math.random();let a=n[Math.floor(r*n.length)]||"";if(this.style==="lowerCase")a=a.toLowerCase();else if(this.style==="capital"){let[I,...s]=a.split("");a=I.toUpperCase()+s.join("")}else this.style==="upperCase"&&(a=a.toUpperCase());return l?`${l}${this.separator}${a}`:`${a}`},"")}},wGl={separator:"_",dictionaries:[]},QGl=t=>{let e=[...t&&t.dictionaries||wGl.dictionaries],l={...wGl,...t,length:t&&t.length||e.length,dictionaries:e};if(!t||!t.dictionaries||!t.dictionaries.length)throw new Error('A "dictionaries" array must be provided. This is a breaking change introduced starting from Unique Name Generator v4. Read more about the breaking change here: https://github.com/andreasonny83/unique-names-generator#migration-guide');return new Rnt(l).generate()},FGl=["able","above","absent","absolute","abstract","abundant","academic","acceptable","accepted","accessible","accurate","accused","active","actual","acute","added","additional","adequate","adjacent","administrative","adorable","advanced","adverse","advisory","aesthetic","afraid","aggregate","aggressive","agreeable","agreed","agricultural","alert","alive","alleged","allied","alone","alright","alternative","amateur","amazing","ambitious","amused","ancient","angry","annoyed","annual","anonymous","anxious","appalling","apparent","applicable","appropriate","arbitrary","architectural","armed","arrogant","artificial","artistic","ashamed","asleep","assistant","associated","atomic","attractive","automatic","autonomous","available","average","awake","aware","awful","awkward","back","bad","balanced","bare","basic","beautiful","beneficial","better","bewildered","big","binding","biological","bitter","bizarre","blank","blonde","blushing","boiling","bold","bored","boring","bottom","brainy","brave","breakable","breezy","brief","bright","brilliant","broad","broken","bumpy","burning","busy","calm","capable","careful","casual","causal","cautious","central","certain","changing","characteristic","charming","cheap","cheerful","chemical","chief","chilly","chosen","chronic","chubby","circular","civic","civil","classic","classical","clean","clear","clever","clinical","close","closed","cloudy","clumsy","coastal","cognitive","coherent","cold","collective","colorful","colossal","coloured","colourful","combined","comfortable","commercial","common","compact","comparable","comparative","compatible","competent","competitive","complete","complex","complicated","comprehensive","compulsory","conceptual","concerned","concrete","condemned","confident","confidential","confused","conscious","conservation","considerable","consistent","constant","constitutional","contemporary","content","continental","continued","continuing","continuous","controlled","controversial","convenient","conventional","convinced","convincing","cooing","cool","cooperative","corporate","correct","corresponding","costly","courageous","creative","creepy","criminal","critical","crooked","crowded","crucial","crude","cruel","cuddly","cultural","curious","curly","current","curved","cute","daily","damaged","damp","dangerous","dark","dead","deafening","dear","decent","decisive","deep","defeated","defensive","defiant","definite","deliberate","delicate","delicious","delighted","delightful","democratic","dependent","depressed","desirable","desperate","detailed","determined","developed","developing","devoted","different","difficult","digital","diplomatic","direct","dirty","disappointed","disastrous","disciplinary","disgusted","distant","distinct","distinctive","distinguished","disturbed","disturbing","diverse","divine","dizzy","domestic","dominant","double","doubtful","drab","dramatic","dreadful","driving","dry","dual","due","dull","dusty","dutch","dying","dynamic","eager","early","eastern","easy","economic","educational","eerie","effective","efficient","elaborate","elated","elderly","eldest","electoral","electric","electrical","electronic","elegant","eligible","embarrassed","embarrassing","emotional","empirical","empty","enchanting","encouraging","endless","energetic","enormous","enthusiastic","entire","entitled","envious","environmental","equal","equivalent","essential","established","estimated","ethical","eventual","everyday","evident","evil","evolutionary","exact","excellent","exceptional","excess","excessive","excited","exciting","exclusive","existing","exotic","expected","expensive","experienced","experimental","explicit","extended","extensive","external","extra","extraordinary","extreme","exuberant","faint","fair","faithful","familiar","famous","fancy","fantastic","far","fascinating","fashionable","fast","fatal","favourable","favourite","federal","fellow","few","fierce","final","financial","fine","firm","fiscal","fit","fixed","flaky","flat","flexible","fluffy","fluttering","flying","following","fond","foolish","foreign","formal","formidable","forthcoming","fortunate","forward","fragile","frail","frantic","free","frequent","fresh","friendly","frightened","front","frozen","full","fun","functional","fundamental","funny","furious","future","fuzzy","gastric","general","generous","genetic","gentle","genuine","geographical","giant","gigantic","given","glad","glamorous","gleaming","global","glorious","golden","good","gorgeous","gothic","governing","graceful","gradual","grand","grateful","greasy","great","grieving","grim","gross","grotesque","growing","grubby","grumpy","guilty","handsome","happy","hard","harsh","head","healthy","heavy","helpful","helpless","hidden","high","hilarious","hissing","historic","historical","hollow","holy","homely","hon","honest","horizontal","horrible","hostile","hot","huge","human","hungry","hurt","hushed","husky","icy","ideal","identical","ideological","ill","illegal","imaginative","immediate","immense","implicit","important","impossible","impressed","impressive","improved","inadequate","inc","inclined","increased","increasing","incredible","independent","indirect","individual","industrial","inevitable","influential","informal","inherent","initial","injured","inland","inner","innocent","innovative","inquisitive","instant","institutional","insufficient","intact","integral","integrated","intellectual","intelligent","intense","intensive","interested","interesting","interim","interior","intermediate","internal","international","invisible","involved","irrelevant","isolated","itchy","jealous","jittery","joint","jolly","joyous","judicial","juicy","junior","just","keen","key","kind","known","labour","large","late","latin","lazy","leading","left","legal","legislative","legitimate","lengthy","lesser","level","lexical","liable","light","like","likely","limited","linear","linguistic","liquid","literary","little","live","lively","living","local","logical","lonely","long","loose","lost","loud","lovely","low","loyal","ltd","lucky","mad","magic","magnetic","magnificent","main","major","mammoth","managerial","managing","manual","many","marginal","marine","marked","married","marvellous","mass","massive","mathematical","mature","maximum","mean","meaningful","mechanical","medical","medieval","melodic","melted","mental","mere","metropolitan","mid","middle","mighty","mild","military","miniature","minimal","minimum","ministerial","minor","miserable","misleading","missing","misty","mixed","moaning","mobile","moderate","modern","modest","molecular","monetary","monthly","moral","motionless","muddy","multiple","mushy","musical","mutual","mysterious","naked","narrow","nasty","national","natural","naughty","naval","near","nearby","neat","necessary","negative","neighbouring","nervous","net","neutral","new","nice","noble","noisy","normal","northern","nosy","notable","novel","nuclear","numerous","nursing","nutritious","nutty","obedient","objective","obliged","obnoxious","obvious","occasional","occupational","odd","official","ok","okay","old","only","open","operational","opposite","optimistic","ordinary","organic","organisational","original","orthodox","other","outdoor","outer","outrageous","outside","outstanding","overall","overseas","overwhelming","painful","pale","panicky","parallel","parental","parliamentary","partial","particular","passing","passive","past","patient","payable","peaceful","peculiar","perfect","permanent","persistent","personal","petite","philosophical","physical","plain","planned","plastic","pleasant","pleased","poised","polite","poor","popular","positive","possible","potential","powerful","practical","precious","precise","preferred","pregnant","preliminary","premier","prepared","present","presidential","pretty","previous","prickly","primary","prime","principal","printed","prior","private","probable","productive","professional","profitable","profound","progressive","prominent","promising","proper","proposed","prospective","protective","proud","provincial","psychiatric","psychological","public","puny","pure","purring","puzzled","quaint","qualified","quarrelsome","querulous","quick","quickest","quiet","quintessential","quixotic","racial","radical","rainy","random","rapid","rare","raspy","rational","ratty","raw","ready","real","realistic","rear","reasonable","recent","reduced","redundant","regional","registered","regular","regulatory","related","relative","relaxed","relevant","reliable","relieved","religious","reluctant","remaining","remarkable","remote","renewed","representative","repulsive","required","resident","residential","resonant","respectable","respective","responsible","resulting","retail","retired","revolutionary","rich","ridiculous","right","rigid","ripe","rising","rival","roasted","robust","rolling","romantic","rotten","rough","round","royal","rubber","rude","ruling","running","rural","sacred","sad","safe","salty","satisfactory","satisfied","scared","scary","scattered","scientific","scornful","scrawny","screeching","secondary","secret","secure","select","selected","selective","selfish","semantic","senior","sensible","sensitive","separate","serious","severe","shaggy","shaky","shallow","shared","sharp","sheer","shiny","shivering","shocked","short","shrill","shy","sick","significant","silent","silky","silly","similar","simple","single","skilled","skinny","sleepy","slight","slim","slimy","slippery","slow","small","smart","smiling","smoggy","smooth","social","soft","solar","sole","solid","sophisticated","sore","sorry","sound","sour","southern","spare","sparkling","spatial","special","specific","specified","spectacular","spicy","spiritual","splendid","spontaneous","sporting","spotless","spotty","square","squealing","stable","stale","standard","static","statistical","statutory","steady","steep","sticky","stiff","still","stingy","stormy","straight","straightforward","strange","strategic","strict","striking","striped","strong","structural","stuck","subjective","subsequent","substantial","subtle","successful","successive","sudden","sufficient","suitable","sunny","super","superb","superior","supporting","supposed","supreme","sure","surprised","surprising","surrounding","surviving","suspicious","sweet","swift","symbolic","sympathetic","systematic","tall","tame","tart","tasteless","tasty","technical","technological","teenage","temporary","tender","tense","terrible","territorial","testy","then","theoretical","thick","thin","thorough","thoughtful","thoughtless","thundering","tight","tiny","tired","top","total","tough","toxic","traditional","tragic","tremendous","tricky","tropical","troubled","typical","ugliest","ugly","ultimate","unable","unacceptable","unaware","uncertain","unchanged","uncomfortable","unconscious","underground","underlying","unemployed","uneven","unexpected","unfair","unfortunate","unhappy","uniform","uninterested","unique","united","universal","unknown","unlikely","unnecessary","unpleasant","unsightly","unusual","unwilling","upper","upset","uptight","urban","urgent","used","useful","useless","usual","vague","valid","valuable","variable","varied","various","varying","vast","verbal","vertical","very","vicarious","vicious","victorious","violent","visible","visiting","visual","vital","vitreous","vivacious","vivid","vocal","vocational","voiceless","voluminous","voluntary","vulnerable","wandering","warm","wasteful","watery","weak","wealthy","weary","wee","weekly","weird","welcome","well","western","wet","whispering","whole","wicked","wide","widespread","wild","wilful","willing","willowy","wily","wise","wispy","wittering","witty","wonderful","wooden","working","worldwide","worried","worrying","worthwhile","worthy","written","wrong","xenacious","xenial","xenogeneic","xeric","xerothermic","yabbering","yammering","yappiest","yappy","yawning","yearling","yearning","yeasty","yelling","yelping","yielding","yodelling","young","youngest","youthful","ytterbic","yucky","yummy","zany","zealous","zeroth","zestful","zesty","zippy","zonal","zoophagous","zygomorphic","zygotic"],CGl=["aardvark","aardwolf","albatross","alligator","alpaca","amphibian","anaconda","angelfish","anglerfish","ant","anteater","antelope","antlion","ape","aphid","armadillo","asp","baboon","badger","bandicoot","barnacle","barracuda","basilisk","bass","bat","bear","beaver","bedbug","bee","beetle","bird","bison","blackbird","boa","boar","bobcat","bobolink","bonobo","bovid","bug","butterfly","buzzard","camel","canid","canidae","capybara","cardinal","caribou","carp","cat","caterpillar","catfish","catshark","cattle","centipede","cephalopod","chameleon","cheetah","chickadee","chicken","chimpanzee","chinchilla","chipmunk","cicada","clam","clownfish","cobra","cockroach","cod","condor","constrictor","coral","cougar","cow","coyote","crab","crane","crawdad","crayfish","cricket","crocodile","crow","cuckoo","damselfly","deer","dingo","dinosaur","dog","dolphin","donkey","dormouse","dove","dragon","dragonfly","duck","eagle","earthworm","earwig","echidna","eel","egret","elephant","elk","emu","ermine","falcon","felidae","ferret","finch","firefly","fish","flamingo","flea","fly","flyingfish","fowl","fox","frog","galliform","gamefowl","gayal","gazelle","gecko","gerbil","gibbon","giraffe","goat","goldfish","goose","gopher","gorilla","grasshopper","grouse","guan","guanaco","guineafowl","gull","guppy","haddock","halibut","hamster","hare","harrier","hawk","hedgehog","heron","herring","hippopotamus","hookworm","hornet","horse","hoverfly","hummingbird","hyena","iguana","impala","jackal","jaguar","jay","jellyfish","junglefowl","kangaroo","kingfisher","kite","kiwi","koala","koi","krill","ladybug","lamprey","landfowl","lark","leech","lemming","lemur","leopard","leopon","limpet","lion","lizard","llama","lobster","locust","loon","louse","lungfish","lynx","macaw","mackerel","magpie","mammal","manatee","mandrill","marlin","marmoset","marmot","marsupial","marten","mastodon","meadowlark","meerkat","mink","minnow","mite","mockingbird","mole","mollusk","mongoose","monkey","moose","mosquito","moth","mouse","mule","muskox","narwhal","newt","nightingale","ocelot","octopus","opossum","orangutan","orca","ostrich","otter","owl","ox","panda","panther","parakeet","parrot","parrotfish","partridge","peacock","peafowl","pelican","penguin","perch","pheasant","pig","pigeon","pike","pinniped","piranha","planarian","platypus","pony","porcupine","porpoise","possum","prawn","primate","ptarmigan","puffin","puma","python","quail","quelea","quokka","rabbit","raccoon","rat","rattlesnake","raven","reindeer","reptile","rhinoceros","roadrunner","rodent","rook","rooster","roundworm","sailfish","salamander","salmon","sawfish","scallop","scorpion","seahorse","shark","sheep","shrew","shrimp","silkworm","silverfish","skink","skunk","sloth","slug","smelt","snail","snake","snipe","sole","sparrow","spider","spoonbill","squid","squirrel","starfish","stingray","stoat","stork","sturgeon","swallow","swan","swift","swordfish","swordtail","tahr","takin","tapir","tarantula","tarsier","termite","tern","thrush","tick","tiger","tiglon","toad","tortoise","toucan","trout","tuna","turkey","turtle","tyrannosaurus","unicorn","urial","vicuna","viper","vole","vulture","wallaby","walrus","warbler","wasp","weasel","whale","whippet","whitefish","wildcat","wildebeest","wildfowl","wolf","wolverine","wombat","woodpecker","worm","wren","xerinae","yak","zebra"];import{execFile as h7n}from"node:child_process";import{promisify as A7n}from"node:util";function z7(t){let[e,l]=t.split("/");if(!e||!l)throw new Error(`Invalid repository format: ${t}. Expected format: owner/repo`);return{owner:e,repo:l}}var ZN=A7n(h7n);async function vGl(t){try{let{stdout:e}=await ZN("git",["status","--porcelain"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576}),l=e.split(`
2477
2477
  `).filter(I=>I.length>0),n=0,r=0,a=0;for(let I of l){if(I.length<2)continue;let s=I[0],o=I[1];s==="?"&&o==="?"?a++:(s!==" "&&s!=="?"&&n++,o!==" "&&o!=="?"&&r++)}return{staged:n,unstaged:r,untracked:a,hasChanges:l.length>0}}catch{return{staged:0,unstaged:0,untracked:0,hasChanges:!1}}}async function fGl(){return"Checkpoint from Copilot CLI for coding agent session"}async function HGl(t){let{stdout:e}=await ZN("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3});return e.trim()}async function XGl(t){try{return await HGl(t)==="HEAD"}catch{return!1}}async function g7n(t){try{let{stdout:e}=await ZN("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3}),l=e.trim();if(!l||l==="HEAD")return"origin";let{stdout:n}=await ZN("git",["config",`branch.${l}.remote`],{cwd:t,encoding:"utf8",timeout:5e3});return n.trim()||"origin"}catch{return"origin"}}async function Z7n(t){let e=await g7n(t);try{let{stdout:l}=await ZN("git",["symbolic-ref",`refs/remotes/${e}/HEAD`],{cwd:t,encoding:"utf8",timeout:5e3}),n=l.match(new RegExp(`refs/remotes/${e}/(.+)`));if(n)return n[1].trim()}catch{}try{return await ZN("git",["rev-parse","--verify",`refs/remotes/${e}/main`],{cwd:t,encoding:"utf8",timeout:5e3}),"main"}catch{}try{return await ZN("git",["rev-parse","--verify",`refs/remotes/${e}/master`],{cwd:t,encoding:"utf8",timeout:5e3}),"master"}catch{return"main"}}async function N7n(t,e){try{return await ZN("git",["rev-parse","--verify",`refs/heads/${e}`],{cwd:t,encoding:"utf8",timeout:5e3}),!0}catch{return!1}}async function W7n(t,e){let n=["adjectives","animals"],a=[];for(let I of n)I.toLowerCase()==="adjectives"&&a.push(FGl),I.toLowerCase()==="animals"&&a.push(CGl);if(a.length===0)return`${e}/session${Date.now()}`;for(let I=0;I<5;I++){let s=`${e}/${QGl({dictionaries:a,length:a.length,separator:"-"})}`;if(!await N7n(t,s))return s}return`${e}/session${Date.now()}`}async function y7n(t){return W7n(t,"copilot")}async function Ynt(t){try{let[e,l,n,r]=await Promise.all([HGl(t),dve(t),Z7n(t),y7n(t)]);if(!l)throw new Error("Could not determine GitHub repository from git remotes");return{repository:`${l.owner}/${l.name}`,baseBranch:n,headBranch:e,asyncBranch:r}}catch(e){throw new Error(`Failed to get repository info: ${e instanceof Error?e.message:String(e)}`)}}async function kGl(t,e){try{await ZN("git",["add","--all"],{cwd:t,encoding:"utf8",timeout:1e4,maxBuffer:10*1024*1024});let{stdout:l}=await ZN("git",["commit","-m",e],{cwd:t,encoding:"utf8",timeout:1e4,maxBuffer:10*1024*1024}),n,r=l.match(/\[[\w/-]+ ([a-f0-9]+)\]/);if(!r||!r[1]){let{stdout:a}=await ZN("git",["rev-parse","--short","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3});n=a.trim()}else n=r[1];return{commitHash:n,commitMessage:e}}catch(l){let n=l instanceof Error?l.message:String(l);throw n.includes("pre-commit")?new Error(`Pre-commit hook prevented the commit: ${n}`):n.includes("commit-msg")?new Error(`Commit-msg hook rejected the commit: ${n}`):n.includes("nothing to commit")||n.includes("no changes added")?new Error(`No changes to commit (possibly filtered by hooks): ${n}`):new Error(`Failed to commit changes: ${n}`)}}async function LGl(t,e=process.cwd()){try{await ZN("git",["checkout",t],{cwd:e,encoding:"utf8",timeout:5e3,maxBuffer:10*1024*1024})}catch(l){let n=l instanceof Error?l.message:String(l);throw new Error(`Failed to switch to branch '${t}': ${n}`)}}async function JGl(t){let{cwd:e,asyncBranch:l}=t;try{await ZN("git",["checkout","-b",l],{cwd:e,encoding:"utf8",timeout:1e4,maxBuffer:10*1024*1024}),await ZN("git",["push","-u","origin",l],{cwd:e,encoding:"utf8",timeout:3e4,maxBuffer:10*1024*1024})}catch(n){let r=n instanceof Error?n.message:String(n);throw r.includes("branch")&&r.includes("already exists")?new Error(`Branch '${l}' already exists: ${r}`):r.includes("Could not read from remote repository")?new Error(`Failed to push branch - repository access issue: ${r}`):r.includes("Permission denied")||r.includes("403")?new Error(`Failed to push branch - permission denied: ${r}`):r.includes("remote rejected")?new Error(`Remote rejected the git push: ${r}`):new Error(`Failed to create and push branch '${l}': ${r}`)}}var P7=class extends Error{constructor(l,n,r){super(n);this.status=l;this.message=n;this.responseBody=r;this.name="HttpApiError"}};async function iGe(t){let e=await ty(t);if(!e)throw new Error("Failed to get authentication token");return e}async function E7n(t){let e=t.statusText||`HTTP ${t.status}`,l;try{l=await t.json(),typeof l=="object"&&l&&"message"in l&&(e=l.message)}catch{try{let n=await t.text();n&&(l=n)}catch{}}return{message:e,body:l}}async function nU(t,e,l){let{message:n,body:r}=await E7n(t),a;switch(t.status){case 400:a=`Bad request: ${n}`;break;case 401:a=`Unauthorized: ${n}`;break;case 402:a=e==="job"?"No remaining quota for premium requests":`Payment required: ${n}`;break;case 403:e==="job"||e==="agent"?a=`Coding Agent not enabled: ${n}`:a=`Forbidden: ${n}`;break;case 404:e==="job"&&l?.jobId?a=`Job not found: ${l.jobId}`:e==="session"&&l?.sessionId?a=`Session not found: ${l.sessionId}`:e==="repository"&&l?.repository?a=`Repository not found: ${l.repository}`:e==="pr"&&l?.prNumber?a=`Pull request not found: #${l.prNumber}`:a=`Not found: ${n}`;break;case 409:e==="pr"||e==="job"?a="PR already exists for these branches":a=`Conflict: ${n}`;break;case 422:e==="job"||e==="pr"?a="Branch protection or other rule prevents operation":a=`Unprocessable entity: ${n}`;break;case 500:a=`Internal server error: ${n}`;break;case 502:a=`Bad gateway: ${n}`;break;case 503:a=`Service unavailable: ${n}`;break;default:a=e?`Failed to ${e.replace(/_/g," ")}: ${n}`:n}throw new P7(t.status,a,r)}async function uJ(t,e,l,n,r="API"){let a=await iGe(e),I=uL(),s={Authorization:`Bearer ${a}`,Accept:"application/json","User-Agent":`copilot-cli/${I}`};return n?.headers&&Object.assign(s,n.headers),ZC(t,{...n,headers:s},l,r)}async function xGl(t,e,l){let{owner:n,repo:r}=z7(t),a=Dw(e),I=lO(a),s=new URL(`/repos/${n}/${r}`,I),o=await uJ(s,e,l,{method:"GET",headers:{Accept:"application/vnd.github.v3+json"}},"GitHub Repository API");return o.ok||await nU(o,"repository",{repository:t}),!0}async function SGl(t,e){return!0}async function BGl(t,e,l,n,r,a){let{owner:I,repo:s}=z7(t),{problemStatement:o}=mil(e,n),c=await iGe(r),d=Dw(r),m=await y0(d,c,a),G=new URL(`/agents/swe/v1/jobs/${I}/${s}`,m),A=await uJ(G,r,a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({problem_statement:o,pull_request:{head_ref:l,body_suffix:"Created from Copilot CLI via the copilot delegate command."},event_type:"cli_delegate_command"})},"Copilot Job API");A.ok||await nU(A,"job",{repository:t});let Z=await A.json();return{jobId:Z.job_id,sessionId:Z.session_id,actor:{id:Z.actor.id,login:Z.actor.login},createdAt:new Date(Z.created_at),updatedAt:new Date(Z.updated_at)}}async function TGl(t){let{repository:e,jobId:l,authInfo:n,logger:r}=t,{owner:a,repo:I}=z7(e),s=await iGe(n),o=Dw(n),c=await y0(o,s,r),d=new URL(`/agents/swe/v1/jobs/${a}/${I}/${l}`,c),m=await uJ(d,n,r,{method:"GET"},"Copilot Job Status API");m.ok||await nU(m,"job",{jobId:l});let G=await m.json(),p;return G.pull_request?.number&&(p=`${o}/${e}/pull/${G.pull_request.number}`),{jobId:G.job_id,sessionId:G.session_id,problemStatement:G.problem_statement,status:G.status,result:G.result,actor:{id:G.actor.id,login:G.actor.login},createdAt:new Date(G.created_at),updatedAt:new Date(G.updated_at),pullRequest:G.pull_request?{id:G.pull_request.id,number:G.pull_request.number,url:p}:void 0,workflowRun:G.workflow_run?{id:G.workflow_run.id}:void 0,error:G.error?{message:G.error.message,responseStatusCode:G.error.response_status_code,service:G.error.service}:void 0}}async function Vnt(t){let{sessionId:e,authInfo:l,logger:n,integrationId:r}=t,a=await iGe(l),I=Dw(l),s=await y0(I,a,n),o=new URL(`/agents/sessions/${e}`,s),c=await uJ(o,l,n,{method:"GET",headers:{"Copilot-Integration-Id":r}},"Copilot Session API");c.ok||await nU(c,"session",{sessionId:e});let d=await c.json(),m=d.state;return{sessionId:d.id,state:m,createdAt:d.created_at?new Date(d.created_at):new Date,updatedAt:d.last_updated_at?new Date(d.last_updated_at):new Date,resourceGlobalId:d.resource_global_id}}async function Nve(t){let{repository:e,prNumber:l,authInfo:n,logger:r,includeFiles:a=!1,maxFiles:I=100}=t,{owner:s,repo:o}=z7(e),c=Dw(n),d=lO(c),m=new URL(`/repos/${s}/${o}/pulls/${l}`,d),G=await uJ(m,n,r,{method:"GET",headers:{Accept:"application/vnd.github.v3+json"}},"GitHub PR API");G.ok||await nU(G,"pr",{prNumber:l.toString()});let p=await G.json(),A={title:p.title,draft:p.draft,createdAt:new Date(p.created_at),changedFiles:p.changed_files,totalAdditions:p.additions,totalDeletions:p.deletions};if(a){let Z=new URL(`/repos/${s}/${o}/pulls/${l}/files`,d);Z.searchParams.set("per_page",Math.min(I,100).toString()),Z.searchParams.set("page","1");let W=await uJ(Z,n,r,{method:"GET",headers:{Accept:"application/vnd.github.v3+json"}},"GitHub PR Files API");if(W.ok){let R=await W.json();A.files=R.slice(0,I).map(V=>({filename:V.filename,status:V.status,additions:V.additions,deletions:V.deletions}))}}return A}var Wve=class{state=null;onStateChangeCallback=null;onSessionCompleteCallback=null;timeoutId=null;pollingIntervalId=null;initialAuthInfo;authInfo;logger;integrationId;constructor(e,l,n){this.initialAuthInfo=e,this.logger=l,this.integrationId=n}startDelegation(e,l,n=""){if(!this.initialAuthInfo)throw new Error("Not authenticated. Please login first.");this.authInfo=this.initialAuthInfo,this.logger.startGroup("Remote Delegation Started"),this.logger.info(`Prompt: "${e.substring(0,100)}${e.length>100?"...":""}"`),this.logger.info(`CLI Session ID: ${l}`),n&&this.logger.info(`Problem Context: "${n.substring(0,100)}${n.length>100?"...":""}"`),this.logger.endGroup(),this.state={stage:"uncommitted_changes_check",prompt:e,problemContext:n,cliSessionId:l,isLoading:!0},this.notifyStateChange(),this.checkUncommittedChanges()}advanceStage(){if(!this.state)return;let e=this.state.stage;switch(this.state.stage){case"uncommitted_changes_check":this.logger.info(`--- Stage transition: ${e} \u2192 Confirm ---`),this.state={...this.state,stage:"confirm",isLoading:!0},this.notifyStateChange(),this.loadDelegationConfirmationData();break;case"confirm":this.logger.info(`--- Stage transition: ${e} \u2192 Processing ---`),this.state={...this.state,stage:"processing",processingStartTime:new Date},this.notifyStateChange(),this.executeDelegationOperations();break;case"processing":this.logger.info(`--- Stage transition: ${e} \u2192 Tracking ---`),this.state={...this.state,stage:"tracking"},this.notifyStateChange(),this.startJobTracking();break;case"tracking":this.logger.info(`--- Stage transition: ${e} \u2192 Complete ---`),this.completeDelegationOperation();break}}cancelDelegation(){let e=this.state?.stage;this.logger.info(`Remote delegation cancelled${e?` (was in stage: ${e})`:""}`),this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null),this.clearPollingInterval(),this.state=null,this.notifyStateChange()}setOnStateChangeCallback(e){this.onStateChangeCallback=e,this.notifyStateChange()}onSessionComplete(e){this.onSessionCompleteCallback=e}getCurrentState(){return this.state}isActive(){return this.state!==null}async checkUncommittedChanges(){if(!this.state)return;let e=Date.now();this.logger.info("STAGE 1: UncommittedChangesCheck - Starting validation checks");try{let l=await mY(process.cwd());if(!l.found)throw new Error("Not a git repository");let n=await Ynt(process.cwd());this.logger.info(`Repository: ${n.repository}`),this.logger.info(`Base branch: ${n.baseBranch}, Head branch: ${n.headBranch}`),this.logger.info(`Async branch: ${n.asyncBranch}`),this.logger.info("Running parallel validation checks (detached HEAD, repo access, Copilot enabled)...");let[r,a,I]=await Promise.allSettled([XGl(process.cwd()),xGl(n.repository,this.authInfo,this.logger),SGl(n.repository,this.authInfo)]),s=[];if(r.status==="fulfilled"&&r.value===!0?s.push("Repository is in detached HEAD state. Please checkout a branch before pushing."):r.status==="rejected"&&s.push(`Failed to check HEAD state: ${r.reason}`),a.status==="fulfilled"&&a.value===!1?s.push(`Repository not found or you don't have access: ${n.repository}`):a.status==="rejected"&&s.push(a.reason?.message||"Failed to check repository access"),I.status==="rejected"&&s.push(I.reason?.message||"Failed to check Copilot status"),s.length>0){let m=s.length===1?s[0]:`Multiple errors:
2478
2478
  \u2022 ${s.join(`
2479
- \u2022 `)}`;throw new Error(m)}let o=await vGl(process.cwd());o.hasChanges?this.logger.info(`Uncommitted changes detected: ${o.staged} staged, ${o.unstaged} unstaged, ${o.untracked} untracked`):this.logger.info("No uncommitted changes detected");let c=o.hasChanges?await fGl():void 0;c&&this.logger.info(`Generated checkpoint commit message: "${c}"`),this.state={...this.state,isLoading:!1,isGitRepository:l.found,hasUncommittedChanges:o.hasChanges,fileCount:o.hasChanges?{staged:o.staged,unstaged:o.unstaged,untracked:o.untracked}:void 0,commitMessage:c,repository:n.repository,baseBranch:n.baseBranch,headBranch:n.headBranch,asyncBranch:n.asyncBranch},this.notifyStateChange();let d=Date.now()-e;this.logger.info(`STAGE 1: UncommittedChangesCheck completed in ${d}ms`),o.hasChanges||(this.logger.info("Auto-advancing to Confirm stage (no uncommitted changes)"),this.state={...this.state,stage:"confirm",isLoading:!1,isGitRepository:l.found,hasUncommittedChanges:!1},this.notifyStateChange(),await this.loadDelegationConfirmationData())}catch(l){this.setError(l,"Failed during uncommitted changes check")}}async loadDelegationConfirmationData(){if(!this.state)return;let e=Date.now();this.logger.info("STAGE 2: Confirm - Loading delegation confirmation data");try{if(this.state.repository)this.logger.info("Repository info already available from previous stage"),this.state={...this.state,isLoading:!1};else{this.logger.info("Repository info not found, fetching...");let n=await Ynt(process.cwd());this.state={...this.state,isLoading:!1,repository:n.repository,baseBranch:n.baseBranch,headBranch:n.headBranch,asyncBranch:n.asyncBranch},this.logger.info(`Loaded repository info: ${n.repository}`)}this.notifyStateChange();let l=Date.now()-e;this.logger.info(`STAGE 2: Confirm completed in ${l}ms - Waiting for user confirmation`)}catch(l){this.setError(l,"Failed to load delegation confirmation data")}}async executeDelegationOperations(){if(!this.state)return;let e=Date.now();this.logger.info("STAGE 3: Processing - Executing delegation operations");try{let l=this.buildOperationsList();this.state={...this.state,operations:l},this.notifyStateChange(),this.logger.info(`Operations to execute: ${l.map(n=>n.id).join(" \u2192 ")}`);for(let n of l){if(!this.state)break;let r=Date.now();this.logger.info(`Operation [${n.id}] - Starting...`),this.updateOperationStatus(n.id,"running");try{switch(n.id){case"commit":{let I=await kGl(process.cwd(),this.state.commitMessage);this.state={...this.state,commitHash:I.commitHash},this.logger.info(`Operation [${n.id}] - Commit created: ${I.commitHash}`);break}case"create-branch":{this.logger.info(`Operation [${n.id}] - Creating branch: ${this.state.asyncBranch}`),await JGl({cwd:process.cwd(),repository:this.state.repository,headBranch:this.state.headBranch,baseBranch:this.state.baseBranch,asyncBranch:this.state.asyncBranch}),this.logger.info(`Operation [${n.id}] - Branch created and pushed: ${this.state.asyncBranch}`),await LGl(this.state.headBranch),this.logger.info(`Operation [${n.id}] - Switched back to: ${this.state.headBranch}`);break}case"start-job":{this.logger.info(`Operation [${n.id}] - Creating job for repository: ${this.state.repository}`);let I=await BGl(this.state.repository,this.state.prompt,this.state.asyncBranch,this.state.problemContext||"",this.authInfo,this.logger);if(!I.jobId||!I.sessionId)throw new Error(`Job creation returned incomplete data: jobId=${I.jobId}, sessionId=${I.sessionId}`);this.state={...this.state,jobId:I.jobId,sessionId:I.sessionId,jobCreatedBy:I.actor.login,jobCreatedAt:I.createdAt},this.logger.info(`Operation [${n.id}] - Job created: ID=${I.jobId}, Session=${I.sessionId}, CreatedBy=${I.actor.login}`);break}case"check-job":{if(!this.state.jobId)throw new Error("No job ID available to check status");let I=1e3,s=9e4,o=Date.now(),c=!1,d=0;for(this.logger.info(`Operation [${n.id}] - Polling for PR details (max ${s}ms)...`);!c&&Date.now()-o<s;){d++;let m=await TGl({repository:this.state.repository,jobId:this.state.jobId,authInfo:this.authInfo,logger:this.logger});this.state={...this.state,jobStatus:m.status,jobResult:m.result,prNumber:m.pullRequest?.number,prUrl:m.pullRequest?.url},m.pullRequest?.number?(this.logger.info(`Operation [${n.id}] - PR details received: #${m.pullRequest.number} (after ${d} polls, ${Date.now()-o}ms)`),c=!0):await new Promise(G=>setTimeout(G,I))}if(!c)throw new mO(`Timed out waiting for pull request information after ${s}ms`,"check-job",this.state.prUrl);break}case"wait-for-session":{if(!this.state.sessionId)throw new Error("No session ID available to check status");let I=1e3,s=9e4,o=Date.now(),c=!1,d=!1,m=!1,G=0;for(this.logger.info(`Operation [${n.id}] - Waiting for session to start (max ${s}ms)...`);!c&&Date.now()-o<s;){G++;let p=await Vnt({sessionId:this.state.sessionId,authInfo:this.authInfo,logger:this.logger,integrationId:this.integrationId});if(p.resourceGlobalId&&!this.state.jobUrl){let A=Dw(this.authInfo);this.state={...this.state,jobUrl:`${A}/copilot/tasks/pull/${p.resourceGlobalId}?session_id=${this.state.sessionId}`},m=!0,this.logger.info(`Operation [${n.id}] - Job URL constructed: ${this.state.jobUrl}`)}if(this.state.prNumber&&!d){let A=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!1});this.state={...this.state,prTitle:A.title,prDraft:A.draft,prCreatedAt:A.createdAt},d=!0,this.logger.info(`Operation [${n.id}] - PR details fetched: "${A.title}"`)}p.state==="in_progress"?(this.logger.info(`Operation [${n.id}] - Session transitioned to in_progress (after ${G} polls, ${Date.now()-o}ms)`),c=!0):p.state==="completed"||p.state==="failed"||p.state==="cancelled"||p.state==="timed_out"?(this.logger.info(`Operation [${n.id}] - Session ended with state: ${p.state} (after ${G} polls, ${Date.now()-o}ms)`),c=!0):(p.state==="waiting_for_user"||p.state==="idle")&&(this.logger.info(`Operation [${n.id}] - Session in intermediate state: ${p.state} (after ${G} polls, ${Date.now()-o}ms)`),c=!0),(!c||!d||!m)&&await new Promise(A=>setTimeout(A,I))}if(!c||!d||!m){let p=[];throw c||p.push("session transition"),d||p.push("PR details"),m||p.push("job URL"),new mO(`Timed out after ${s}ms waiting for: ${p.join(", ")}`,"wait-for-session",this.state.prUrl)}break}}this.updateOperationStatus(n.id,"done");let a=Date.now()-r;this.logger.info(`Operation [${n.id}] - Completed in ${a}ms`)}catch(a){this.updateOperationStatus(n.id,"error",a.message);let I=Date.now()-r;this.logger.error(`Operation [${n.id}] - Failed after ${I}ms: ${a.message}`),await new Promise(s=>setTimeout(s,3e3)),this.setError(a,`Operation '${n.id}' failed`);return}}if(this.allOperationsComplete()){let n=Date.now()-e;this.logger.info(`STAGE 3: Processing completed in ${n}ms - All operations successful`),setTimeout(()=>this.advanceStage(),2e3)}}catch(l){this.setError(l,"Failed to execute delegation operations")}}async startJobTracking(){if(!this.state||!this.state.sessionId){this.logger.error("Cannot start job tracking: missing state or sessionId"),this.cancelDelegation();return}this.logger.info("STAGE 4: Tracking - Starting job tracking"),this.logger.info(`Tracking session: ${this.state.sessionId}`),this.state.prNumber&&this.logger.info(`Tracking PR: #${this.state.prNumber}`);let e=1e3,l=null,n=async()=>{if(!this.state||!this.state.sessionId){this.clearPollingInterval();return}try{let r=await Vnt({sessionId:this.state.sessionId,authInfo:this.authInfo,logger:this.logger,integrationId:this.integrationId}),a=this.state.sessionState;if(this.state={...this.state,sessionState:r.state},a!==r.state&&this.logger.info(`Session state changed: ${a||"unknown"} \u2192 ${r.state}`),!this.state.jobUrl&&r.resourceGlobalId){let s=Dw(this.authInfo);this.state.jobUrl=`${s}/copilot/tasks/pull/${r.resourceGlobalId}?session_id=${this.state.sessionId}`,this.logger.info(`Constructed job URL from polling: ${this.state.jobUrl}`)}if(this.state.prNumber)try{let s=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!1}),o=s.changedFiles!==this.state.prChangedFiles||s.totalAdditions!==this.state.prTotalAdditions||s.totalDeletions!==this.state.prTotalDeletions;if(this.state={...this.state,prTitle:s.title,prDraft:s.draft,prCreatedAt:s.createdAt,prChangedFiles:s.changedFiles,prTotalAdditions:s.totalAdditions,prTotalDeletions:s.totalDeletions},o||!this.state.prFiles){let c=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!0,maxFiles:10});this.state={...this.state,prFiles:c.files},this.logger.info(`PR files updated: ${s.changedFiles} files${s.changedFiles>10?" (showing first 10)":""}, +${s.totalAdditions} -${s.totalDeletions}`)}}catch(s){this.logError("Failed to fetch PR details",s,"warning")}if(this.notifyStateChange(),r.state==="completed"||r.state==="failed"||r.state==="cancelled"||r.state==="timed_out"){this.logger.info(`STAGE 4: Tracking - Session ended with terminal state: ${r.state}`),this.clearPollingInterval(),setTimeout(()=>this.completeDelegationOperation(),3e3);return}let I=1e3;if(r.state==="waiting_for_user"||r.state==="idle"){l===null&&(l=Date.now());let s=Date.now()-l,o=300*1e3,c=Math.floor(s/o);I=Math.min(5e3+c*5e3,3e4)}else l=null;if(I!==e){let s=e;e=I,this.clearPollingInterval(),this.pollingIntervalId=setInterval(()=>void n(),e),this.logger.info(`Polling interval adjusted: ${s}ms \u2192 ${e}ms (state: ${r.state})`)}}catch(r){this.clearPollingInterval(),this.setError(r,"Error polling session status")}};this.pollingIntervalId=setInterval(()=>void n(),e),n()}completeDelegationOperation(){this.clearPollingInterval(),this.logger.info("STAGE 5: Complete - Delegation operation completed"),this.state&&(this.logger.startGroup("Delegation Operation Summary"),this.state.jobId&&this.logger.info(`Job ID: ${this.state.jobId}`),this.state.sessionId&&this.logger.info(`Session ID: ${this.state.sessionId}`),this.state.prNumber&&this.logger.info(`PR #${this.state.prNumber}: ${this.state.prUrl||"N/A"}`),this.state.commitHash&&this.logger.info(`Commit: ${this.state.commitHash}`),this.state.asyncBranch&&this.logger.info(`Branch: ${this.state.asyncBranch}`),this.state.sessionState&&this.logger.info(`Final session state: ${this.state.sessionState}`),this.logger.endGroup()),this.timeoutId&&clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.timeoutId=null,this.logger.info("Remote delegation workflow finished - Cleaning up"),this.onSessionCompleteCallback?this.onSessionCompleteCallback():(this.state=null,this.notifyStateChange())},3e3)}buildOperationsList(){if(!this.state)return[];let e=[];return this.state.hasUncommittedChanges&&e.push({id:"commit",status:"pending"}),e.push({id:"create-branch",status:"pending"},{id:"start-job",status:"pending"},{id:"check-job",status:"pending"},{id:"wait-for-session",status:"pending"}),e}updateOperationStatus(e,l,n){if(!this.state||!this.state.operations)return;let r=this.state.operations.map(a=>a.id===e?{...a,status:l,...n?{error:n}:{}}:a);this.state={...this.state,operations:r},this.notifyStateChange()}allOperationsComplete(){return!this.state||!this.state.operations?!0:this.state.operations.every(e=>e.status==="done"||e.status==="error")}setError(e,l){this.state&&(this.logError(l||"Operation failed",e,"error"),this.state={...this.state,error:e,isLoading:!1},this.notifyStateChange())}notifyStateChange(){this.onStateChangeCallback?.(this.state)}clearPollingInterval(){this.pollingIntervalId&&(clearInterval(this.pollingIntervalId),this.pollingIntervalId=null)}logError(e,l,n="error"){if(l instanceof P7){let r=l.responseBody?` | Response: ${JSON.stringify(l.responseBody)}`:"",a=`${e} - API error - Status: ${l.status} | Message: ${l.message}${r}`;n==="error"?this.logger.error(a):this.logger.warning(a)}else{let r=`${e}: ${l instanceof Error?l.message:String(l)}`;n==="error"?this.logger.error(r):this.logger.warning(r)}}};var j7=class{turnStartTimes=new Map;turnModelCallTimes=new Map;turnToolExecutionTimes=new Map;turnToolCallCounts=new Map;startTurn(e,l){this.turnStartTimes.set(e,l),this.turnModelCallTimes.set(e,{}),this.turnToolExecutionTimes.set(e,0),this.turnToolCallCounts.set(e,0)}recordModelCall(e,l){let n=this.turnModelCallTimes.get(e)||{};n.duration=l,this.turnModelCallTimes.set(e,n)}recordToolExecution(e,l){let n=this.turnToolExecutionTimes.get(e)||0;this.turnToolExecutionTimes.set(e,n+l);let r=this.turnToolCallCounts.get(e)||0;this.turnToolCallCounts.set(e,r+1)}finishTurn(e,l){let n=this.turnStartTimes.get(e);if(n===void 0)return this.cleanup(e),null;let r=l-n,a=this.turnModelCallTimes.get(e)||{},I=this.turnToolExecutionTimes.get(e)||0,s=this.turnToolCallCounts.get(e)||0,o=a.duration||0,c={totalDurationMs:r,llmDurationMs:o,toolExecutionMs:I,toolCallCount:s,totalDurationSeconds:(r/1e3).toFixed(2),llmDurationSeconds:(o/1e3).toFixed(2),toolExecutionSeconds:(I/1e3).toFixed(2)};return this.cleanup(e),c}cleanup(e){this.turnStartTimes.delete(e),this.turnModelCallTimes.delete(e),this.turnToolExecutionTimes.delete(e),this.turnToolCallCounts.delete(e)}static formatTimingBreakdown(e){return`LLM: ${e.llmDurationSeconds}s | Tools: ${e.toolExecutionSeconds}s (${e.toolCallCount} calls) | Total: ${e.totalDurationSeconds}s`}};var R7n="You are not licensed to use Copilot.",Y7n="You are not authorized to use this Copilot feature, it requires an enterprise or organization policy to be enabled.",V7n="The provided personal access token (PAT) does not have Copilot Requests permission. Please generate a new Fine-Grained Access Token with Copilot Requests permission (not a Classic token), or log in using /login";function wnt(t){return t.includes("not licensed to use Copilot")?{kind:"not-licensed",message:R7n}:t.includes("not authorized to use this Copilot feature")?{kind:"not-authorized",message:Y7n}:t.includes("Personal Access Token does not have Copilot Requests")?{kind:"not-authorized",message:V7n}:null}import{promises as w7n}from"fs";import Qnt from"path";function Q7n(t){let e=[],l=/(?<![a-zA-Z0-9])(@[^\s@]+)/g,n;for(;(n=l.exec(t))!==null;)e.push({displayText:n[1],startIndex:n.index,endIndex:n.index+n[0].length});return e}async function F7n(t){try{let e=await w7n.stat(t);return e.isDirectory()?"directory":e.isFile()?aoe(Qnt.basename(t))?"image":"file":null}catch{return null}}async function C7n(t,e=new Map,l=process.cwd()){let n=Q7n(t),r=[];for(let a of n){let I=e.get(a.startIndex);if(I?.startIndex===a.startIndex)r.push(I);else{let s=a.displayText.slice(1).replace(/[.,;:!?]+$/,""),o=Qnt.isAbsolute(s)?s:Qnt.resolve(l,s),c=await F7n(o);if(c===null)continue;r.push({displayText:a.displayText,fullPath:o,type:c,startIndex:a.startIndex})}}return r}async function OGl(t,e=new Map,l=process.cwd(),n){let r=await C7n(t,e,l);return n.debug(`Detected mentions: ${r.map(a=>`${a.displayText} (${a.type})`).join(", ")}`),r.map(a=>({type:a.type==="image"?"file":a.type,path:a.fullPath,displayName:a.displayText,mentionIndex:a.startIndex}))}var yve=$e(tl(),1);import{EventEmitter as fnt}from"node:events";var Fnt=class extends fnt{get columns(){return 100}frames=[];_lastFrame;write=e=>{this.frames.push(e),this._lastFrame=e};lastFrame=()=>this._lastFrame},Cnt=class extends fnt{frames=[];_lastFrame;write=e=>{this.frames.push(e),this._lastFrame=e};lastFrame=()=>this._lastFrame},vnt=class extends fnt{isTTY=!0;data=null;constructor(e={}){super(),this.isTTY=e.isTTY??!0}write=e=>{this.data=e,this.emit("readable"),this.emit("data",e)};setEncoding(){}setRawMode(){}resume(){}pause(){}ref(){}unref(){}read=()=>{let{data:e}=this;return this.data=null,e}},v7n=[],UGl=t=>{let e=new Fnt,l=new Cnt,n=new vnt,r=tte(t,{stdout:e,stderr:l,stdin:n,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return v7n.push(r),{rerender:r.rerender,unmount:r.unmount,cleanup:r.cleanup,stdout:e,stderr:l,stdin:n,frames:e.frames,lastFrame:e.lastFrame}};function MGl(t,e=!1){let l=yve.default.createElement(RFe,{logger:new Sd,children:yve.default.createElement(QFe,{mode:"non-interactive",children:yve.default.createElement(Zbe,{entry:t,expand:e})})}),{lastFrame:n}=UGl(l),r=n();return r?r.trim():""}var _Gl=1,Hnt=!1;function X7n(t){Hnt=t}var mQ=!1,Eve=[],Kh=null,rU=!1;async function DGl(){if(mQ||Eve.length===0)return;mQ=!0;let{integrationId:t,messageContent:e,permissionService:l,authInfo:n,resolve:r,reject:a,completePendingToolCall:I,setQuotaSnapshots:s,setContextWindowMetrics:o,setStreamingResponseSize:c,setCurrentIntent:d,session:m,logger:G,pathManager:p,cliModel:A,enableStreaming:Z,customAgents:W,trajectoryOutputFile:R,mcpHost:V,showLlmTiming:f,timingTracker:X,noCustomInstructions:x,setAvailableTools:O,customAgentPrompt:T,modelList:_,disableParallelToolsExecution:B}=Eve.shift();try{let z=await L7n(t,e,l,n,I,s,o,c,d,m,G,p,A,Z,W,R,V,f,X,x,O,T,_,B);r(z)}catch(z){z&&typeof z=="object"&&"name"in z&&z.name==="AbortError"||z&&typeof z=="object"&&"message"in z&&typeof z.message=="string"&&z.message.includes("Operation was cancelled")?r("Operation cancelled"):a(z)}finally{mQ=!1,Eve.length>0&&setTimeout(()=>void DGl(),100)}}var k7n=GZt(y0);async function L7n(t,e,l,n,r,a,I,s,o,c,d,m,G,p,A,Z,W,R,V,f,X,x,O,T){Kh=new AbortController,H7n(0,Kh.signal),s(0),o(null);try{let _=await xr.load()||{},B=await ty(n),z=_.copilot_url;!z&&B&&n.type!=="hmac"&&(z=await k7n(n.host,B,d)),VI.env.GITHUB_COPILOT_CLI_MODE="true";let se={problemStatement:e,logger:d,saveTrajectoryOutput:Z||void 0,apiCopilotIntegrationId:t,apiCopilotHmacKey:n.type==="hmac"?n.hmac:void 0,apiCopilotUrl:z,apiCopilotToken:B,serviceInstanceId:c.sessionId,mcpHost:W,saveEventLogs:VI.env.COPILOT_EVENTS_LOG_DIRECTORY};try{let me=JL()&&VI.env.COPILOT_AGENT_MODEL?VI.env.COPILOT_AGENT_MODEL:`sweagent-capi:${G}`,he=await mY(VI.cwd()),K={...se,pathManager:m,serviceAgentModel:me,requestPermission:l.request,onToolPartialOutput:(rt,It)=>{c.emitEphemeral("tool.execution_partial_result",{toolCallId:rt,partialOutput:It})},showEvents:!0,showSessionLog:!1,useSessionLogOnly:!1,abortSignal:Kh.signal,executeToolsInParallel:!T,customAgents:{available:A.map(rt=>({name:rt.id,description:rt.description,tools:rt.tools,prompt:rt.prompt})),isCustomAgentSelected:x!==void 0},gitRoot:he.gitRoot,noCustomInstructions:f},U=await mCe.createFromOptions(K);X&&X(U.getAvailableTools()),he.found&&!f&&await CEe(he.gitRoot,!0,VI.cwd());let Ie=U.getAgentKind(),ae=U.getModel(),ye=O8()[Ie]?.[ae]??T8(),be=U.getToolConfig()??{},Ve=ye.supports||{};Ve.customAgents=!0,Ve.reportIntent=!0;let Re=await V6({location:he.found?he.gitRoot:"",version:uL(),currentWorkingDirectory:VI.cwd(),parts:{},capabilities:Ve,toolConfigOverrides:be,tools:U.getAvailableTools(),organizationCustomInstructions:void 0,skipCustomInstructions:f}),We=new GCe(c,s,Hnt,d),le=await c.getChatContextMessages(),Me=le.findLastIndex(rt=>rt.role==="user"),ke=le[Me];typeof ke.content=="string"?ke={...ke,content:w6({customAgentPrompt:x,problemStatement:ke.content,capabilities:Ve})}:ke={...ke,content:ke.content.map(rt=>rt.type==="text"?{...rt,text:w6({customAgentPrompt:x,problemStatement:rt.text,capabilities:Ve})}:rt)};let Kt=new j4(ke,d),Zl=new yT(d),Ft=new pCe(o),zt=U.getCompletionWithTools(Re,le.map((rt,It)=>It===Me?ke:rt),{stream:p,failIfInitialInputsTooLong:!1,processors:{preRequest:[Kt,new d0e,Zl],onRequestError:[Kt],onStreamingChunk:[We,Ft]},executeToolsInParallel:!T,abortSignal:Kh.signal});for await(let rt of zt){if(Kh?.signal.aborted){let It=new Error("Operation was cancelled");throw It.name="AbortError",It}await UOt(rt,{onImageProcessingEvent:It=>{},onImageRemovalEvent:It=>{},onMessage:It=>{if(GL(It)){let qt=We.endCurrentStreamingMessage(),mn=typeof It.message.content=="string"?It.message.content:null,Il=B8(It)?It.message.tool_calls.map(Fe=>({toolCallId:Fe.id,name:Fe.function.name,arguments:eL(Fe.function.arguments)})):[];c.emit("assistant.message",{messageId:qt??mu(),content:mn||"",toolRequests:Il,parentToolCallId:rt.parentToolCallId});for(let Fe of Il)c.emit("tool.execution_start",{toolCallId:Fe.toolCallId,toolName:Fe.name,arguments:Fe.arguments})}else(It.message.role==="system"||It.message.role==="developer")&&c.emit("system.message",{role:It.message.role,content:typeof It.message.content=="string"?It.message.content:JSON.stringify(It.message.content),name:"name"in It.message?It.message.name:void 0})},onResponse:It=>{},onModelCallFailure:It=>{if(wnt(It.modelCall?.error||""))return;let mn=It.modelCall?.error||"Unknown error occurred";It.modelCall.request_id&&(mn+=` (Request ID: ${It.modelCall.request_id})`),c.emit("session.error",{errorType:"model_call",message:`Model call failed: ${mn}`})},onModelCallSuccess:async It=>{a(It.quotaSnapshots||{});let qt=It.responseChunk.model||await c.getSelectedModel(),mn=It.modelCallDurationMs||0,Il=It.responseUsage,Fe=qt?Qq(qt,O):1;c.emitEphemeral("assistant.usage",{model:qt||"unknown",inputTokens:Il?.prompt_tokens||0,outputTokens:Il?.completion_tokens||0,cost:Fe,duration:mn,initiator:It.modelCall?.initiator}),R&&V&&V.recordModelCall(It.turn,It.modelCallDurationMs)},onToolExecution:It=>{r({parentToolCallId:rt.parentToolCallId,callId:It.toolCallId,resultType:It.toolResult.resultType,log:(It.toolResult.resultType==="failure"?It.toolResult.error:void 0)||It.toolResult.sessionLog||It.toolResult.textResultForLlm}),R&&V&&V.recordToolExecution(It.turn,It.durationMs)},onTruncationEvent:It=>{I(qt=>{let mn=Math.max(qt.totalTokens,It.truncateResult.preTruncationTokensInMessages);return{...qt,totalTokens:mn,postTruncationTokens:It.truncateResult.postTruncationTokensInMessages,tokenLimit:It.truncateResult.tokenLimit,messagesRemoved:It.truncateResult.messagesRemovedDuringTruncation,tokensRemoved:It.truncateResult.tokensRemovedDuringTruncation}})},onTurnEvent:It=>{if(It.kind==="turn_started")R&&V&&V.startTurn(It.turn,It.timestampMs);else if(It.kind==="turn_ended"&&R&&V){let qt=V.finishTurn(It.turn,It.timestampMs);if(qt){let mn=j7.formatTimingBreakdown(qt);Hnt?VI.stdout.write(`
2479
+ \u2022 `)}`;throw new Error(m)}let o=await vGl(process.cwd());o.hasChanges?this.logger.info(`Uncommitted changes detected: ${o.staged} staged, ${o.unstaged} unstaged, ${o.untracked} untracked`):this.logger.info("No uncommitted changes detected");let c=o.hasChanges?await fGl():void 0;c&&this.logger.info(`Generated checkpoint commit message: "${c}"`),this.state={...this.state,isLoading:!1,isGitRepository:l.found,hasUncommittedChanges:o.hasChanges,fileCount:o.hasChanges?{staged:o.staged,unstaged:o.unstaged,untracked:o.untracked}:void 0,commitMessage:c,repository:n.repository,baseBranch:n.baseBranch,headBranch:n.headBranch,asyncBranch:n.asyncBranch},this.notifyStateChange();let d=Date.now()-e;this.logger.info(`STAGE 1: UncommittedChangesCheck completed in ${d}ms`),o.hasChanges||(this.logger.info("Auto-advancing to Confirm stage (no uncommitted changes)"),this.state={...this.state,stage:"confirm",isLoading:!1,isGitRepository:l.found,hasUncommittedChanges:!1},this.notifyStateChange(),await this.loadDelegationConfirmationData())}catch(l){this.setError(l,"Failed during uncommitted changes check")}}async loadDelegationConfirmationData(){if(!this.state)return;let e=Date.now();this.logger.info("STAGE 2: Confirm - Loading delegation confirmation data");try{if(this.state.repository)this.logger.info("Repository info already available from previous stage"),this.state={...this.state,isLoading:!1};else{this.logger.info("Repository info not found, fetching...");let n=await Ynt(process.cwd());this.state={...this.state,isLoading:!1,repository:n.repository,baseBranch:n.baseBranch,headBranch:n.headBranch,asyncBranch:n.asyncBranch},this.logger.info(`Loaded repository info: ${n.repository}`)}this.notifyStateChange();let l=Date.now()-e;this.logger.info(`STAGE 2: Confirm completed in ${l}ms - Waiting for user confirmation`)}catch(l){this.setError(l,"Failed to load delegation confirmation data")}}async executeDelegationOperations(){if(!this.state)return;let e=Date.now();this.logger.info("STAGE 3: Processing - Executing delegation operations");try{let l=this.buildOperationsList();this.state={...this.state,operations:l},this.notifyStateChange(),this.logger.info(`Operations to execute: ${l.map(n=>n.id).join(" \u2192 ")}`);for(let n of l){if(!this.state)break;let r=Date.now();this.logger.info(`Operation [${n.id}] - Starting...`),this.updateOperationStatus(n.id,"running");try{switch(n.id){case"commit":{let I=await kGl(process.cwd(),this.state.commitMessage);this.state={...this.state,commitHash:I.commitHash},this.logger.info(`Operation [${n.id}] - Commit created: ${I.commitHash}`);break}case"create-branch":{this.logger.info(`Operation [${n.id}] - Creating branch: ${this.state.asyncBranch}`),await JGl({cwd:process.cwd(),repository:this.state.repository,headBranch:this.state.headBranch,baseBranch:this.state.baseBranch,asyncBranch:this.state.asyncBranch}),this.logger.info(`Operation [${n.id}] - Branch created and pushed: ${this.state.asyncBranch}`),await LGl(this.state.headBranch),this.logger.info(`Operation [${n.id}] - Switched back to: ${this.state.headBranch}`);break}case"start-job":{this.logger.info(`Operation [${n.id}] - Creating job for repository: ${this.state.repository}`);let I=await BGl(this.state.repository,this.state.prompt,this.state.asyncBranch,this.state.problemContext||"",this.authInfo,this.logger);if(!I.jobId||!I.sessionId)throw new Error(`Job creation returned incomplete data: jobId=${I.jobId}, sessionId=${I.sessionId}`);this.state={...this.state,jobId:I.jobId,sessionId:I.sessionId,jobCreatedBy:I.actor.login,jobCreatedAt:I.createdAt},this.logger.info(`Operation [${n.id}] - Job created: ID=${I.jobId}, Session=${I.sessionId}, CreatedBy=${I.actor.login}`);break}case"check-job":{if(!this.state.jobId)throw new Error("No job ID available to check status");let I=1e3,s=9e4,o=Date.now(),c=!1,d=0;for(this.logger.info(`Operation [${n.id}] - Polling for PR details (max ${s}ms)...`);!c&&Date.now()-o<s;){d++;let m=await TGl({repository:this.state.repository,jobId:this.state.jobId,authInfo:this.authInfo,logger:this.logger});this.state={...this.state,jobStatus:m.status,jobResult:m.result,prNumber:m.pullRequest?.number,prUrl:m.pullRequest?.url},m.pullRequest?.number?(this.logger.info(`Operation [${n.id}] - PR details received: #${m.pullRequest.number} (after ${d} polls, ${Date.now()-o}ms)`),c=!0):await new Promise(G=>setTimeout(G,I))}if(!c)throw new mO(`Timed out waiting for pull request information after ${s}ms`,"check-job",this.state.prUrl);break}case"wait-for-session":{if(!this.state.sessionId)throw new Error("No session ID available to check status");let I=1e3,s=9e4,o=Date.now(),c=!1,d=!1,m=!1,G=0;for(this.logger.info(`Operation [${n.id}] - Waiting for session to start (max ${s}ms)...`);!c&&Date.now()-o<s;){G++;let p=await Vnt({sessionId:this.state.sessionId,authInfo:this.authInfo,logger:this.logger,integrationId:this.integrationId});if(p.resourceGlobalId&&!this.state.jobUrl){let A=Dw(this.authInfo);this.state={...this.state,jobUrl:`${A}/copilot/tasks/pull/${p.resourceGlobalId}?session_id=${this.state.sessionId}`},m=!0,this.logger.info(`Operation [${n.id}] - Job URL constructed: ${this.state.jobUrl}`)}if(this.state.prNumber&&!d){let A=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!1});this.state={...this.state,prTitle:A.title,prDraft:A.draft,prCreatedAt:A.createdAt},d=!0,this.logger.info(`Operation [${n.id}] - PR details fetched: "${A.title}"`)}p.state==="in_progress"?(this.logger.info(`Operation [${n.id}] - Session transitioned to in_progress (after ${G} polls, ${Date.now()-o}ms)`),c=!0):p.state==="completed"||p.state==="failed"||p.state==="cancelled"||p.state==="timed_out"?(this.logger.info(`Operation [${n.id}] - Session ended with state: ${p.state} (after ${G} polls, ${Date.now()-o}ms)`),c=!0):(p.state==="waiting_for_user"||p.state==="idle")&&(this.logger.info(`Operation [${n.id}] - Session in intermediate state: ${p.state} (after ${G} polls, ${Date.now()-o}ms)`),c=!0),(!c||!d||!m)&&await new Promise(A=>setTimeout(A,I))}if(!c||!d||!m){let p=[];throw c||p.push("session transition"),d||p.push("PR details"),m||p.push("job URL"),new mO(`Timed out after ${s}ms waiting for: ${p.join(", ")}`,"wait-for-session",this.state.prUrl)}break}}this.updateOperationStatus(n.id,"done");let a=Date.now()-r;this.logger.info(`Operation [${n.id}] - Completed in ${a}ms`)}catch(a){this.updateOperationStatus(n.id,"error",a.message);let I=Date.now()-r;this.logger.error(`Operation [${n.id}] - Failed after ${I}ms: ${a.message}`),await new Promise(s=>setTimeout(s,3e3)),this.setError(a,`Operation '${n.id}' failed`);return}}if(this.allOperationsComplete()){let n=Date.now()-e;this.logger.info(`STAGE 3: Processing completed in ${n}ms - All operations successful`),setTimeout(()=>this.advanceStage(),2e3)}}catch(l){this.setError(l,"Failed to execute delegation operations")}}async startJobTracking(){if(!this.state||!this.state.sessionId){this.logger.error("Cannot start job tracking: missing state or sessionId"),this.cancelDelegation();return}this.logger.info("STAGE 4: Tracking - Starting job tracking"),this.logger.info(`Tracking session: ${this.state.sessionId}`),this.state.prNumber&&this.logger.info(`Tracking PR: #${this.state.prNumber}`);let e=1e3,l=null,n=async()=>{if(!this.state||!this.state.sessionId){this.clearPollingInterval();return}try{let r=await Vnt({sessionId:this.state.sessionId,authInfo:this.authInfo,logger:this.logger,integrationId:this.integrationId}),a=this.state.sessionState;if(this.state={...this.state,sessionState:r.state},a!==r.state&&this.logger.info(`Session state changed: ${a||"unknown"} \u2192 ${r.state}`),!this.state.jobUrl&&r.resourceGlobalId){let s=Dw(this.authInfo);this.state.jobUrl=`${s}/copilot/tasks/pull/${r.resourceGlobalId}?session_id=${this.state.sessionId}`,this.logger.info(`Constructed job URL from polling: ${this.state.jobUrl}`)}if(this.state.prNumber)try{let s=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!1}),o=s.changedFiles!==this.state.prChangedFiles||s.totalAdditions!==this.state.prTotalAdditions||s.totalDeletions!==this.state.prTotalDeletions;if(this.state={...this.state,prTitle:s.title,prDraft:s.draft,prCreatedAt:s.createdAt,prChangedFiles:s.changedFiles,prTotalAdditions:s.totalAdditions,prTotalDeletions:s.totalDeletions},o||!this.state.prFiles){let c=await Nve({repository:this.state.repository,prNumber:this.state.prNumber,authInfo:this.authInfo,logger:this.logger,includeFiles:!0,maxFiles:10});this.state={...this.state,prFiles:c.files},this.logger.info(`PR files updated: ${s.changedFiles} files${s.changedFiles>10?" (showing first 10)":""}, +${s.totalAdditions} -${s.totalDeletions}`)}}catch(s){this.logError("Failed to fetch PR details",s,"warning")}if(this.notifyStateChange(),r.state==="completed"||r.state==="failed"||r.state==="cancelled"||r.state==="timed_out"){this.logger.info(`STAGE 4: Tracking - Session ended with terminal state: ${r.state}`),this.clearPollingInterval(),setTimeout(()=>this.completeDelegationOperation(),3e3);return}let I=1e3;if(r.state==="waiting_for_user"||r.state==="idle"){l===null&&(l=Date.now());let s=Date.now()-l,o=300*1e3,c=Math.floor(s/o);I=Math.min(5e3+c*5e3,3e4)}else l=null;if(I!==e){let s=e;e=I,this.clearPollingInterval(),this.pollingIntervalId=setInterval(()=>void n(),e),this.logger.info(`Polling interval adjusted: ${s}ms \u2192 ${e}ms (state: ${r.state})`)}}catch(r){this.clearPollingInterval(),this.setError(r,"Error polling session status")}};this.pollingIntervalId=setInterval(()=>void n(),e),n()}completeDelegationOperation(){this.clearPollingInterval(),this.logger.info("STAGE 5: Complete - Delegation operation completed"),this.state&&(this.logger.startGroup("Delegation Operation Summary"),this.state.jobId&&this.logger.info(`Job ID: ${this.state.jobId}`),this.state.sessionId&&this.logger.info(`Session ID: ${this.state.sessionId}`),this.state.prNumber&&this.logger.info(`PR #${this.state.prNumber}: ${this.state.prUrl||"N/A"}`),this.state.commitHash&&this.logger.info(`Commit: ${this.state.commitHash}`),this.state.asyncBranch&&this.logger.info(`Branch: ${this.state.asyncBranch}`),this.state.sessionState&&this.logger.info(`Final session state: ${this.state.sessionState}`),this.logger.endGroup()),this.timeoutId&&clearTimeout(this.timeoutId),this.timeoutId=setTimeout(()=>{this.timeoutId=null,this.logger.info("Remote delegation workflow finished - Cleaning up"),this.onSessionCompleteCallback?this.onSessionCompleteCallback():(this.state=null,this.notifyStateChange())},3e3)}buildOperationsList(){if(!this.state)return[];let e=[];return this.state.hasUncommittedChanges&&e.push({id:"commit",status:"pending"}),e.push({id:"create-branch",status:"pending"},{id:"start-job",status:"pending"},{id:"check-job",status:"pending"},{id:"wait-for-session",status:"pending"}),e}updateOperationStatus(e,l,n){if(!this.state||!this.state.operations)return;let r=this.state.operations.map(a=>a.id===e?{...a,status:l,...n?{error:n}:{}}:a);this.state={...this.state,operations:r},this.notifyStateChange()}allOperationsComplete(){return!this.state||!this.state.operations?!0:this.state.operations.every(e=>e.status==="done"||e.status==="error")}setError(e,l){this.state&&(this.logError(l||"Operation failed",e,"error"),this.state={...this.state,error:e,isLoading:!1},this.notifyStateChange())}notifyStateChange(){this.onStateChangeCallback?.(this.state)}clearPollingInterval(){this.pollingIntervalId&&(clearInterval(this.pollingIntervalId),this.pollingIntervalId=null)}logError(e,l,n="error"){if(l instanceof P7){let r=l.responseBody?` | Response: ${JSON.stringify(l.responseBody)}`:"",a=`${e} - API error - Status: ${l.status} | Message: ${l.message}${r}`;n==="error"?this.logger.error(a):this.logger.warning(a)}else{let r=`${e}: ${l instanceof Error?l.message:String(l)}`;n==="error"?this.logger.error(r):this.logger.warning(r)}}};var j7=class{turnStartTimes=new Map;turnModelCallTimes=new Map;turnToolExecutionTimes=new Map;turnToolCallCounts=new Map;startTurn(e,l){this.turnStartTimes.set(e,l),this.turnModelCallTimes.set(e,{}),this.turnToolExecutionTimes.set(e,0),this.turnToolCallCounts.set(e,0)}recordModelCall(e,l){let n=this.turnModelCallTimes.get(e)||{};n.duration=l,this.turnModelCallTimes.set(e,n)}recordToolExecution(e,l){let n=this.turnToolExecutionTimes.get(e)||0;this.turnToolExecutionTimes.set(e,n+l);let r=this.turnToolCallCounts.get(e)||0;this.turnToolCallCounts.set(e,r+1)}finishTurn(e,l){let n=this.turnStartTimes.get(e);if(n===void 0)return this.cleanup(e),null;let r=l-n,a=this.turnModelCallTimes.get(e)||{},I=this.turnToolExecutionTimes.get(e)||0,s=this.turnToolCallCounts.get(e)||0,o=a.duration||0,c={totalDurationMs:r,llmDurationMs:o,toolExecutionMs:I,toolCallCount:s,totalDurationSeconds:(r/1e3).toFixed(2),llmDurationSeconds:(o/1e3).toFixed(2),toolExecutionSeconds:(I/1e3).toFixed(2)};return this.cleanup(e),c}cleanup(e){this.turnStartTimes.delete(e),this.turnModelCallTimes.delete(e),this.turnToolExecutionTimes.delete(e),this.turnToolCallCounts.delete(e)}static formatTimingBreakdown(e){return`LLM: ${e.llmDurationSeconds}s | Tools: ${e.toolExecutionSeconds}s (${e.toolCallCount} calls) | Total: ${e.totalDurationSeconds}s`}};var R7n="You are not licensed to use Copilot.",Y7n="You are not authorized to use this Copilot feature, it requires an enterprise or organization policy to be enabled.",V7n="The provided personal access token (PAT) does not have Copilot Requests permission. Please generate a new Fine-Grained Access Token with Copilot Requests permission (not a Classic token), or log in using /login";function wnt(t){return t.includes("not licensed to use Copilot")?{kind:"not-licensed",message:R7n}:t.includes("not authorized to use this Copilot feature")?{kind:"not-authorized",message:Y7n}:t.includes("Personal Access Token does not have Copilot Requests")?{kind:"not-authorized",message:V7n}:null}import{promises as w7n}from"fs";import Qnt from"path";function Q7n(t){let e=[],l=/(?<![a-zA-Z0-9])(@[^\s@]+)/g,n;for(;(n=l.exec(t))!==null;)e.push({displayText:n[1],startIndex:n.index,endIndex:n.index+n[0].length});return e}async function F7n(t){try{let e=await w7n.stat(t);return e.isDirectory()?"directory":e.isFile()?aoe(Qnt.basename(t))?"image":"file":null}catch{return null}}async function C7n(t,e=new Map,l=process.cwd()){let n=Q7n(t),r=[];for(let a of n){let I=e.get(a.startIndex);if(I?.startIndex===a.startIndex)r.push(I);else{let s=a.displayText.slice(1).replace(/[.,;:!?]+$/,""),o=Qnt.isAbsolute(s)?s:Qnt.resolve(l,s),c=await F7n(o);if(c===null)continue;r.push({displayText:a.displayText,fullPath:o,type:c,startIndex:a.startIndex})}}return r}async function OGl(t,e=new Map,l=process.cwd(),n){let r=await C7n(t,e,l);return n.debug(`Detected mentions: ${r.map(a=>`${a.displayText} (${a.type})`).join(", ")}`),r.map(a=>({type:a.type==="image"?"file":a.type,path:a.fullPath,displayName:a.displayText,mentionIndex:a.startIndex}))}var yve=$e(tl(),1);import{EventEmitter as fnt}from"node:events";var Fnt=class extends fnt{get columns(){return 100}frames=[];_lastFrame;write=e=>{this.frames.push(e),this._lastFrame=e};lastFrame=()=>this._lastFrame},Cnt=class extends fnt{frames=[];_lastFrame;write=e=>{this.frames.push(e),this._lastFrame=e};lastFrame=()=>this._lastFrame},vnt=class extends fnt{isTTY=!0;data=null;constructor(e={}){super(),this.isTTY=e.isTTY??!0}write=e=>{this.data=e,this.emit("readable"),this.emit("data",e)};setEncoding(){}setRawMode(){}resume(){}pause(){}ref(){}unref(){}read=()=>{let{data:e}=this;return this.data=null,e}},v7n=[],UGl=t=>{let e=new Fnt,l=new Cnt,n=new vnt,r=tte(t,{stdout:e,stderr:l,stdin:n,debug:!0,exitOnCtrlC:!1,patchConsole:!1});return v7n.push(r),{rerender:r.rerender,unmount:r.unmount,cleanup:r.cleanup,stdout:e,stderr:l,stdin:n,frames:e.frames,lastFrame:e.lastFrame}};function MGl(t,e=!1){let l=yve.default.createElement(RFe,{logger:new Sd,children:yve.default.createElement(QFe,{mode:"non-interactive",children:yve.default.createElement(Zbe,{entry:t,expand:e})})}),{lastFrame:n}=UGl(l),r=n();return r?r.trim():""}var _Gl=1,Hnt=!1;function X7n(t){Hnt=t}var mQ=!1,Eve=[],Kh=null,rU=!1;async function DGl(){if(mQ||Eve.length===0)return;mQ=!0;let{integrationId:t,messageContent:e,permissionService:l,authInfo:n,resolve:r,reject:a,completePendingToolCall:I,setQuotaSnapshots:s,setContextWindowMetrics:o,setStreamingResponseSize:c,setCurrentIntent:d,session:m,logger:G,pathManager:p,cliModel:A,enableStreaming:Z,customAgents:W,trajectoryOutputFile:R,mcpHost:V,showLlmTiming:f,timingTracker:X,noCustomInstructions:x,setAvailableTools:O,customAgentPrompt:T,modelList:_,disableParallelToolsExecution:B}=Eve.shift();try{let z=await L7n(t,e,l,n,I,s,o,c,d,m,G,p,A,Z,W,R,V,f,X,x,O,T,_,B);r(z)}catch(z){z&&typeof z=="object"&&"name"in z&&z.name==="AbortError"||z&&typeof z=="object"&&"message"in z&&typeof z.message=="string"&&z.message.includes("Operation was cancelled")?r("Operation cancelled"):a(z)}finally{mQ=!1,Eve.length>0&&setTimeout(()=>void DGl(),100)}}var k7n=GZt(y0);async function L7n(t,e,l,n,r,a,I,s,o,c,d,m,G,p,A,Z,W,R,V,f,X,x,O,T){Kh=new AbortController,H7n(0,Kh.signal),s(0),o(null);try{let _=await xr.load()||{},B=await ty(n),z=_.copilot_url;!z&&B&&n.type!=="hmac"&&(z=await k7n(n.host,B,d)),VI.env.GITHUB_COPILOT_CLI_MODE="true";let se={problemStatement:e,logger:d,saveTrajectoryOutput:Z||void 0,apiCopilotIntegrationId:t,apiCopilotHmacKey:n.type==="hmac"?n.hmac:void 0,apiCopilotUrl:z,apiCopilotToken:B,serviceInstanceId:c.sessionId,mcpHost:W,saveEventLogs:VI.env.COPILOT_EVENTS_LOG_DIRECTORY};try{let me=JL()&&VI.env.COPILOT_AGENT_MODEL?VI.env.COPILOT_AGENT_MODEL:`sweagent-capi:${G}`,he=await mY(VI.cwd()),K={...se,pathManager:m,serviceAgentModel:me,requestPermission:l.request,onToolPartialOutput:(rt,It)=>{c.emitEphemeral("tool.execution_partial_result",{toolCallId:rt,partialOutput:It})},showEvents:!0,showSessionLog:!1,useSessionLogOnly:!1,abortSignal:Kh.signal,executeToolsInParallel:!T,customAgents:{available:A.map(rt=>({name:rt.id,description:rt.description,tools:rt.tools,prompt:rt.prompt})),isCustomAgentSelected:x!==void 0},gitRoot:he.gitRoot,noCustomInstructions:f},U=await mCe.createFromOptions(K);X&&X(U.getAvailableTools()),he.found&&!f&&await CEe(he.gitRoot,!0,VI.cwd());let Ie=U.getAgentKind(),ae=U.getModel(),ye=O8()[Ie]?.[ae]??T8(),be=U.getToolConfig()??{},Ve=ye.supports||{};Ve.customAgents=!0,Ve.reportIntent=!0;let Re=await V6({location:he.found?he.gitRoot:"",version:uL(),currentWorkingDirectory:VI.cwd(),parts:{},capabilities:Ve,toolConfigOverrides:be,tools:U.getAvailableTools(),organizationCustomInstructions:void 0,skipCustomInstructions:f}),We=new GCe(c,s,Hnt),le=await c.getChatContextMessages(),Me=le.findLastIndex(rt=>rt.role==="user"),ke=le[Me];typeof ke.content=="string"?ke={...ke,content:w6({customAgentPrompt:x,problemStatement:ke.content,capabilities:Ve})}:ke={...ke,content:ke.content.map(rt=>rt.type==="text"?{...rt,text:w6({customAgentPrompt:x,problemStatement:rt.text,capabilities:Ve})}:rt)};let Kt=new j4(ke,d),Zl=new yT(d),Ft=new pCe(o),zt=U.getCompletionWithTools(Re,le.map((rt,It)=>It===Me?ke:rt),{stream:p,failIfInitialInputsTooLong:!1,processors:{preRequest:[Kt,new d0e,Zl],onRequestError:[Kt],onStreamingChunk:[We,Ft]},executeToolsInParallel:!T,abortSignal:Kh.signal});for await(let rt of zt){if(Kh?.signal.aborted){let It=new Error("Operation was cancelled");throw It.name="AbortError",It}await UOt(rt,{onImageProcessingEvent:It=>{},onImageRemovalEvent:It=>{},onMessage:It=>{if(GL(It)){let qt=We.endCurrentStreamingMessage(),mn=typeof It.message.content=="string"?It.message.content:null,Il=B8(It)?It.message.tool_calls.map(Fe=>({toolCallId:Fe.id,name:Fe.function.name,arguments:eL(Fe.function.arguments)})):[];c.emit("assistant.message",{messageId:qt??mu(),content:mn||"",toolRequests:Il,parentToolCallId:rt.parentToolCallId});for(let Fe of Il)c.emit("tool.execution_start",{toolCallId:Fe.toolCallId,toolName:Fe.name,arguments:Fe.arguments})}else(It.message.role==="system"||It.message.role==="developer")&&c.emit("system.message",{role:It.message.role,content:typeof It.message.content=="string"?It.message.content:JSON.stringify(It.message.content),name:"name"in It.message?It.message.name:void 0})},onResponse:It=>{},onModelCallFailure:It=>{if(wnt(It.modelCall?.error||""))return;let mn=It.modelCall?.error||"Unknown error occurred";It.modelCall.request_id&&(mn+=` (Request ID: ${It.modelCall.request_id})`),c.emit("session.error",{errorType:"model_call",message:`Model call failed: ${mn}`})},onModelCallSuccess:async It=>{a(It.quotaSnapshots||{});let qt=It.responseChunk.model||await c.getSelectedModel(),mn=It.modelCallDurationMs||0,Il=It.responseUsage,Fe=qt?Qq(qt,O):1;c.emitEphemeral("assistant.usage",{model:qt||"unknown",inputTokens:Il?.prompt_tokens||0,outputTokens:Il?.completion_tokens||0,cost:Fe,duration:mn,initiator:It.modelCall?.initiator}),R&&V&&V.recordModelCall(It.turn,It.modelCallDurationMs)},onToolExecution:It=>{r({parentToolCallId:rt.parentToolCallId,callId:It.toolCallId,resultType:It.toolResult.resultType,log:(It.toolResult.resultType==="failure"?It.toolResult.error:void 0)||It.toolResult.sessionLog||It.toolResult.textResultForLlm}),R&&V&&V.recordToolExecution(It.turn,It.durationMs)},onTruncationEvent:It=>{I(qt=>{let mn=Math.max(qt.totalTokens,It.truncateResult.preTruncationTokensInMessages);return{...qt,totalTokens:mn,postTruncationTokens:It.truncateResult.postTruncationTokensInMessages,tokenLimit:It.truncateResult.tokenLimit,messagesRemoved:It.truncateResult.messagesRemovedDuringTruncation,tokensRemoved:It.truncateResult.tokensRemovedDuringTruncation}})},onTurnEvent:It=>{if(It.kind==="turn_started")R&&V&&V.startTurn(It.turn,It.timestampMs);else if(It.kind==="turn_ended"&&R&&V){let qt=V.finishTurn(It.turn,It.timestampMs);if(qt){let mn=j7.formatTimingBreakdown(qt);Hnt?VI.stdout.write(`
2480
2480
  \u{1F552} ${mn}
2481
2481
 
2482
2482
  `):c.emitEphemeral("session.info",{infoType:"timing",message:mn})}}}})}return await U.shutdown(),"Command completed successfully"}catch(me){let he=me&&typeof me=="object"&&"name"in me&&me.name==="AbortError",K=me&&typeof me=="object"&&"message"in me&&typeof me.message=="string"&&me.message.includes("Operation was cancelled");throw!he&&!K&&(me instanceof Error?d.error(`Command threw error: ${me.message}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@github/copilot",
3
3
  "description": "GitHub Copilot CLI brings the power of Copilot coding agent directly to your terminal.",
4
- "version": "0.0.351-10",
4
+ "version": "0.0.351-11",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "type": "module",
7
7
  "repository": {
@@ -37,6 +37,6 @@
37
37
  "worker/**/*"
38
38
  ],
39
39
  "buildMetadata": {
40
- "gitCommit": "15fc83d"
40
+ "gitCommit": "cf7b19c"
41
41
  }
42
42
  }