@easbot/utils 0.2.28 → 0.2.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,15 +1,15 @@
1
- 'use strict';var chunkJL3GR4P7_cjs=require('./chunks/chunk-JL3GR4P7.cjs'),chunkPYCQUF3V_cjs=require('./chunks/chunk-PYCQUF3V.cjs'),chunkWWPI6PC4_cjs=require('./chunks/chunk-WWPI6PC4.cjs'),chunkAHO55TRS_cjs=require('./chunks/chunk-AHO55TRS.cjs'),chunkYC4AEMOP_cjs=require('./chunks/chunk-YC4AEMOP.cjs'),chunkVRQQ33YH_cjs=require('./chunks/chunk-VRQQ33YH.cjs'),oe=require('fs/promises'),_e=require('zod'),crypto$1=require('crypto'),ge=require('path'),Le=require('fs'),child_process=require('child_process'),module$1=require('module'),hono=require('hono'),nodeServer=require('@hono/node-server'),nodeWs=require('@hono/node-ws'),streaming=require('hono/streaming'),cors=require('hono/cors'),logger=require('hono/logger'),compress=require('hono/compress'),secureHeaders=require('hono/secure-headers'),timeout=require('hono/timeout'),httpException=require('hono/http-exception'),validator=require('hono/validator'),zodValidator=require('@hono/zod-validator'),minimatch=require('minimatch'),promises=require('timers/promises'),dotenv=require('dotenv'),url=require('url'),Kr=require('markdown-it'),_n=require('yaml'),undici=require('undici'),async_hooks=require('async_hooks');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var oe__default=/*#__PURE__*/_interopDefault(oe);var _e__default=/*#__PURE__*/_interopDefault(_e);var ge__default=/*#__PURE__*/_interopDefault(ge);var Le__default=/*#__PURE__*/_interopDefault(Le);var Kr__default=/*#__PURE__*/_interopDefault(Kr);var _n__default=/*#__PURE__*/_interopDefault(_n);chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Yn(e,t){for(let r=e.length-1;r>=0;r-=1){let n=e[r];if(n!==void 0&&t(n,r,e))return n}}chunkVRQQ33YH_cjs.j();exports.Binary=void 0;(r=>{function e(n,o,s){let a=0,i=n.length-1;for(;a<=i;){let l=Math.floor((a+i)/2),p=n[l];if(p===void 0)break;let c=s(p);if(c===o)return {found:true,index:l};c<o?a=l+1:i=l-1;}return {found:false,index:a}}r.search=e;function t(n,o,s){let a=s(o),i=0,l=n.length;for(;i<l;){let p=Math.floor((i+l)/2),c=n[p];if(c===void 0)break;s(c)<a?i=p+1:l=p;}return n.splice(i,0,o),n}r.insert=t;})(exports.Binary||(exports.Binary={}));chunkVRQQ33YH_cjs.j();exports.Encode=void 0;(s=>{function e(a){let i=new TextEncoder().encode(a),l=Array.from(i,p=>String.fromCharCode(p)).join("");return btoa(l).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}s.base64Encode=e;function t(a){let i=atob(a.replace(/-/g,"+").replace(/_/g,"/")),l=Uint8Array.from(i,p=>p.charCodeAt(0));return new TextDecoder().decode(l)}s.base64Decode=t;async function r(a,i="SHA-256"){let p=new TextEncoder().encode(a),c=await crypto.subtle.digest(i,p);return Array.from(new Uint8Array(c)).map(S=>S.toString(16).padStart(2,"0")).join("")}s.hash=r;function n(a){if(!a)return;let i=2166136261;for(let l=0;l<a.length;l++)i^=a.charCodeAt(l),i=Math.imul(i,16777619);return (i>>>0).toString(36)}s.checksum=n;function o(a,i=5e5){if(!a)return;if(a.length<=i)return n(a);let l=4096,c=[0,Math.floor(a.length*.25),Math.floor(a.length*.5),Math.floor(a.length*.75),a.length-l].map(u=>{let g=Math.max(0,Math.min(a.length-l,u-Math.floor(l/2)));return n(a.slice(g,g+l))??""}).join(":");return `${a.length}:${c}`}s.sampledChecksum=o;})(exports.Encode||(exports.Encode={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();exports.Identifier=void 0;(u=>{let e={event:"evt",session:"ses",message:"msg",permission:"per",question:"que",user:"usr",part:"prt",pty:"pty",tool:"tool",workspace:"wrk",command:"cmd",task:"task",heartbeat:"hb",subagent:"sub",hook:"hok",compaction:"cmp",context:"ctx"};function t(g){return _e__default.default.string().startsWith(e[g])}u.schema=t;let r=26,n=0,o=0;function s(g,S){return i(g,false,S)}u.ascending=s;function a(g,S){return i(g,true,S)}u.descending=a;function i(g,S,R){if(!R)return p(g,S);if(!R.startsWith(e[g]))throw new Error(`ID ${R} does not start with ${e[g]}`);return R}function l(g){let S="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",R="",j=crypto$1.randomBytes(g);for(let z=0;z<g;z++){let U=j[z];U!==void 0&&(R+=S[U%62]);}return R}function p(g,S,R){let j=R??Date.now();j!==n&&(n=j,o=0),o++;let z=BigInt(j)*BigInt(4096)+BigInt(o);z=S?~z:z;let U=Buffer.alloc(6);for(let D=0;D<6;D++)U[D]=Number(z>>BigInt(40-8*D)&BigInt(255));return e[g]+"_"+U.toString("hex")+l(r-12)}u.create=p;function c(g){let S=g.split("_")[0];if(!S)return 0;let R=g.slice(S.length+1,S.length+13),j=BigInt("0x"+R);return Number(j/BigInt(4096))}u.timestamp=c;})(exports.Identifier||(exports.Identifier={}));exports.TruncateContent=void 0;(i=>{i.DIR=chunkJL3GR4P7_cjs.c.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-truncate"),i.DEFAULT_MAX_CHARS=4e3,i.DIRECTION="head";function n(l,p,c){return c?`[Content truncated. Source: ${c}
1
+ 'use strict';var chunkJL3GR4P7_cjs=require('./chunks/chunk-JL3GR4P7.cjs'),chunkPYCQUF3V_cjs=require('./chunks/chunk-PYCQUF3V.cjs'),chunkWWPI6PC4_cjs=require('./chunks/chunk-WWPI6PC4.cjs'),chunkAHO55TRS_cjs=require('./chunks/chunk-AHO55TRS.cjs'),chunkYC4AEMOP_cjs=require('./chunks/chunk-YC4AEMOP.cjs'),chunkVRQQ33YH_cjs=require('./chunks/chunk-VRQQ33YH.cjs'),oe=require('fs/promises'),_e=require('zod'),crypto$1=require('crypto'),ge=require('path'),Le=require('fs'),child_process=require('child_process'),module$1=require('module'),hono=require('hono'),nodeServer=require('@hono/node-server'),nodeWs=require('@hono/node-ws'),streaming=require('hono/streaming'),cors=require('hono/cors'),logger=require('hono/logger'),compress=require('hono/compress'),secureHeaders=require('hono/secure-headers'),timeout=require('hono/timeout'),httpException=require('hono/http-exception'),validator=require('hono/validator'),zodValidator=require('@hono/zod-validator'),minimatch=require('minimatch'),promises=require('timers/promises'),dotenv=require('dotenv'),url=require('url'),Kr=require('markdown-it'),_n=require('yaml'),undici=require('undici'),async_hooks=require('async_hooks');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var oe__default=/*#__PURE__*/_interopDefault(oe);var _e__default=/*#__PURE__*/_interopDefault(_e);var ge__default=/*#__PURE__*/_interopDefault(ge);var Le__default=/*#__PURE__*/_interopDefault(Le);var Kr__default=/*#__PURE__*/_interopDefault(Kr);var _n__default=/*#__PURE__*/_interopDefault(_n);chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Gn(e,t){for(let r=e.length-1;r>=0;r-=1){let n=e[r];if(n!==void 0&&t(n,r,e))return n}}chunkVRQQ33YH_cjs.j();exports.Binary=void 0;(r=>{function e(n,o,s){let a=0,i=n.length-1;for(;a<=i;){let l=Math.floor((a+i)/2),p=n[l];if(p===void 0)break;let c=s(p);if(c===o)return {found:true,index:l};c<o?a=l+1:i=l-1;}return {found:false,index:a}}r.search=e;function t(n,o,s){let a=s(o),i=0,l=n.length;for(;i<l;){let p=Math.floor((i+l)/2),c=n[p];if(c===void 0)break;s(c)<a?i=p+1:l=p;}return n.splice(i,0,o),n}r.insert=t;})(exports.Binary||(exports.Binary={}));chunkVRQQ33YH_cjs.j();exports.Encode=void 0;(s=>{function e(a){let i=new TextEncoder().encode(a),l=Array.from(i,p=>String.fromCharCode(p)).join("");return btoa(l).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}s.base64Encode=e;function t(a){let i=atob(a.replace(/-/g,"+").replace(/_/g,"/")),l=Uint8Array.from(i,p=>p.charCodeAt(0));return new TextDecoder().decode(l)}s.base64Decode=t;async function r(a,i="SHA-256"){let p=new TextEncoder().encode(a),c=await crypto.subtle.digest(i,p);return Array.from(new Uint8Array(c)).map(S=>S.toString(16).padStart(2,"0")).join("")}s.hash=r;function n(a){if(!a)return;let i=2166136261;for(let l=0;l<a.length;l++)i^=a.charCodeAt(l),i=Math.imul(i,16777619);return (i>>>0).toString(36)}s.checksum=n;function o(a,i=5e5){if(!a)return;if(a.length<=i)return n(a);let l=4096,c=[0,Math.floor(a.length*.25),Math.floor(a.length*.5),Math.floor(a.length*.75),a.length-l].map(u=>{let g=Math.max(0,Math.min(a.length-l,u-Math.floor(l/2)));return n(a.slice(g,g+l))??""}).join(":");return `${a.length}:${c}`}s.sampledChecksum=o;})(exports.Encode||(exports.Encode={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();exports.Identifier=void 0;(u=>{let e={event:"evt",session:"ses",message:"msg",permission:"per",question:"que",user:"usr",part:"prt",pty:"pty",tool:"tool",workspace:"wrk",command:"cmd",task:"task",heartbeat:"hb",subagent:"sub",hook:"hok",compaction:"cmp",context:"ctx"};function t(g){return _e__default.default.string().startsWith(e[g])}u.schema=t;let r=26,n=0,o=0;function s(g,S){return i(g,false,S)}u.ascending=s;function a(g,S){return i(g,true,S)}u.descending=a;function i(g,S,P){if(!P)return p(g,S);if(!P.startsWith(e[g]))throw new Error(`ID ${P} does not start with ${e[g]}`);return P}function l(g){let S="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",P="",j=crypto$1.randomBytes(g);for(let z=0;z<g;z++){let U=j[z];U!==void 0&&(P+=S[U%62]);}return P}function p(g,S,P){let j=P??Date.now();j!==n&&(n=j,o=0),o++;let z=BigInt(j)*BigInt(4096)+BigInt(o);z=S?~z:z;let U=Buffer.alloc(6);for(let D=0;D<6;D++)U[D]=Number(z>>BigInt(40-8*D)&BigInt(255));return e[g]+"_"+U.toString("hex")+l(r-12)}u.create=p;function c(g){let S=g.split("_")[0];if(!S)return 0;let P=g.slice(S.length+1,S.length+13),j=BigInt("0x"+P);return Number(j/BigInt(4096))}u.timestamp=c;})(exports.Identifier||(exports.Identifier={}));exports.TruncateContent=void 0;(i=>{i.DIR=chunkJL3GR4P7_cjs.c.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-truncate"),i.DEFAULT_MAX_CHARS=4e3,i.DIRECTION="head";function n(l,p,c){return c?`[Content truncated. Source: ${c}
2
2
  Full ${p} saved to: ${l}
3
3
  Use Read tool with offset/limit parameters to view specific sections.]`:`[Content truncated. Full ${p} saved to: ${l}
4
- Use Read tool with offset/limit parameters to view specific sections.]`}function o(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let R=l.length-c,j;u==="head"?j=l.slice(0,c):j=l.slice(-c);let z=n("[save-path]",g,S),U=u==="head"?`
4
+ Use Read tool with offset/limit parameters to view specific sections.]`}function o(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let P=l.length-c,j;u==="head"?j=l.slice(0,c):j=l.slice(-c);let z=n("[save-path]",g,S),U=u==="head"?`
5
5
 
6
- ...${R} characters truncated...
6
+ ...${P} characters truncated...
7
7
 
8
8
  ${z}`:`
9
9
 
10
- ...${R} characters truncated...
10
+ ...${P} characters truncated...
11
11
 
12
- ${z}`;return {content:j+U,truncated:true,outputPath:"[save-path]",originalLength:l.length,removedLength:R,label:g}}i.truncate=o;async function s(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.dir??i.DIR,R=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let j=exports.Identifier.ascending("context"),z=chunkJL3GR4P7_cjs.c.join(S,j);await oe__default.default.mkdir(S,{recursive:true}).catch(()=>{}),await oe__default.default.writeFile(z,l,"utf-8");let U=l.length-c,D;u==="head"?D=l.slice(0,c):D=l.slice(-c);let ae=n(z,g,R),Se=u==="head"?`
12
+ ${z}`;return {content:j+U,truncated:true,outputPath:"[save-path]",originalLength:l.length,removedLength:P,label:g}}i.truncate=o;async function s(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.dir??i.DIR,P=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let j=exports.Identifier.ascending("context"),z=chunkJL3GR4P7_cjs.c.join(S,j);await oe__default.default.mkdir(S,{recursive:true}).catch(()=>{}),await oe__default.default.writeFile(z,l,"utf-8");let U=l.length-c,D;u==="head"?D=l.slice(0,c):D=l.slice(-c);let ae=n(z,g,P),Se=u==="head"?`
13
13
 
14
14
  ...${U} characters truncated...
15
15
 
@@ -17,11 +17,11 @@ ${ae}`:`
17
17
 
18
18
  ...${U} characters truncated...
19
19
 
20
- ${ae}`;return {content:D+Se,truncated:true,outputPath:z,originalLength:l.length,removedLength:U,label:g}}i.truncateAndSave=s;function a(l){return l.truncated?n(l.outputPath,l.label):""}i.formatHint=a;})(exports.TruncateContent||(exports.TruncateContent={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function rt(e,t=true){let r=typeof e=="number"?new Date(e):e,n=r.getTimezoneOffset(),o=Math.floor(Math.abs(n)/60),s=Math.abs(n)%60,i=`${n<=0?"+":"-"}${String(o).padStart(2,"0")}:${String(s).padStart(2,"0")}`,l=r.getFullYear(),p=String(r.getMonth()+1).padStart(2,"0"),c=String(r.getDate()).padStart(2,"0"),u=String(r.getHours()).padStart(2,"0"),g=String(r.getMinutes()).padStart(2,"0"),S=String(r.getSeconds()).padStart(2,"0"),R=`${l}-${p}-${c}T${u}:${g}:${S}`;if(t){let j=String(r.getMilliseconds()).padStart(3,"0");R+=`.${j}`;}return R+=i,R}function ot(e){return rt(e,false)}function qt(){return Date.now()}function Zn(e=true){return rt(qt(),e)}function Xn(e){return e.includes("+")||e.includes("-")?new Date(e):new Date(e)}function Qn(e){let t=typeof e=="number"?new Date(e):e,r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0"),i=String(t.getSeconds()).padStart(2,"0");return `${r}-${n}-${o}T${s}:${a}:${i}`}function er(e=new Date){let t=e.getTimezoneOffset(),r=Math.floor(Math.abs(t)/60),n=Math.abs(t)%60;return `${t<=0?"+":"-"}${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}`}exports.SessionTitle=void 0;(i=>{let e="New session - ",t="Child session - ";i.parentTitlePrefix=e,i.childTitlePrefix=t;function o(l=false){return (l?t:e)+ot(new Date)}i.createDefault=o;function s(l){return new RegExp(`^(${e}|${t})\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$`).test(l)}i.isDefault=s;function a(l){let p=l.match(/^(.+) \(fork #(\d+)\)$/);if(p){let c=p[1]??"",u=parseInt(p[2]??"0",10);return `${c} (fork #${u+1})`}return `${l} (fork #1)`}i.getForked=a;})(exports.SessionTitle||(exports.SessionTitle={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Vt(e){let t,r=false,n=()=>(r||(t=e(),r=true),t);return n.reset=()=>{r=false,t=void 0;},n}var $e=Vt;function Gt(e){let t,r=()=>(t||(t=e()),t);return r.reset=()=>{t=void 0;},r}var tr=Gt;exports.Lazy=void 0;(r=>(r.lazy=Vt,r.lazyAsync=Gt))(exports.Lazy||(exports.Lazy={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();var ne=chunkWWPI6PC4_cjs.a.create({service:"server"});function ie(e={}){let t=e.port??3e3,r=e.hostname??"0.0.0.0",n=new hono.Hono({strict:true,getPath:a=>{try{return new URL(a.url).pathname}catch{return a.url}}});if(e.onError?n.onError(e.onError):n.onError((a,i)=>(ne.error("Server error",{error:a.message,stack:a.stack}),a instanceof httpException.HTTPException?a.getResponse():i.json({error:"Internal Server Error",message:a.message},500))),e.onNotFound?n.notFound(e.onNotFound):n.notFound(a=>a.json({error:"Not Found",path:a.req.path},404)),!e.websockets&&e.cors&&n.use(cors.cors(typeof e.cors=="boolean"?{origin:"*"}:e.cors)),n.use(logger.logger((a,...i)=>ne.info(a,i))),!e.websockets&&e.secureHeaders&&n.use(secureHeaders.secureHeaders()),!e.websockets&&e.compression&&n.use(compress.compress({encoding:"gzip"})),!e.websockets&&e.timeout&&n.use(timeout.timeout(e.timeout)),e.middlewares)for(let a of e.middlewares)a.path?n.use(a.path,a.handler):n.use(a.handler);if(e.routes)for(let a of e.routes){let i=a.middlewares||[],l=a.method.toUpperCase();a.validation?n.on(l,a.path,zodValidator.zValidator("json",a.validation),...i,a.handler):n.on(l,a.path,...i,a.handler);}e.rpc&&n.post("/rpc/:method",async a=>{let i=a.req.param("method"),l=e.rpc?.[i];if(!l)return a.json({error:"RPC method not found"},404);try{let p=await a.req.json(),c=await l(p,a);return a.json({result:c})}catch(p){return ne.error("RPC error",{method:i,error:p.message}),a.json({error:"RPC execution failed",message:p.message},500)}}),e.fetch&&n.all("*",async a=>await e.fetch(a.req.raw));let o=null,s={url:new URL(`http://${r}:${t}`),port:t,hostname:r,hono:n,async stop(a=false){return o?new Promise((i,l)=>{a&&o.closeAllConnections?.(),o.close(p=>{p?(ne.error("Error closing server",{error:p.message}),l(p)):(o=null,ne.info(`Server on port ${t} stopped`),i());}),setTimeout(()=>{ne.warn(`Server shutdown timeout on port ${t}`),o=null,i();},5e3);}):Promise.resolve()},get raw(){return o||void 0}};return ne.debug("createServer: calling serve()",{port:t,hostname:r}),o=nodeServer.serve({fetch:n.fetch,port:t,hostname:r}),ne.debug("createServer: serve() returned, server created"),ne.info(`Server running on http://${r}:${t}`),s}function it(e){return ie({rpc:e,port:3e3})}function sr(e,t=3e3,r="0.0.0.0"){return ie({fetch:e,port:t,hostname:r})}function at(e,t={}){return ie({...t,routes:e})}function lt(e,t={}){return ie({...t,websockets:e})}function ct(e,t={}){let r=Object.entries(e).map(([n,o])=>({method:"get",path:`/stream/${n}`,handler:s=>streaming.streamSSE(s,async a=>{for await(let i of o(s))await a.writeSSE(i);})}));return ie({...t,routes:r,streaming:true})}chunkVRQQ33YH_cjs.j();var ce=chunkWWPI6PC4_cjs.a.create({service:"build-api"});async function an(){try{return {available:!0,version:(await import('./chunks/main-RIJAJS2R.cjs')).version||"unknown"}}catch(e){return ce.warn("esbuild not available",{error:e.message}),{available:false}}}async function Be(){let e=await an();if(!e.available)throw new Error("esbuild is required but not installed. Please install it using: pnpm add -D esbuild");e.version&&e.version<"0.17.0"&&ce.warn(`esbuild version ${e.version} may have limited features. Consider upgrading to 0.17+`);}function cr(e){if(e!==void 0)return typeof e=="boolean"?{target:void 0}:typeof e=="string"?{target:e}:e}function ln(e){let t=cr(e.compile);t&&ce.warn("compile option is no longer supported (Bun runtime removed). The option will be ignored.");let r={entryPoints:e.entrypoints,outdir:e.outdir,bundle:e.bundle??true,conditions:e.conditions,external:e.external,format:e.format??"esm",platform:e.platform??(e.target==="browser"?"browser":"node"),minify:e.minify??false,treeShaking:true,splitting:e.splitting,sourcemap:ur(e.sourcemap),sourcesContent:true,define:e.define,inject:e.inject,legalComments:"eof",loader:e.loader,entryNames:e.entryNames,chunkNames:e.chunkNames,assetNames:e.assetNames,publicPath:e.publicPath,tsconfig:e.tsconfig,charset:"utf8",color:true,logLevel:"info",logLimit:50,plugins:e.plugins??[],metafile:true,write:e.write??true};return t?.outfile&&!e.outdir&&(r.outfile=t.outfile,delete r.outdir),e.target&&(r.target=dr(e.target)),e.minify===true&&(r.minifyWhitespace=true,r.minifyIdentifiers=true,r.minifySyntax=true),fr(r)}function ur(e){return !e||e==="none"?false:e}function dr(e){let t={browser:"es2020",node:"node16",bun:"esnext"};return e?t[e]||e:"esnext"}function fr(e){let t={};for(let r of Object.keys(e))e[r]!==void 0&&(t[r]=e[r]);return t}function Ae(e){if(e!==void 0)return e.replace(/\\/g,"/")}function nn(e,t,r){let n=[];if(e.outputFiles)for(let s of e.outputFiles)n.push({path:Ae(s.path)||s.path,size:s.contents?.length||0});if(e.metafile?.outputs)for(let[s,a]of Object.entries(e.metafile.outputs)){let i=a;n.some(l=>l.path===s||l.path===Ae(s))||n.push({path:Ae(s)||s,size:i.bytes||0});}let o=[];if(e.errors?.length>0)for(let s of e.errors)o.push({level:"error",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});if(e.warnings?.length>0)for(let s of e.warnings)o.push({level:"warning",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});return {outputs:n,success:e.errors?.length===0,logs:o,metafile:e.metafile}}async function dt(e){ce.info("Build started",{entrypoints:e.entrypoints,target:e.target,format:e.format,compile:typeof e.compile}),await Be();let t=await import('./chunks/main-RIJAJS2R.cjs'),r=Date.now();try{let n=ln(e);ce.debug("esbuild options",n);let o=await t.build(n),s=Date.now();return ce.info("Build completed",{duration:s-r,outputs:(o?.outputFiles?.length??0)>0||Object.keys(o.metafile?.outputs||{}).length>0}),nn(o,r,s)}catch(n){let o=Date.now(),s=n.message;return ce.error("Build failed",{error:s,duration:o-r}),n&&typeof n=="object"&&"errors"in n?nn(n):{outputs:[],success:false,logs:[{level:"error",message:s}],metafile:void 0}}}var yr={build:dt},cn=yr;chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function re(e){let t=[],r="",n=0;for(;n<e.length&&(e[n]===" "||e[n]===" ");)n++;for(;n<e.length;){let o=e[n];if(o===" "||o===" "){for(r.length>0&&(t.push(r),r="");n<e.length&&(e[n]===" "||e[n]===" ");)n++;continue}if(o==='"'){for(n++;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){let a=e[n+1];if(a==='"'||a==="\\"||a==="$"||a==="`"){r+=a,n+=2;continue}}if(s==='"'){n++;break}r+=s,n++;}continue}if(o==="'"){for(n++;n<e.length;){let s=e[n];if(s==="'"){n++;break}r+=s,n++;}continue}r+=o,n++;}return r.length>0&&t.push(r),t}function un(e){return /[|&;<>()$`!#]/.test(e)}function dn(e){let t=re(e);if(t.length===0)return {command:"",args:[]};let r={command:t[0],args:t.slice(1)};if(r.args.length>0){let n=r.args[r.args.length-1];try{let o=JSON.parse(n);typeof o=="object"&&o!==null&&!Array.isArray(o)&&(r.options=o,r.args=r.args.slice(0,-1));}catch{}}return r}function ft(e,t=process.platform==="win32"?"windows":"unix"){return t==="windows"?e.includes(" ")||e.includes("&")||e.includes("|")||e.includes("<>")||e.includes("^")||e.includes('"')||e.includes("%")?`"${e.replace(/%/g,"%%").replace(/"/g,'^"')}"`:e:e.includes(" ")||e.includes("'")||e.includes('"')||e.includes("$")||e.includes("`")||e.includes("\\")||e.includes("!")||e.includes("#")||e.includes("&")||e.includes("*")||e.includes("?")||e.includes("|")||e.includes("<")||e.includes(">")||e.includes("(")||e.includes(")")||e.includes(";")?`'${e.replace(/'/g,"'\\''")}'`:e}var xr=new Set(["&&","||","|",";","&",">","<",">>","<<","2>","2>>","1>","1>>","2>&1","2>&2","1>&1","1>&2",">&","<&",">&1","<&1",">&2","<&2"]);function fn(e,t=process.platform==="win32"?"windows":"unix"){return xr.has(e)?e:ft(e,t)}function pn(){return process.platform==="win32"?"windows":"unix"}function pe(e,t,r=process.platform==="win32"?"windows":"unix"){let n=t.map(o=>fn(o,r));return [e,...n].join(" ")}function mn(e){if(e==null)return "";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(t=>mn(t)).join(" ");if(e&&typeof e=="object"){if("raw"in e)return String(e.raw);if("toString"in e&&typeof e.toString=="function")return e.toString();if(e instanceof ReadableStream)throw new Error("ReadableStream expressions are not yet supported")}return String(e)}function wr(e,t,r){return {stdout:e,stderr:t,exitCode:r,text(n="utf-8"){return e.toString(n)},json(){let n=e.toString("utf-8");return JSON.parse(n)},arrayBuffer(){let n=e.buffer;if(n instanceof ArrayBuffer)return n.slice(e.byteOffset,e.byteOffset+e.byteLength);let o=new ArrayBuffer(e.byteLength),s=new Uint8Array(o),a=new Uint8Array(n,e.byteOffset,e.byteLength);return s.set(a),o},bytes(){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)},blob(){let n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return new Blob([n])}}}function me(e,t={}){let r=re(e);if(r.length===0)throw new Error("Empty shell command");let n=async()=>{let s=await exports.PKG.run(r,{cwd:t.cwd,env:t.env}),a=wr(Buffer.from(s.stdout,"utf-8"),Buffer.from(s.stderr,"utf-8"),s.code);if(s.code!==0&&!t.nothrow)throw Object.assign(new Error(`Command failed with exit code ${s.code}: ${e}
21
- ${s.stderr}`),{stdout:a.stdout,stderr:a.stderr,exitCode:a.exitCode});return a},o=n();return Object.defineProperty(o,"stdin",{get(){throw new Error("stdin is not yet supported in EasbotShell. Use PKG.spawn for interactive commands.")},enumerable:true}),o.cwd=function(s){return me(e,{...t,cwd:s})},o.env=function(s){return me(e,{...t,env:s})},o.quiet=function(){return me(e,{...t,quiet:true})},o.lines=async function*(){let i=(await n()).text().split(/\r?\n/);for(let l of i)l.trim()&&(yield l);},o.text=async function(s="utf-8"){return (await n()).text(s)},o.json=async function(){return (await n()).json()},o.arrayBuffer=async function(){return (await n()).arrayBuffer()},o.blob=async function(){return (await n()).blob()},o.nothrow=function(){return me(e,{...t,nothrow:true})},o.throws=function(s){return me(e,{...t,nothrow:!s})},o}var Te=class{constructor(t={}){chunkVRQQ33YH_cjs.c(this,"options");this.options=t;}call(t,...r){let n="";for(let o=0;o<t.length;o++)n+=t[o],o<r.length&&r[o]!==void 0&&(n+=mn(r[o]));return me(n,this.options)}braces(t){let r=t.match(/^(.*?)\{([^}]+)\}(.*)$/);if(!r)return [t];let[,n="",o="",s=""]=r,a=o.split(",").map(l=>l.trim()),i=[];for(let l of a){let p=`${n}${l}${s}`;p.includes("{")?i.push(...this.braces(p)):i.push(p);}return i}escape(t){return process.platform==="win32"?t.replace(/([&|<>^"%])/g,"^$1"):t.replace(/(["\s'$`\\!*?#&;()<>|])/g,"\\$1")}env(t){return ue({...this.options,env:t})}cwd(t){return ue({...this.options,cwd:t})}nothrow(){return ue({...this.options,nothrow:true})}throws(t){return ue({...this.options,nothrow:!t})}};function ue(e={}){let t=new Te(e);return new Proxy(t,{apply(r,n,o){return t.call(o[0],...o.slice(1))}})}var gn=ue();function hn(e){return e.replace(/\\/g,"/")}function bn(e){return crypto$1.createHash("md5").update(e).digest("hex").slice(0,8)}var X=new Map;exports.PKG=void 0;(L=>{let e=chunkWWPI6PC4_cjs.a.create({service:"pkg"});async function t(x){let m=x?[x]:["npm","pnpm","bun"];for(let f of m){let d=await L.which(f);if(d)return {name:f,path:d}}}L.packageManager=t;async function r(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+ge__default.default.delimiter+d:f,y=bn(w),b=`${x}:${y}`;if(X.has(b))return X.get(b);let E=process.platform==="win32"?"where":"which";try{let{spawn:T}=await import('child_process');return new Promise(M=>{let O=T(E,[x],{env:{...process.env,PATH:w},stdio:["pipe","pipe","ignore"],windowsHide:!0}),W="",A="";O.stdout?.on("data",H=>{W+=H.toString();}),O.stderr?.on("data",H=>{A+=H.toString();}),O.on("close",H=>{if(H===0&&W.trim()){let F=W.trim().split(`
22
- `),$=F.length>0?F[0]?.trim():null;if($){X.set(b,$),M($);return}}X.set(b,null),M(null);}),setTimeout(()=>{O.kill(),X.set(b,null),M(null);},5e3);})}catch{return X.set(b,null),null}}L.which=r;function n(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+ge__default.default.delimiter+d:f,y=bn(w),b=`${x}:${y}`;if(X.has(b))return X.get(b);let E=process.platform==="win32"?"where":"which";try{let T=child_process.execSync(`${E} ${x}`,{encoding:"utf-8",stdio:["pipe","pipe","ignore"],env:{...process.env,PATH:w},timeout:5e3,windowsHide:!0});if(T.trim()){let M=T.trim().split(`
23
- `),O=M.length>0?M[0]?.trim():null;if(O)return X.set(b,O),O}}catch{}return X.set(b,null),null}L.whichSync=n;function o(){X.clear();}L.clearWhichCache=o;let s=module$1.createRequire(chunkVRQQ33YH_cjs.i);async function a(x,m,f){try{let d=[];if(f?.extraPaths)for(let w of f.extraPaths){let y=ge__default.default.join(w,"node_modules");d.push(y);}return m&&d.push(m),d.length>0?s.resolve(x,{paths:d}):s.resolve(x)}catch(d){throw new Error(`Cannot resolve module "${x}"${m?` from "${m}"`:""}: ${d instanceof Error?d.message:String(d)}`)}}L.resolve=a;function i(x){return {get name(){return ge__default.default.basename(x)},async exists(){try{return await oe__default.default.access(x),!0}catch{return false}},async getSize(){try{return (await oe__default.default.stat(x)).size}catch{return}},async text(){return await oe__default.default.readFile(x,"utf-8")},textSync(){return Le__default.default.readFileSync(x,"utf-8")},jsonSync(){let m=Le__default.default.readFileSync(x,"utf-8");return JSON.parse(m)},async bytes(){e.debug("[PKG.file.bytes] reading file:",{filePath:x});let m=await oe__default.default.readFile(x);return e.debug("[PKG.file.bytes] read succeeded, size:",{size:m.length}),new Uint8Array(m.buffer,m.byteOffset,m.byteLength)},async arrayBuffer(){let m=await oe__default.default.readFile(x);return m.buffer.slice(m.byteOffset,m.byteOffset+m.byteLength)},get type(){let m=ge__default.default.extname(x).toLowerCase();return {".txt":"text/plain",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".xml":"application/xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".pdf":"application/pdf",".zip":"application/zip",".wav":"audio/wav",".mp3":"audio/mpeg",".mp4":"video/mp4",".webm":"video/webm"}[m]||"application/octet-stream"},async write(m){let f;if(m instanceof Response){let d=await m.arrayBuffer();f=new Uint8Array(d);}else f=m;await oe__default.default.writeFile(x,f);},async json(){let m=await oe__default.default.readFile(x,"utf-8");return JSON.parse(m)},async stat(){return await oe__default.default.stat(x)}}}L.file=i;async function l(x,m,f){let d;if(m instanceof Response){let w=await m.arrayBuffer();d=new Uint8Array(w);}else d=m;await oe__default.default.writeFile(x,d,f?{mode:f.mode}:void 0);}L.write=l;function p(x,m,f){Le__default.default.writeFileSync(x,m,f?{mode:f.mode}:void 0);}L.writeSync=p;function c(x,m="utf-8"){return Le__default.default.readFileSync(x,m)}L.readSync=c;function u(x,m){let f,d;if(typeof x=="object"&&"cmd"in x){let T=x;f=T.cmd,d={cwd:T.cwd,env:T.env,stdout:T.stdout,stderr:T.stderr,stdin:T.stdin,signal:T.signal,windowsHide:T.windowsHide,shell:T.shell};}else f=Array.isArray(x)?x:[x],d=m||{};if(!f||f.length===0||!f[0])throw new Error("Spawn command cannot be empty");let w=[d.stdin==="inherit"?"inherit":d.stdin==="null"?"ignore":"pipe",d.stdout==="inherit"?"inherit":d.stdout==="null"?"ignore":"pipe",d.stderr==="inherit"?"inherit":d.stderr==="null"?"ignore":"pipe"],y={cwd:d.cwd,env:d.env?{...process.env,...d.env}:process.env,stdio:w,timeout:d.timeout};d.shell!==void 0&&(y.shell=d.shell),process.platform==="win32"&&(y.windowsHide=d.windowsHide??true);let b=child_process.spawn(f[0],f.slice(1),y),k;if(d.signal){k=()=>{b.kill();},d.signal.addEventListener("abort",k,{once:true});let T=()=>{k&&(d.signal?.removeEventListener("abort",k),k=void 0);};b.on("close",T),b.on("error",T);}let E=new Promise((T,M)=>{let O=false,W=()=>{O||(O=true,b.removeAllListeners());};if(b.on("close",A=>{W(),T(A??0);}),b.on("error",A=>{W(),M(A);}),d.timeout!==false){let A=d.timeout||3e5;setTimeout(()=>{if(!O){e.debug(`Process timeout after ${A}ms, killing process`,{cmd:f.join(" ")}),W();try{b.kill("SIGKILL");}catch{}M(new Error(`Process timeout after ${A}ms: ${f.join(" ")}`));}},A);}});return {stdout:b.stdout,stderr:b.stderr,stdin:b.stdin,pid:b.pid,exited:E,exitCode:b.exitCode,kill:T=>b.kill(T)}}L.spawn=u;async function g(x,m){let f=m?.stdin??"null",d=m?.stdout??"pipe",w=m?.stderr??"pipe",y=u(x,{cwd:m?.cwd,env:m?.env,stdin:f,stdout:d,stderr:w,windowsHide:m?.windowsHide,shell:m?.shell}),b=[],k=[];d==="pipe"&&y.stdout?.on("data",T=>{b.push(T);}),w==="pipe"&&y.stderr?.on("data",T=>{k.push(T);});let E=m?.timeout&&m.timeout>0?setTimeout(()=>{try{y.kill("SIGKILL");}catch{}y.stdout?.destroy(),y.stderr?.destroy(),y.stdin?.end();},m.timeout):void 0;try{let T=await y.exited;return clearTimeout(E),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:T,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")}}catch(T){return clearTimeout(E),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:-1,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")||(T instanceof Error?T.message:String(T))}}}L.run=g;async function S(x,m={},f={}){let d=u(x,{cwd:m.cwd,env:m.env,stdout:"pipe",stderr:"pipe",stdin:"null"}),w="",y="";d.stdout?.on("data",k=>{let E=k.toString("utf-8");w+=E,f.onStdout?.(E);}),d.stderr?.on("data",k=>{let E=k.toString("utf-8");y+=E,f.onStderr?.(E);});let b=m.timeout&&m.timeout>0?setTimeout(()=>{try{d.kill("SIGKILL");}catch{}d.stdout?.destroy(),d.stderr?.destroy();},m.timeout):void 0;try{let k=await d.exited;return clearTimeout(b),f.onExit?.(k),{code:k,stdout:w,stderr:y}}catch(k){clearTimeout(b);let E=k instanceof Error?k.message:String(k);return {code:-1,stdout:w,stderr:y||E}}}L.runWithStream=S;async function R(x){if(typeof x.pipeThrough=="function")try{let w=new TextDecoderStream("utf-8"),b=x.pipeThrough(w).getReader(),k="";try{for(;;){let{done:E,value:T}=await b.read();if(E)break;k+=T;}return k}finally{b.releaseLock();}}catch{}let m=x.getReader(),f=new TextDecoder("utf-8"),d=[];try{for(;;){let{done:w,value:y}=await m.read();if(w)break;d.push(f.decode(y,{stream:!0}));}return d.push(f.decode()),d.join("")}finally{m.releaseLock();}}L.readableStreamToText=R;async function j(x){let m=[];return new Promise((f,d)=>{x.on("data",w=>{typeof w=="string"?m.push(Buffer.from(w)):m.push(w);}),x.on("end",()=>{try{let y=Buffer.concat(m).toString("utf-8");f(y);}catch(w){d(w);}}),x.on("error",w=>{d(w);});})}L.nodeReadableStreamToText=j;function z(x,m=0){let E=new TextEncoder().encode(x),T=E.length,M,O=0;if(T>=16){let F=T-16,$=m+2654435761+2246822519|0,Q=m+2246822519|0,Y=m+0|0,Z=m-2654435761|0;for(;O<=F;)$=W($,H(E,O)),O+=4,Q=W(Q,H(E,O)),O+=4,Y=W(Y,H(E,O)),O+=4,Z=W(Z,H(E,O)),O+=4;M=A($,1)+A(Q,7)+A(Y,12)+A(Z,18)|0;}else M=m+374761393|0;for(M=M+T|0;O+4<=T;)M=M+H(E,O)*3266489917|0,M=A(M,17)*668265263|0,O+=4;for(;O<T;)M=M+E[O]*374761393|0,M=A(M,11)*2654435761|0,O++;return M^=M>>>15,M=M*2246822519|0,M^=M>>>13,M=M*3266489917|0,M^=M>>>16,M>>>0;function W(F,$){return F=F+$*2246822519|0,F=A(F,13),F=F*2654435761|0,F}function A(F,$){return F<<$|F>>>32-$|0}function H(F,$){return (F[$]|F[$+1]<<8|F[$+2]<<16|F[$+3]<<24)>>>0}}L.xxHash32=z;function U(x){let m=0;for(let f of x){let d=f.codePointAt(0)||f.charCodeAt(0);d<127?m+=1:d>=4352&&d<=4447||d>=9001&&d<=9002||d>=11904&&d<=42191&&d!==12351||d>=44032&&d<=55203||d>=63744&&d<=64255||d>=65040&&d<=65049||d>=65072&&d<=65135||d>=65280&&d<=65376||d>=65504&&d<=65510?m+=2:m+=1;}return m}L.stringWidth=U;class D{constructor(m){chunkVRQQ33YH_cjs.c(this,"pattern");this.pattern=m;}async*scan(m){let f=chunkAHO55TRS_cjs.b.stream(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for await(let d of f)yield hn(d);}*scanSync(m){let f=chunkAHO55TRS_cjs.a(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for(let d of f)yield hn(d);}match(m){return minimatch.minimatch(m,this.pattern)}}L.Glob=D,L.stdin=process.stdin,L.stdout=process.stdout,L.stderr=process.stderr,L.sleep=x=>new Promise(m=>setTimeout(m,x)),L.color=(x,m)=>({black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",blink:"\x1B[5m",inverse:"\x1B[7m",hidden:"\x1B[8m",strikethrough:"\x1B[9m",reset:"\x1B[0m"})[x.toLowerCase()]||null,L.hash={xxHash32:L.xxHash32},L.build=cn.build,L.server=ie,L.nodeWebSocket=nodeWs.createNodeWebSocket,L.restServer=at,L.rpcServer=it,L.streamingServer=ct,L.webSocketServer=lt;})(exports.PKG||(exports.PKG={}));var Pr=exports.PKG.readableStreamToText;exports.PKG.nodeReadableStreamToText;exports.PKG.which;var Mr=exports.PKG.whichSync;exports.PKG.spawn;exports.PKG.run;var xn=200,wn={bash:{login:true,posix:true},dash:{login:true,posix:true},fish:{deny:true,login:true},ksh:{login:true,posix:true},nu:{deny:true},powershell:{ps:true},pwsh:{ps:true},sh:{login:true,posix:true},zsh:{login:true,posix:true}};exports.Shell=void 0;(m=>{let e=chunkWWPI6PC4_cjs.a.create({service:"shell"});async function t(f,d){let w=f.pid;if(!(!w||d?.exited?.())){if(process.platform==="win32"){await new Promise(y=>{let b=child_process.spawn("taskkill",["/pid",String(w),"/f","/t"],{stdio:"ignore",windowsHide:true});b.once("exit",()=>y()),b.once("error",()=>y());});return}try{process.kill(-w,"SIGTERM"),await promises.setTimeout(xn),d?.exited?.()||process.kill(-w,"SIGKILL");}catch{f.kill("SIGTERM"),await promises.setTimeout(xn),d?.exited?.()||f.kill("SIGKILL");}}}m.killTree=t;function r(f){if(process.platform!=="win32"||!f.includes("/")&&!f.includes("\\")&&!f.includes(":"))return f;let d=chunkJL3GR4P7_cjs.c.normalize(f);return R(d)==="bash"&&g()||d}function n(f){return wn[R(f)]}function o(f){return n(f)?.deny!==true}function s(f){return chunkJL3GR4P7_cjs.c.isAbsolute(f)}function a(f){let d=r(f);if(s(d))return chunkJL3GR4P7_cjs.c.stat(d)?.isFile()?d:void 0;let w=exports.PKG.whichSync(d);return w?chunkJL3GR4P7_cjs.c.normalize(w):void 0}function i(){return Array.from(new Set([exports.PKG.whichSync("pwsh"),exports.PKG.whichSync("powershell"),g(),process.env.COMSPEC||"cmd.exe"].filter(f=>!!f).map(r)))}async function l(){let f=await chunkJL3GR4P7_cjs.c.readText("/etc/shells").catch(()=>"");return f?Array.from(new Set(f.split(`
24
- `).filter(d=>d.trim()&&!d.startsWith("#")))):["/bin/bash","/bin/zsh","/bin/sh"]}function p(f,d){if(f&&(!d?.acceptable||o(f))){let w=a(f);if(w)return w}return process.platform==="win32"?i()[0]:S()}m.defaultPreferred=$e(()=>p(process.env.SHELL)),m.defaultAcceptable=$e(()=>p(process.env.SHELL,{acceptable:true}));function g(){if(process.platform!=="win32")return;if(process.env.EASBOT_GIT_BASH_PATH)return chunkJL3GR4P7_cjs.c.normalize(process.env.EASBOT_GIT_BASH_PATH);let f=exports.PKG.whichSync("git");if(!f)return;let d=chunkJL3GR4P7_cjs.c.normalize(ge__default.default.join(f,"..","..","bin","bash.exe"));if((chunkJL3GR4P7_cjs.c.stat(d)?.size??0)>0)return d}m.gitbash=g;function S(){if(process.platform==="win32"){let d=g();return d||"/bin/sh"}if(process.platform==="darwin")return "/bin/zsh";let f=exports.PKG.whichSync("bash");return f?chunkJL3GR4P7_cjs.c.normalize(f):"/bin/sh"}function R(f){return ge__default.default.posix.basename(chunkJL3GR4P7_cjs.c.toUnixPath(f)).toLowerCase()}m.name=R;function j(f){return n(f)?.login===true}m.login=j;function z(f){return n(f)?.posix===true}m.posix=z;function U(f){return n(f)?.ps===true}m.ps=U;function D(f){let d=r(f),w=R(d);return {path:d,name:w,acceptable:o(w)}}function ae(f,d,w){let y=R(f),b=re(d),k=pe(b[0]??d,b.slice(1));return y==="nu"||y==="fish"?["-c",k]:y==="zsh"?["-l","-c",`
20
+ ${ae}`;return {content:D+Se,truncated:true,outputPath:z,originalLength:l.length,removedLength:U,label:g}}i.truncateAndSave=s;function a(l){return l.truncated?n(l.outputPath,l.label):""}i.formatHint=a;})(exports.TruncateContent||(exports.TruncateContent={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function rt(e,t=true){let r=typeof e=="number"?new Date(e):e,n=r.getTimezoneOffset(),o=Math.floor(Math.abs(n)/60),s=Math.abs(n)%60,i=`${n<=0?"+":"-"}${String(o).padStart(2,"0")}:${String(s).padStart(2,"0")}`,l=r.getFullYear(),p=String(r.getMonth()+1).padStart(2,"0"),c=String(r.getDate()).padStart(2,"0"),u=String(r.getHours()).padStart(2,"0"),g=String(r.getMinutes()).padStart(2,"0"),S=String(r.getSeconds()).padStart(2,"0"),P=`${l}-${p}-${c}T${u}:${g}:${S}`;if(t){let j=String(r.getMilliseconds()).padStart(3,"0");P+=`.${j}`;}return P+=i,P}function ot(e){return rt(e,false)}function qt(){return Date.now()}function Zn(e=true){return rt(qt(),e)}function Xn(e){return e.includes("+")||e.includes("-")?new Date(e):new Date(e)}function Qn(e){let t=typeof e=="number"?new Date(e):e,r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0"),i=String(t.getSeconds()).padStart(2,"0");return `${r}-${n}-${o}T${s}:${a}:${i}`}function er(e=new Date){let t=e.getTimezoneOffset(),r=Math.floor(Math.abs(t)/60),n=Math.abs(t)%60;return `${t<=0?"+":"-"}${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}`}exports.SessionTitle=void 0;(i=>{let e="New session - ",t="Child session - ";i.parentTitlePrefix=e,i.childTitlePrefix=t;function o(l=false){return (l?t:e)+ot(new Date)}i.createDefault=o;function s(l){return new RegExp(`^(${e}|${t})\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$`).test(l)}i.isDefault=s;function a(l){let p=l.match(/^(.+) \(fork #(\d+)\)$/);if(p){let c=p[1]??"",u=parseInt(p[2]??"0",10);return `${c} (fork #${u+1})`}return `${l} (fork #1)`}i.getForked=a;})(exports.SessionTitle||(exports.SessionTitle={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Yt(e){let t,r=false,n=()=>(r||(t=e(),r=true),t);return n.reset=()=>{r=false,t=void 0;},n}var $e=Yt;function Vt(e){let t,r=()=>(t||(t=e()),t);return r.reset=()=>{t=void 0;},r}var tr=Vt;exports.Lazy=void 0;(r=>(r.lazy=Yt,r.lazyAsync=Vt))(exports.Lazy||(exports.Lazy={}));chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();var ne=chunkWWPI6PC4_cjs.a.create({service:"server"});function ie(e={}){let t=e.port??3e3,r=e.hostname??"0.0.0.0",n=new hono.Hono({strict:true,getPath:a=>{try{return new URL(a.url).pathname}catch{return a.url}}});if(e.onError?n.onError(e.onError):n.onError((a,i)=>(ne.error("Server error",{error:a.message,stack:a.stack}),a instanceof httpException.HTTPException?a.getResponse():i.json({error:"Internal Server Error",message:a.message},500))),e.onNotFound?n.notFound(e.onNotFound):n.notFound(a=>a.json({error:"Not Found",path:a.req.path},404)),!e.websockets&&e.cors&&n.use(cors.cors(typeof e.cors=="boolean"?{origin:"*"}:e.cors)),n.use(logger.logger((a,...i)=>ne.info(a,i))),!e.websockets&&e.secureHeaders&&n.use(secureHeaders.secureHeaders()),!e.websockets&&e.compression&&n.use(compress.compress({encoding:"gzip"})),!e.websockets&&e.timeout&&n.use(timeout.timeout(e.timeout)),e.middlewares)for(let a of e.middlewares)a.path?n.use(a.path,a.handler):n.use(a.handler);if(e.routes)for(let a of e.routes){let i=a.middlewares||[],l=a.method.toUpperCase();a.validation?n.on(l,a.path,zodValidator.zValidator("json",a.validation),...i,a.handler):n.on(l,a.path,...i,a.handler);}e.rpc&&n.post("/rpc/:method",async a=>{let i=a.req.param("method"),l=e.rpc?.[i];if(!l)return a.json({error:"RPC method not found"},404);try{let p=await a.req.json(),c=await l(p,a);return a.json({result:c})}catch(p){return ne.error("RPC error",{method:i,error:p.message}),a.json({error:"RPC execution failed",message:p.message},500)}}),e.fetch&&n.all("*",async a=>await e.fetch(a.req.raw));let o=null,s={url:new URL(`http://${r}:${t}`),port:t,hostname:r,hono:n,async stop(a=false){return o?new Promise((i,l)=>{a&&o.closeAllConnections?.(),o.close(p=>{p?(ne.error("Error closing server",{error:p.message}),l(p)):(o=null,ne.info(`Server on port ${t} stopped`),i());}),setTimeout(()=>{ne.warn(`Server shutdown timeout on port ${t}`),o=null,i();},5e3);}):Promise.resolve()},get raw(){return o||void 0}};return ne.debug("createServer: calling serve()",{port:t,hostname:r}),o=nodeServer.serve({fetch:n.fetch,port:t,hostname:r}),ne.debug("createServer: serve() returned, server created"),ne.info(`Server running on http://${r}:${t}`),s}function it(e){return ie({rpc:e,port:3e3})}function sr(e,t=3e3,r="0.0.0.0"){return ie({fetch:e,port:t,hostname:r})}function at(e,t={}){return ie({...t,routes:e})}function lt(e,t={}){return ie({...t,websockets:e})}function ct(e,t={}){let r=Object.entries(e).map(([n,o])=>({method:"get",path:`/stream/${n}`,handler:s=>streaming.streamSSE(s,async a=>{for await(let i of o(s))await a.writeSSE(i);})}));return ie({...t,routes:r,streaming:true})}chunkVRQQ33YH_cjs.j();var ce=chunkWWPI6PC4_cjs.a.create({service:"build-api"});async function an(){try{return {available:!0,version:(await import('./chunks/main-RIJAJS2R.cjs')).version||"unknown"}}catch(e){return ce.warn("esbuild not available",{error:e.message}),{available:false}}}async function Be(){let e=await an();if(!e.available)throw new Error("esbuild is required but not installed. Please install it using: pnpm add -D esbuild");e.version&&e.version<"0.17.0"&&ce.warn(`esbuild version ${e.version} may have limited features. Consider upgrading to 0.17+`);}function cr(e){if(e!==void 0)return typeof e=="boolean"?{target:void 0}:typeof e=="string"?{target:e}:e}function ln(e){let t=cr(e.compile);t&&ce.warn("compile option is no longer supported (Bun runtime removed). The option will be ignored.");let r={entryPoints:e.entrypoints,outdir:e.outdir,bundle:e.bundle??true,conditions:e.conditions,external:e.external,format:e.format??"esm",platform:e.platform??(e.target==="browser"?"browser":"node"),minify:e.minify??false,treeShaking:true,splitting:e.splitting,sourcemap:ur(e.sourcemap),sourcesContent:true,define:e.define,inject:e.inject,legalComments:"eof",loader:e.loader,entryNames:e.entryNames,chunkNames:e.chunkNames,assetNames:e.assetNames,publicPath:e.publicPath,tsconfig:e.tsconfig,charset:"utf8",color:true,logLevel:"info",logLimit:50,plugins:e.plugins??[],metafile:true,write:e.write??true};return t?.outfile&&!e.outdir&&(r.outfile=t.outfile,delete r.outdir),e.target&&(r.target=dr(e.target)),e.minify===true&&(r.minifyWhitespace=true,r.minifyIdentifiers=true,r.minifySyntax=true),fr(r)}function ur(e){return !e||e==="none"?false:e}function dr(e){let t={browser:"es2020",node:"node16",bun:"esnext"};return e?t[e]||e:"esnext"}function fr(e){let t={};for(let r of Object.keys(e))e[r]!==void 0&&(t[r]=e[r]);return t}function Ae(e){if(e!==void 0)return e.replace(/\\/g,"/")}function nn(e,t,r){let n=[];if(e.outputFiles)for(let s of e.outputFiles)n.push({path:Ae(s.path)||s.path,size:s.contents?.length||0});if(e.metafile?.outputs)for(let[s,a]of Object.entries(e.metafile.outputs)){let i=a;n.some(l=>l.path===s||l.path===Ae(s))||n.push({path:Ae(s)||s,size:i.bytes||0});}let o=[];if(e.errors?.length>0)for(let s of e.errors)o.push({level:"error",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});if(e.warnings?.length>0)for(let s of e.warnings)o.push({level:"warning",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});return {outputs:n,success:e.errors?.length===0,logs:o,metafile:e.metafile}}async function dt(e){ce.info("Build started",{entrypoints:e.entrypoints,target:e.target,format:e.format,compile:typeof e.compile}),await Be();let t=await import('./chunks/main-RIJAJS2R.cjs'),r=Date.now();try{let n=ln(e);ce.debug("esbuild options",n);let o=await t.build(n),s=Date.now();return ce.info("Build completed",{duration:s-r,outputs:(o?.outputFiles?.length??0)>0||Object.keys(o.metafile?.outputs||{}).length>0}),nn(o,r,s)}catch(n){let o=Date.now(),s=n.message;return ce.error("Build failed",{error:s,duration:o-r}),n&&typeof n=="object"&&"errors"in n?nn(n):{outputs:[],success:false,logs:[{level:"error",message:s}],metafile:void 0}}}var yr={build:dt},cn=yr;chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function re(e){let t=[],r="",n=0;for(;n<e.length&&(e[n]===" "||e[n]===" ");)n++;for(;n<e.length;){let o=e[n];if(o===" "||o===" "){for(r.length>0&&(t.push(r),r="");n<e.length&&(e[n]===" "||e[n]===" ");)n++;continue}if(o==='"'){for(n++;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){let a=e[n+1];if(a==='"'||a==="\\"||a==="$"||a==="`"){r+=a,n+=2;continue}}if(s==='"'){n++;break}r+=s,n++;}continue}if(o==="'"){for(n++;n<e.length;){let s=e[n];if(s==="'"){n++;break}r+=s,n++;}continue}r+=o,n++;}return r.length>0&&t.push(r),t}function un(e){return /[|&;<>()$`!#]/.test(e)}function dn(e){let t=re(e);if(t.length===0)return {command:"",args:[]};let r={command:t[0],args:t.slice(1)};if(r.args.length>0){let n=r.args[r.args.length-1];try{let o=JSON.parse(n);typeof o=="object"&&o!==null&&!Array.isArray(o)&&(r.options=o,r.args=r.args.slice(0,-1));}catch{}}return r}function ft(e,t=process.platform==="win32"?"windows":"unix"){return t==="windows"?e.includes(" ")||e.includes("&")||e.includes("|")||e.includes("<>")||e.includes("^")||e.includes('"')||e.includes("%")?`"${e.replace(/%/g,"%%").replace(/"/g,'^"')}"`:e:e.includes(" ")||e.includes("'")||e.includes('"')||e.includes("$")||e.includes("`")||e.includes("\\")||e.includes("!")||e.includes("#")||e.includes("&")||e.includes("*")||e.includes("?")||e.includes("|")||e.includes("<")||e.includes(">")||e.includes("(")||e.includes(")")||e.includes(";")?`'${e.replace(/'/g,"'\\''")}'`:e}var xr=new Set(["&&","||","|",";","&",">","<",">>","<<","2>","2>>","1>","1>>","2>&1","2>&2","1>&1","1>&2",">&","<&",">&1","<&1",">&2","<&2"]);function fn(e,t=process.platform==="win32"?"windows":"unix"){return xr.has(e)?e:ft(e,t)}function pn(){return process.platform==="win32"?"windows":"unix"}function pe(e,t,r=process.platform==="win32"?"windows":"unix"){let n=t.map(o=>fn(o,r));return [e,...n].join(" ")}function mn(e){if(e==null)return "";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(t=>mn(t)).join(" ");if(e&&typeof e=="object"){if("raw"in e)return String(e.raw);if("toString"in e&&typeof e.toString=="function")return e.toString();if(e instanceof ReadableStream)throw new Error("ReadableStream expressions are not yet supported")}return String(e)}function wr(e,t,r){return {stdout:e,stderr:t,exitCode:r,text(n="utf-8"){return e.toString(n)},json(){let n=e.toString("utf-8");return JSON.parse(n)},arrayBuffer(){let n=e.buffer;if(n instanceof ArrayBuffer)return n.slice(e.byteOffset,e.byteOffset+e.byteLength);let o=new ArrayBuffer(e.byteLength),s=new Uint8Array(o),a=new Uint8Array(n,e.byteOffset,e.byteLength);return s.set(a),o},bytes(){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)},blob(){let n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return new Blob([n])}}}function me(e,t={}){let r=re(e);if(r.length===0)throw new Error("Empty shell command");let n=async()=>{let s=await exports.PKG.run(r,{cwd:t.cwd,env:t.env}),a=wr(Buffer.from(s.stdout,"utf-8"),Buffer.from(s.stderr,"utf-8"),s.code);if(s.code!==0&&!t.nothrow)throw Object.assign(new Error(`Command failed with exit code ${s.code}: ${e}
21
+ ${s.stderr}`),{stdout:a.stdout,stderr:a.stderr,exitCode:a.exitCode});return a},o=n();return Object.defineProperty(o,"stdin",{get(){throw new Error("stdin is not yet supported in EasbotShell. Use PKG.spawn for interactive commands.")},enumerable:true}),o.cwd=function(s){return me(e,{...t,cwd:s})},o.env=function(s){return me(e,{...t,env:s})},o.quiet=function(){return me(e,{...t,quiet:true})},o.lines=async function*(){let i=(await n()).text().split(/\r?\n/);for(let l of i)l.trim()&&(yield l);},o.text=async function(s="utf-8"){return (await n()).text(s)},o.json=async function(){return (await n()).json()},o.arrayBuffer=async function(){return (await n()).arrayBuffer()},o.blob=async function(){return (await n()).blob()},o.nothrow=function(){return me(e,{...t,nothrow:true})},o.throws=function(s){return me(e,{...t,nothrow:!s})},o}var Te=class{constructor(t={}){chunkVRQQ33YH_cjs.c(this,"options");this.options=t;}call(t,...r){let n="";for(let o=0;o<t.length;o++)n+=t[o],o<r.length&&r[o]!==void 0&&(n+=mn(r[o]));return me(n,this.options)}braces(t){let r=t.match(/^(.*?)\{([^}]+)\}(.*)$/);if(!r)return [t];let[,n="",o="",s=""]=r,a=o.split(",").map(l=>l.trim()),i=[];for(let l of a){let p=`${n}${l}${s}`;p.includes("{")?i.push(...this.braces(p)):i.push(p);}return i}escape(t){return process.platform==="win32"?t.replace(/([&|<>^"%])/g,"^$1"):t.replace(/(["\s'$`\\!*?#&;()<>|])/g,"\\$1")}env(t){return ue({...this.options,env:t})}cwd(t){return ue({...this.options,cwd:t})}nothrow(){return ue({...this.options,nothrow:true})}throws(t){return ue({...this.options,nothrow:!t})}};function ue(e={}){let t=new Te(e);return new Proxy(t,{apply(r,n,o){return t.call(o[0],...o.slice(1))}})}var gn=ue();function hn(e){return e.replace(/\\/g,"/")}function bn(e){return crypto$1.createHash("md5").update(e).digest("hex").slice(0,8)}var X=new Map;exports.PKG=void 0;(L=>{let e=chunkWWPI6PC4_cjs.a.create({service:"pkg"});async function t(x){let m=x?[x]:["npm","pnpm","bun"];for(let f of m){let d=await L.which(f);if(d)return {name:f,path:d}}}L.packageManager=t;async function r(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+ge__default.default.delimiter+d:f,y=bn(w),b=`${x}:${y}`;if(X.has(b))return X.get(b);let E=process.platform==="win32"?"where":"which";try{let{spawn:T}=await import('child_process');return new Promise(M=>{let I=T(E,[x],{env:{...process.env,PATH:w},stdio:["pipe","pipe","ignore"],windowsHide:!0}),W="",A="";I.stdout?.on("data",H=>{W+=H.toString();}),I.stderr?.on("data",H=>{A+=H.toString();}),I.on("close",H=>{if(H===0&&W.trim()){let F=W.trim().split(`
22
+ `),$=F.length>0?F[0]?.trim():null;if($){X.set(b,$),M($);return}}X.set(b,null),M(null);}),setTimeout(()=>{I.kill(),X.set(b,null),M(null);},5e3);})}catch{return X.set(b,null),null}}L.which=r;function n(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+ge__default.default.delimiter+d:f,y=bn(w),b=`${x}:${y}`;if(X.has(b))return X.get(b);let E=process.platform==="win32"?"where":"which";try{let T=child_process.execSync(`${E} ${x}`,{encoding:"utf-8",stdio:["pipe","pipe","ignore"],env:{...process.env,PATH:w},timeout:5e3,windowsHide:!0});if(T.trim()){let M=T.trim().split(`
23
+ `),I=M.length>0?M[0]?.trim():null;if(I)return X.set(b,I),I}}catch{}return X.set(b,null),null}L.whichSync=n;function o(){X.clear();}L.clearWhichCache=o;let s=module$1.createRequire(chunkVRQQ33YH_cjs.i);async function a(x,m,f){try{let d=[];if(f?.extraPaths)for(let w of f.extraPaths){let y=ge__default.default.join(w,"node_modules");d.push(y);}return m&&d.push(m),d.length>0?s.resolve(x,{paths:d}):s.resolve(x)}catch(d){throw new Error(`Cannot resolve module "${x}"${m?` from "${m}"`:""}: ${d instanceof Error?d.message:String(d)}`)}}L.resolve=a;function i(x){return {get name(){return ge__default.default.basename(x)},async exists(){try{return await oe__default.default.access(x),!0}catch{return false}},async getSize(){try{return (await oe__default.default.stat(x)).size}catch{return}},async text(){return await oe__default.default.readFile(x,"utf-8")},textSync(){return Le__default.default.readFileSync(x,"utf-8")},jsonSync(){let m=Le__default.default.readFileSync(x,"utf-8");return JSON.parse(m)},async bytes(){e.debug("[PKG.file.bytes] reading file:",{filePath:x});let m=await oe__default.default.readFile(x);return e.debug("[PKG.file.bytes] read succeeded, size:",{size:m.length}),new Uint8Array(m.buffer,m.byteOffset,m.byteLength)},async arrayBuffer(){let m=await oe__default.default.readFile(x);return m.buffer.slice(m.byteOffset,m.byteOffset+m.byteLength)},get type(){let m=ge__default.default.extname(x).toLowerCase();return {".txt":"text/plain",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".xml":"application/xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".pdf":"application/pdf",".zip":"application/zip",".wav":"audio/wav",".mp3":"audio/mpeg",".mp4":"video/mp4",".webm":"video/webm"}[m]||"application/octet-stream"},async write(m){let f;if(m instanceof Response){let d=await m.arrayBuffer();f=new Uint8Array(d);}else f=m;await oe__default.default.writeFile(x,f);},async json(){let m=await oe__default.default.readFile(x,"utf-8");return JSON.parse(m)},async stat(){return await oe__default.default.stat(x)}}}L.file=i;async function l(x,m,f){let d;if(m instanceof Response){let w=await m.arrayBuffer();d=new Uint8Array(w);}else d=m;await oe__default.default.writeFile(x,d,f?{mode:f.mode}:void 0);}L.write=l;function p(x,m,f){Le__default.default.writeFileSync(x,m,f?{mode:f.mode}:void 0);}L.writeSync=p;function c(x,m="utf-8"){return Le__default.default.readFileSync(x,m)}L.readSync=c;function u(x,m){let f,d;if(typeof x=="object"&&"cmd"in x){let T=x;f=T.cmd,d={cwd:T.cwd,env:T.env,stdout:T.stdout,stderr:T.stderr,stdin:T.stdin,signal:T.signal,windowsHide:T.windowsHide,shell:T.shell};}else f=Array.isArray(x)?x:[x],d=m||{};if(!f||f.length===0||!f[0])throw new Error("Spawn command cannot be empty");let w=[d.stdin==="inherit"?"inherit":d.stdin==="null"?"ignore":"pipe",d.stdout==="inherit"?"inherit":d.stdout==="null"?"ignore":"pipe",d.stderr==="inherit"?"inherit":d.stderr==="null"?"ignore":"pipe"],y={cwd:d.cwd,env:d.env?{...process.env,...d.env}:process.env,stdio:w,timeout:d.timeout};d.shell!==void 0&&(y.shell=d.shell),process.platform==="win32"&&(y.windowsHide=d.windowsHide??true);let b=child_process.spawn(f[0],f.slice(1),y),k;if(d.signal){k=()=>{b.kill();},d.signal.addEventListener("abort",k,{once:true});let T=()=>{k&&(d.signal?.removeEventListener("abort",k),k=void 0);};b.on("close",T),b.on("error",T);}let E=new Promise((T,M)=>{let I=false,W=()=>{I||(I=true,b.removeAllListeners());};if(b.on("close",A=>{W(),T(A??0);}),b.on("error",A=>{W(),M(A);}),d.timeout!==false){let A=d.timeout||3e5;setTimeout(()=>{if(!I){e.debug(`Process timeout after ${A}ms, killing process`,{cmd:f.join(" ")}),W();try{b.kill("SIGKILL");}catch{}M(new Error(`Process timeout after ${A}ms: ${f.join(" ")}`));}},A);}});return {stdout:b.stdout,stderr:b.stderr,stdin:b.stdin,pid:b.pid,exited:E,exitCode:b.exitCode,kill:T=>b.kill(T)}}L.spawn=u;async function g(x,m){let f=m?.stdin??"null",d=m?.stdout??"pipe",w=m?.stderr??"pipe",y=u(x,{cwd:m?.cwd,env:m?.env,stdin:f,stdout:d,stderr:w,windowsHide:m?.windowsHide,shell:m?.shell}),b=[],k=[];d==="pipe"&&y.stdout?.on("data",T=>{b.push(T);}),w==="pipe"&&y.stderr?.on("data",T=>{k.push(T);});let E=m?.timeout&&m.timeout>0?setTimeout(()=>{try{y.kill("SIGKILL");}catch{}y.stdout?.destroy(),y.stderr?.destroy(),y.stdin?.end();},m.timeout):void 0;try{let T=await y.exited;return clearTimeout(E),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:T,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")}}catch(T){return clearTimeout(E),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:-1,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")||(T instanceof Error?T.message:String(T))}}}L.run=g;async function S(x,m={},f={}){let d=u(x,{cwd:m.cwd,env:m.env,stdout:"pipe",stderr:"pipe",stdin:"null"}),w="",y="";d.stdout?.on("data",k=>{let E=k.toString("utf-8");w+=E,f.onStdout?.(E);}),d.stderr?.on("data",k=>{let E=k.toString("utf-8");y+=E,f.onStderr?.(E);});let b=m.timeout&&m.timeout>0?setTimeout(()=>{try{d.kill("SIGKILL");}catch{}d.stdout?.destroy(),d.stderr?.destroy();},m.timeout):void 0;try{let k=await d.exited;return clearTimeout(b),f.onExit?.(k),{code:k,stdout:w,stderr:y}}catch(k){clearTimeout(b);let E=k instanceof Error?k.message:String(k);return {code:-1,stdout:w,stderr:y||E}}}L.runWithStream=S;async function P(x){if(typeof x.pipeThrough=="function")try{let w=new TextDecoderStream("utf-8"),b=x.pipeThrough(w).getReader(),k="";try{for(;;){let{done:E,value:T}=await b.read();if(E)break;k+=T;}return k}finally{b.releaseLock();}}catch{}let m=x.getReader(),f=new TextDecoder("utf-8"),d=[];try{for(;;){let{done:w,value:y}=await m.read();if(w)break;d.push(f.decode(y,{stream:!0}));}return d.push(f.decode()),d.join("")}finally{m.releaseLock();}}L.readableStreamToText=P;async function j(x){let m=[];return new Promise((f,d)=>{x.on("data",w=>{typeof w=="string"?m.push(Buffer.from(w)):m.push(w);}),x.on("end",()=>{try{let y=Buffer.concat(m).toString("utf-8");f(y);}catch(w){d(w);}}),x.on("error",w=>{d(w);});})}L.nodeReadableStreamToText=j;function z(x,m=0){let E=new TextEncoder().encode(x),T=E.length,M,I=0;if(T>=16){let F=T-16,$=m+2654435761+2246822519|0,Q=m+2246822519|0,G=m+0|0,Z=m-2654435761|0;for(;I<=F;)$=W($,H(E,I)),I+=4,Q=W(Q,H(E,I)),I+=4,G=W(G,H(E,I)),I+=4,Z=W(Z,H(E,I)),I+=4;M=A($,1)+A(Q,7)+A(G,12)+A(Z,18)|0;}else M=m+374761393|0;for(M=M+T|0;I+4<=T;)M=M+H(E,I)*3266489917|0,M=A(M,17)*668265263|0,I+=4;for(;I<T;)M=M+E[I]*374761393|0,M=A(M,11)*2654435761|0,I++;return M^=M>>>15,M=M*2246822519|0,M^=M>>>13,M=M*3266489917|0,M^=M>>>16,M>>>0;function W(F,$){return F=F+$*2246822519|0,F=A(F,13),F=F*2654435761|0,F}function A(F,$){return F<<$|F>>>32-$|0}function H(F,$){return (F[$]|F[$+1]<<8|F[$+2]<<16|F[$+3]<<24)>>>0}}L.xxHash32=z;function U(x){let m=0;for(let f of x){let d=f.codePointAt(0)||f.charCodeAt(0);d<127?m+=1:d>=4352&&d<=4447||d>=9001&&d<=9002||d>=11904&&d<=42191&&d!==12351||d>=44032&&d<=55203||d>=63744&&d<=64255||d>=65040&&d<=65049||d>=65072&&d<=65135||d>=65280&&d<=65376||d>=65504&&d<=65510?m+=2:m+=1;}return m}L.stringWidth=U;class D{constructor(m){chunkVRQQ33YH_cjs.c(this,"pattern");this.pattern=m;}async*scan(m){let f=chunkAHO55TRS_cjs.b.stream(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for await(let d of f)yield hn(d);}*scanSync(m){let f=chunkAHO55TRS_cjs.a(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for(let d of f)yield hn(d);}match(m){return minimatch.minimatch(m,this.pattern)}}L.Glob=D,L.stdin=process.stdin,L.stdout=process.stdout,L.stderr=process.stderr,L.sleep=x=>new Promise(m=>setTimeout(m,x)),L.color=(x,m)=>({black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",blink:"\x1B[5m",inverse:"\x1B[7m",hidden:"\x1B[8m",strikethrough:"\x1B[9m",reset:"\x1B[0m"})[x.toLowerCase()]||null,L.hash={xxHash32:L.xxHash32},L.build=cn.build,L.server=ie,L.nodeWebSocket=nodeWs.createNodeWebSocket,L.restServer=at,L.rpcServer=it,L.streamingServer=ct,L.webSocketServer=lt;})(exports.PKG||(exports.PKG={}));var Rr=exports.PKG.readableStreamToText;exports.PKG.nodeReadableStreamToText;exports.PKG.which;var Mr=exports.PKG.whichSync;exports.PKG.spawn;exports.PKG.run;var xn=200,wn={bash:{login:true,posix:true},dash:{login:true,posix:true},fish:{deny:true,login:true},ksh:{login:true,posix:true},nu:{deny:true},powershell:{ps:true},pwsh:{ps:true},sh:{login:true,posix:true},zsh:{login:true,posix:true}};exports.Shell=void 0;(m=>{let e=chunkWWPI6PC4_cjs.a.create({service:"shell"});async function t(f,d){let w=f.pid;if(!(!w||d?.exited?.())){if(process.platform==="win32"){await new Promise(y=>{let b=child_process.spawn("taskkill",["/pid",String(w),"/f","/t"],{stdio:"ignore",windowsHide:true});b.once("exit",()=>y()),b.once("error",()=>y());});return}try{process.kill(-w,"SIGTERM"),await promises.setTimeout(xn),d?.exited?.()||process.kill(-w,"SIGKILL");}catch{f.kill("SIGTERM"),await promises.setTimeout(xn),d?.exited?.()||f.kill("SIGKILL");}}}m.killTree=t;function r(f){if(process.platform!=="win32"||!f.includes("/")&&!f.includes("\\")&&!f.includes(":"))return f;let d=chunkJL3GR4P7_cjs.c.normalize(f);return P(d)==="bash"&&g()||d}function n(f){return wn[P(f)]}function o(f){return n(f)?.deny!==true}function s(f){return chunkJL3GR4P7_cjs.c.isAbsolute(f)}function a(f){let d=r(f);if(s(d))return chunkJL3GR4P7_cjs.c.stat(d)?.isFile()?d:void 0;let w=exports.PKG.whichSync(d);return w?chunkJL3GR4P7_cjs.c.normalize(w):void 0}function i(){return Array.from(new Set([exports.PKG.whichSync("pwsh"),exports.PKG.whichSync("powershell"),g(),process.env.COMSPEC||"cmd.exe"].filter(f=>!!f).map(r)))}async function l(){let f=await chunkJL3GR4P7_cjs.c.readText("/etc/shells").catch(()=>"");return f?Array.from(new Set(f.split(`
24
+ `).filter(d=>d.trim()&&!d.startsWith("#")))):["/bin/bash","/bin/zsh","/bin/sh"]}function p(f,d){if(f&&(!d?.acceptable||o(f))){let w=a(f);if(w)return w}return process.platform==="win32"?i()[0]:S()}m.defaultPreferred=$e(()=>p(process.env.SHELL)),m.defaultAcceptable=$e(()=>p(process.env.SHELL,{acceptable:true}));function g(){if(process.platform!=="win32")return;if(process.env.EASBOT_GIT_BASH_PATH)return chunkJL3GR4P7_cjs.c.normalize(process.env.EASBOT_GIT_BASH_PATH);let f=exports.PKG.whichSync("git");if(!f)return;let d=chunkJL3GR4P7_cjs.c.normalize(ge__default.default.join(f,"..","..","bin","bash.exe"));if((chunkJL3GR4P7_cjs.c.stat(d)?.size??0)>0)return d}m.gitbash=g;function S(){if(process.platform==="win32"){let d=g();return d||"/bin/sh"}if(process.platform==="darwin")return "/bin/zsh";let f=exports.PKG.whichSync("bash");return f?chunkJL3GR4P7_cjs.c.normalize(f):"/bin/sh"}function P(f){return ge__default.default.posix.basename(chunkJL3GR4P7_cjs.c.toUnixPath(f)).toLowerCase()}m.name=P;function j(f){return n(f)?.login===true}m.login=j;function z(f){return n(f)?.posix===true}m.posix=z;function U(f){return n(f)?.ps===true}m.ps=U;function D(f){let d=r(f),w=P(d);return {path:d,name:w,acceptable:o(w)}}function ae(f,d,w){let y=P(f),b=re(d),k=pe(b[0]??d,b.slice(1));return y==="nu"||y==="fish"?["-c",k]:y==="zsh"?["-l","-c",`
25
25
  [[ -f ~/.zshenv ]] && source ~/.zshenv >/dev/null 2>&1 || true
26
26
  [[ -f "\${ZDOTDIR:-$HOME}/.zshrc" ]] && source "\${ZDOTDIR:-$HOME}/.zshrc" >/dev/null 2>&1 || true
27
27
  cd -- "$1"
@@ -31,18 +31,18 @@ ${s.stderr}`),{stdout:a.stdout,stderr:a.stderr,exitCode:a.exitCode});return a},o
31
31
  [[ -f ~/.bashrc ]] && source ~/.bashrc >/dev/null 2>&1 || true
32
32
  cd -- "$1"
33
33
  ${k}
34
- `,"easbot",w]:/^cmd(\.exe)?$/i.test(y)?["/c",`chcp 65001 >nul 2>&1 && ${k}`]:U(y)?["-NoProfile","-Command",`[Console]::OutputEncoding = [System.Text.Encoding]::UTF8; ${k}`]:["-c",k]}m.args=ae;function Se(f){return f?p(f):(0, m.defaultPreferred)()}m.preferred=Se;function Ke(f){return f?p(f,{acceptable:true}):(0, m.defaultAcceptable)()}m.acceptable=Ke;function Dt(){m.defaultPreferred.reset(),m.defaultAcceptable.reset();}m.reset=Dt;async function Nt(){return (process.platform==="win32"?i():await l()).filter(d=>a(d)).map(D)}m.list=Nt;function C(f){return wn[R(f)]}m.metaInfo=C;function I(f){return /[|&;<>()$`!#]/.test(f)}m.needsShell=I;function _(){return process.platform==="win32"?i():["/bin/bash","/bin/zsh","/bin/sh"]}m.platformShells=_;function K(f){return f?!!a(f):false}m.isValid=K;async function G(f){let d=a(f);if(!d)return;let w=R(d);if(!/^cmd(\.exe)?$/i.test(w))try{let y;U(w)?y=["-NoProfile","-Command","$PSVersionTable.PSVersion.ToString()"]:y=["--version"],e.debug(`\u83B7\u53D6 Shell \u7248\u672C: ${d}`,{shell:d,args:y});let b=await exports.PKG.run([d,...y]);if(b.code===0){let k=b.stdout.trim().split(`
35
- `)[0];return e.debug(`Shell \u7248\u672C\u83B7\u53D6\u6210\u529F: ${k}`),k}e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${b.code}`,{stderr:b.stderr});}catch(y){e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5F02\u5E38: ${y}`);}}m.version=G;class le extends Error{constructor(w,y,b,k){super(w);chunkVRQQ33YH_cjs.c(this,"message",w);chunkVRQQ33YH_cjs.c(this,"pkg",y);chunkVRQQ33YH_cjs.c(this,"version",b);chunkVRQQ33YH_cjs.c(this,"originalError",k);this.name="InstallFailedError";}}m.InstallFailedError=le;async function se(f,d="latest",w){let{Lock:y}=await import('./chunks/lock-LMCPTUNU.cjs'),{Filesystem:b}=await import('./chunks/filesystem-ALW6PJKX.cjs'),{PackageRegistry:k}=await import('./chunks/registry-LIPZA2EC.cjs');w=w??process.env.EASBOT_CACHE_PATH??ge__default.default.join(".easbot","cache");let E=await y.write("pkg-install");try{let T=ge__default.default.posix.join(w,"node_modules",f),M=ge__default.default.posix.join(w,"package.json"),W=(await b.readJson(M).catch(async()=>{let J={dependencies:{}};return await b.writeJson(M,J),J})).dependencies??{},A=await b.exists(T),H=W[f],F=!1;if(!A||!H)F=!0;else {if(d!=="latest"&&H===d)return T;if(d==="latest"){if(!await k.isOutdated(f,H,w))return T;e.info("Cached version is outdated, proceeding with install",{pkg:f,cachedVersion:H}),F=!0;}}if(!F)return T;let $=m.acceptable(process.platform==="win32"?"cmd":void 0)??S(),Q=`${f}@${d}`;e.info("installing package",{pkg:f,version:d,cache:w,shell:$});let Y=await exports.PKG.packageManager();if(!Y)throw new le("No package manager found (npm, pnpm, bun)",f,d,"No package manager available");let Z=Y.name,Ze=Z==="pnpm"?"add":"install",Xe=`${Y.name} ${Ze} --save-exact ${Q}`;e.info(`Using ${Z} to install package`,{pkg:f,version:d,shell:$,pmPath:Y.path});try{let J=await m.run($,Xe,{cwd:w,timeout:6e5,windowsHide:!0});if(J.code!==0)throw new Error(`Package manager exited with code ${J.code}: ${J.stderr}`);e.info(`Successfully installed ${f}@${d} with ${Z}`);}catch(J){let zt=J instanceof Error?J:new Error(String(J));if(!await b.exists(T))throw new le(`Failed to install ${f}@${d}`,f,d,zt.message);e.warn("Package install failed but module exists, continuing",{error:zt.message});}let Qe=d;d==="latest"&&(Qe=(await b.readJson(ge__default.default.join(T,"package.json")).catch(()=>({})))?.version??"unknown");let Fe=await b.readJson(M);return Fe.dependencies=Fe.dependencies??{},Fe.dependencies[f]=Qe,await b.writeJson(M,Fe),e.info("Package installation completed",{pkg:f,version:Qe,path:T}),T}finally{E[Symbol.dispose]();}}m.install=se;async function V(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`run shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{windowsHide:E,env:T,...M}=w??{},O={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...T};process.platform==="win32"&&(O.CHCP="65001");let{stdin:W,stdout:A,stderr:H,timeout:F,signal:$,...Q}=M??{},Y={...Q,cwd:b,env:O,windowsHide:process.platform==="win32"?E??true:void 0,shell:Q.shell,timeout:F},Z=R(y),Ze=/^cmd(\.exe)?$/i.test(Z),Xe=process.platform==="win32"&&Ze?"cmd":y;return exports.PKG.run([Xe,...k],Y)}m.run=V;function L(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`Spawn shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{stdin:E,stdout:T,stderr:M,timeout:O,signal:W,windowsHide:A,env:H,...F}=w??{},$={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...H};process.platform==="win32"&&($.CHCP="65001");let Q=R(y),Y=/^cmd(\.exe)?$/i.test(Q),Z={...F,cwd:b,env:$,windowsHide:process.platform==="win32"?A??true:void 0,shell:F.shell,timeout:O};return exports.PKG.spawn([Y?"cmd":y,...k],Z)}m.spawn=L;function x(f,...d){let w=f.reduce((b,k,E)=>b+k+(d[E]??""),""),y=(b={})=>({quiet:()=>y({...b,quiet:true}),nothrow:()=>y({...b,nothrow:true}),cwd:k=>y({...b,cwd:k}),env:k=>y({...b,env:k}),stdin:k=>y({...b,stdin:k}),stdout:k=>y({...b,stdout:k}),stderr:k=>y({...b,stderr:k}),text:async()=>{let k=re(w.trim());if(k.length===0)throw new Error("Empty command");let E=k[0]??"",T=R(E),M=/^cmd(\.exe)?$/i.test(T),O=process.platform==="win32"&&M?"cmd":C(E)?E:void 0,W=pe(E,k.slice(1)),A=await m.run(O,W,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell});if(A.code!==0&&!b.nothrow)throw new Error(`Command failed with exit code ${A.code}: ${w}
34
+ `,"easbot",w]:/^cmd(\.exe)?$/i.test(y)?["/c",`chcp 65001 >nul 2>&1 && ${k}`]:U(y)?["-NoProfile","-Command",`[Console]::OutputEncoding = [System.Text.Encoding]::UTF8; ${k}`]:["-c",k]}m.args=ae;function Se(f){return f?p(f):(0, m.defaultPreferred)()}m.preferred=Se;function Ke(f){return f?p(f,{acceptable:true}):(0, m.defaultAcceptable)()}m.acceptable=Ke;function Dt(){m.defaultPreferred.reset(),m.defaultAcceptable.reset();}m.reset=Dt;async function Nt(){return (process.platform==="win32"?i():await l()).filter(d=>a(d)).map(D)}m.list=Nt;function C(f){return wn[P(f)]}m.metaInfo=C;function O(f){return /[|&;<>()$`!#]/.test(f)}m.needsShell=O;function _(){return process.platform==="win32"?i():["/bin/bash","/bin/zsh","/bin/sh"]}m.platformShells=_;function K(f){return f?!!a(f):false}m.isValid=K;async function V(f){let d=a(f);if(!d)return;let w=P(d);if(!/^cmd(\.exe)?$/i.test(w))try{let y;U(w)?y=["-NoProfile","-Command","$PSVersionTable.PSVersion.ToString()"]:y=["--version"],e.debug(`\u83B7\u53D6 Shell \u7248\u672C: ${d}`,{shell:d,args:y});let b=await exports.PKG.run([d,...y]);if(b.code===0){let k=b.stdout.trim().split(`
35
+ `)[0];return e.debug(`Shell \u7248\u672C\u83B7\u53D6\u6210\u529F: ${k}`),k}e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${b.code}`,{stderr:b.stderr});}catch(y){e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5F02\u5E38: ${y}`);}}m.version=V;class le extends Error{constructor(w,y,b,k){super(w);chunkVRQQ33YH_cjs.c(this,"message",w);chunkVRQQ33YH_cjs.c(this,"pkg",y);chunkVRQQ33YH_cjs.c(this,"version",b);chunkVRQQ33YH_cjs.c(this,"originalError",k);this.name="InstallFailedError";}}m.InstallFailedError=le;async function se(f,d="latest",w){let{Lock:y}=await import('./chunks/lock-LMCPTUNU.cjs'),{Filesystem:b}=await import('./chunks/filesystem-ALW6PJKX.cjs'),{PackageRegistry:k}=await import('./chunks/registry-LIPZA2EC.cjs');w=w??process.env.EASBOT_CACHE_PATH??ge__default.default.join(".easbot","cache");let E=await y.write("pkg-install");try{let T=ge__default.default.posix.join(w,"node_modules",f),M=ge__default.default.posix.join(w,"package.json"),W=(await b.readJson(M).catch(async()=>{let J={dependencies:{}};return await b.writeJson(M,J),J})).dependencies??{},A=await b.exists(T),H=W[f],F=!1;if(!A||!H)F=!0;else {if(d!=="latest"&&H===d)return T;if(d==="latest"){if(!await k.isOutdated(f,H,w))return T;e.info("Cached version is outdated, proceeding with install",{pkg:f,cachedVersion:H}),F=!0;}}if(!F)return T;let $=m.acceptable(process.platform==="win32"?"cmd":void 0)??S(),Q=`${f}@${d}`;e.info("installing package",{pkg:f,version:d,cache:w,shell:$});let G=await exports.PKG.packageManager();if(!G)throw new le("No package manager found (npm, pnpm, bun)",f,d,"No package manager available");let Z=G.name,Ze=Z==="pnpm"?"add":"install",Xe=`${G.name} ${Ze} --save-exact ${Q}`;e.info(`Using ${Z} to install package`,{pkg:f,version:d,shell:$,pmPath:G.path});try{let J=await m.run($,Xe,{cwd:w,timeout:6e5,windowsHide:!0});if(J.code!==0)throw new Error(`Package manager exited with code ${J.code}: ${J.stderr}`);e.info(`Successfully installed ${f}@${d} with ${Z}`);}catch(J){let zt=J instanceof Error?J:new Error(String(J));if(!await b.exists(T))throw new le(`Failed to install ${f}@${d}`,f,d,zt.message);e.warn("Package install failed but module exists, continuing",{error:zt.message});}let Qe=d;d==="latest"&&(Qe=(await b.readJson(ge__default.default.join(T,"package.json")).catch(()=>({})))?.version??"unknown");let Fe=await b.readJson(M);return Fe.dependencies=Fe.dependencies??{},Fe.dependencies[f]=Qe,await b.writeJson(M,Fe),e.info("Package installation completed",{pkg:f,version:Qe,path:T}),T}finally{E[Symbol.dispose]();}}m.install=se;async function Y(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`run shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{windowsHide:E,env:T,...M}=w??{},I={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...T};process.platform==="win32"&&(I.CHCP="65001");let{stdin:W,stdout:A,stderr:H,timeout:F,signal:$,...Q}=M??{},G={...Q,cwd:b,env:I,windowsHide:process.platform==="win32"?E??true:void 0,shell:Q.shell,timeout:F},Z=P(y),Ze=/^cmd(\.exe)?$/i.test(Z),Xe=process.platform==="win32"&&Ze?"cmd":y;return exports.PKG.run([Xe,...k],G)}m.run=Y;function L(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`Spawn shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{stdin:E,stdout:T,stderr:M,timeout:I,signal:W,windowsHide:A,env:H,...F}=w??{},$={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...H};process.platform==="win32"&&($.CHCP="65001");let Q=P(y),G=/^cmd(\.exe)?$/i.test(Q),Z={...F,cwd:b,env:$,windowsHide:process.platform==="win32"?A??true:void 0,shell:F.shell,timeout:I};return exports.PKG.spawn([G?"cmd":y,...k],Z)}m.spawn=L;function x(f,...d){let w=f.reduce((b,k,E)=>b+k+(d[E]??""),""),y=(b={})=>({quiet:()=>y({...b,quiet:true}),nothrow:()=>y({...b,nothrow:true}),cwd:k=>y({...b,cwd:k}),env:k=>y({...b,env:k}),stdin:k=>y({...b,stdin:k}),stdout:k=>y({...b,stdout:k}),stderr:k=>y({...b,stderr:k}),text:async()=>{let k=re(w.trim());if(k.length===0)throw new Error("Empty command");let E=k[0]??"",T=P(E),M=/^cmd(\.exe)?$/i.test(T),I=process.platform==="win32"&&M?"cmd":C(E)?E:void 0,W=pe(E,k.slice(1)),A=await m.run(I,W,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell});if(A.code!==0&&!b.nothrow)throw new Error(`Command failed with exit code ${A.code}: ${w}
36
36
  ${A.stderr}`);return A.stdout},lines:async()=>(await y(b).text()).split(`
37
- `).filter(E=>E.trim()),then:(k,E)=>{let T=re(w.trim()),M=T[0]??"",O=R(M),W=/^cmd(\.exe)?$/i.test(O),A=process.platform==="win32"&&W?"cmd":C(M)?M:void 0,H=pe(M,T.slice(1));return m.run(A,H,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell}).then(F=>{if(F.code!==0&&!b.nothrow){let $=new Error(`Command failed with exit code ${F.code}: ${w}
37
+ `).filter(E=>E.trim()),then:(k,E)=>{let T=re(w.trim()),M=T[0]??"",I=P(M),W=/^cmd(\.exe)?$/i.test(I),A=process.platform==="win32"&&W?"cmd":C(M)?M:void 0,H=pe(M,T.slice(1));return m.run(A,H,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell}).then(F=>{if(F.code!==0&&!b.nothrow){let $=new Error(`Command failed with exit code ${F.code}: ${w}
38
38
  ${F.stderr}`);if(E){E($);return}throw $}return k({exitCode:F.code,stdout:new TextEncoder().encode(F.stdout),stderr:new TextEncoder().encode(F.stderr),text:()=>F.stdout,lines:()=>F.stdout.split(`
39
- `).filter($=>$.trim())})},E)}});return y()}m.$=x;})(exports.Shell||(exports.Shell={}));var Cr=exports.Shell.$;chunkVRQQ33YH_cjs.j();var Re=class Re extends Error{static create(t,r){var s;let n=_e__default.default.object({name:_e__default.default.literal(t),data:r}).meta({ref:t}),o=(s=class extends Re{constructor(i,l){super(t,l);chunkVRQQ33YH_cjs.c(this,"data",i);chunkVRQQ33YH_cjs.c(this,"name",t);this.name=t;}static isInstance(i){return typeof i=="object"&&"name"in i&&i.name===t}schema(){return n}toObject(){return {name:t,data:this.data}}},chunkVRQQ33YH_cjs.c(s,"Schema",n),s);return Object.defineProperty(o,"name",{value:t}),o}};chunkVRQQ33YH_cjs.c(Re,"Unknown",Re.create("UnknownError",_e__default.default.object({message:_e__default.default.string()})));var pt=Re;chunkVRQQ33YH_cjs.j();exports.Ignore=void 0;(t=>{function e(r){return new gt(r)}t.create=e;})(exports.Ignore||(exports.Ignore={}));var gt=class{constructor(t){chunkVRQQ33YH_cjs.c(this,"rules",[]);chunkVRQQ33YH_cjs.c(this,"ignorecase");chunkVRQQ33YH_cjs.c(this,"debug");this.ignorecase=t?.ignorecase??false,this.debug=t?.debug??false;}add(t){let r=typeof t=="string"?t.split(`
40
- `):t;for(let n=0;n<r.length;n++){let o=r[n];this.parseRule(o,n+1);}return this}parseRule(t,r){let n=t;if(n.length===0||n.startsWith("#"))return;let s=n.startsWith("!");if(s&&(n=n.slice(1)),n=n.trimEnd(),n.length===0)return;if(n.startsWith("\\#")){n=n.slice(1);return}if(n.startsWith("#"))return;let i=n.endsWith("/");if(i&&(n=n.slice(0,-1)),n.length===0)return;let l=this.patternToRegex(n);l&&this.rules.push({pattern:n,regex:l,negative:s,isDirectory:i,original:t,lineNumber:r});}ignores(t,r){let n=this.normalizePath(t),o=r??t.endsWith("/"),s=this.checkIgnore(n,o);return this.debug&&console.log(`Ignore.ignores("${t}", isDirectory=${o}) => ${s}`),s}checkIgnore(t,r){let n=false;for(let o of this.rules)o.isDirectory&&!r||o.regex.test(t)&&(o.negative?n=false:n=true);return n}filter(t){return t.filter(r=>!this.ignores(r))}createFilter(){return t=>!this.ignores(t)}patternToRegex(t){let r=[],n=0,o=t.length;for(;n<o;){let p=t[n];if(p==="\\")if(n+1<o){let c=t[n+1];r.push(this.escapeRegexChar(c)),n+=2;continue}else {r.push("\\\\"),n++;continue}if(p==="*")if(n+1<o&&t[n+1]==="*")if(n+2<o&&t[n+2]==="/")if(n===0||t[n-1]==="/")if(n+3>=o){r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else if(n===0||t[n-1]==="/")if(n+2>=o){r.push(".*"),n+=2;continue}else {r.push("(?:/.*)*"),n+=2;continue}else {r.push(".*"),n+=2;continue}else {r.push("[^/]*"),n++;continue}if(p==="?"){r.push("[^/]"),n++;continue}if(p==="["){let c=this.findMatchingBracket(t,n);if(c!==-1){let u=t.slice(n,c+1);(u.startsWith("[!")||u.startsWith("[^"))&&(u="[^"+u.slice(2)),this.ignorecase&&(u=u.toLowerCase()),r.push(u),n=c+1;continue}}if(p==="/"){r.push("/"),n++;continue}if(".+$^{}|()".includes(p)){r.push("\\"+p),n++;continue}if(this.ignorecase&&p>="A"&&p<="Z"){r.push("["+p.toLowerCase()+p+"]"),n++;continue}r.push(p),n++;}let s=r.join(""),a=s.startsWith("/"),i=s.endsWith("/")&&!s.endsWith("\\/");a||(s="(?:.*/)?"+s),i&&(s=s.slice(0,-1)),!i&&!s.endsWith("(?:/.*)*")&&(s="(?:"+s+")(?:/.*)?");let l=this.ignorecase?"i":"";try{return new RegExp("^"+s+"$",l)}catch(p){return this.debug&&console.error(`Failed to create regex for pattern "${t}":`,p),null}}escapeRegexChar(t){return "\\[]{}().+^$|".includes(t)?"\\"+t:t}findMatchingBracket(t,r){let n=r+1,o=t.length;for((n>=o||t[n]==="!"||t[n]==="^")&&n++;n<o;){let s=t[n];if(s==="\\"&&n+1<o){n+=2;continue}if(s==="]")return n;if(n+2<o&&t[n+1]==="-"&&t[n+2]!=="]"){n+=3;continue}n++;}return -1}normalizePath(t){let r=t.replace(/\\/g,"/");if(r==="/")return "";for(;r.startsWith("./");)r=r.slice(2);return r}};chunkVRQQ33YH_cjs.j();function Sn(e,t){let r=n=>{let o;try{o=e.parse(n);}catch(s){throw console.trace("schema validation failure stack trace:"),s instanceof _e.z.ZodError&&console.error("schema validation issues:",JSON.stringify(s.issues,null,2)),s}return t(o)};return r.force=n=>t(n),r.schema=e,r}var Or=Sn;exports.Fn=void 0;(t=>t.fn=Sn)(exports.Fn||(exports.Fn={}));chunkVRQQ33YH_cjs.j();function Br(){let r=ge__default.default.join(process.cwd(),".env");Le.existsSync(r)&&dotenv.config({path:r,override:true,debug:false,encoding:"utf-8",quiet:true});}chunkVRQQ33YH_cjs.j();async function Lr(e,t){if(process.env.EASBOT_CLIENT==="acp")try{let s=process.platform==="win32"?"cmd":void 0,a=exports.Shell.spawn(s,`git ${e.join(" ")}`,{stdin:void 0,stdout:"pipe",stderr:"pipe",cwd:t.cwd,env:t.env?{...process.env,...t.env}:process.env}),[i,l,p]=await Promise.all([a.exited,new Response(a.stdout).arrayBuffer(),new Response(a.stderr).arrayBuffer()]),c=Buffer.from(l),u=Buffer.from(p);return {exitCode:i,text:()=>c.toString(),stdout:c,stderr:u}}catch(s){let a=Buffer.from(s instanceof Error?s.message:String(s));return {exitCode:1,text:()=>"",stdout:Buffer.alloc(0),stderr:a}}let r=t.env?{...process.env,...t.env}:void 0,n=exports.Shell.$`git ${e.join(" ")}`.quiet().nothrow().cwd(t.cwd);r&&(n=n.env(r));let o=await n;return {exitCode:o.exitCode,text:()=>o.text(),stdout:o.stdout,stderr:o.stderr}}chunkVRQQ33YH_cjs.j();function Tn(e){return e?ge.dirname(url.fileURLToPath(e)):typeof __dirname<"u"?__dirname:process.cwd()}function kn(e,t,r=3){function n(o,s){if(s>r||!Le.existsSync(o))return null;try{let a=Le.readdirSync(o);for(let i of a){let l=ge.join(o,i);try{let p=Le.statSync(l);if(p.isFile()&&l.endsWith(t))return l;if(p.isDirectory()&&s<r){let c=n(l,s+1);if(c)return c}}catch{}}}catch{}return null}return n(e,0)}function vn(e,t){let r=ge.join(e,t);if(Le.existsSync(r))return r;let n=t.split("/").pop()||t,o=e;for(let s=0;s<5;s++){let a=ge.join(o,"assets","txt");if(Le.existsSync(a)){let p=kn(a,n,5);if(p)return p}let i=ge.join(o,"dist","assets","txt");if(Le.existsSync(i)){let p=kn(i,n,5);if(p)return p}let l=ge.join(o,"..");if(l===o)break;o=l;}return r}function zr(e,t){return exports.Lazy.lazy(()=>{try{let r=Tn(t),n=vn(r,e);return exports.PKG.file(n).textSync()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}function Hr(e,t){return exports.Lazy.lazy(async()=>{try{let r=Tn(t),n=vn(r,e);return await exports.PKG.file(n).text()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}chunkVRQQ33YH_cjs.j();function Wr(e){return e()}chunkVRQQ33YH_cjs.j();function Ur(e){if(!e||typeof e!="string")return {provider:"",model:""};let t=e.indexOf("/");return t===-1?{provider:"",model:e}:{provider:e.substring(0,t),model:e.substring(t+1)}}chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function bt(e,t,r,n=()=>true){let o=-1,s=-1,a=0;for(let i=t;i<r;i++){if(!n(i))continue;let l=e[i];if(l){if(l==="("){a+=1;continue}if(l===")"&&a>0){a-=1;continue}a===0&&(l===`
41
- `?o=i:/\s/.test(l)&&(s=i));}}return {lastNewline:o,lastWhitespace:s}}function qr(e,t){if(!e)return [];if(t<=0)return [e];if(e.length<=t)return [e]}function he(e,t,r){try{let n=_e.z.string().parse(e),o=_e.z.number().int().parse(t),s=qr(n,o);if(s)return s;let a=yt(n,o,i=>{let{lastNewline:l,lastWhitespace:p}=bt(i,0,i.length);return l>0?l:p});return r?.minLength&&r.minLength>0&&(a=Pn(a,r.minLength)),a}catch(n){return console.warn("Invalid input for chunkText:",n),typeof e=="string"&&e.length>0?[e]:[]}}function Pn(e,t){if(e.length<=1||t<=0)return e;let r=[],n=e[0]??"";for(let o=1;o<e.length;o++){let s=e[o]??"";n.length<t?n=n+`
39
+ `).filter($=>$.trim())})},E)}});return y()}m.$=x;})(exports.Shell||(exports.Shell={}));var Cr=exports.Shell.$;chunkVRQQ33YH_cjs.j();var Pe=class Pe extends Error{static create(t,r){var s;let n=_e__default.default.object({name:_e__default.default.literal(t),data:r}).meta({ref:t}),o=(s=class extends Pe{constructor(i,l){super(t,l);chunkVRQQ33YH_cjs.c(this,"data",i);chunkVRQQ33YH_cjs.c(this,"name",t);this.name=t;}static isInstance(i){return typeof i=="object"&&"name"in i&&i.name===t}schema(){return n}toObject(){return {name:t,data:this.data}}},chunkVRQQ33YH_cjs.c(s,"Schema",n),s);return Object.defineProperty(o,"name",{value:t}),o}};chunkVRQQ33YH_cjs.c(Pe,"Unknown",Pe.create("UnknownError",_e__default.default.object({message:_e__default.default.string()})));var pt=Pe;chunkVRQQ33YH_cjs.j();exports.Ignore=void 0;(t=>{function e(r){return new gt(r)}t.create=e;})(exports.Ignore||(exports.Ignore={}));var gt=class{constructor(t){chunkVRQQ33YH_cjs.c(this,"rules",[]);chunkVRQQ33YH_cjs.c(this,"ignorecase");chunkVRQQ33YH_cjs.c(this,"debug");this.ignorecase=t?.ignorecase??false,this.debug=t?.debug??false;}add(t){let r=typeof t=="string"?t.split(`
40
+ `):t;for(let n=0;n<r.length;n++){let o=r[n];this.parseRule(o,n+1);}return this}parseRule(t,r){let n=t;if(n.length===0||n.startsWith("#"))return;let s=n.startsWith("!");if(s&&(n=n.slice(1)),n=n.trimEnd(),n.length===0)return;if(n.startsWith("\\#")){n=n.slice(1);return}if(n.startsWith("#"))return;let i=n.endsWith("/");if(i&&(n=n.slice(0,-1)),n.length===0)return;let l=this.patternToRegex(n);l&&this.rules.push({pattern:n,regex:l,negative:s,isDirectory:i,original:t,lineNumber:r});}ignores(t,r){let n=this.normalizePath(t),o=r??t.endsWith("/"),s=this.checkIgnore(n,o);return this.debug&&console.log(`Ignore.ignores("${t}", isDirectory=${o}) => ${s}`),s}checkIgnore(t,r){let n=false;for(let o of this.rules)o.isDirectory&&!r||o.regex.test(t)&&(o.negative?n=false:n=true);return n}filter(t){return t.filter(r=>!this.ignores(r))}createFilter(){return t=>!this.ignores(t)}patternToRegex(t){let r=[],n=0,o=t.length;for(;n<o;){let p=t[n];if(p==="\\")if(n+1<o){let c=t[n+1];r.push(this.escapeRegexChar(c)),n+=2;continue}else {r.push("\\\\"),n++;continue}if(p==="*")if(n+1<o&&t[n+1]==="*")if(n+2<o&&t[n+2]==="/")if(n===0||t[n-1]==="/")if(n+3>=o){r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else if(n===0||t[n-1]==="/")if(n+2>=o){r.push(".*"),n+=2;continue}else {r.push("(?:/.*)*"),n+=2;continue}else {r.push(".*"),n+=2;continue}else {r.push("[^/]*"),n++;continue}if(p==="?"){r.push("[^/]"),n++;continue}if(p==="["){let c=this.findMatchingBracket(t,n);if(c!==-1){let u=t.slice(n,c+1);(u.startsWith("[!")||u.startsWith("[^"))&&(u="[^"+u.slice(2)),this.ignorecase&&(u=u.toLowerCase()),r.push(u),n=c+1;continue}}if(p==="/"){r.push("/"),n++;continue}if(".+$^{}|()".includes(p)){r.push("\\"+p),n++;continue}if(this.ignorecase&&p>="A"&&p<="Z"){r.push("["+p.toLowerCase()+p+"]"),n++;continue}r.push(p),n++;}let s=r.join(""),a=s.startsWith("/"),i=s.endsWith("/")&&!s.endsWith("\\/");a||(s="(?:.*/)?"+s),i&&(s=s.slice(0,-1)),!i&&!s.endsWith("(?:/.*)*")&&(s="(?:"+s+")(?:/.*)?");let l=this.ignorecase?"i":"";try{return new RegExp("^"+s+"$",l)}catch(p){return this.debug&&console.error(`Failed to create regex for pattern "${t}":`,p),null}}escapeRegexChar(t){return "\\[]{}().+^$|".includes(t)?"\\"+t:t}findMatchingBracket(t,r){let n=r+1,o=t.length;for((n>=o||t[n]==="!"||t[n]==="^")&&n++;n<o;){let s=t[n];if(s==="\\"&&n+1<o){n+=2;continue}if(s==="]")return n;if(n+2<o&&t[n+1]==="-"&&t[n+2]!=="]"){n+=3;continue}n++;}return -1}normalizePath(t){let r=t.replace(/\\/g,"/");if(r==="/")return "";for(;r.startsWith("./");)r=r.slice(2);return r}};chunkVRQQ33YH_cjs.j();function Sn(e,t){let r=n=>{let o;try{o=e.parse(n);}catch(s){throw console.trace("schema validation failure stack trace:"),s instanceof _e.z.ZodError&&console.error("schema validation issues:",JSON.stringify(s.issues,null,2)),s}return t(o)};return r.force=n=>t(n),r.schema=e,r}var Ir=Sn;exports.Fn=void 0;(t=>t.fn=Sn)(exports.Fn||(exports.Fn={}));chunkVRQQ33YH_cjs.j();function Br(){let r=ge__default.default.join(process.cwd(),".env");Le.existsSync(r)&&dotenv.config({path:r,override:true,debug:false,encoding:"utf-8",quiet:true});}chunkVRQQ33YH_cjs.j();async function Lr(e,t){if(process.env.EASBOT_CLIENT==="acp")try{let s=process.platform==="win32"?"cmd":void 0,a=exports.Shell.spawn(s,`git ${e.join(" ")}`,{stdin:void 0,stdout:"pipe",stderr:"pipe",cwd:t.cwd,env:t.env?{...process.env,...t.env}:process.env}),[i,l,p]=await Promise.all([a.exited,new Response(a.stdout).arrayBuffer(),new Response(a.stderr).arrayBuffer()]),c=Buffer.from(l),u=Buffer.from(p);return {exitCode:i,text:()=>c.toString(),stdout:c,stderr:u}}catch(s){let a=Buffer.from(s instanceof Error?s.message:String(s));return {exitCode:1,text:()=>"",stdout:Buffer.alloc(0),stderr:a}}let r=t.env?{...process.env,...t.env}:void 0,n=exports.Shell.$`git ${e.join(" ")}`.quiet().nothrow().cwd(t.cwd);r&&(n=n.env(r));let o=await n;return {exitCode:o.exitCode,text:()=>o.text(),stdout:o.stdout,stderr:o.stderr}}chunkVRQQ33YH_cjs.j();function Tn(e){return e?ge.dirname(url.fileURLToPath(e)):typeof __dirname<"u"?__dirname:process.cwd()}function kn(e,t,r=3){function n(o,s){if(s>r||!Le.existsSync(o))return null;try{let a=Le.readdirSync(o);for(let i of a){let l=ge.join(o,i);try{let p=Le.statSync(l);if(p.isFile()&&l.endsWith(t))return l;if(p.isDirectory()&&s<r){let c=n(l,s+1);if(c)return c}}catch{}}}catch{}return null}return n(e,0)}function vn(e,t){let r=ge.join(e,t);if(Le.existsSync(r))return r;let n=t.split("/").pop()||t,o=e;for(let s=0;s<5;s++){let a=ge.join(o,"assets","txt");if(Le.existsSync(a)){let p=kn(a,n,5);if(p)return p}let i=ge.join(o,"dist","assets","txt");if(Le.existsSync(i)){let p=kn(i,n,5);if(p)return p}let l=ge.join(o,"..");if(l===o)break;o=l;}return r}function zr(e,t){return exports.Lazy.lazy(()=>{try{let r=Tn(t),n=vn(r,e);return exports.PKG.file(n).textSync()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}function Hr(e,t){return exports.Lazy.lazy(async()=>{try{let r=Tn(t),n=vn(r,e);return await exports.PKG.file(n).text()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}chunkVRQQ33YH_cjs.j();function Wr(e){return e()}chunkVRQQ33YH_cjs.j();function Ur(e){if(!e||typeof e!="string")return {provider:"",model:""};let t=e.indexOf("/");return t===-1?{provider:"",model:e}:{provider:e.substring(0,t),model:e.substring(t+1)}}chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function bt(e,t,r,n=()=>true){let o=-1,s=-1,a=0;for(let i=t;i<r;i++){if(!n(i))continue;let l=e[i];if(l){if(l==="("){a+=1;continue}if(l===")"&&a>0){a-=1;continue}a===0&&(l===`
41
+ `?o=i:/\s/.test(l)&&(s=i));}}return {lastNewline:o,lastWhitespace:s}}function qr(e,t){if(!e)return [];if(t<=0)return [e];if(e.length<=t)return [e]}function he(e,t,r){try{let n=_e.z.string().parse(e),o=_e.z.number().int().parse(t),s=qr(n,o);if(s)return s;let a=yt(n,o,i=>{let{lastNewline:l,lastWhitespace:p}=bt(i,0,i.length);return l>0?l:p});return r?.minLength&&r.minLength>0&&(a=Rn(a,r.minLength)),a}catch(n){return console.warn("Invalid input for chunkText:",n),typeof e=="string"&&e.length>0?[e]:[]}}function Rn(e,t){if(e.length<=1||t<=0)return e;let r=[],n=e[0]??"";for(let o=1;o<e.length;o++){let s=e[o]??"";n.length<t?n=n+`
42
42
 
43
43
  `+s:(r.push(n),n=s);}if(n.length>0)if(n.length<t&&r.length>0){let o=r.pop();r.push(o+`
44
44
 
45
- `+n);}else r.push(n);return r}function yt(e,t,r){if(!e)return [];if(t<=0||e.length<=t)return [e];let n=[],o=e;for(;o.length>t;){let s=o.slice(0,t),a=r(s),i=Number.isFinite(a)&&a>0&&a<=t?a:t,p=o.slice(0,i).trimEnd();p.length>0&&n.push(p);let c=i<o.length&&o[i]!==void 0&&/\s/.test(o[i]),u=Math.min(o.length,i+(c?1:0));o=o.slice(u).trimStart();}return o.length>0&&n.push(o),n}chunkVRQQ33YH_cjs.j();var xt=_e.z.enum(["bold","italic","strikethrough","code","code_block","spoiler","blockquote"]),Mn=_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),style:xt}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),En=_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),href:_e.z.string().min(1)}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Me=_e.z.object({text:_e.z.string(),styles:_e.z.array(Mn),links:_e.z.array(En)}).strict(),Ee=_e.z.enum(["off","bullets","code"]),De=_e.z.object({linkify:_e.z.boolean().default(true),enableSpoilers:_e.z.boolean().default(false),headingStyle:_e.z.enum(["none","bold"]).default("none"),blockquotePrefix:_e.z.string().default(""),autolink:_e.z.boolean().default(true),tableMode:Ee.default("off")}).partial().default({}),Cn=_e.z.object({open:_e.z.string(),close:_e.z.string()}).strict(),wt=_e.z.object({styleMarkers:_e.z.record(xt,Cn).optional(),escapeText:_e.z.any().optional(),buildLink:_e.z.any().optional()}).strict();_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),open:_e.z.string(),close:_e.z.string()}).strict();var St=_e.z.object({indentSize:_e.z.number().int().min(1).default(2),listMarker:_e.z.enum(["\u2022","-","*"]).default("\u2022"),codeBlockMarker:_e.z.enum(["```","~~~"]).default("```"),preserveFrontmatter:_e.z.boolean().default(true)}).strict(),kt=_e.z.record(_e.z.string(),_e.z.string()),Ne=_e.z.object({open:_e.z.boolean(),ticks:_e.z.number().int().min(0)}).strict();_e.z.object({inlineState:Ne,isInside:_e.z.any()}).strict();_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),openLine:_e.z.string(),marker:_e.z.string(),indent:_e.z.string()}).strict();_e.z.object({tables:Ee.optional()}).strict();function Zr(e){let t=new Kr__default.default({html:false,linkify:e.linkify??true,breaks:false,typographer:false});return t.enable("strikethrough"),e.tableMode&&e.tableMode!=="off"?t.enable("table"):t.disable("table"),e.autolink===false&&t.disable("autolink"),t}function In(e,t){if(e.attrGet)return e.attrGet(t);if(e.attrs){for(let[r,n]of e.attrs)if(r===t)return n}return null}function Tt(e,t){return {...e,type:"text",content:t,children:void 0}}function Xr(e){for(let t of e)t.children&&t.children.length>0&&(t.children=Qr(t.children));}function Qr(e){let t=0;for(let a of e){if(a.type!=="text")continue;let i=a.content??"",l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1)break;t+=1,l=p+2;}}if(t<2)return e;let r=t-t%2,n=[],o={spoilerOpen:false},s=0;for(let a of e){if(a.type!=="text"){n.push(a);continue}let i=a.content??"";if(!i.includes("||")){n.push(a);continue}let l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1){l<i.length&&n.push(Tt(a,i.slice(l)));break}if(s>=r){n.push(Tt(a,i.slice(l)));break}p>l&&n.push(Tt(a,i.slice(l,p))),s+=1,o.spoilerOpen=!o.spoilerOpen,n.push({type:o.spoilerOpen?"spoiler_open":"spoiler_close"}),l=p+2;}}return n}function eo(){return {text:"",styles:[],openStyles:[],links:[],linkStack:[]}}function de(e){return e.table?.currentCell??e}function ze(e,t){if(!t)return;let r=de(e);r.text+=t;}function be(e,t){let r=de(e);r.openStyles.push({style:t,start:r.text.length});}function ye(e,t){let r=de(e);for(let n=r.openStyles.length-1;n>=0;n-=1){let o=r.openStyles[n];if(o?.style===t){let s=o.start;r.openStyles.splice(n,1);let a=r.text.length;a>s&&r.styles.push({start:s,end:a,style:t});return}}}function On(e){e.env.listStack.length>0||e.table||(e.text+=`
45
+ `+n);}else r.push(n);return r}function yt(e,t,r){if(!e)return [];if(t<=0||e.length<=t)return [e];let n=[],o=e;for(;o.length>t;){let s=o.slice(0,t),a=r(s),i=Number.isFinite(a)&&a>0&&a<=t?a:t,p=o.slice(0,i).trimEnd();p.length>0&&n.push(p);let c=i<o.length&&o[i]!==void 0&&/\s/.test(o[i]),u=Math.min(o.length,i+(c?1:0));o=o.slice(u).trimStart();}return o.length>0&&n.push(o),n}chunkVRQQ33YH_cjs.j();var xt=_e.z.enum(["bold","italic","strikethrough","code","code_block","spoiler","blockquote"]),Mn=_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),style:xt}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),En=_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),href:_e.z.string().min(1)}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Me=_e.z.object({text:_e.z.string(),styles:_e.z.array(Mn),links:_e.z.array(En)}).strict(),Ee=_e.z.enum(["off","bullets","code"]),De=_e.z.object({linkify:_e.z.boolean().default(true),enableSpoilers:_e.z.boolean().default(false),headingStyle:_e.z.enum(["none","bold"]).default("none"),blockquotePrefix:_e.z.string().default(""),autolink:_e.z.boolean().default(true),tableMode:Ee.default("off")}).partial().default({}),Cn=_e.z.object({open:_e.z.string(),close:_e.z.string()}).strict(),wt=_e.z.object({styleMarkers:_e.z.record(xt,Cn).optional(),escapeText:_e.z.any().optional(),buildLink:_e.z.any().optional()}).strict();_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),open:_e.z.string(),close:_e.z.string()}).strict();var St=_e.z.object({indentSize:_e.z.number().int().min(1).default(2),listMarker:_e.z.enum(["\u2022","-","*"]).default("\u2022"),codeBlockMarker:_e.z.enum(["```","~~~"]).default("```"),preserveFrontmatter:_e.z.boolean().default(true)}).strict(),kt=_e.z.record(_e.z.string(),_e.z.string()),Ne=_e.z.object({open:_e.z.boolean(),ticks:_e.z.number().int().min(0)}).strict();_e.z.object({inlineState:Ne,isInside:_e.z.any()}).strict();_e.z.object({start:_e.z.number().int().min(0),end:_e.z.number().int().min(0),openLine:_e.z.string(),marker:_e.z.string(),indent:_e.z.string()}).strict();_e.z.object({tables:Ee.optional()}).strict();function Zr(e){let t=new Kr__default.default({html:false,linkify:e.linkify??true,breaks:false,typographer:false});return t.enable("strikethrough"),e.tableMode&&e.tableMode!=="off"?t.enable("table"):t.disable("table"),e.autolink===false&&t.disable("autolink"),t}function On(e,t){if(e.attrGet)return e.attrGet(t);if(e.attrs){for(let[r,n]of e.attrs)if(r===t)return n}return null}function Tt(e,t){return {...e,type:"text",content:t,children:void 0}}function Xr(e){for(let t of e)t.children&&t.children.length>0&&(t.children=Qr(t.children));}function Qr(e){let t=0;for(let a of e){if(a.type!=="text")continue;let i=a.content??"",l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1)break;t+=1,l=p+2;}}if(t<2)return e;let r=t-t%2,n=[],o={spoilerOpen:false},s=0;for(let a of e){if(a.type!=="text"){n.push(a);continue}let i=a.content??"";if(!i.includes("||")){n.push(a);continue}let l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1){l<i.length&&n.push(Tt(a,i.slice(l)));break}if(s>=r){n.push(Tt(a,i.slice(l)));break}p>l&&n.push(Tt(a,i.slice(l,p))),s+=1,o.spoilerOpen=!o.spoilerOpen,n.push({type:o.spoilerOpen?"spoiler_open":"spoiler_close"}),l=p+2;}}return n}function eo(){return {text:"",styles:[],openStyles:[],links:[],linkStack:[]}}function de(e){return e.table?.currentCell??e}function ze(e,t){if(!t)return;let r=de(e);r.text+=t;}function be(e,t){let r=de(e);r.openStyles.push({style:t,start:r.text.length});}function ye(e,t){let r=de(e);for(let n=r.openStyles.length-1;n>=0;n-=1){let o=r.openStyles[n];if(o?.style===t){let s=o.start;r.openStyles.splice(n,1);let a=r.text.length;a>s&&r.styles.push({start:s,end:a,style:t});return}}}function In(e){e.env.listStack.length>0||e.table||(e.text+=`
46
46
 
47
47
  `);}function to(e){let t=e.env.listStack,r=t[t.length-1];if(!r)return;r.index+=1;let n=" ".repeat(Math.max(0,t.length-1)),o=r.type==="ordered"?`${r.index}. `:"\u2022 ";e.text+=`${n}${o}`;}function no(e,t){if(!t)return;let r=de(e),n=r.text.length;r.text+=t,r.styles.push({start:n,end:n+t.length,style:"code"});}function ro(e,t){let r=t??"",n=de(e),o=n.text.length;n.text+=r,n.styles.push({start:o,end:o+r.length,style:"code_block"});}function oo(e){let t=de(e),r=t.linkStack.pop();if(!r?.href)return;let n=r.href.trim();if(!n)return;let o=r.labelStart,s=t.text.length;if(s<=o){t.links.push({start:o,end:s,href:n});return}t.links.push({start:o,end:s,href:n});}function so(){return {headers:[],rows:[],currentRow:[],currentCell:null,inHeader:false}}function io(e){return $n(e),{text:e.text,styles:e.styles,links:e.links}}function He(e){let t=e.text,r=0,n=t.length;for(;r<n&&/\s/.test(t[r]??"");)r+=1;for(;n>r&&/\s/.test(t[n-1]??"");)n-=1;if(r===0&&n===t.length)return e;let o=t.slice(r,n),s=o.length,a=[];for(let l of e.styles){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&a.push({start:p,end:c,style:l.style});}let i=[];for(let l of e.links){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&i.push({start:p,end:c,href:l.href});}return {text:o,styles:a,links:i}}function vt(e,t){if(!t.text)return;let r=e.text.length;e.text+=t.text;for(let n of t.styles)e.styles.push({start:r+n.start,end:r+n.end,style:n.style});for(let n of t.links)e.links.push({start:r+n.start,end:r+n.end,href:n.href});}function ao(e,t){t.text&&(e.text+=t.text);}function Fn(e,t){let{header:r,value:n,columnIndex:o,includeColumnFallback:s}=t;n?.text&&(e.text+="\u2022 ",r?.text?(vt(e,r),e.text+=": "):s&&(e.text+=`Column ${o}: `),vt(e,n),e.text+=`
48
48
  `);}function lo(e){if(!e.table)return;let t=e.table.headers.map(He),r=e.table.rows.map(o=>o.map(He));if(t.length===0&&r.length===0)return;if(t.length>1&&r.length>0)for(let o of r){if(o.length===0)continue;let s=o[0];if(s?.text){let a=e.text.length;vt(e,s);let i=e.text.length;i>a&&e.styles.push({start:a,end:i,style:"bold"}),e.text+=`
@@ -50,17 +50,17 @@ ${F.stderr}`);if(E){E($);return}throw $}return k({exitCode:F.code,stdout:new Tex
50
50
  `;}else for(let o of r){for(let s=0;s<o.length;s++)Fn(e,{header:t[s],value:o[s],columnIndex:s,includeColumnFallback:false});e.text+=`
51
51
  `;}}function co(e){if(!e.table)return;let t=e.table.headers.map(He),r=e.table.rows.map(c=>c.map(He)),n=Math.max(t.length,...r.map(c=>c.length));if(n===0)return;let o=Array.from({length:n},()=>0),s=c=>{for(let u=0;u<n;u+=1){let S=c[u]?.text.length??0;(o[u]??0)<S&&(o[u]=S);}};s(t);for(let c of r)s(c);let a=e.text.length,i=c=>{e.text+="|";for(let u=0;u<n;u+=1){e.text+=" ";let g=c[u];g&&ao(e,g);let S=g?.text.length??0,j=(o[u]??0)-S;j>0&&(e.text+=" ".repeat(j)),e.text+=" |";}e.text+=`
52
52
  `;},l=()=>{e.text+="|";for(let c=0;c<n;c+=1){let u=o[c]??0,g=Math.max(3,u);e.text+=` ${"-".repeat(g)} |`;}e.text+=`
53
- `;};i(t),l();for(let c of r)i(c);let p=e.text.length;p>a&&e.styles.push({start:a,end:p,style:"code_block"});}function Rt(e,t){for(let r of e)switch(r.type){case "inline":r.children&&Rt(r.children,t);break;case "text":ze(t,r.content??"");break;case "em_open":be(t,"italic");break;case "em_close":ye(t,"italic");break;case "strong_open":be(t,"bold");break;case "strong_close":ye(t,"bold");break;case "s_open":be(t,"strikethrough");break;case "s_close":ye(t,"strikethrough");break;case "code_inline":no(t,r.content??"");break;case "spoiler_open":t.enableSpoilers&&be(t,"spoiler");break;case "spoiler_close":t.enableSpoilers&&ye(t,"spoiler");break;case "link_open":{let n=In(r,"href")??"",o=de(t);o.linkStack.push({href:n,labelStart:o.text.length});break}case "link_close":oo(t);break;case "image":ze(t,r.content??"");break;case "softbreak":case "hardbreak":ze(t,`
54
- `);break;case "paragraph_close":On(t);break;case "heading_open":t.headingStyle==="bold"&&be(t,"bold");break;case "heading_close":t.headingStyle==="bold"&&ye(t,"bold"),On(t);break;case "blockquote_open":t.blockquotePrefix&&(t.text+=t.blockquotePrefix),be(t,"blockquote");break;case "blockquote_close":ye(t,"blockquote");break;case "bullet_list_open":t.env.listStack.length>0&&(t.text+=`
53
+ `;};i(t),l();for(let c of r)i(c);let p=e.text.length;p>a&&e.styles.push({start:a,end:p,style:"code_block"});}function Pt(e,t){for(let r of e)switch(r.type){case "inline":r.children&&Pt(r.children,t);break;case "text":ze(t,r.content??"");break;case "em_open":be(t,"italic");break;case "em_close":ye(t,"italic");break;case "strong_open":be(t,"bold");break;case "strong_close":ye(t,"bold");break;case "s_open":be(t,"strikethrough");break;case "s_close":ye(t,"strikethrough");break;case "code_inline":no(t,r.content??"");break;case "spoiler_open":t.enableSpoilers&&be(t,"spoiler");break;case "spoiler_close":t.enableSpoilers&&ye(t,"spoiler");break;case "link_open":{let n=On(r,"href")??"",o=de(t);o.linkStack.push({href:n,labelStart:o.text.length});break}case "link_close":oo(t);break;case "image":ze(t,r.content??"");break;case "softbreak":case "hardbreak":ze(t,`
54
+ `);break;case "paragraph_close":In(t);break;case "heading_open":t.headingStyle==="bold"&&be(t,"bold");break;case "heading_close":t.headingStyle==="bold"&&ye(t,"bold"),In(t);break;case "blockquote_open":t.blockquotePrefix&&(t.text+=t.blockquotePrefix),be(t,"blockquote");break;case "blockquote_close":ye(t,"blockquote");break;case "bullet_list_open":t.env.listStack.length>0&&(t.text+=`
55
55
  `),t.env.listStack.push({type:"bullet",index:0});break;case "bullet_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
56
56
  `);break;case "ordered_list_open":{t.env.listStack.length>0&&(t.text+=`
57
- `);let n=Number(In(r,"start")??"1");t.env.listStack.push({type:"ordered",index:n-1});break}case "ordered_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
57
+ `);let n=Number(On(r,"start")??"1");t.env.listStack.push({type:"ordered",index:n-1});break}case "ordered_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
58
58
  `);break;case "list_item_open":to(t);break;case "list_item_close":t.text.endsWith(`
59
59
  `)||(t.text+=`
60
60
  `);break;case "code_block":case "fence":ro(t,r.content??"");break;case "html_block":case "html_inline":ze(t,r.content??"");break;case "table_open":t.tableMode!=="off"&&(t.table=so(),t.hasTables=true);break;case "table_close":t.table&&(t.tableMode==="bullets"?lo(t):t.tableMode==="code"&&co(t)),t.table=null;break;case "thead_open":t.table&&(t.table.inHeader=true);break;case "thead_close":t.table&&(t.table.inHeader=false);break;case "tbody_open":case "tbody_close":break;case "tr_open":t.table&&(t.table.currentRow=[]);break;case "tr_close":t.table&&(t.table.inHeader?t.table.headers=t.table.currentRow:t.table.rows.push(t.table.currentRow),t.table.currentRow=[]);break;case "th_open":case "td_open":t.table&&(t.table.currentCell=eo());break;case "th_close":case "td_close":t.table?.currentCell&&(t.table.currentRow.push(io(t.table.currentCell)),t.table.currentCell=null);break;case "hr":t.text+=`\u2500\u2500\u2500
61
61
 
62
- `;break;default:r.children&&Rt(r.children,t);break}}function $n(e){for(let t=e.openStyles.length-1;t>=0;t-=1){let r=e.openStyles[t];if(!r)continue;let n=e.text.length;n>r.start&&e.styles.push({start:r.start,end:n,style:r.style});}e.openStyles=[];}function uo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,style:n.style});}return r}function fo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,href:n.href});}return r}function An(e){let t=[...e].toSorted((n,o)=>n.start!==o.start?n.start-o.start:n.end!==o.end?n.end-o.end:n.style.localeCompare(o.style)),r=[];for(let n of t){let o=r[r.length-1];if(o&&o.style===n.style&&(n.start<o.end||n.start===o.end&&n.style!=="blockquote")){o.end=Math.max(o.end,n.end);continue}r.push({...n});}return r}function Bn(e,t,r){let n=Math.max(e.start,t),o=Math.min(e.end,r);return o<=n?null:{start:n,end:o}}function po(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Bn(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,style:o.style});}return An(n)}function mo(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Bn(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,href:o.href});}return n}function xe(e,t){try{let r=typeof e=="string"?e:"",n=De.parse(t??{});return Ce(r,n).ir}catch(r){return console.error("Markdown parse error:",r),{text:"",styles:[],links:[]}}}function Ce(e,t){try{let r=typeof e=="string"?e:"",n=De.parse(t),o={listStack:[]},a=Zr(n).parse(r||"",o);n.enableSpoilers&&Xr(a);let i=n.tableMode??"off",l={text:"",styles:[],openStyles:[],links:[],linkStack:[],env:o,headingStyle:n.headingStyle??"none",blockquotePrefix:n.blockquotePrefix??"",enableSpoilers:n.enableSpoilers??!1,tableMode:i,table:null,hasTables:!1};Rt(a,l),$n(l);let c=l.text.trimEnd().length,u=0;for(let R of l.styles)R.style==="code_block"&&R.end>u&&(u=R.end);let g=Math.max(c,u);return {ir:{text:g===l.text.length?l.text:l.text.slice(0,g),styles:An(uo(l.styles,g)),links:fo(l.links,g)},hasTables:l.hasTables}}catch(r){return console.error("Markdown parse error:",r),{ir:{text:"",styles:[],links:[]},hasTables:false}}}function Ln(e,t){try{let r=Me.parse(e),n=typeof t=="number"&&t>0?t:0;if(!r.text)return [];if(n<=0||r.text.length<=n)return [r];let o=he(r.text,n),s=[],a=0;return o.forEach((i,l)=>{if(!i)return;if(l>0)for(;a<r.text.length&&/\s/.test(r.text[a]??"");)a+=1;let p=a,c=Math.min(r.text.length,p+i.length);s.push({text:i,styles:po(r.styles,p,c),links:mo(r.links,p,c)}),a=c;}),s}catch(r){return console.error("Chunk IR error:",r),[]}}chunkVRQQ33YH_cjs.j();var go={bold:{open:"**",close:"**"},italic:{open:"*",close:"*"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Ie(e,t){try{let r=Me.parse(e),n=wt.parse(t??{});if(!r.text)return "";let o=n.styleMarkers??go,s=n.escapeText??(u=>u),a=n.buildLink,i=[];for(let u=0;u<r.styles.length;u++){let g=r.styles[u];g&&(i.push({position:g.start,type:"open",style:g.style,spanIndex:u}),i.push({position:g.end,type:"close",style:g.style,spanIndex:u}));}for(let u=0;u<r.links.length;u++){let g=r.links[u];g&&(i.push({position:g.start,type:"link_open",spanIndex:u,href:g.href}),i.push({position:g.end,type:"link_close",spanIndex:u,href:g.href}));}i.sort((u,g)=>{if(u.position!==g.position)return u.position-g.position;let S=(D,ae)=>D==="link_open"?0:D==="open"?1:D==="close"?2:D==="link_close"?3:4,R=u.type==="close"||u.type==="link_close",j=g.type==="close"||g.type==="link_close",z=S(u.type,R),U=S(g.type,j);return z!==U?z-U:u.type==="open"&&g.type==="open"?u.spanIndex-g.spanIndex:u.type==="close"&&g.type==="close"?g.spanIndex-u.spanIndex:u.spanIndex-g.spanIndex});let l="",p=0,c=[];for(let u of i){if(u.position>p){let g=r.text.slice(p,u.position);l+=s?s(g):g;}if(u.type==="open"||u.type==="close"){let g=o[u.style];if(g)if(u.type==="open")l+=g.open,c.push(u);else {l+=g.close,u.style==="code_block"&&u.position<r.text.length&&(l+=`
63
- `);let S=c.findIndex(R=>R.spanIndex===u.spanIndex&&R.type==="open");S!==-1&&c.splice(S,1);}}else if(u.type==="link_open")l+="[",c.push(u);else if(u.type==="link_close"){l+="]("+u.href+")";let g=c.findIndex(S=>S.spanIndex===u.spanIndex&&S.type==="link_open");g!==-1&&c.splice(g,1);}p=u.position;}if(p<r.text.length){let u=r.text.slice(p);l+=s?s(u):u;}return l}catch(r){return console.error("Markdown render error:",r),""}}function we(e,t){return Ie(e,t)}chunkVRQQ33YH_cjs.j();function ho(e){let t=e.replace(/\r\n/g,`
62
+ `;break;default:r.children&&Pt(r.children,t);break}}function $n(e){for(let t=e.openStyles.length-1;t>=0;t-=1){let r=e.openStyles[t];if(!r)continue;let n=e.text.length;n>r.start&&e.styles.push({start:r.start,end:n,style:r.style});}e.openStyles=[];}function uo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,style:n.style});}return r}function fo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,href:n.href});}return r}function An(e){let t=[...e].toSorted((n,o)=>n.start!==o.start?n.start-o.start:n.end!==o.end?n.end-o.end:n.style.localeCompare(o.style)),r=[];for(let n of t){let o=r[r.length-1];if(o&&o.style===n.style&&(n.start<o.end||n.start===o.end&&n.style!=="blockquote")){o.end=Math.max(o.end,n.end);continue}r.push({...n});}return r}function Bn(e,t,r){let n=Math.max(e.start,t),o=Math.min(e.end,r);return o<=n?null:{start:n,end:o}}function po(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Bn(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,style:o.style});}return An(n)}function mo(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Bn(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,href:o.href});}return n}function xe(e,t){try{let r=typeof e=="string"?e:"",n=De.parse(t??{});return Ce(r,n).ir}catch(r){return console.error("Markdown parse error:",r),{text:"",styles:[],links:[]}}}function Ce(e,t){try{let r=typeof e=="string"?e:"",n=De.parse(t),o={listStack:[]},a=Zr(n).parse(r||"",o);n.enableSpoilers&&Xr(a);let i=n.tableMode??"off",l={text:"",styles:[],openStyles:[],links:[],linkStack:[],env:o,headingStyle:n.headingStyle??"none",blockquotePrefix:n.blockquotePrefix??"",enableSpoilers:n.enableSpoilers??!1,tableMode:i,table:null,hasTables:!1};Pt(a,l),$n(l);let c=l.text.trimEnd().length,u=0;for(let P of l.styles)P.style==="code_block"&&P.end>u&&(u=P.end);let g=Math.max(c,u);return {ir:{text:g===l.text.length?l.text:l.text.slice(0,g),styles:An(uo(l.styles,g)),links:fo(l.links,g)},hasTables:l.hasTables}}catch(r){return console.error("Markdown parse error:",r),{ir:{text:"",styles:[],links:[]},hasTables:false}}}function Ln(e,t){try{let r=Me.parse(e),n=typeof t=="number"&&t>0?t:0;if(!r.text)return [];if(n<=0||r.text.length<=n)return [r];let o=he(r.text,n),s=[],a=0;return o.forEach((i,l)=>{if(!i)return;if(l>0)for(;a<r.text.length&&/\s/.test(r.text[a]??"");)a+=1;let p=a,c=Math.min(r.text.length,p+i.length);s.push({text:i,styles:po(r.styles,p,c),links:mo(r.links,p,c)}),a=c;}),s}catch(r){return console.error("Chunk IR error:",r),[]}}chunkVRQQ33YH_cjs.j();var go={bold:{open:"**",close:"**"},italic:{open:"*",close:"*"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Oe(e,t){try{let r=Me.parse(e),n=wt.parse(t??{});if(!r.text)return "";let o=n.styleMarkers??go,s=n.escapeText??(u=>u),a=n.buildLink,i=[];for(let u=0;u<r.styles.length;u++){let g=r.styles[u];g&&(i.push({position:g.start,type:"open",style:g.style,spanIndex:u}),i.push({position:g.end,type:"close",style:g.style,spanIndex:u}));}for(let u=0;u<r.links.length;u++){let g=r.links[u];g&&(i.push({position:g.start,type:"link_open",spanIndex:u,href:g.href}),i.push({position:g.end,type:"link_close",spanIndex:u,href:g.href}));}i.sort((u,g)=>{if(u.position!==g.position)return u.position-g.position;let S=(D,ae)=>D==="link_open"?0:D==="open"?1:D==="close"?2:D==="link_close"?3:4,P=u.type==="close"||u.type==="link_close",j=g.type==="close"||g.type==="link_close",z=S(u.type,P),U=S(g.type,j);return z!==U?z-U:u.type==="open"&&g.type==="open"?u.spanIndex-g.spanIndex:u.type==="close"&&g.type==="close"?g.spanIndex-u.spanIndex:u.spanIndex-g.spanIndex});let l="",p=0,c=[];for(let u of i){if(u.position>p){let g=r.text.slice(p,u.position);l+=s?s(g):g;}if(u.type==="open"||u.type==="close"){let g=o[u.style];if(g)if(u.type==="open")l+=g.open,c.push(u);else {l+=g.close,u.style==="code_block"&&u.position<r.text.length&&(l+=`
63
+ `);let S=c.findIndex(P=>P.spanIndex===u.spanIndex&&P.type==="open");S!==-1&&c.splice(S,1);}}else if(u.type==="link_open")l+="[",c.push(u);else if(u.type==="link_close"){l+="]("+u.href+")";let g=c.findIndex(S=>S.spanIndex===u.spanIndex&&S.type==="link_open");g!==-1&&c.splice(g,1);}p=u.position;}if(p<r.text.length){let u=r.text.slice(p);l+=s?s(u):u;}return l}catch(r){return console.error("Markdown render error:",r),""}}function we(e,t){return Oe(e,t)}chunkVRQQ33YH_cjs.j();function ho(e){let t=e.replace(/\r\n/g,`
64
64
  `).replace(/\r/g,`
65
65
  `);if(!t.startsWith("---"))return {frontmatter:"",content:e};let r=t.indexOf(`
66
66
  ---`,3);if(r===-1)return {frontmatter:"",content:e};let n=t.slice(0,r+4),o=t.slice(r+4).trimStart();return {frontmatter:n,content:o}}function We(e,t){try{let r=typeof e=="string"?e:"",n=St.parse(t??{});if(!r)return "";let{frontmatter:o,content:s}=ho(r),a=xe(s,{linkify:!0,enableSpoilers:!1,autolink:!0,headingStyle:"none",blockquotePrefix:"",tableMode:"off"}),i=we(a);return i=i.replace(/\n{3,}/g,`
@@ -69,21 +69,21 @@ ${F.stderr}`);if(E){E($);return}throw $}return k({exitCode:F.code,stdout:new Tex
69
69
  `,n.preserveFrontmatter&&o&&(i=o+`
70
70
  `+i),i}catch(r){return console.error("Markdown format error:",r),e}}chunkVRQQ33YH_cjs.j();function bo(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function yo(e){if(e!=null){if(typeof e=="string")return {value:e.trim(),kind:"scalar"};if(typeof e=="number"||typeof e=="boolean")return {value:String(e),kind:"scalar"};if(typeof e=="object")try{return {value:JSON.stringify(e),kind:"structured"}}catch{return}}}function xo(e){try{let t=_n__default.default.parse(e,{schema:"core"});if(!t||typeof t!="object"||Array.isArray(t))return null;let r={};for(let[n,o]of Object.entries(t)){let s=n.trim();if(!s)continue;let a=yo(o);a&&(r[s]=a);}return r}catch{return null}}function wo(e,t){let r=[],n=t+1;for(;n<e.length;){let s=e[n];if(!s){n+=1;continue}if(s.length>0&&!s.startsWith(" ")&&!s.startsWith(" "))break;r.push(s),n+=1;}return {value:r.join(`
71
71
  `).trim(),linesConsumed:n-t}}function So(e){let t={},r=e.split(`
72
- `),n=0;for(;n<r.length;){let o=r[n];if(!o){n+=1;continue}let s=o.match(/^([\w-]+):\s*(.*)$/);if(!s?.[1]||!s[2]){n+=1;continue}let a=s[1],i=s[2].trim();if(!a){n+=1;continue}if(!i&&n+1<r.length){let p=r[n+1];if(p&&(p.startsWith(" ")||p.startsWith(" "))){let{value:c,linesConsumed:u}=wo(r,n);c&&(t[a]={value:c,kind:"multiline",rawInline:i}),n+=u;continue}}let l=bo(i);l&&(t[a]={value:l,kind:"inline",rawInline:i}),n+=1;}return t}function ko(e){let t={};for(let[r,n]of Object.entries(e))t[r]=n.value;return t}function To(e){return /^[|>][+-]?(\d+)?[+-]?$/.test(e)}function vo(e){let{lineEntry:t,yamlValue:r}=e;return r.kind!=="structured"||t.kind!=="inline"||To(t.rawInline)?false:t.value.includes(":")}function Ro(e){let t=e.replace(/\r\n/g,`
72
+ `),n=0;for(;n<r.length;){let o=r[n];if(!o){n+=1;continue}let s=o.match(/^([\w-]+):\s*(.*)$/);if(!s?.[1]||!s[2]){n+=1;continue}let a=s[1],i=s[2].trim();if(!a){n+=1;continue}if(!i&&n+1<r.length){let p=r[n+1];if(p&&(p.startsWith(" ")||p.startsWith(" "))){let{value:c,linesConsumed:u}=wo(r,n);c&&(t[a]={value:c,kind:"multiline",rawInline:i}),n+=u;continue}}let l=bo(i);l&&(t[a]={value:l,kind:"inline",rawInline:i}),n+=1;}return t}function ko(e){let t={};for(let[r,n]of Object.entries(e))t[r]=n.value;return t}function To(e){return /^[|>][+-]?(\d+)?[+-]?$/.test(e)}function vo(e){let{lineEntry:t,yamlValue:r}=e;return r.kind!=="structured"||t.kind!=="inline"||To(t.rawInline)?false:t.value.includes(":")}function Po(e){let t=e.replace(/\r\n/g,`
73
73
  `).replace(/\r/g,`
74
74
  `);if(!t.startsWith("---"))return;let r=t.indexOf(`
75
- ---`,3);if(r!==-1)return t.slice(4,r)}function Oe(e){try{if(typeof e!="string")return {};let t=Ro(e);if(!t)return {};let r=So(t),n=xo(t);if(n===null)return ko(r);let o={};for(let[s,a]of Object.entries(n)){o[s]=a.value;let i=r[s];i&&vo({lineEntry:i,yamlValue:a})&&(o[s]=i.value);}for(let[s,a]of Object.entries(r))s in o||(o[s]=a.value);return o}catch(t){return console.warn("Failed to parse frontmatter:",t),{}}}function Ue(e){try{let t=kt.parse(e);if(Object.keys(t).length===0)return "";let r={};for(let[o,s]of Object.entries(t))try{let a=JSON.parse(s);r[o]=a;}catch{r[o]=s;}return `---
75
+ ---`,3);if(r!==-1)return t.slice(4,r)}function Ie(e){try{if(typeof e!="string")return {};let t=Po(e);if(!t)return {};let r=So(t),n=xo(t);if(n===null)return ko(r);let o={};for(let[s,a]of Object.entries(n)){o[s]=a.value;let i=r[s];i&&vo({lineEntry:i,yamlValue:a})&&(o[s]=i.value);}for(let[s,a]of Object.entries(r))s in o||(o[s]=a.value);return o}catch(t){return console.warn("Failed to parse frontmatter:",t),{}}}function Ue(e){try{let t=kt.parse(e);if(Object.keys(t).length===0)return "";let r={};for(let[o,s]of Object.entries(t))try{let a=JSON.parse(s);r[o]=a;}catch{r[o]=s;}return `---
76
76
  ${_n__default.default.stringify(r,{lineWidth:0,defaultStringType:"QUOTE_DOUBLE"}).trim()}
77
77
  ---`}catch(t){return console.warn("Failed to serialize frontmatter:",t),""}}function qe(e){try{if(typeof e!="string")return {frontmatter:{},content:""};let t=e.replace(/\r\n/g,`
78
78
  `).replace(/\r/g,`
79
79
  `);if(!t.startsWith("---"))return {frontmatter:{},content:e};let r=t.indexOf(`
80
- ---`,3);if(r===-1)return {frontmatter:{},content:e};let n=t.slice(4,r),o=t.slice(r+4).trimStart();return {frontmatter:Oe(e),content:o}}catch(t){return console.warn("Failed to extract frontmatter:",t),{frontmatter:{},content:e}}}chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Ve(e){try{let t=_e.z.string().parse(e),r=[],n,o=0;for(;o<=t.length;){let s=t.indexOf(`
81
- `,o),a=s===-1?t.length:s,i=t.slice(o,a),l=i.match(/^( {0,3})(`{3,}|~{3,})(.*)$/);if(l){let p=l[1],c=l[2];if(!p||!c){o=a+1;continue}let u=c[0];if(!u){o=a+1;continue}let g=c.length;if(!n)n={start:o,markerChar:u,markerLen:g,openLine:i,marker:c,indent:p};else if(n.markerChar===u&&g>=n.markerLen){let S=a;r.push({start:n.start,end:S,openLine:n.openLine,marker:n.marker,indent:n.indent}),n=void 0;}}if(s===-1)break;o=s+1;}return n&&r.push({start:n.start,end:t.length,openLine:n.openLine,marker:n.marker,indent:n.indent}),r}catch(t){return console.warn("Invalid input for parseFenceSpans:",t),[]}}function Pt(e,t){let r=0,n=e.length-1;for(;r<=n;){let o=Math.floor((r+n)/2),s=e[o];if(!s)break;if(t<=s.start){n=o-1;continue}if(t>=s.end){r=o+1;continue}return s}}function jn(e,t){return !Pt(e,t)}function Ge(){return {open:false,ticks:0}}function Ye(e,t){try{let r=_e.z.string().parse(e),n=t?Ne.parse(t):Ge(),o=Ve(r),s={open:n.open,ticks:n.ticks},{spans:a,state:i}=Eo(r,o,s);return {inlineState:i,isInside:l=>Io(l,o)||Oo(l,a)}}catch(r){return console.warn("Invalid input for buildCodeSpanIndex:",r),{inlineState:Ge(),isInside:()=>false}}}function Eo(e,t,r){let n=[],o=r.open,s=r.ticks,a=o?0:-1,i=0;for(;i<e.length;){let l=Co(t,i);if(l){i=l.end;continue}if(e[i]!=="`"){i+=1;continue}let p=i,c=0;for(;i<e.length&&e[i]==="`";)c+=1,i+=1;if(!o){o=true,s=c,a=p;continue}c===s&&(n.push([a,i]),o=false,s=0,a=-1);}return o&&n.push([a,e.length]),{spans:n,state:{open:o,ticks:s}}}function Co(e,t){return e.find(r=>t>=r.start&&t<r.end)}function Io(e,t){return t.some(r=>e>=r.start&&e<r.end)}function Oo(e,t){return t.some(([r,n])=>e>=r&&e<n)}chunkVRQQ33YH_cjs.j();var $o={bold:{open:"**",close:"**"},italic:{open:"_",close:"_"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Je(e,t){try{let r=_e.z.string().parse(e),n=Ee.parse(t);if(!r||n==="off")return r;let{ir:o,hasTables:s}=Ce(r,{linkify:!1,enableSpoilers:!1,autolink:!1,headingStyle:"none",blockquotePrefix:"",tableMode:n});return s?Ie(o,{styleMarkers:$o,escapeText:a=>a,buildLink:(a,i)=>{let l=a.href.trim();return !l||!i.slice(a.start,a.end)?null:{start:a.start,end:a.end,open:"[",close:`](${l})`}}}):r}catch(r){return console.warn("Invalid input for convertMarkdownTables:",r),typeof e=="string"?e:""}}exports.Markdown=void 0;(p=>{function e(c,u){try{return xe(c,u)}catch(g){return console.warn("Markdown.parse error:",g),{text:"",styles:[],links:[]}}}p.parse=e;function t(c,u){try{return we(c,u)}catch(g){return console.warn("Markdown.render error:",g),""}}p.render=t;function r(c,u){try{return We(c,u)}catch(g){return console.warn("Markdown.format error:",g),typeof c=="string"?c:""}}p.format=r;function n(c){try{return Oe(c)}catch(u){return console.warn("Markdown.parseFrontmatter error:",u),{}}}p.parseFrontmatter=n;function o(c){try{return Ue(c)}catch(u){return console.warn("Markdown.serializeFrontmatter error:",u),""}}p.serializeFrontmatter=o;function s(c){try{return qe(c)}catch(u){return console.warn("Markdown.extractFrontmatter error:",u),{frontmatter:{},content:typeof c=="string"?c:""}}}p.extractFrontmatter=s;function a(c,u,g){try{return he(c,u,g)}catch(S){return console.warn("Markdown.chunk error:",S),typeof c=="string"&&c.length>0?[c]:[]}}p.chunk=a;function i(c,u){try{return Ye(c,u)}catch(g){return console.warn("Markdown.buildCodeIndex error:",g),{inlineState:{open:false,ticks:0},isInside:()=>false}}}p.buildCodeIndex=i;function l(c,u){try{return Je(c,u)}catch(g){return console.warn("Markdown.convertTables error:",g),typeof c=="string"?c:""}}p.convertTables=l;})(exports.Markdown||(exports.Markdown={}));chunkVRQQ33YH_cjs.j();function Dn(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r[r.length-1]??""}function Ao(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r.slice(0,r.length-1).join("/")+"/"}function Bo(e){if(!e)return "";let t=e.split(".");return t[t.length-1]}function Lo(e,t=20){let r=Dn(e);if(r.length<=t)return r;let n=r.lastIndexOf("."),o=n<=0?"":r.slice(n),s=t-o.length-1;return s<=0?r.slice(0,t-1)+"\u2026":r.slice(0,s)+"\u2026"+o}function _o(e,t=20){if(e.length<=t)return e;let r=t-1,n=Math.ceil(r/2),o=Math.floor(r/2);return e.slice(0,n)+"\u2026"+e.slice(-o)}chunkVRQQ33YH_cjs.j();var jo=["load failed","network connection was lost","network request failed","failed to fetch","econnreset","econnrefused","etimedout","socket hang up"];function Do(e){if(!e)return false;let t=String(e instanceof Error?e.message:e).toLowerCase();return jo.some(r=>t.includes(r))}async function No(e,t={}){let{attempts:r=3,delay:n=500,factor:o=2,maxDelay:s=1e4,retryIf:a=Do}=t,i;for(let l=0;l<r;l++)try{return await e()}catch(p){if(i=p,l===r-1||!a(p))throw p;let c=Math.min(n*o**l,s);await new Promise(u=>setTimeout(u,c));}throw i}chunkVRQQ33YH_cjs.j();exports.Fetch=void 0;(Nt=>{let e=chunkWWPI6PC4_cjs.a.create({service:"fetch"}),t=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"],r=false,n=null;function o(){return t.some(C=>{let I=process.env[C];return typeof I=="string"&&I.trim().length>0})}Nt.hasProxyConfigured=o;function s(){let C=process.env.http_proxy||process.env.HTTP_PROXY;return process.env.https_proxy||process.env.HTTPS_PROXY||C}Nt.getProxyUrl=s;function a(C={}){let I=C.httpProxy||C.httpsProxy||s();if(!I){e.warn("[Fetch] \u672A\u914D\u7F6E\u4EE3\u7406\uFF0C\u73AF\u5883\u53D8\u91CF HTTP_PROXY/HTTPS_PROXY \u672A\u8BBE\u7F6E");return}let _=new undici.ProxyAgent({uri:I,connectTimeout:C.connectTimeout||1e4,keepAliveTimeout:C.keepAliveTimeout||3e4});n=undici.getGlobalDispatcher(),undici.setGlobalDispatcher(_),r=true,console.log(`[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u542F\u7528: ${I}`);}Nt.enableProxy=a;function i(){!r||!n||(undici.setGlobalDispatcher(n),r=false,n=null,console.log("[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u7981\u7528"));}Nt.disableProxy=i;function l(){return r}Nt.isProxyEnabled=l;async function p(C,I){let _=I?.timeout||3e4,K=I?.responseType||"json",{timeout:G,responseType:le,...se}=I||{},V=null,L=null;try{se.signal||(V=new AbortController,L=setTimeout(()=>V.abort(),_));let x=await fetch(C,{...se,signal:se.signal||V.signal});L&&clearTimeout(L);let m;switch(K){case "arrayBuffer":m=await x.arrayBuffer();break;case "blob":m=await x.blob();break;case "buffer":{let f=await x.arrayBuffer();m=Buffer.from(f);break}case "text":m=await x.text();break;default:{let f=await x.text();try{m=JSON.parse(f);}catch{m=f;}break}}return {ok:x.ok,status:x.status,statusText:x.statusText,headers:x.headers,data:m,url:x.url}}catch(x){throw L&&clearTimeout(L),x}}async function c(C,I){let _=I?.retries||0,K=I?.retryDelay||1e3,{retries:G,retryDelay:le,responseType:se,...V}=I||{},L;for(let x=0;x<=_;x++)try{return await p(C,{...V,responseType:I?.responseType})}catch(m){if(L=m,x<_){let f=K*2**x;await new Promise(d=>setTimeout(d,f));}}throw L}async function u(C,I){return c(C,{method:"GET",...I})}Nt.get=u;async function g(C,I,_){return c(C,{method:"POST",headers:{"Content-Type":"application/json",..._?.headers},body:I?JSON.stringify(I):void 0,..._})}Nt.post=g;async function S(C,I,_){return c(C,{method:"PUT",headers:{"Content-Type":"application/json",..._?.headers},body:I?JSON.stringify(I):void 0,..._})}Nt.put=S;async function R(C,I,_){return c(C,{method:"DELETE",headers:{"Content-Type":"application/json",..._?.headers},body:I?JSON.stringify(I):void 0,..._})}Nt.del=R;async function j(C,I,_){return c(C,{method:"PATCH",headers:{"Content-Type":"application/json",..._?.headers},body:I?JSON.stringify(I):void 0,..._})}Nt.patch=j;async function z(C,I){return c(C,I)}Nt.request=z;function U(C={}){return o()?(a(C),true):false}Nt.autoProxy=U;function D(C){return new TextEncoder().encode(C)}function ae(C){return chunkJL3GR4P7_cjs.c.mimeType(C)}function Se(C){return C.startsWith("file://")}async function Ke(C){let I=url.fileURLToPath(C);return await exports.PKG.file(I).bytes()}async function Dt(C,I,_){let K=`----FetchFormBoundary${Date.now()}`,G=[];for(let f of I){let d=f.filename,w=`Content-Disposition: form-data; name="${f.name}"${d?`; filename="${d}"`:""}`;d&&(w+=`\r
80
+ ---`,3);if(r===-1)return {frontmatter:{},content:e};let n=t.slice(4,r),o=t.slice(r+4).trimStart();return {frontmatter:Ie(e),content:o}}catch(t){return console.warn("Failed to extract frontmatter:",t),{frontmatter:{},content:e}}}chunkVRQQ33YH_cjs.j();chunkVRQQ33YH_cjs.j();function Ye(e){try{let t=_e.z.string().parse(e),r=[],n,o=0;for(;o<=t.length;){let s=t.indexOf(`
81
+ `,o),a=s===-1?t.length:s,i=t.slice(o,a),l=i.match(/^( {0,3})(`{3,}|~{3,})(.*)$/);if(l){let p=l[1],c=l[2];if(!p||!c){o=a+1;continue}let u=c[0];if(!u){o=a+1;continue}let g=c.length;if(!n)n={start:o,markerChar:u,markerLen:g,openLine:i,marker:c,indent:p};else if(n.markerChar===u&&g>=n.markerLen){let S=a;r.push({start:n.start,end:S,openLine:n.openLine,marker:n.marker,indent:n.indent}),n=void 0;}}if(s===-1)break;o=s+1;}return n&&r.push({start:n.start,end:t.length,openLine:n.openLine,marker:n.marker,indent:n.indent}),r}catch(t){return console.warn("Invalid input for parseFenceSpans:",t),[]}}function Rt(e,t){let r=0,n=e.length-1;for(;r<=n;){let o=Math.floor((r+n)/2),s=e[o];if(!s)break;if(t<=s.start){n=o-1;continue}if(t>=s.end){r=o+1;continue}return s}}function jn(e,t){return !Rt(e,t)}function Ve(){return {open:false,ticks:0}}function Ge(e,t){try{let r=_e.z.string().parse(e),n=t?Ne.parse(t):Ve(),o=Ye(r),s={open:n.open,ticks:n.ticks},{spans:a,state:i}=Eo(r,o,s);return {inlineState:i,isInside:l=>Oo(l,o)||Io(l,a)}}catch(r){return console.warn("Invalid input for buildCodeSpanIndex:",r),{inlineState:Ve(),isInside:()=>false}}}function Eo(e,t,r){let n=[],o=r.open,s=r.ticks,a=o?0:-1,i=0;for(;i<e.length;){let l=Co(t,i);if(l){i=l.end;continue}if(e[i]!=="`"){i+=1;continue}let p=i,c=0;for(;i<e.length&&e[i]==="`";)c+=1,i+=1;if(!o){o=true,s=c,a=p;continue}c===s&&(n.push([a,i]),o=false,s=0,a=-1);}return o&&n.push([a,e.length]),{spans:n,state:{open:o,ticks:s}}}function Co(e,t){return e.find(r=>t>=r.start&&t<r.end)}function Oo(e,t){return t.some(r=>e>=r.start&&e<r.end)}function Io(e,t){return t.some(([r,n])=>e>=r&&e<n)}chunkVRQQ33YH_cjs.j();var $o={bold:{open:"**",close:"**"},italic:{open:"_",close:"_"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Je(e,t){try{let r=_e.z.string().parse(e),n=Ee.parse(t);if(!r||n==="off")return r;let{ir:o,hasTables:s}=Ce(r,{linkify:!1,enableSpoilers:!1,autolink:!1,headingStyle:"none",blockquotePrefix:"",tableMode:n});return s?Oe(o,{styleMarkers:$o,escapeText:a=>a,buildLink:(a,i)=>{let l=a.href.trim();return !l||!i.slice(a.start,a.end)?null:{start:a.start,end:a.end,open:"[",close:`](${l})`}}}):r}catch(r){return console.warn("Invalid input for convertMarkdownTables:",r),typeof e=="string"?e:""}}exports.Markdown=void 0;(p=>{function e(c,u){try{return xe(c,u)}catch(g){return console.warn("Markdown.parse error:",g),{text:"",styles:[],links:[]}}}p.parse=e;function t(c,u){try{return we(c,u)}catch(g){return console.warn("Markdown.render error:",g),""}}p.render=t;function r(c,u){try{return We(c,u)}catch(g){return console.warn("Markdown.format error:",g),typeof c=="string"?c:""}}p.format=r;function n(c){try{return Ie(c)}catch(u){return console.warn("Markdown.parseFrontmatter error:",u),{}}}p.parseFrontmatter=n;function o(c){try{return Ue(c)}catch(u){return console.warn("Markdown.serializeFrontmatter error:",u),""}}p.serializeFrontmatter=o;function s(c){try{return qe(c)}catch(u){return console.warn("Markdown.extractFrontmatter error:",u),{frontmatter:{},content:typeof c=="string"?c:""}}}p.extractFrontmatter=s;function a(c,u,g){try{return he(c,u,g)}catch(S){return console.warn("Markdown.chunk error:",S),typeof c=="string"&&c.length>0?[c]:[]}}p.chunk=a;function i(c,u){try{return Ge(c,u)}catch(g){return console.warn("Markdown.buildCodeIndex error:",g),{inlineState:{open:false,ticks:0},isInside:()=>false}}}p.buildCodeIndex=i;function l(c,u){try{return Je(c,u)}catch(g){return console.warn("Markdown.convertTables error:",g),typeof c=="string"?c:""}}p.convertTables=l;})(exports.Markdown||(exports.Markdown={}));chunkVRQQ33YH_cjs.j();function Dn(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r[r.length-1]??""}function Ao(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r.slice(0,r.length-1).join("/")+"/"}function Bo(e){if(!e)return "";let t=e.split(".");return t[t.length-1]}function Lo(e,t=20){let r=Dn(e);if(r.length<=t)return r;let n=r.lastIndexOf("."),o=n<=0?"":r.slice(n),s=t-o.length-1;return s<=0?r.slice(0,t-1)+"\u2026":r.slice(0,s)+"\u2026"+o}function _o(e,t=20){if(e.length<=t)return e;let r=t-1,n=Math.ceil(r/2),o=Math.floor(r/2);return e.slice(0,n)+"\u2026"+e.slice(-o)}chunkVRQQ33YH_cjs.j();var jo=["load failed","network connection was lost","network request failed","failed to fetch","econnreset","econnrefused","etimedout","socket hang up"];function Do(e){if(!e)return false;let t=String(e instanceof Error?e.message:e).toLowerCase();return jo.some(r=>t.includes(r))}async function No(e,t={}){let{attempts:r=3,delay:n=500,factor:o=2,maxDelay:s=1e4,retryIf:a=Do}=t,i;for(let l=0;l<r;l++)try{return await e()}catch(p){if(i=p,l===r-1||!a(p))throw p;let c=Math.min(n*o**l,s);await new Promise(u=>setTimeout(u,c));}throw i}chunkVRQQ33YH_cjs.j();exports.Fetch=void 0;(Nt=>{let e=chunkWWPI6PC4_cjs.a.create({service:"fetch"}),t=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"],r=false,n=null;function o(){return t.some(C=>{let O=process.env[C];return typeof O=="string"&&O.trim().length>0})}Nt.hasProxyConfigured=o;function s(){let C=process.env.http_proxy||process.env.HTTP_PROXY;return process.env.https_proxy||process.env.HTTPS_PROXY||C}Nt.getProxyUrl=s;function a(C={}){let O=C.httpProxy||C.httpsProxy||s();if(!O){e.warn("[Fetch] \u672A\u914D\u7F6E\u4EE3\u7406\uFF0C\u73AF\u5883\u53D8\u91CF HTTP_PROXY/HTTPS_PROXY \u672A\u8BBE\u7F6E");return}let _=new undici.ProxyAgent({uri:O,connectTimeout:C.connectTimeout||1e4,keepAliveTimeout:C.keepAliveTimeout||3e4});n=undici.getGlobalDispatcher(),undici.setGlobalDispatcher(_),r=true,console.log(`[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u542F\u7528: ${O}`);}Nt.enableProxy=a;function i(){!r||!n||(undici.setGlobalDispatcher(n),r=false,n=null,console.log("[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u7981\u7528"));}Nt.disableProxy=i;function l(){return r}Nt.isProxyEnabled=l;async function p(C,O){let _=O?.timeout||3e4,K=O?.responseType||"json",{timeout:V,responseType:le,...se}=O||{},Y=null,L=null;try{se.signal||(Y=new AbortController,L=setTimeout(()=>Y.abort(),_));let x=await fetch(C,{...se,signal:se.signal||Y.signal});L&&clearTimeout(L);let m;switch(K){case "arrayBuffer":m=await x.arrayBuffer();break;case "blob":m=await x.blob();break;case "buffer":{let f=await x.arrayBuffer();m=Buffer.from(f);break}case "text":m=await x.text();break;default:{let f=await x.text();try{m=JSON.parse(f);}catch{m=f;}break}}return {ok:x.ok,status:x.status,statusText:x.statusText,headers:x.headers,data:m,url:x.url}}catch(x){throw L&&clearTimeout(L),x}}async function c(C,O){let _=O?.retries||0,K=O?.retryDelay||1e3,{retries:V,retryDelay:le,responseType:se,...Y}=O||{},L;for(let x=0;x<=_;x++)try{return await p(C,{...Y,responseType:O?.responseType})}catch(m){if(L=m,x<_){let f=K*2**x;await new Promise(d=>setTimeout(d,f));}}throw L}async function u(C,O){return c(C,{method:"GET",...O})}Nt.get=u;async function g(C,O,_){return c(C,{method:"POST",headers:{"Content-Type":"application/json",..._?.headers},body:O?JSON.stringify(O):void 0,..._})}Nt.post=g;async function S(C,O,_){return c(C,{method:"PUT",headers:{"Content-Type":"application/json",..._?.headers},body:O?JSON.stringify(O):void 0,..._})}Nt.put=S;async function P(C,O,_){return c(C,{method:"DELETE",headers:{"Content-Type":"application/json",..._?.headers},body:O?JSON.stringify(O):void 0,..._})}Nt.del=P;async function j(C,O,_){return c(C,{method:"PATCH",headers:{"Content-Type":"application/json",..._?.headers},body:O?JSON.stringify(O):void 0,..._})}Nt.patch=j;async function z(C,O){return c(C,O)}Nt.request=z;function U(C={}){return o()?(a(C),true):false}Nt.autoProxy=U;function D(C){return new TextEncoder().encode(C)}function ae(C){return chunkJL3GR4P7_cjs.c.mimeType(C)}function Se(C){return C.startsWith("file://")}async function Ke(C){let O=url.fileURLToPath(C);return await exports.PKG.file(O).bytes()}async function Dt(C,O,_){let K=`----FetchFormBoundary${Date.now()}`,V=[];for(let f of O){let d=f.filename,w=`Content-Disposition: form-data; name="${f.name}"${d?`; filename="${d}"`:""}`;d&&(w+=`\r
82
82
  Content-Type: ${ae(d)}`),w+=`\r
83
83
  \r
84
- `,G.push(D(w));let y=f.value;if(typeof y=="string")if(Se(y)){let b=await Ke(y);d||(d=y.split("/").pop()||"file"),G.push(b);}else G.push(D(y));else Buffer.isBuffer(y)?G.push(new Uint8Array(y.buffer,y.byteOffset,y.byteLength)):y instanceof Uint8Array&&G.push(y);}let le=D(`\r
84
+ `,V.push(D(w));let y=f.value;if(typeof y=="string")if(Se(y)){let b=await Ke(y);d||(d=y.split("/").pop()||"file"),V.push(b);}else V.push(D(y));else Buffer.isBuffer(y)?V.push(new Uint8Array(y.buffer,y.byteOffset,y.byteLength)):y instanceof Uint8Array&&V.push(y);}let le=D(`\r
85
85
  --${K}--`),se=D(`\r
86
86
  --${K}\r
87
- `),V=[];V.push(D(`--${K}\r
88
- `));for(let f=0;f<G.length;f++)V.push(G[f]),f%2===1&&f<G.length-1&&(V.push(se),V.push(D(`--${K}\r
89
- `)));V.push(le);let L=V.reduce((f,d)=>f+d.length,0),x=new Uint8Array(L),m=0;for(let f of V)x.set(f,m),m+=f.length;return c(C,{method:"POST",headers:{"Content-Type":`multipart/form-data; boundary=${K}`,..._?.headers},body:x,..._})}Nt.postForm=Dt;})(exports.Fetch||(exports.Fetch={}));chunkVRQQ33YH_cjs.j();exports.Slug=void 0;(n=>{let e=["brave","calm","clever","cosmic","crisp","curious","eager","gentle","glowing","happy","hidden","jolly","kind","lucky","mighty","misty","neon","nimble","playful","proud","quick","quiet","shiny","silent","stellar","sunny","swift","tidy","witty"],t=["cabin","cactus","canyon","circuit","comet","eagle","engine","falcon","forest","garden","harbor","island","knight","lagoon","meadow","moon","mountain","nebula","orchid","otter","panda","pixel","planet","river","rocket","sailor","squid","star","tiger","wizard","wolf"];function r(){return [e[Math.floor(Math.random()*e.length)],t[Math.floor(Math.random()*t.length)]].join("-")}n.create=r;})(exports.Slug||(exports.Slug={}));chunkVRQQ33YH_cjs.j();function zn(e){let t=new AbortController,r=setTimeout(t.abort.bind(t),e);return {controller:t,signal:t.signal,clearTimeout:()=>globalThis.clearTimeout(r)}}function Uo(e,...t){let r=zn(e);return {signal:AbortSignal.any([r.signal,...t]),clearTimeout:r.clearTimeout}}chunkVRQQ33YH_cjs.j();exports.Archive=void 0;(t=>{async function e(r,n){if(process.platform==="win32"){let o=ge__default.default.resolve(r),s=ge__default.default.resolve(n),a=`Expand-Archive -Path '${o}' -DestinationPath '${s}' -Force`,i=await exports.Shell.run("powershell",`-NoProfile -NonInteractive -Command "$global:ProgressPreference = 'SilentlyContinue'; ${a}"`);if(i.code!==0)throw new Error(`PowerShell exited with code ${i.code}: ${i.stderr}`)}else {let o=`unzip -o -q ${r} -d ${n}`,s=await exports.Shell.run(void 0,o);if(s.code!==0)throw new Error(`unzip exited with code ${s.code}: ${s.stderr}`)}}t.extractZip=e;})(exports.Archive||(exports.Archive={}));chunkVRQQ33YH_cjs.j();exports.Color=void 0;(n=>{function e(o){return o?/^#[0-9a-fA-F]{6}$/.test(o):false}n.isValidHex=e;function t(o){let s=parseInt(o.slice(1,3),16),a=parseInt(o.slice(3,5),16),i=parseInt(o.slice(5,7),16);return {r:s,g:a,b:i}}n.hexToRgb=t;function r(o){if(!e(o))return;let{r:s,g:a,b:i}=t(o);return `\x1B[38;2;${s};${a};${i}m\x1B[1m`}n.hexToAnsiBold=r;})(exports.Color||(exports.Color={}));chunkVRQQ33YH_cjs.j();exports.Context=void 0;(r=>{class e extends Error{constructor(s){super(`No context found for ${s}`);chunkVRQQ33YH_cjs.c(this,"name",s);}}r.NotFound=e;function t(n){let o=new async_hooks.AsyncLocalStorage;return {use(){let s=o.getStore();if(!s)throw new e(n);return s},provide(s,a){return o.run(s,a)}}}r.create=t;})(exports.Context||(exports.Context={}));chunkVRQQ33YH_cjs.j();function Vo(e){return {[Symbol.dispose](){e();},[Symbol.asyncDispose](){return Promise.resolve(e())}}}chunkVRQQ33YH_cjs.j();exports.EventLoop=void 0;(t=>{async function e(){return new Promise(r=>{let n=()=>{process._getActiveHandles().length===0&&process._getActiveRequests().length===0?r():setImmediate(n);};n();})}t.wait=e;})(exports.EventLoop||(exports.EventLoop={}));chunkVRQQ33YH_cjs.j();function Go(e){if(e<=0)return "";if(e<60)return `${e}s`;if(e<3600){let r=Math.floor(e/60),n=e%60;return n>0?`${r}m ${n}s`:`${r}m`}if(e<86400){let r=Math.floor(e/3600),n=Math.floor(e%3600/60);return n>0?`${r}h ${n}m`:`${r}h`}if(e<604800){let r=Math.floor(e/86400);return r===1?"~1 day":`~${r} days`}let t=Math.floor(e/604800);return t===1?"~1 week":`~${t} weeks`}chunkVRQQ33YH_cjs.j();exports.Keybind=void 0;(a=>{function e(i,l){if(i===l)return true;if(typeof i!="object"||typeof l!="object"||i===null||l===null)return false;let p=Object.keys(i),c=Object.keys(l);if(p.length!==c.length)return false;for(let u of p)if(!c.includes(u)||!e(i[u],l[u]))return false;return true}function t(i){return {...i,super:i.super??false}}function r(i,l){return i?e(t(i),t(l)):false}a.match=r;function n(i,l=false){return {name:i.name,ctrl:i.ctrl,meta:i.meta,shift:i.shift,super:i.super??false,leader:l}}a.fromParsedKey=n;function o(i){if(!i)return "";let l=[];i.ctrl&&l.push("ctrl"),i.meta&&l.push("alt"),i.super&&l.push("super"),i.shift&&l.push("shift"),i.name&&(i.name==="delete"?l.push("del"):l.push(i.name));let p=l.join("+");return i.leader&&(p=p?`<leader> ${p}`:"<leader>"),p}a.keyToString=o;function s(i){return i==="none"?[]:i.split(",").map(l=>{let c=l.replace(/<leader>/g,"leader+").toLowerCase().split("+"),u={ctrl:false,meta:false,shift:false,super:false,leader:false,name:""};for(let g of c)switch(g){case "ctrl":u.ctrl=true;break;case "alt":case "meta":case "option":u.meta=true;break;case "super":u.super=true;break;case "shift":u.shift=true;break;case "leader":u.leader=true;break;case "esc":u.name="escape";break;default:u.name=g;break}return u})}a.parse=s;})(exports.Keybind||(exports.Keybind={}));chunkVRQQ33YH_cjs.j();exports.Locale=void 0;(p=>{function e(c){return c.replace(/\b\w/g,u=>u.toUpperCase())}p.titlecase=e;function t(c){return new Date(c).toLocaleTimeString(void 0,{timeStyle:"short"})}p.time=t;function r(c){let u=new Date(c),g=t(c),S=u.toLocaleDateString();return `${g} \xB7 ${S}`}p.datetime=r;function n(c){let u=new Date(c),g=new Date;return u.getFullYear()===g.getFullYear()&&u.getMonth()===g.getMonth()&&u.getDate()===g.getDate()?t(c):r(c)}p.todayTimeOrDateTime=n;function o(c){return c>=1e6?(c/1e6).toFixed(1)+"M":c>=1e3?(c/1e3).toFixed(1)+"K":c.toString()}p.number=o;function s(c){if(c<1e3)return `${c}ms`;if(c<6e4)return `${(c/1e3).toFixed(1)}s`;if(c<36e5){let S=Math.floor(c/6e4),R=Math.floor(c%6e4/1e3);return `${S}m ${R}s`}if(c<864e5){let S=Math.floor(c/36e5),R=Math.floor(c%36e5/6e4);return `${S}h ${R}m`}let u=Math.floor(c/36e5);return `${Math.floor(c%36e5/864e5)}d ${u}h`}p.duration=s;function a(c,u){return c.length<=u?c:c.slice(0,u-1)+"\u2026"}p.truncate=a;function i(c,u=35){if(c.length<=u)return c;let g="\u2026",S=Math.ceil((u-g.length)/2),R=Math.floor((u-g.length)/2);return c.slice(0,S)+g+c.slice(-R)}p.truncateMiddle=i;function l(c,u,g){return (c===1?u:g).replace("{}",c.toString())}p.pluralize=l;})(exports.Locale||(exports.Locale={}));chunkVRQQ33YH_cjs.j();function Yo(){return !!(process.env.HTTP_PROXY||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.https_proxy)}chunkVRQQ33YH_cjs.j();var Lt=class{constructor(){chunkVRQQ33YH_cjs.c(this,"queue",[]);chunkVRQQ33YH_cjs.c(this,"resolvers",[]);}push(t){let r=this.resolvers.shift();r?r(t):this.queue.push(t);}async next(){return this.queue.length>0?this.queue.shift():new Promise(t=>this.resolvers.push(t))}async*[Symbol.asyncIterator](){for(;;)yield await this.next();}};async function Jo(e,t,r){let n=[...t];await Promise.all(Array.from({length:e},async()=>{for(;;){let o=n.pop();if(o===void 0)return;await r(o);}}));}chunkVRQQ33YH_cjs.j();function Ko(){let e,t=new Promise(r=>e=r);return {trigger(){return e()},wait(){return t}}}chunkVRQQ33YH_cjs.j();function Zo(e,t){let r;return Promise.race([e.then(n=>(clearTimeout(r),n)),new Promise((n,o)=>{r=setTimeout(()=>{o(new Error(`Operation timed out after ${t}ms`));},t);})])}chunkVRQQ33YH_cjs.j();exports.Token=void 0;(a=>{let r=/[\u4e00-\u9fff\u3400-\u4dbf]/g;function n(i){if(!i)return 0;let l=String(i),p=(l.match(r)||[]).length,c=l.length-p,u=Math.round(p/1.5),g=Math.round(c/4);return Math.max(0,u+g)}a.estimate=n;function o(i){if(i==null)return 0;try{let l=typeof i=="string"?i:JSON.stringify(i);return n(l)}catch{return 0}}a.estimateObject=o;function s(i){if(i.total!==void 0&&i.total>0)return i.total;let l=i.input??0,p=i.output??0,c=i.cache?.read??0,u=i.cache?.write??0;return l+p+c+u}a.total=s;})(exports.Token||(exports.Token={}));chunkVRQQ33YH_cjs.j();function Qo(e){let t={};for(let[r,n]of Object.entries(e.required().shape))t[r]=n.nullable();return _e__default.default.object(t)}chunkVRQQ33YH_cjs.j();exports.Wildcard=void 0;(s=>{function e(a,i){let l=i.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return l.endsWith(" .*")&&(l=l.slice(0,-3)+"( .*)?"),new RegExp("^"+l+"$","s").test(a)}s.match=e;function t(a){return a.sort((i,l)=>{let p=i[0].length-l[0].length;return p!==0?p:i[0].localeCompare(l[0])})}function r(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p)e(a,u)&&(c=g);return c}s.all=r;function n(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p){let S=u.split(/\s+/);e(a.head,S[0])&&(S.length===1||o(a.tail,S.slice(1)))&&(c=g);}return c}s.allStructured=n;function o(a,i){if(i.length===0)return true;if(a.length<i.length)return false;for(let l=0;l<i.length;l++)if(!e(a[l],i[l]))return false;return true}})(exports.Wildcard||(exports.Wildcard={}));async function fc(e){let{Log:t}=await import('./chunks/log-OJU7I2TN.cjs'),r=false;await t.init({logDir:e.logDir??process.env.EASBOT_LOG_PATH??process.cwd(),print:e.print??false,dev:e.dev??r,level:e.level??("INFO")});}Object.defineProperty(exports,"Filesystem",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.c}});Object.defineProperty(exports,"Glob",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.a}});Object.defineProperty(exports,"MIME_TYPES",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.b}});Object.defineProperty(exports,"PackageRegistry",{enumerable:true,get:function(){return chunkPYCQUF3V_cjs.b}});Object.defineProperty(exports,"Semver",{enumerable:true,get:function(){return chunkPYCQUF3V_cjs.a}});Object.defineProperty(exports,"Lock",{enumerable:true,get:function(){return chunkYC4AEMOP_cjs.a}});Object.defineProperty(exports,"Hono",{enumerable:true,get:function(){return hono.Hono}});Object.defineProperty(exports,"createNodeWebSocket",{enumerable:true,get:function(){return nodeWs.createNodeWebSocket}});Object.defineProperty(exports,"cors",{enumerable:true,get:function(){return cors.cors}});Object.defineProperty(exports,"logger",{enumerable:true,get:function(){return logger.logger}});Object.defineProperty(exports,"compress",{enumerable:true,get:function(){return compress.compress}});Object.defineProperty(exports,"secureHeaders",{enumerable:true,get:function(){return secureHeaders.secureHeaders}});Object.defineProperty(exports,"timeout",{enumerable:true,get:function(){return timeout.timeout}});Object.defineProperty(exports,"HTTPException",{enumerable:true,get:function(){return httpException.HTTPException}});Object.defineProperty(exports,"validator",{enumerable:true,get:function(){return validator.validator}});Object.defineProperty(exports,"zValidator",{enumerable:true,get:function(){return zodValidator.zValidator}});exports.$=Cr;exports.AsyncQueue=Lt;exports.NamedError=pt;exports.PkgShell=Te;exports.abortAfter=zn;exports.abortAfterAny=Uo;exports.buildCodeSpanIndex=Ye;exports.chunkMarkdownIR=Ln;exports.chunkText=he;exports.chunkTextByBreakResolver=yt;exports.convertMarkdownTables=Je;exports.createInlineCodeState=Ge;exports.createPkgShell=ue;exports.createRESTServer=at;exports.createRPCServer=it;exports.createServer=ie;exports.createStreamingServer=ct;exports.createWebSocketServer=lt;exports.defer=Vo;exports.detectPlatform=pn;exports.escapeCommandArg=ft;exports.escapeCommandArgSafe=fn;exports.extractFrontmatter=qe;exports.findFenceSpanAt=Pt;exports.findLast=Yn;exports.fn=Or;exports.formatDuration=Go;exports.formatLocalISO=rt;exports.formatLocalISOCompact=ot;exports.formatLogTime=Qn;exports.formatMarkdown=We;exports.getDirectory=Ao;exports.getFileExtension=Bo;exports.getFilename=Dn;exports.getFilenameTruncated=Lo;exports.getTimezoneOffset=er;exports.git=Lr;exports.iife=Wr;exports.initLog=fc;exports.isSafeFenceBreak=jn;exports.joinCommandArgs=pe;exports.lazy=$e;exports.lazyAsync=tr;exports.loadEnv=Br;exports.loadTextFile=zr;exports.loadTextFileAsync=Hr;exports.markdownToIR=xe;exports.markdownToIRWithMeta=Ce;exports.needsShellExecution=un;exports.now=qt;exports.nowLocalISO=Zn;exports.parseCommand=re;exports.parseCommandWithOptions=dn;exports.parseFenceSpans=Ve;exports.parseFrontmatterBlock=Oe;exports.parseLocalISO=Xn;exports.parseModelId=Ur;exports.proxied=Yo;exports.readableStreamToText=Pr;exports.renderMarkdown=we;exports.renderMarkdownWithMarkers=Ie;exports.retry=No;exports.scanParenAwareBreakpoints=bt;exports.serializeFrontmatter=Ue;exports.shell=gn;exports.signal=Ko;exports.startServer=sr;exports.truncateMiddle=_o;exports.updateSchema=Qo;exports.whichSync=Mr;exports.withTimeout=Zo;exports.work=Jo;
87
+ `),Y=[];Y.push(D(`--${K}\r
88
+ `));for(let f=0;f<V.length;f++)Y.push(V[f]),f%2===1&&f<V.length-1&&(Y.push(se),Y.push(D(`--${K}\r
89
+ `)));Y.push(le);let L=Y.reduce((f,d)=>f+d.length,0),x=new Uint8Array(L),m=0;for(let f of Y)x.set(f,m),m+=f.length;return c(C,{method:"POST",headers:{"Content-Type":`multipart/form-data; boundary=${K}`,..._?.headers},body:x,..._})}Nt.postForm=Dt;})(exports.Fetch||(exports.Fetch={}));chunkVRQQ33YH_cjs.j();exports.Slug=void 0;(n=>{let e=["brave","calm","clever","cosmic","crisp","curious","eager","gentle","glowing","happy","hidden","jolly","kind","lucky","mighty","misty","neon","nimble","playful","proud","quick","quiet","shiny","silent","stellar","sunny","swift","tidy","witty"],t=["cabin","cactus","canyon","circuit","comet","eagle","engine","falcon","forest","garden","harbor","island","knight","lagoon","meadow","moon","mountain","nebula","orchid","otter","panda","pixel","planet","river","rocket","sailor","squid","star","tiger","wizard","wolf"];function r(){return [e[Math.floor(Math.random()*e.length)],t[Math.floor(Math.random()*t.length)]].join("-")}n.create=r;})(exports.Slug||(exports.Slug={}));chunkVRQQ33YH_cjs.j();function zn(e){let t=new AbortController,r=setTimeout(t.abort.bind(t),e);return {controller:t,signal:t.signal,clearTimeout:()=>globalThis.clearTimeout(r)}}function Uo(e,...t){let r=zn(e);return {signal:AbortSignal.any([r.signal,...t]),clearTimeout:r.clearTimeout}}chunkVRQQ33YH_cjs.j();exports.Archive=void 0;(t=>{async function e(r,n){if(process.platform==="win32"){let o=ge__default.default.resolve(r),s=ge__default.default.resolve(n),a=`Expand-Archive -Path '${o}' -DestinationPath '${s}' -Force`,i=await exports.Shell.run("powershell",`-NoProfile -NonInteractive -Command "$global:ProgressPreference = 'SilentlyContinue'; ${a}"`);if(i.code!==0)throw new Error(`PowerShell exited with code ${i.code}: ${i.stderr}`)}else {let o=`unzip -o -q ${r} -d ${n}`,s=await exports.Shell.run(void 0,o);if(s.code!==0)throw new Error(`unzip exited with code ${s.code}: ${s.stderr}`)}}t.extractZip=e;})(exports.Archive||(exports.Archive={}));chunkVRQQ33YH_cjs.j();exports.Color=void 0;(n=>{function e(o){return o?/^#[0-9a-fA-F]{6}$/.test(o):false}n.isValidHex=e;function t(o){let s=parseInt(o.slice(1,3),16),a=parseInt(o.slice(3,5),16),i=parseInt(o.slice(5,7),16);return {r:s,g:a,b:i}}n.hexToRgb=t;function r(o){if(!e(o))return;let{r:s,g:a,b:i}=t(o);return `\x1B[38;2;${s};${a};${i}m\x1B[1m`}n.hexToAnsiBold=r;})(exports.Color||(exports.Color={}));chunkVRQQ33YH_cjs.j();exports.Context=void 0;(r=>{class e extends Error{constructor(s){super(`No context found for ${s}`);chunkVRQQ33YH_cjs.c(this,"name",s);}}r.NotFound=e;function t(n){let o=new async_hooks.AsyncLocalStorage;return {use(){let s=o.getStore();if(!s)throw new e(n);return s},provide(s,a){return o.run(s,a)}}}r.create=t;})(exports.Context||(exports.Context={}));chunkVRQQ33YH_cjs.j();function Yo(e){return {[Symbol.dispose](){e();},[Symbol.asyncDispose](){return Promise.resolve(e())}}}chunkVRQQ33YH_cjs.j();exports.EventLoop=void 0;(t=>{async function e(){return new Promise(r=>{let n=()=>{process._getActiveHandles().length===0&&process._getActiveRequests().length===0?r():setImmediate(n);};n();})}t.wait=e;})(exports.EventLoop||(exports.EventLoop={}));chunkVRQQ33YH_cjs.j();function Vo(e){if(e<=0)return "";if(e<60)return `${e}s`;if(e<3600){let r=Math.floor(e/60),n=e%60;return n>0?`${r}m ${n}s`:`${r}m`}if(e<86400){let r=Math.floor(e/3600),n=Math.floor(e%3600/60);return n>0?`${r}h ${n}m`:`${r}h`}if(e<604800){let r=Math.floor(e/86400);return r===1?"~1 day":`~${r} days`}let t=Math.floor(e/604800);return t===1?"~1 week":`~${t} weeks`}chunkVRQQ33YH_cjs.j();exports.Keybind=void 0;(a=>{function e(i,l){if(i===l)return true;if(typeof i!="object"||typeof l!="object"||i===null||l===null)return false;let p=Object.keys(i),c=Object.keys(l);if(p.length!==c.length)return false;for(let u of p)if(!c.includes(u)||!e(i[u],l[u]))return false;return true}function t(i){return {...i,super:i.super??false}}function r(i,l){return i?e(t(i),t(l)):false}a.match=r;function n(i,l=false){return {name:i.name,ctrl:i.ctrl,meta:i.meta,shift:i.shift,super:i.super??false,leader:l}}a.fromParsedKey=n;function o(i){if(!i)return "";let l=[];i.ctrl&&l.push("ctrl"),i.meta&&l.push("alt"),i.super&&l.push("super"),i.shift&&l.push("shift"),i.name&&(i.name==="delete"?l.push("del"):l.push(i.name));let p=l.join("+");return i.leader&&(p=p?`<leader> ${p}`:"<leader>"),p}a.keyToString=o;function s(i){return i==="none"?[]:i.split(",").map(l=>{let c=l.replace(/<leader>/g,"leader+").toLowerCase().split("+"),u={ctrl:false,meta:false,shift:false,super:false,leader:false,name:""};for(let g of c)switch(g){case "ctrl":u.ctrl=true;break;case "alt":case "meta":case "option":u.meta=true;break;case "super":u.super=true;break;case "shift":u.shift=true;break;case "leader":u.leader=true;break;case "esc":u.name="escape";break;default:u.name=g;break}return u})}a.parse=s;})(exports.Keybind||(exports.Keybind={}));chunkVRQQ33YH_cjs.j();exports.Locale=void 0;(p=>{function e(c){return c.replace(/\b\w/g,u=>u.toUpperCase())}p.titlecase=e;function t(c){return new Date(c).toLocaleTimeString(void 0,{timeStyle:"short"})}p.time=t;function r(c){let u=new Date(c),g=t(c),S=u.toLocaleDateString();return `${g} \xB7 ${S}`}p.datetime=r;function n(c){let u=new Date(c),g=new Date;return u.getFullYear()===g.getFullYear()&&u.getMonth()===g.getMonth()&&u.getDate()===g.getDate()?t(c):r(c)}p.todayTimeOrDateTime=n;function o(c){return c>=1e6?(c/1e6).toFixed(1)+"M":c>=1e3?(c/1e3).toFixed(1)+"K":c.toString()}p.number=o;function s(c){if(c<1e3)return `${c}ms`;if(c<6e4)return `${(c/1e3).toFixed(1)}s`;if(c<36e5){let S=Math.floor(c/6e4),P=Math.floor(c%6e4/1e3);return `${S}m ${P}s`}if(c<864e5){let S=Math.floor(c/36e5),P=Math.floor(c%36e5/6e4);return `${S}h ${P}m`}let u=Math.floor(c/36e5);return `${Math.floor(c%36e5/864e5)}d ${u}h`}p.duration=s;function a(c,u){return c.length<=u?c:c.slice(0,u-1)+"\u2026"}p.truncate=a;function i(c,u=35){if(c.length<=u)return c;let g="\u2026",S=Math.ceil((u-g.length)/2),P=Math.floor((u-g.length)/2);return c.slice(0,S)+g+c.slice(-P)}p.truncateMiddle=i;function l(c,u,g){return (c===1?u:g).replace("{}",c.toString())}p.pluralize=l;})(exports.Locale||(exports.Locale={}));chunkVRQQ33YH_cjs.j();var Go=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"];function Jo(){return Go.some(e=>process.env[e])}function Ko(){return process.env.HTTPS_PROXY||process.env.https_proxy||process.env.HTTP_PROXY||process.env.http_proxy}function Zo(){let e=process.env.HTTP_PROXY||process.env.http_proxy,t=process.env.HTTPS_PROXY||process.env.https_proxy;return {http:e,https:t,enabled:!!(e||t)}}chunkVRQQ33YH_cjs.j();var Lt=class{constructor(){chunkVRQQ33YH_cjs.c(this,"queue",[]);chunkVRQQ33YH_cjs.c(this,"resolvers",[]);}push(t){let r=this.resolvers.shift();r?r(t):this.queue.push(t);}async next(){return this.queue.length>0?this.queue.shift():new Promise(t=>this.resolvers.push(t))}async*[Symbol.asyncIterator](){for(;;)yield await this.next();}};async function Xo(e,t,r){let n=[...t];await Promise.all(Array.from({length:e},async()=>{for(;;){let o=n.pop();if(o===void 0)return;await r(o);}}));}chunkVRQQ33YH_cjs.j();function Qo(){let e,t=new Promise(r=>e=r);return {trigger(){return e()},wait(){return t}}}chunkVRQQ33YH_cjs.j();function es(e,t){let r;return Promise.race([e.then(n=>(clearTimeout(r),n)),new Promise((n,o)=>{r=setTimeout(()=>{o(new Error(`Operation timed out after ${t}ms`));},t);})])}chunkVRQQ33YH_cjs.j();exports.Token=void 0;(a=>{let r=/[\u4e00-\u9fff\u3400-\u4dbf]/g;function n(i){if(!i)return 0;let l=String(i),p=(l.match(r)||[]).length,c=l.length-p,u=Math.round(p/1.5),g=Math.round(c/4);return Math.max(0,u+g)}a.estimate=n;function o(i){if(i==null)return 0;try{let l=typeof i=="string"?i:JSON.stringify(i);return n(l)}catch{return 0}}a.estimateObject=o;function s(i){if(i.total!==void 0&&i.total>0)return i.total;let l=i.input??0,p=i.output??0,c=i.cache?.read??0,u=i.cache?.write??0;return l+p+c+u}a.total=s;})(exports.Token||(exports.Token={}));chunkVRQQ33YH_cjs.j();function ns(e){let t={};for(let[r,n]of Object.entries(e.required().shape))t[r]=n.nullable();return _e__default.default.object(t)}chunkVRQQ33YH_cjs.j();exports.Wildcard=void 0;(s=>{function e(a,i){let l=i.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return l.endsWith(" .*")&&(l=l.slice(0,-3)+"( .*)?"),new RegExp("^"+l+"$","s").test(a)}s.match=e;function t(a){return a.sort((i,l)=>{let p=i[0].length-l[0].length;return p!==0?p:i[0].localeCompare(l[0])})}function r(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p)e(a,u)&&(c=g);return c}s.all=r;function n(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p){let S=u.split(/\s+/);e(a.head,S[0])&&(S.length===1||o(a.tail,S.slice(1)))&&(c=g);}return c}s.allStructured=n;function o(a,i){if(i.length===0)return true;if(a.length<i.length)return false;for(let l=0;l<i.length;l++)if(!e(a[l],i[l]))return false;return true}})(exports.Wildcard||(exports.Wildcard={}));async function gc(e){let{Log:t}=await import('./chunks/log-OJU7I2TN.cjs'),r=false;await t.init({logDir:e.logDir??process.env.EASBOT_LOG_PATH??process.cwd(),print:e.print??false,dev:e.dev??r,level:e.level??("INFO")});}Object.defineProperty(exports,"Filesystem",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.c}});Object.defineProperty(exports,"Glob",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.a}});Object.defineProperty(exports,"MIME_TYPES",{enumerable:true,get:function(){return chunkJL3GR4P7_cjs.b}});Object.defineProperty(exports,"PackageRegistry",{enumerable:true,get:function(){return chunkPYCQUF3V_cjs.b}});Object.defineProperty(exports,"Semver",{enumerable:true,get:function(){return chunkPYCQUF3V_cjs.a}});Object.defineProperty(exports,"Lock",{enumerable:true,get:function(){return chunkYC4AEMOP_cjs.a}});Object.defineProperty(exports,"Hono",{enumerable:true,get:function(){return hono.Hono}});Object.defineProperty(exports,"createNodeWebSocket",{enumerable:true,get:function(){return nodeWs.createNodeWebSocket}});Object.defineProperty(exports,"cors",{enumerable:true,get:function(){return cors.cors}});Object.defineProperty(exports,"logger",{enumerable:true,get:function(){return logger.logger}});Object.defineProperty(exports,"compress",{enumerable:true,get:function(){return compress.compress}});Object.defineProperty(exports,"secureHeaders",{enumerable:true,get:function(){return secureHeaders.secureHeaders}});Object.defineProperty(exports,"timeout",{enumerable:true,get:function(){return timeout.timeout}});Object.defineProperty(exports,"HTTPException",{enumerable:true,get:function(){return httpException.HTTPException}});Object.defineProperty(exports,"validator",{enumerable:true,get:function(){return validator.validator}});Object.defineProperty(exports,"zValidator",{enumerable:true,get:function(){return zodValidator.zValidator}});exports.$=Cr;exports.AsyncQueue=Lt;exports.NamedError=pt;exports.PkgShell=Te;exports.abortAfter=zn;exports.abortAfterAny=Uo;exports.buildCodeSpanIndex=Ge;exports.chunkMarkdownIR=Ln;exports.chunkText=he;exports.chunkTextByBreakResolver=yt;exports.convertMarkdownTables=Je;exports.createInlineCodeState=Ve;exports.createPkgShell=ue;exports.createRESTServer=at;exports.createRPCServer=it;exports.createServer=ie;exports.createStreamingServer=ct;exports.createWebSocketServer=lt;exports.defer=Yo;exports.detectPlatform=pn;exports.escapeCommandArg=ft;exports.escapeCommandArgSafe=fn;exports.extractFrontmatter=qe;exports.findFenceSpanAt=Rt;exports.findLast=Gn;exports.fn=Ir;exports.formatDuration=Vo;exports.formatLocalISO=rt;exports.formatLocalISOCompact=ot;exports.formatLogTime=Qn;exports.formatMarkdown=We;exports.getDirectory=Ao;exports.getFileExtension=Bo;exports.getFilename=Dn;exports.getFilenameTruncated=Lo;exports.getProxyConfig=Zo;exports.getProxyUrl=Ko;exports.getTimezoneOffset=er;exports.git=Lr;exports.iife=Wr;exports.initLog=gc;exports.isSafeFenceBreak=jn;exports.joinCommandArgs=pe;exports.lazy=$e;exports.lazyAsync=tr;exports.loadEnv=Br;exports.loadTextFile=zr;exports.loadTextFileAsync=Hr;exports.markdownToIR=xe;exports.markdownToIRWithMeta=Ce;exports.needsShellExecution=un;exports.now=qt;exports.nowLocalISO=Zn;exports.parseCommand=re;exports.parseCommandWithOptions=dn;exports.parseFenceSpans=Ye;exports.parseFrontmatterBlock=Ie;exports.parseLocalISO=Xn;exports.parseModelId=Ur;exports.proxied=Jo;exports.readableStreamToText=Rr;exports.renderMarkdown=we;exports.renderMarkdownWithMarkers=Oe;exports.retry=No;exports.scanParenAwareBreakpoints=bt;exports.serializeFrontmatter=Ue;exports.shell=gn;exports.signal=Qo;exports.startServer=sr;exports.truncateMiddle=_o;exports.updateSchema=ns;exports.whichSync=Mr;exports.withTimeout=es;exports.work=Xo;
package/dist/index.d.cts CHANGED
@@ -1238,6 +1238,12 @@ declare namespace Lock {
1238
1238
  }
1239
1239
 
1240
1240
  declare function proxied(): boolean;
1241
+ declare function getProxyUrl(): string | undefined;
1242
+ declare function getProxyConfig(): {
1243
+ http?: string;
1244
+ https?: string;
1245
+ enabled: boolean;
1246
+ };
1241
1247
 
1242
1248
  declare class AsyncQueue<T> implements AsyncIterable<T> {
1243
1249
  private queue;
@@ -1289,4 +1295,4 @@ declare function initLog(options: {
1289
1295
  level?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR';
1290
1296
  }): Promise<void>;
1291
1297
 
1292
- export { $, Archive, AsyncQueue, Binary, type CodeSpanIndex$1 as CodeSpanIndex, Color, Context, type EasServer, Encode, EventLoop, type FenceSpan$1 as FenceSpan, Fetch, type FetchResponse, Filesystem, Fn, type FormatOptions, type GitResult, Glob, Identifier, Ignore, type InlineCodeState$1 as InlineCodeState, Keybind, Lazy, Locale, Lock, MIME_TYPES, Markdown, type MarkdownConfig, type MarkdownIR, type MarkdownLinkSpan, type MarkdownParseOptions, type MarkdownStyle, type MarkdownStyleSpan, type MarkdownTableMode, type MiddlewareDefinition, NamedError, type NodeSpawnObjectArgs, type NodeSpawnOptions, type NodeSpawnResult, type NodeWhichOptions, PKG, PackageRegistry, type ParseCommandResult, type ParsedFrontmatter, type ParsedVersion, PkgShell, type ProxyOptions, type RPCMethod, type RenderLink, type RenderOptions, type RequestOptions, type RouteDefinition, type SSEHandler, Semver, type ServerOptions, SessionTitle, Shell, Slug, type StreamHandler, type StyleMarker, Token, TruncateContent, type WebSocketHandler, type WebSocketRouteDefinition, Wildcard, abortAfter, abortAfterAny, buildCodeSpanIndex, chunkMarkdownIR, chunkText, chunkTextByBreakResolver, convertMarkdownTables, createInlineCodeState, createPkgShell, createRESTServer, createRPCServer, createServer, createStreamingServer, createWebSocketServer, defer, detectPlatform, escapeCommandArg, escapeCommandArgSafe, extractFrontmatter, findFenceSpanAt, findLast, fn, formatDuration, formatLocalISO, formatLocalISOCompact, formatLogTime, formatMarkdown, getDirectory, getFileExtension, getFilename, getFilenameTruncated, getTimezoneOffset, git, iife, initLog, isSafeFenceBreak, joinCommandArgs, lazy, lazyAsync, loadEnv, loadTextFile, loadTextFileAsync, markdownToIR, markdownToIRWithMeta, needsShellExecution, now, nowLocalISO, parseCommand, parseCommandWithOptions, parseFenceSpans, parseFrontmatterBlock, parseLocalISO, parseModelId, proxied, readableStreamToText, renderMarkdown, renderMarkdownWithMarkers, retry, scanParenAwareBreakpoints, serializeFrontmatter, shell, signal, startServer, truncateMiddle, updateSchema, whichSync, withTimeout, work };
1298
+ export { $, Archive, AsyncQueue, Binary, type CodeSpanIndex$1 as CodeSpanIndex, Color, Context, type EasServer, Encode, EventLoop, type FenceSpan$1 as FenceSpan, Fetch, type FetchResponse, Filesystem, Fn, type FormatOptions, type GitResult, Glob, Identifier, Ignore, type InlineCodeState$1 as InlineCodeState, Keybind, Lazy, Locale, Lock, MIME_TYPES, Markdown, type MarkdownConfig, type MarkdownIR, type MarkdownLinkSpan, type MarkdownParseOptions, type MarkdownStyle, type MarkdownStyleSpan, type MarkdownTableMode, type MiddlewareDefinition, NamedError, type NodeSpawnObjectArgs, type NodeSpawnOptions, type NodeSpawnResult, type NodeWhichOptions, PKG, PackageRegistry, type ParseCommandResult, type ParsedFrontmatter, type ParsedVersion, PkgShell, type ProxyOptions, type RPCMethod, type RenderLink, type RenderOptions, type RequestOptions, type RouteDefinition, type SSEHandler, Semver, type ServerOptions, SessionTitle, Shell, Slug, type StreamHandler, type StyleMarker, Token, TruncateContent, type WebSocketHandler, type WebSocketRouteDefinition, Wildcard, abortAfter, abortAfterAny, buildCodeSpanIndex, chunkMarkdownIR, chunkText, chunkTextByBreakResolver, convertMarkdownTables, createInlineCodeState, createPkgShell, createRESTServer, createRPCServer, createServer, createStreamingServer, createWebSocketServer, defer, detectPlatform, escapeCommandArg, escapeCommandArgSafe, extractFrontmatter, findFenceSpanAt, findLast, fn, formatDuration, formatLocalISO, formatLocalISOCompact, formatLogTime, formatMarkdown, getDirectory, getFileExtension, getFilename, getFilenameTruncated, getProxyConfig, getProxyUrl, getTimezoneOffset, git, iife, initLog, isSafeFenceBreak, joinCommandArgs, lazy, lazyAsync, loadEnv, loadTextFile, loadTextFileAsync, markdownToIR, markdownToIRWithMeta, needsShellExecution, now, nowLocalISO, parseCommand, parseCommandWithOptions, parseFenceSpans, parseFrontmatterBlock, parseLocalISO, parseModelId, proxied, readableStreamToText, renderMarkdown, renderMarkdownWithMarkers, retry, scanParenAwareBreakpoints, serializeFrontmatter, shell, signal, startServer, truncateMiddle, updateSchema, whichSync, withTimeout, work };
package/dist/index.d.ts CHANGED
@@ -1238,6 +1238,12 @@ declare namespace Lock {
1238
1238
  }
1239
1239
 
1240
1240
  declare function proxied(): boolean;
1241
+ declare function getProxyUrl(): string | undefined;
1242
+ declare function getProxyConfig(): {
1243
+ http?: string;
1244
+ https?: string;
1245
+ enabled: boolean;
1246
+ };
1241
1247
 
1242
1248
  declare class AsyncQueue<T> implements AsyncIterable<T> {
1243
1249
  private queue;
@@ -1289,4 +1295,4 @@ declare function initLog(options: {
1289
1295
  level?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR';
1290
1296
  }): Promise<void>;
1291
1297
 
1292
- export { $, Archive, AsyncQueue, Binary, type CodeSpanIndex$1 as CodeSpanIndex, Color, Context, type EasServer, Encode, EventLoop, type FenceSpan$1 as FenceSpan, Fetch, type FetchResponse, Filesystem, Fn, type FormatOptions, type GitResult, Glob, Identifier, Ignore, type InlineCodeState$1 as InlineCodeState, Keybind, Lazy, Locale, Lock, MIME_TYPES, Markdown, type MarkdownConfig, type MarkdownIR, type MarkdownLinkSpan, type MarkdownParseOptions, type MarkdownStyle, type MarkdownStyleSpan, type MarkdownTableMode, type MiddlewareDefinition, NamedError, type NodeSpawnObjectArgs, type NodeSpawnOptions, type NodeSpawnResult, type NodeWhichOptions, PKG, PackageRegistry, type ParseCommandResult, type ParsedFrontmatter, type ParsedVersion, PkgShell, type ProxyOptions, type RPCMethod, type RenderLink, type RenderOptions, type RequestOptions, type RouteDefinition, type SSEHandler, Semver, type ServerOptions, SessionTitle, Shell, Slug, type StreamHandler, type StyleMarker, Token, TruncateContent, type WebSocketHandler, type WebSocketRouteDefinition, Wildcard, abortAfter, abortAfterAny, buildCodeSpanIndex, chunkMarkdownIR, chunkText, chunkTextByBreakResolver, convertMarkdownTables, createInlineCodeState, createPkgShell, createRESTServer, createRPCServer, createServer, createStreamingServer, createWebSocketServer, defer, detectPlatform, escapeCommandArg, escapeCommandArgSafe, extractFrontmatter, findFenceSpanAt, findLast, fn, formatDuration, formatLocalISO, formatLocalISOCompact, formatLogTime, formatMarkdown, getDirectory, getFileExtension, getFilename, getFilenameTruncated, getTimezoneOffset, git, iife, initLog, isSafeFenceBreak, joinCommandArgs, lazy, lazyAsync, loadEnv, loadTextFile, loadTextFileAsync, markdownToIR, markdownToIRWithMeta, needsShellExecution, now, nowLocalISO, parseCommand, parseCommandWithOptions, parseFenceSpans, parseFrontmatterBlock, parseLocalISO, parseModelId, proxied, readableStreamToText, renderMarkdown, renderMarkdownWithMarkers, retry, scanParenAwareBreakpoints, serializeFrontmatter, shell, signal, startServer, truncateMiddle, updateSchema, whichSync, withTimeout, work };
1298
+ export { $, Archive, AsyncQueue, Binary, type CodeSpanIndex$1 as CodeSpanIndex, Color, Context, type EasServer, Encode, EventLoop, type FenceSpan$1 as FenceSpan, Fetch, type FetchResponse, Filesystem, Fn, type FormatOptions, type GitResult, Glob, Identifier, Ignore, type InlineCodeState$1 as InlineCodeState, Keybind, Lazy, Locale, Lock, MIME_TYPES, Markdown, type MarkdownConfig, type MarkdownIR, type MarkdownLinkSpan, type MarkdownParseOptions, type MarkdownStyle, type MarkdownStyleSpan, type MarkdownTableMode, type MiddlewareDefinition, NamedError, type NodeSpawnObjectArgs, type NodeSpawnOptions, type NodeSpawnResult, type NodeWhichOptions, PKG, PackageRegistry, type ParseCommandResult, type ParsedFrontmatter, type ParsedVersion, PkgShell, type ProxyOptions, type RPCMethod, type RenderLink, type RenderOptions, type RequestOptions, type RouteDefinition, type SSEHandler, Semver, type ServerOptions, SessionTitle, Shell, Slug, type StreamHandler, type StyleMarker, Token, TruncateContent, type WebSocketHandler, type WebSocketRouteDefinition, Wildcard, abortAfter, abortAfterAny, buildCodeSpanIndex, chunkMarkdownIR, chunkText, chunkTextByBreakResolver, convertMarkdownTables, createInlineCodeState, createPkgShell, createRESTServer, createRPCServer, createServer, createStreamingServer, createWebSocketServer, defer, detectPlatform, escapeCommandArg, escapeCommandArgSafe, extractFrontmatter, findFenceSpanAt, findLast, fn, formatDuration, formatLocalISO, formatLocalISOCompact, formatLogTime, formatMarkdown, getDirectory, getFileExtension, getFilename, getFilenameTruncated, getProxyConfig, getProxyUrl, getTimezoneOffset, git, iife, initLog, isSafeFenceBreak, joinCommandArgs, lazy, lazyAsync, loadEnv, loadTextFile, loadTextFileAsync, markdownToIR, markdownToIRWithMeta, needsShellExecution, now, nowLocalISO, parseCommand, parseCommandWithOptions, parseFenceSpans, parseFrontmatterBlock, parseLocalISO, parseModelId, proxied, readableStreamToText, renderMarkdown, renderMarkdownWithMarkers, retry, scanParenAwareBreakpoints, serializeFrontmatter, shell, signal, startServer, truncateMiddle, updateSchema, whichSync, withTimeout, work };
package/dist/index.mjs CHANGED
@@ -1,15 +1,15 @@
1
- import {c}from'./chunks/chunk-2XMNW35H.mjs';export{c as Filesystem,a as Glob,b as MIME_TYPES}from'./chunks/chunk-2XMNW35H.mjs';export{b as PackageRegistry,a as Semver}from'./chunks/chunk-7XA3MNEJ.mjs';import {a}from'./chunks/chunk-WN6DTIOU.mjs';import {b,a as a$1}from'./chunks/chunk-DAYGB2XR.mjs';export{a as Lock}from'./chunks/chunk-UZ52E7FE.mjs';import {k,c as c$1,i}from'./chunks/chunk-V6YNYGNC.mjs';import se from'fs/promises';import je,{z}from'zod';import {randomBytes,createHash}from'crypto';import he,{dirname,join}from'path';import _e,{existsSync,readdirSync,statSync}from'fs';import {execSync,spawn}from'child_process';import {createRequire}from'module';import {Hono}from'hono';export{Hono}from'hono';import {serve}from'@hono/node-server';import {createNodeWebSocket}from'@hono/node-ws';export{createNodeWebSocket}from'@hono/node-ws';import {streamSSE}from'hono/streaming';import {cors}from'hono/cors';export{cors}from'hono/cors';import {logger}from'hono/logger';export{logger}from'hono/logger';import {compress}from'hono/compress';export{compress}from'hono/compress';import {secureHeaders}from'hono/secure-headers';export{secureHeaders}from'hono/secure-headers';import {timeout}from'hono/timeout';export{timeout}from'hono/timeout';import {HTTPException}from'hono/http-exception';export{HTTPException}from'hono/http-exception';export{validator}from'hono/validator';import {zValidator}from'@hono/zod-validator';export{zValidator}from'@hono/zod-validator';import {minimatch}from'minimatch';import {setTimeout as setTimeout$1}from'timers/promises';import {config}from'dotenv';import {fileURLToPath}from'url';import Zr from'markdown-it';import jn from'yaml';import {ProxyAgent,getGlobalDispatcher,setGlobalDispatcher}from'undici';import {AsyncLocalStorage}from'async_hooks';k();k();function Jn(e,t){for(let r=e.length-1;r>=0;r-=1){let n=e[r];if(n!==void 0&&t(n,r,e))return n}}k();var tt;(r=>{function e(n,o,s){let a=0,i=n.length-1;for(;a<=i;){let l=Math.floor((a+i)/2),p=n[l];if(p===void 0)break;let c=s(p);if(c===o)return {found:true,index:l};c<o?a=l+1:i=l-1;}return {found:false,index:a}}r.search=e;function t(n,o,s){let a=s(o),i=0,l=n.length;for(;i<l;){let p=Math.floor((i+l)/2),c=n[p];if(c===void 0)break;s(c)<a?i=p+1:l=p;}return n.splice(i,0,o),n}r.insert=t;})(tt||(tt={}));k();var nt;(s=>{function e(a){let i=new TextEncoder().encode(a),l=Array.from(i,p=>String.fromCharCode(p)).join("");return btoa(l).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}s.base64Encode=e;function t(a){let i=atob(a.replace(/-/g,"+").replace(/_/g,"/")),l=Uint8Array.from(i,p=>p.charCodeAt(0));return new TextDecoder().decode(l)}s.base64Decode=t;async function r(a,i="SHA-256"){let p=new TextEncoder().encode(a),c=await crypto.subtle.digest(i,p);return Array.from(new Uint8Array(c)).map(S=>S.toString(16).padStart(2,"0")).join("")}s.hash=r;function n(a){if(!a)return;let i=2166136261;for(let l=0;l<a.length;l++)i^=a.charCodeAt(l),i=Math.imul(i,16777619);return (i>>>0).toString(36)}s.checksum=n;function o(a,i=5e5){if(!a)return;if(a.length<=i)return n(a);let l=4096,c=[0,Math.floor(a.length*.25),Math.floor(a.length*.5),Math.floor(a.length*.75),a.length-l].map(u=>{let g=Math.max(0,Math.min(a.length-l,u-Math.floor(l/2)));return n(a.slice(g,g+l))??""}).join(":");return `${a.length}:${c}`}s.sampledChecksum=o;})(nt||(nt={}));k();k();var Te;(u=>{let e={event:"evt",session:"ses",message:"msg",permission:"per",question:"que",user:"usr",part:"prt",pty:"pty",tool:"tool",workspace:"wrk",command:"cmd",task:"task",heartbeat:"hb",subagent:"sub",hook:"hok",compaction:"cmp",context:"ctx"};function t(g){return je.string().startsWith(e[g])}u.schema=t;let r=26,n=0,o=0;function s(g,S){return i(g,false,S)}u.ascending=s;function a(g,S){return i(g,true,S)}u.descending=a;function i(g,S,P){if(!P)return p(g,S);if(!P.startsWith(e[g]))throw new Error(`ID ${P} does not start with ${e[g]}`);return P}function l(g){let S="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",P="",D=randomBytes(g);for(let H=0;H<g;H++){let q=D[H];q!==void 0&&(P+=S[q%62]);}return P}function p(g,S,P){let D=P??Date.now();D!==n&&(n=D,o=0),o++;let H=BigInt(D)*BigInt(4096)+BigInt(o);H=S?~H:H;let q=Buffer.alloc(6);for(let N=0;N<6;N++)q[N]=Number(H>>BigInt(40-8*N)&BigInt(255));return e[g]+"_"+q.toString("hex")+l(r-12)}u.create=p;function c(g){let S=g.split("_")[0];if(!S)return 0;let P=g.slice(S.length+1,S.length+13),D=BigInt("0x"+P);return Number(D/BigInt(4096))}u.timestamp=c;})(Te||(Te={}));var rt;(i=>{i.DIR=c.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-truncate"),i.DEFAULT_MAX_CHARS=4e3,i.DIRECTION="head";function n(l,p,c){return c?`[Content truncated. Source: ${c}
1
+ import {c}from'./chunks/chunk-2XMNW35H.mjs';export{c as Filesystem,a as Glob,b as MIME_TYPES}from'./chunks/chunk-2XMNW35H.mjs';export{b as PackageRegistry,a as Semver}from'./chunks/chunk-7XA3MNEJ.mjs';import {a}from'./chunks/chunk-WN6DTIOU.mjs';import {b,a as a$1}from'./chunks/chunk-DAYGB2XR.mjs';export{a as Lock}from'./chunks/chunk-UZ52E7FE.mjs';import {k,c as c$1,i}from'./chunks/chunk-V6YNYGNC.mjs';import se from'fs/promises';import je,{z}from'zod';import {randomBytes,createHash}from'crypto';import he,{dirname,join}from'path';import _e,{existsSync,readdirSync,statSync}from'fs';import {execSync,spawn}from'child_process';import {createRequire}from'module';import {Hono}from'hono';export{Hono}from'hono';import {serve}from'@hono/node-server';import {createNodeWebSocket}from'@hono/node-ws';export{createNodeWebSocket}from'@hono/node-ws';import {streamSSE}from'hono/streaming';import {cors}from'hono/cors';export{cors}from'hono/cors';import {logger}from'hono/logger';export{logger}from'hono/logger';import {compress}from'hono/compress';export{compress}from'hono/compress';import {secureHeaders}from'hono/secure-headers';export{secureHeaders}from'hono/secure-headers';import {timeout}from'hono/timeout';export{timeout}from'hono/timeout';import {HTTPException}from'hono/http-exception';export{HTTPException}from'hono/http-exception';export{validator}from'hono/validator';import {zValidator}from'@hono/zod-validator';export{zValidator}from'@hono/zod-validator';import {minimatch}from'minimatch';import {setTimeout as setTimeout$1}from'timers/promises';import {config}from'dotenv';import {fileURLToPath}from'url';import Zr from'markdown-it';import jn from'yaml';import {ProxyAgent,getGlobalDispatcher,setGlobalDispatcher}from'undici';import {AsyncLocalStorage}from'async_hooks';k();k();function Jn(e,t){for(let r=e.length-1;r>=0;r-=1){let n=e[r];if(n!==void 0&&t(n,r,e))return n}}k();var tt;(r=>{function e(n,o,s){let a=0,i=n.length-1;for(;a<=i;){let l=Math.floor((a+i)/2),p=n[l];if(p===void 0)break;let c=s(p);if(c===o)return {found:true,index:l};c<o?a=l+1:i=l-1;}return {found:false,index:a}}r.search=e;function t(n,o,s){let a=s(o),i=0,l=n.length;for(;i<l;){let p=Math.floor((i+l)/2),c=n[p];if(c===void 0)break;s(c)<a?i=p+1:l=p;}return n.splice(i,0,o),n}r.insert=t;})(tt||(tt={}));k();var nt;(s=>{function e(a){let i=new TextEncoder().encode(a),l=Array.from(i,p=>String.fromCharCode(p)).join("");return btoa(l).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}s.base64Encode=e;function t(a){let i=atob(a.replace(/-/g,"+").replace(/_/g,"/")),l=Uint8Array.from(i,p=>p.charCodeAt(0));return new TextDecoder().decode(l)}s.base64Decode=t;async function r(a,i="SHA-256"){let p=new TextEncoder().encode(a),c=await crypto.subtle.digest(i,p);return Array.from(new Uint8Array(c)).map(S=>S.toString(16).padStart(2,"0")).join("")}s.hash=r;function n(a){if(!a)return;let i=2166136261;for(let l=0;l<a.length;l++)i^=a.charCodeAt(l),i=Math.imul(i,16777619);return (i>>>0).toString(36)}s.checksum=n;function o(a,i=5e5){if(!a)return;if(a.length<=i)return n(a);let l=4096,c=[0,Math.floor(a.length*.25),Math.floor(a.length*.5),Math.floor(a.length*.75),a.length-l].map(u=>{let g=Math.max(0,Math.min(a.length-l,u-Math.floor(l/2)));return n(a.slice(g,g+l))??""}).join(":");return `${a.length}:${c}`}s.sampledChecksum=o;})(nt||(nt={}));k();k();var Te;(u=>{let e={event:"evt",session:"ses",message:"msg",permission:"per",question:"que",user:"usr",part:"prt",pty:"pty",tool:"tool",workspace:"wrk",command:"cmd",task:"task",heartbeat:"hb",subagent:"sub",hook:"hok",compaction:"cmp",context:"ctx"};function t(g){return je.string().startsWith(e[g])}u.schema=t;let r=26,n=0,o=0;function s(g,S){return i(g,false,S)}u.ascending=s;function a(g,S){return i(g,true,S)}u.descending=a;function i(g,S,R){if(!R)return p(g,S);if(!R.startsWith(e[g]))throw new Error(`ID ${R} does not start with ${e[g]}`);return R}function l(g){let S="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",R="",D=randomBytes(g);for(let H=0;H<g;H++){let q=D[H];q!==void 0&&(R+=S[q%62]);}return R}function p(g,S,R){let D=R??Date.now();D!==n&&(n=D,o=0),o++;let H=BigInt(D)*BigInt(4096)+BigInt(o);H=S?~H:H;let q=Buffer.alloc(6);for(let N=0;N<6;N++)q[N]=Number(H>>BigInt(40-8*N)&BigInt(255));return e[g]+"_"+q.toString("hex")+l(r-12)}u.create=p;function c(g){let S=g.split("_")[0];if(!S)return 0;let R=g.slice(S.length+1,S.length+13),D=BigInt("0x"+R);return Number(D/BigInt(4096))}u.timestamp=c;})(Te||(Te={}));var rt;(i=>{i.DIR=c.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-truncate"),i.DEFAULT_MAX_CHARS=4e3,i.DIRECTION="head";function n(l,p,c){return c?`[Content truncated. Source: ${c}
2
2
  Full ${p} saved to: ${l}
3
3
  Use Read tool with offset/limit parameters to view specific sections.]`:`[Content truncated. Full ${p} saved to: ${l}
4
- Use Read tool with offset/limit parameters to view specific sections.]`}function o(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let P=l.length-c,D;u==="head"?D=l.slice(0,c):D=l.slice(-c);let H=n("[save-path]",g,S),q=u==="head"?`
4
+ Use Read tool with offset/limit parameters to view specific sections.]`}function o(l,p={}){let c=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.sourcePath;if(l.length<=c)return {content:l,truncated:false};let R=l.length-c,D;u==="head"?D=l.slice(0,c):D=l.slice(-c);let H=n("[save-path]",g,S),q=u==="head"?`
5
5
 
6
- ...${P} characters truncated...
6
+ ...${R} characters truncated...
7
7
 
8
8
  ${H}`:`
9
9
 
10
- ...${P} characters truncated...
10
+ ...${R} characters truncated...
11
11
 
12
- ${H}`;return {content:D+q,truncated:true,outputPath:"[save-path]",originalLength:l.length,removedLength:P,label:g}}i.truncate=o;async function s(l,p={}){let c$1=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.dir??i.DIR,P=p.sourcePath;if(l.length<=c$1)return {content:l,truncated:false};let D=Te.ascending("context"),H=c.join(S,D);await se.mkdir(S,{recursive:true}).catch(()=>{}),await se.writeFile(H,l,"utf-8");let q=l.length-c$1,N;u==="head"?N=l.slice(0,c$1):N=l.slice(-c$1);let le=n(H,g,P),ke=u==="head"?`
12
+ ${H}`;return {content:D+q,truncated:true,outputPath:"[save-path]",originalLength:l.length,removedLength:R,label:g}}i.truncate=o;async function s(l,p={}){let c$1=p.maxChars??i.DEFAULT_MAX_CHARS,u=p.direction??i.DIRECTION,g=p.label??"content",S=p.dir??i.DIR,R=p.sourcePath;if(l.length<=c$1)return {content:l,truncated:false};let D=Te.ascending("context"),H=c.join(S,D);await se.mkdir(S,{recursive:true}).catch(()=>{}),await se.writeFile(H,l,"utf-8");let q=l.length-c$1,N;u==="head"?N=l.slice(0,c$1):N=l.slice(-c$1);let le=n(H,g,R),ke=u==="head"?`
13
13
 
14
14
  ...${q} characters truncated...
15
15
 
@@ -17,11 +17,11 @@ ${le}`:`
17
17
 
18
18
  ...${q} characters truncated...
19
19
 
20
- ${le}`;return {content:N+ke,truncated:true,outputPath:H,originalLength:l.length,removedLength:q,label:g}}i.truncateAndSave=s;function a(l){return l.truncated?n(l.outputPath,l.label):""}i.formatHint=a;})(rt||(rt={}));k();k();function ot(e,t=true){let r=typeof e=="number"?new Date(e):e,n=r.getTimezoneOffset(),o=Math.floor(Math.abs(n)/60),s=Math.abs(n)%60,i=`${n<=0?"+":"-"}${String(o).padStart(2,"0")}:${String(s).padStart(2,"0")}`,l=r.getFullYear(),p=String(r.getMonth()+1).padStart(2,"0"),c=String(r.getDate()).padStart(2,"0"),u=String(r.getHours()).padStart(2,"0"),g=String(r.getMinutes()).padStart(2,"0"),S=String(r.getSeconds()).padStart(2,"0"),P=`${l}-${p}-${c}T${u}:${g}:${S}`;if(t){let D=String(r.getMilliseconds()).padStart(3,"0");P+=`.${D}`;}return P+=i,P}function st(e){return ot(e,false)}function Vt(){return Date.now()}function Xn(e=true){return ot(Vt(),e)}function Qn(e){return e.includes("+")||e.includes("-")?new Date(e):new Date(e)}function er(e){let t=typeof e=="number"?new Date(e):e,r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0"),i=String(t.getSeconds()).padStart(2,"0");return `${r}-${n}-${o}T${s}:${a}:${i}`}function tr(e=new Date){let t=e.getTimezoneOffset(),r=Math.floor(Math.abs(t)/60),n=Math.abs(t)%60;return `${t<=0?"+":"-"}${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}`}var it;(i=>{let e="New session - ",t="Child session - ";i.parentTitlePrefix=e,i.childTitlePrefix=t;function o(l=false){return (l?t:e)+st(new Date)}i.createDefault=o;function s(l){return new RegExp(`^(${e}|${t})\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$`).test(l)}i.isDefault=s;function a(l){let p=l.match(/^(.+) \(fork #(\d+)\)$/);if(p){let c=p[1]??"",u=parseInt(p[2]??"0",10);return `${c} (fork #${u+1})`}return `${l} (fork #1)`}i.getForked=a;})(it||(it={}));k();k();function Gt(e){let t,r=false,n=()=>(r||(t=e(),r=true),t);return n.reset=()=>{r=false,t=void 0;},n}var Ae=Gt;function Yt(e){let t,r=()=>(t||(t=e()),t);return r.reset=()=>{t=void 0;},r}var nr=Yt,pe;(r=>(r.lazy=Gt,r.lazyAsync=Yt))(pe||(pe={}));k();k();k();var re=a.create({service:"server"});function ae(e={}){let t=e.port??3e3,r=e.hostname??"0.0.0.0",n=new Hono({strict:true,getPath:a=>{try{return new URL(a.url).pathname}catch{return a.url}}});if(e.onError?n.onError(e.onError):n.onError((a,i)=>(re.error("Server error",{error:a.message,stack:a.stack}),a instanceof HTTPException?a.getResponse():i.json({error:"Internal Server Error",message:a.message},500))),e.onNotFound?n.notFound(e.onNotFound):n.notFound(a=>a.json({error:"Not Found",path:a.req.path},404)),!e.websockets&&e.cors&&n.use(cors(typeof e.cors=="boolean"?{origin:"*"}:e.cors)),n.use(logger((a,...i)=>re.info(a,i))),!e.websockets&&e.secureHeaders&&n.use(secureHeaders()),!e.websockets&&e.compression&&n.use(compress({encoding:"gzip"})),!e.websockets&&e.timeout&&n.use(timeout(e.timeout)),e.middlewares)for(let a of e.middlewares)a.path?n.use(a.path,a.handler):n.use(a.handler);if(e.routes)for(let a of e.routes){let i=a.middlewares||[],l=a.method.toUpperCase();a.validation?n.on(l,a.path,zValidator("json",a.validation),...i,a.handler):n.on(l,a.path,...i,a.handler);}e.rpc&&n.post("/rpc/:method",async a=>{let i=a.req.param("method"),l=e.rpc?.[i];if(!l)return a.json({error:"RPC method not found"},404);try{let p=await a.req.json(),c=await l(p,a);return a.json({result:c})}catch(p){return re.error("RPC error",{method:i,error:p.message}),a.json({error:"RPC execution failed",message:p.message},500)}}),e.fetch&&n.all("*",async a=>await e.fetch(a.req.raw));let o=null,s={url:new URL(`http://${r}:${t}`),port:t,hostname:r,hono:n,async stop(a=false){return o?new Promise((i,l)=>{a&&o.closeAllConnections?.(),o.close(p=>{p?(re.error("Error closing server",{error:p.message}),l(p)):(o=null,re.info(`Server on port ${t} stopped`),i());}),setTimeout(()=>{re.warn(`Server shutdown timeout on port ${t}`),o=null,i();},5e3);}):Promise.resolve()},get raw(){return o||void 0}};return re.debug("createServer: calling serve()",{port:t,hostname:r}),o=serve({fetch:n.fetch,port:t,hostname:r}),re.debug("createServer: serve() returned, server created"),re.info(`Server running on http://${r}:${t}`),s}function at(e){return ae({rpc:e,port:3e3})}function ir(e,t=3e3,r="0.0.0.0"){return ae({fetch:e,port:t,hostname:r})}function lt(e,t={}){return ae({...t,routes:e})}function ct(e,t={}){return ae({...t,websockets:e})}function ut(e,t={}){let r=Object.entries(e).map(([n,o])=>({method:"get",path:`/stream/${n}`,handler:s=>streamSSE(s,async a=>{for await(let i of o(s))await a.writeSSE(i);})}));return ae({...t,routes:r,streaming:true})}k();var ue=a.create({service:"build-api"});async function ln(){try{return {available:!0,version:(await import('./chunks/main-ZMRSNK7G.mjs')).version||"unknown"}}catch(e){return ue.warn("esbuild not available",{error:e.message}),{available:false}}}async function Le(){let e=await ln();if(!e.available)throw new Error("esbuild is required but not installed. Please install it using: pnpm add -D esbuild");e.version&&e.version<"0.17.0"&&ue.warn(`esbuild version ${e.version} may have limited features. Consider upgrading to 0.17+`);}function ur(e){if(e!==void 0)return typeof e=="boolean"?{target:void 0}:typeof e=="string"?{target:e}:e}function cn(e){let t=ur(e.compile);t&&ue.warn("compile option is no longer supported (Bun runtime removed). The option will be ignored.");let r={entryPoints:e.entrypoints,outdir:e.outdir,bundle:e.bundle??true,conditions:e.conditions,external:e.external,format:e.format??"esm",platform:e.platform??(e.target==="browser"?"browser":"node"),minify:e.minify??false,treeShaking:true,splitting:e.splitting,sourcemap:dr(e.sourcemap),sourcesContent:true,define:e.define,inject:e.inject,legalComments:"eof",loader:e.loader,entryNames:e.entryNames,chunkNames:e.chunkNames,assetNames:e.assetNames,publicPath:e.publicPath,tsconfig:e.tsconfig,charset:"utf8",color:true,logLevel:"info",logLimit:50,plugins:e.plugins??[],metafile:true,write:e.write??true};return t?.outfile&&!e.outdir&&(r.outfile=t.outfile,delete r.outdir),e.target&&(r.target=fr(e.target)),e.minify===true&&(r.minifyWhitespace=true,r.minifyIdentifiers=true,r.minifySyntax=true),pr(r)}function dr(e){return !e||e==="none"?false:e}function fr(e){let t={browser:"es2020",node:"node16",bun:"esnext"};return e?t[e]||e:"esnext"}function pr(e){let t={};for(let r of Object.keys(e))e[r]!==void 0&&(t[r]=e[r]);return t}function Be(e){if(e!==void 0)return e.replace(/\\/g,"/")}function rn(e,t,r){let n=[];if(e.outputFiles)for(let s of e.outputFiles)n.push({path:Be(s.path)||s.path,size:s.contents?.length||0});if(e.metafile?.outputs)for(let[s,a]of Object.entries(e.metafile.outputs)){let i=a;n.some(l=>l.path===s||l.path===Be(s))||n.push({path:Be(s)||s,size:i.bytes||0});}let o=[];if(e.errors?.length>0)for(let s of e.errors)o.push({level:"error",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});if(e.warnings?.length>0)for(let s of e.warnings)o.push({level:"warning",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});return {outputs:n,success:e.errors?.length===0,logs:o,metafile:e.metafile}}async function ft(e){ue.info("Build started",{entrypoints:e.entrypoints,target:e.target,format:e.format,compile:typeof e.compile}),await Le();let t=await import('./chunks/main-ZMRSNK7G.mjs'),r=Date.now();try{let n=cn(e);ue.debug("esbuild options",n);let o=await t.build(n),s=Date.now();return ue.info("Build completed",{duration:s-r,outputs:(o?.outputFiles?.length??0)>0||Object.keys(o.metafile?.outputs||{}).length>0}),rn(o,r,s)}catch(n){let o=Date.now(),s=n.message;return ue.error("Build failed",{error:s,duration:o-r}),n&&typeof n=="object"&&"errors"in n?rn(n):{outputs:[],success:false,logs:[{level:"error",message:s}],metafile:void 0}}}var xr={build:ft},un=xr;k();k();function oe(e){let t=[],r="",n=0;for(;n<e.length&&(e[n]===" "||e[n]===" ");)n++;for(;n<e.length;){let o=e[n];if(o===" "||o===" "){for(r.length>0&&(t.push(r),r="");n<e.length&&(e[n]===" "||e[n]===" ");)n++;continue}if(o==='"'){for(n++;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){let a=e[n+1];if(a==='"'||a==="\\"||a==="$"||a==="`"){r+=a,n+=2;continue}}if(s==='"'){n++;break}r+=s,n++;}continue}if(o==="'"){for(n++;n<e.length;){let s=e[n];if(s==="'"){n++;break}r+=s,n++;}continue}r+=o,n++;}return r.length>0&&t.push(r),t}function dn(e){return /[|&;<>()$`!#]/.test(e)}function fn(e){let t=oe(e);if(t.length===0)return {command:"",args:[]};let r={command:t[0],args:t.slice(1)};if(r.args.length>0){let n=r.args[r.args.length-1];try{let o=JSON.parse(n);typeof o=="object"&&o!==null&&!Array.isArray(o)&&(r.options=o,r.args=r.args.slice(0,-1));}catch{}}return r}function pt(e,t=process.platform==="win32"?"windows":"unix"){return t==="windows"?e.includes(" ")||e.includes("&")||e.includes("|")||e.includes("<>")||e.includes("^")||e.includes('"')||e.includes("%")?`"${e.replace(/%/g,"%%").replace(/"/g,'^"')}"`:e:e.includes(" ")||e.includes("'")||e.includes('"')||e.includes("$")||e.includes("`")||e.includes("\\")||e.includes("!")||e.includes("#")||e.includes("&")||e.includes("*")||e.includes("?")||e.includes("|")||e.includes("<")||e.includes(">")||e.includes("(")||e.includes(")")||e.includes(";")?`'${e.replace(/'/g,"'\\''")}'`:e}var wr=new Set(["&&","||","|",";","&",">","<",">>","<<","2>","2>>","1>","1>>","2>&1","2>&2","1>&1","1>&2",">&","<&",">&1","<&1",">&2","<&2"]);function pn(e,t=process.platform==="win32"?"windows":"unix"){return wr.has(e)?e:pt(e,t)}function mn(){return process.platform==="win32"?"windows":"unix"}function me(e,t,r=process.platform==="win32"?"windows":"unix"){let n=t.map(o=>pn(o,r));return [e,...n].join(" ")}function gn(e){if(e==null)return "";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(t=>gn(t)).join(" ");if(e&&typeof e=="object"){if("raw"in e)return String(e.raw);if("toString"in e&&typeof e.toString=="function")return e.toString();if(e instanceof ReadableStream)throw new Error("ReadableStream expressions are not yet supported")}return String(e)}function Sr(e,t,r){return {stdout:e,stderr:t,exitCode:r,text(n="utf-8"){return e.toString(n)},json(){let n=e.toString("utf-8");return JSON.parse(n)},arrayBuffer(){let n=e.buffer;if(n instanceof ArrayBuffer)return n.slice(e.byteOffset,e.byteOffset+e.byteLength);let o=new ArrayBuffer(e.byteLength),s=new Uint8Array(o),a=new Uint8Array(n,e.byteOffset,e.byteLength);return s.set(a),o},bytes(){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)},blob(){let n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return new Blob([n])}}}function ge(e,t={}){let r=oe(e);if(r.length===0)throw new Error("Empty shell command");let n=async()=>{let s=await L.run(r,{cwd:t.cwd,env:t.env}),a=Sr(Buffer.from(s.stdout,"utf-8"),Buffer.from(s.stderr,"utf-8"),s.code);if(s.code!==0&&!t.nothrow)throw Object.assign(new Error(`Command failed with exit code ${s.code}: ${e}
20
+ ${le}`;return {content:N+ke,truncated:true,outputPath:H,originalLength:l.length,removedLength:q,label:g}}i.truncateAndSave=s;function a(l){return l.truncated?n(l.outputPath,l.label):""}i.formatHint=a;})(rt||(rt={}));k();k();function ot(e,t=true){let r=typeof e=="number"?new Date(e):e,n=r.getTimezoneOffset(),o=Math.floor(Math.abs(n)/60),s=Math.abs(n)%60,i=`${n<=0?"+":"-"}${String(o).padStart(2,"0")}:${String(s).padStart(2,"0")}`,l=r.getFullYear(),p=String(r.getMonth()+1).padStart(2,"0"),c=String(r.getDate()).padStart(2,"0"),u=String(r.getHours()).padStart(2,"0"),g=String(r.getMinutes()).padStart(2,"0"),S=String(r.getSeconds()).padStart(2,"0"),R=`${l}-${p}-${c}T${u}:${g}:${S}`;if(t){let D=String(r.getMilliseconds()).padStart(3,"0");R+=`.${D}`;}return R+=i,R}function st(e){return ot(e,false)}function Yt(){return Date.now()}function Xn(e=true){return ot(Yt(),e)}function Qn(e){return e.includes("+")||e.includes("-")?new Date(e):new Date(e)}function er(e){let t=typeof e=="number"?new Date(e):e,r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0"),i=String(t.getSeconds()).padStart(2,"0");return `${r}-${n}-${o}T${s}:${a}:${i}`}function tr(e=new Date){let t=e.getTimezoneOffset(),r=Math.floor(Math.abs(t)/60),n=Math.abs(t)%60;return `${t<=0?"+":"-"}${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}`}var it;(i=>{let e="New session - ",t="Child session - ";i.parentTitlePrefix=e,i.childTitlePrefix=t;function o(l=false){return (l?t:e)+st(new Date)}i.createDefault=o;function s(l){return new RegExp(`^(${e}|${t})\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$`).test(l)}i.isDefault=s;function a(l){let p=l.match(/^(.+) \(fork #(\d+)\)$/);if(p){let c=p[1]??"",u=parseInt(p[2]??"0",10);return `${c} (fork #${u+1})`}return `${l} (fork #1)`}i.getForked=a;})(it||(it={}));k();k();function Vt(e){let t,r=false,n=()=>(r||(t=e(),r=true),t);return n.reset=()=>{r=false,t=void 0;},n}var Ae=Vt;function Gt(e){let t,r=()=>(t||(t=e()),t);return r.reset=()=>{t=void 0;},r}var nr=Gt,pe;(r=>(r.lazy=Vt,r.lazyAsync=Gt))(pe||(pe={}));k();k();k();var re=a.create({service:"server"});function ae(e={}){let t=e.port??3e3,r=e.hostname??"0.0.0.0",n=new Hono({strict:true,getPath:a=>{try{return new URL(a.url).pathname}catch{return a.url}}});if(e.onError?n.onError(e.onError):n.onError((a,i)=>(re.error("Server error",{error:a.message,stack:a.stack}),a instanceof HTTPException?a.getResponse():i.json({error:"Internal Server Error",message:a.message},500))),e.onNotFound?n.notFound(e.onNotFound):n.notFound(a=>a.json({error:"Not Found",path:a.req.path},404)),!e.websockets&&e.cors&&n.use(cors(typeof e.cors=="boolean"?{origin:"*"}:e.cors)),n.use(logger((a,...i)=>re.info(a,i))),!e.websockets&&e.secureHeaders&&n.use(secureHeaders()),!e.websockets&&e.compression&&n.use(compress({encoding:"gzip"})),!e.websockets&&e.timeout&&n.use(timeout(e.timeout)),e.middlewares)for(let a of e.middlewares)a.path?n.use(a.path,a.handler):n.use(a.handler);if(e.routes)for(let a of e.routes){let i=a.middlewares||[],l=a.method.toUpperCase();a.validation?n.on(l,a.path,zValidator("json",a.validation),...i,a.handler):n.on(l,a.path,...i,a.handler);}e.rpc&&n.post("/rpc/:method",async a=>{let i=a.req.param("method"),l=e.rpc?.[i];if(!l)return a.json({error:"RPC method not found"},404);try{let p=await a.req.json(),c=await l(p,a);return a.json({result:c})}catch(p){return re.error("RPC error",{method:i,error:p.message}),a.json({error:"RPC execution failed",message:p.message},500)}}),e.fetch&&n.all("*",async a=>await e.fetch(a.req.raw));let o=null,s={url:new URL(`http://${r}:${t}`),port:t,hostname:r,hono:n,async stop(a=false){return o?new Promise((i,l)=>{a&&o.closeAllConnections?.(),o.close(p=>{p?(re.error("Error closing server",{error:p.message}),l(p)):(o=null,re.info(`Server on port ${t} stopped`),i());}),setTimeout(()=>{re.warn(`Server shutdown timeout on port ${t}`),o=null,i();},5e3);}):Promise.resolve()},get raw(){return o||void 0}};return re.debug("createServer: calling serve()",{port:t,hostname:r}),o=serve({fetch:n.fetch,port:t,hostname:r}),re.debug("createServer: serve() returned, server created"),re.info(`Server running on http://${r}:${t}`),s}function at(e){return ae({rpc:e,port:3e3})}function ir(e,t=3e3,r="0.0.0.0"){return ae({fetch:e,port:t,hostname:r})}function lt(e,t={}){return ae({...t,routes:e})}function ct(e,t={}){return ae({...t,websockets:e})}function ut(e,t={}){let r=Object.entries(e).map(([n,o])=>({method:"get",path:`/stream/${n}`,handler:s=>streamSSE(s,async a=>{for await(let i of o(s))await a.writeSSE(i);})}));return ae({...t,routes:r,streaming:true})}k();var ue=a.create({service:"build-api"});async function ln(){try{return {available:!0,version:(await import('./chunks/main-ZMRSNK7G.mjs')).version||"unknown"}}catch(e){return ue.warn("esbuild not available",{error:e.message}),{available:false}}}async function Le(){let e=await ln();if(!e.available)throw new Error("esbuild is required but not installed. Please install it using: pnpm add -D esbuild");e.version&&e.version<"0.17.0"&&ue.warn(`esbuild version ${e.version} may have limited features. Consider upgrading to 0.17+`);}function ur(e){if(e!==void 0)return typeof e=="boolean"?{target:void 0}:typeof e=="string"?{target:e}:e}function cn(e){let t=ur(e.compile);t&&ue.warn("compile option is no longer supported (Bun runtime removed). The option will be ignored.");let r={entryPoints:e.entrypoints,outdir:e.outdir,bundle:e.bundle??true,conditions:e.conditions,external:e.external,format:e.format??"esm",platform:e.platform??(e.target==="browser"?"browser":"node"),minify:e.minify??false,treeShaking:true,splitting:e.splitting,sourcemap:dr(e.sourcemap),sourcesContent:true,define:e.define,inject:e.inject,legalComments:"eof",loader:e.loader,entryNames:e.entryNames,chunkNames:e.chunkNames,assetNames:e.assetNames,publicPath:e.publicPath,tsconfig:e.tsconfig,charset:"utf8",color:true,logLevel:"info",logLimit:50,plugins:e.plugins??[],metafile:true,write:e.write??true};return t?.outfile&&!e.outdir&&(r.outfile=t.outfile,delete r.outdir),e.target&&(r.target=fr(e.target)),e.minify===true&&(r.minifyWhitespace=true,r.minifyIdentifiers=true,r.minifySyntax=true),pr(r)}function dr(e){return !e||e==="none"?false:e}function fr(e){let t={browser:"es2020",node:"node16",bun:"esnext"};return e?t[e]||e:"esnext"}function pr(e){let t={};for(let r of Object.keys(e))e[r]!==void 0&&(t[r]=e[r]);return t}function Be(e){if(e!==void 0)return e.replace(/\\/g,"/")}function rn(e,t,r){let n=[];if(e.outputFiles)for(let s of e.outputFiles)n.push({path:Be(s.path)||s.path,size:s.contents?.length||0});if(e.metafile?.outputs)for(let[s,a]of Object.entries(e.metafile.outputs)){let i=a;n.some(l=>l.path===s||l.path===Be(s))||n.push({path:Be(s)||s,size:i.bytes||0});}let o=[];if(e.errors?.length>0)for(let s of e.errors)o.push({level:"error",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});if(e.warnings?.length>0)for(let s of e.warnings)o.push({level:"warning",message:s.text||String(s),path:s.location?.file,position:s.location?{line:s.location.line,column:s.location.column}:void 0});return {outputs:n,success:e.errors?.length===0,logs:o,metafile:e.metafile}}async function ft(e){ue.info("Build started",{entrypoints:e.entrypoints,target:e.target,format:e.format,compile:typeof e.compile}),await Le();let t=await import('./chunks/main-ZMRSNK7G.mjs'),r=Date.now();try{let n=cn(e);ue.debug("esbuild options",n);let o=await t.build(n),s=Date.now();return ue.info("Build completed",{duration:s-r,outputs:(o?.outputFiles?.length??0)>0||Object.keys(o.metafile?.outputs||{}).length>0}),rn(o,r,s)}catch(n){let o=Date.now(),s=n.message;return ue.error("Build failed",{error:s,duration:o-r}),n&&typeof n=="object"&&"errors"in n?rn(n):{outputs:[],success:false,logs:[{level:"error",message:s}],metafile:void 0}}}var xr={build:ft},un=xr;k();k();function oe(e){let t=[],r="",n=0;for(;n<e.length&&(e[n]===" "||e[n]===" ");)n++;for(;n<e.length;){let o=e[n];if(o===" "||o===" "){for(r.length>0&&(t.push(r),r="");n<e.length&&(e[n]===" "||e[n]===" ");)n++;continue}if(o==='"'){for(n++;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){let a=e[n+1];if(a==='"'||a==="\\"||a==="$"||a==="`"){r+=a,n+=2;continue}}if(s==='"'){n++;break}r+=s,n++;}continue}if(o==="'"){for(n++;n<e.length;){let s=e[n];if(s==="'"){n++;break}r+=s,n++;}continue}r+=o,n++;}return r.length>0&&t.push(r),t}function dn(e){return /[|&;<>()$`!#]/.test(e)}function fn(e){let t=oe(e);if(t.length===0)return {command:"",args:[]};let r={command:t[0],args:t.slice(1)};if(r.args.length>0){let n=r.args[r.args.length-1];try{let o=JSON.parse(n);typeof o=="object"&&o!==null&&!Array.isArray(o)&&(r.options=o,r.args=r.args.slice(0,-1));}catch{}}return r}function pt(e,t=process.platform==="win32"?"windows":"unix"){return t==="windows"?e.includes(" ")||e.includes("&")||e.includes("|")||e.includes("<>")||e.includes("^")||e.includes('"')||e.includes("%")?`"${e.replace(/%/g,"%%").replace(/"/g,'^"')}"`:e:e.includes(" ")||e.includes("'")||e.includes('"')||e.includes("$")||e.includes("`")||e.includes("\\")||e.includes("!")||e.includes("#")||e.includes("&")||e.includes("*")||e.includes("?")||e.includes("|")||e.includes("<")||e.includes(">")||e.includes("(")||e.includes(")")||e.includes(";")?`'${e.replace(/'/g,"'\\''")}'`:e}var wr=new Set(["&&","||","|",";","&",">","<",">>","<<","2>","2>>","1>","1>>","2>&1","2>&2","1>&1","1>&2",">&","<&",">&1","<&1",">&2","<&2"]);function pn(e,t=process.platform==="win32"?"windows":"unix"){return wr.has(e)?e:pt(e,t)}function mn(){return process.platform==="win32"?"windows":"unix"}function me(e,t,r=process.platform==="win32"?"windows":"unix"){let n=t.map(o=>pn(o,r));return [e,...n].join(" ")}function gn(e){if(e==null)return "";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(t=>gn(t)).join(" ");if(e&&typeof e=="object"){if("raw"in e)return String(e.raw);if("toString"in e&&typeof e.toString=="function")return e.toString();if(e instanceof ReadableStream)throw new Error("ReadableStream expressions are not yet supported")}return String(e)}function Sr(e,t,r){return {stdout:e,stderr:t,exitCode:r,text(n="utf-8"){return e.toString(n)},json(){let n=e.toString("utf-8");return JSON.parse(n)},arrayBuffer(){let n=e.buffer;if(n instanceof ArrayBuffer)return n.slice(e.byteOffset,e.byteOffset+e.byteLength);let o=new ArrayBuffer(e.byteLength),s=new Uint8Array(o),a=new Uint8Array(n,e.byteOffset,e.byteLength);return s.set(a),o},bytes(){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)},blob(){let n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return new Blob([n])}}}function ge(e,t={}){let r=oe(e);if(r.length===0)throw new Error("Empty shell command");let n=async()=>{let s=await L.run(r,{cwd:t.cwd,env:t.env}),a=Sr(Buffer.from(s.stdout,"utf-8"),Buffer.from(s.stderr,"utf-8"),s.code);if(s.code!==0&&!t.nothrow)throw Object.assign(new Error(`Command failed with exit code ${s.code}: ${e}
21
21
  ${s.stderr}`),{stdout:a.stdout,stderr:a.stderr,exitCode:a.exitCode});return a},o=n();return Object.defineProperty(o,"stdin",{get(){throw new Error("stdin is not yet supported in EasbotShell. Use PKG.spawn for interactive commands.")},enumerable:true}),o.cwd=function(s){return ge(e,{...t,cwd:s})},o.env=function(s){return ge(e,{...t,env:s})},o.quiet=function(){return ge(e,{...t,quiet:true})},o.lines=async function*(){let i=(await n()).text().split(/\r?\n/);for(let l of i)l.trim()&&(yield l);},o.text=async function(s="utf-8"){return (await n()).text(s)},o.json=async function(){return (await n()).json()},o.arrayBuffer=async function(){return (await n()).arrayBuffer()},o.blob=async function(){return (await n()).blob()},o.nothrow=function(){return ge(e,{...t,nothrow:true})},o.throws=function(s){return ge(e,{...t,nothrow:!s})},o}var ve=class{constructor(t={}){c$1(this,"options");this.options=t;}call(t,...r){let n="";for(let o=0;o<t.length;o++)n+=t[o],o<r.length&&r[o]!==void 0&&(n+=gn(r[o]));return ge(n,this.options)}braces(t){let r=t.match(/^(.*?)\{([^}]+)\}(.*)$/);if(!r)return [t];let[,n="",o="",s=""]=r,a=o.split(",").map(l=>l.trim()),i=[];for(let l of a){let p=`${n}${l}${s}`;p.includes("{")?i.push(...this.braces(p)):i.push(p);}return i}escape(t){return process.platform==="win32"?t.replace(/([&|<>^"%])/g,"^$1"):t.replace(/(["\s'$`\\!*?#&;()<>|])/g,"\\$1")}env(t){return de({...this.options,env:t})}cwd(t){return de({...this.options,cwd:t})}nothrow(){return de({...this.options,nothrow:true})}throws(t){return de({...this.options,nothrow:!t})}};function de(e={}){let t=new ve(e);return new Proxy(t,{apply(r,n,o){return t.call(o[0],...o.slice(1))}})}var hn=de();function bn(e){return e.replace(/\\/g,"/")}function yn(e){return createHash("md5").update(e).digest("hex").slice(0,8)}var Q=new Map,L;(_=>{let e=a.create({service:"pkg"});async function t(x){let m=x?[x]:["npm","pnpm","bun"];for(let f of m){let d=await _.which(f);if(d)return {name:f,path:d}}}_.packageManager=t;async function r(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+he.delimiter+d:f,y=yn(w),b=`${x}:${y}`;if(Q.has(b))return Q.get(b);let C=process.platform==="win32"?"where":"which";try{let{spawn:T}=await import('child_process');return new Promise(E=>{let F=T(C,[x],{env:{...process.env,PATH:w},stdio:["pipe","pipe","ignore"],windowsHide:!0}),U="",B="";F.stdout?.on("data",W=>{U+=W.toString();}),F.stderr?.on("data",W=>{B+=W.toString();}),F.on("close",W=>{if(W===0&&U.trim()){let $=U.trim().split(`
22
22
  `),A=$.length>0?$[0]?.trim():null;if(A){Q.set(b,A),E(A);return}}Q.set(b,null),E(null);}),setTimeout(()=>{F.kill(),Q.set(b,null),E(null);},5e3);})}catch{return Q.set(b,null),null}}_.which=r;function n(x,m){if(!x)return process.execPath;let f=m?.PATH||process.env.PATH||process.env.Path||"",d=process.env.EASBOT_BIN_PATH,w=d?f+he.delimiter+d:f,y=yn(w),b=`${x}:${y}`;if(Q.has(b))return Q.get(b);let C=process.platform==="win32"?"where":"which";try{let T=execSync(`${C} ${x}`,{encoding:"utf-8",stdio:["pipe","pipe","ignore"],env:{...process.env,PATH:w},timeout:5e3,windowsHide:!0});if(T.trim()){let E=T.trim().split(`
23
- `),F=E.length>0?E[0]?.trim():null;if(F)return Q.set(b,F),F}}catch{}return Q.set(b,null),null}_.whichSync=n;function o(){Q.clear();}_.clearWhichCache=o;let s=createRequire(import.meta.url);async function a$2(x,m,f){try{let d=[];if(f?.extraPaths)for(let w of f.extraPaths){let y=he.join(w,"node_modules");d.push(y);}return m&&d.push(m),d.length>0?s.resolve(x,{paths:d}):s.resolve(x)}catch(d){throw new Error(`Cannot resolve module "${x}"${m?` from "${m}"`:""}: ${d instanceof Error?d.message:String(d)}`)}}_.resolve=a$2;function i(x){return {get name(){return he.basename(x)},async exists(){try{return await se.access(x),!0}catch{return false}},async getSize(){try{return (await se.stat(x)).size}catch{return}},async text(){return await se.readFile(x,"utf-8")},textSync(){return _e.readFileSync(x,"utf-8")},jsonSync(){let m=_e.readFileSync(x,"utf-8");return JSON.parse(m)},async bytes(){e.debug("[PKG.file.bytes] reading file:",{filePath:x});let m=await se.readFile(x);return e.debug("[PKG.file.bytes] read succeeded, size:",{size:m.length}),new Uint8Array(m.buffer,m.byteOffset,m.byteLength)},async arrayBuffer(){let m=await se.readFile(x);return m.buffer.slice(m.byteOffset,m.byteOffset+m.byteLength)},get type(){let m=he.extname(x).toLowerCase();return {".txt":"text/plain",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".xml":"application/xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".pdf":"application/pdf",".zip":"application/zip",".wav":"audio/wav",".mp3":"audio/mpeg",".mp4":"video/mp4",".webm":"video/webm"}[m]||"application/octet-stream"},async write(m){let f;if(m instanceof Response){let d=await m.arrayBuffer();f=new Uint8Array(d);}else f=m;await se.writeFile(x,f);},async json(){let m=await se.readFile(x,"utf-8");return JSON.parse(m)},async stat(){return await se.stat(x)}}}_.file=i;async function l(x,m,f){let d;if(m instanceof Response){let w=await m.arrayBuffer();d=new Uint8Array(w);}else d=m;await se.writeFile(x,d,f?{mode:f.mode}:void 0);}_.write=l;function p(x,m,f){_e.writeFileSync(x,m,f?{mode:f.mode}:void 0);}_.writeSync=p;function c(x,m="utf-8"){return _e.readFileSync(x,m)}_.readSync=c;function u(x,m){let f,d;if(typeof x=="object"&&"cmd"in x){let T=x;f=T.cmd,d={cwd:T.cwd,env:T.env,stdout:T.stdout,stderr:T.stderr,stdin:T.stdin,signal:T.signal,windowsHide:T.windowsHide,shell:T.shell};}else f=Array.isArray(x)?x:[x],d=m||{};if(!f||f.length===0||!f[0])throw new Error("Spawn command cannot be empty");let w=[d.stdin==="inherit"?"inherit":d.stdin==="null"?"ignore":"pipe",d.stdout==="inherit"?"inherit":d.stdout==="null"?"ignore":"pipe",d.stderr==="inherit"?"inherit":d.stderr==="null"?"ignore":"pipe"],y={cwd:d.cwd,env:d.env?{...process.env,...d.env}:process.env,stdio:w,timeout:d.timeout};d.shell!==void 0&&(y.shell=d.shell),process.platform==="win32"&&(y.windowsHide=d.windowsHide??true);let b=spawn(f[0],f.slice(1),y),k;if(d.signal){k=()=>{b.kill();},d.signal.addEventListener("abort",k,{once:true});let T=()=>{k&&(d.signal?.removeEventListener("abort",k),k=void 0);};b.on("close",T),b.on("error",T);}let C=new Promise((T,E)=>{let F=false,U=()=>{F||(F=true,b.removeAllListeners());};if(b.on("close",B=>{U(),T(B??0);}),b.on("error",B=>{U(),E(B);}),d.timeout!==false){let B=d.timeout||3e5;setTimeout(()=>{if(!F){e.debug(`Process timeout after ${B}ms, killing process`,{cmd:f.join(" ")}),U();try{b.kill("SIGKILL");}catch{}E(new Error(`Process timeout after ${B}ms: ${f.join(" ")}`));}},B);}});return {stdout:b.stdout,stderr:b.stderr,stdin:b.stdin,pid:b.pid,exited:C,exitCode:b.exitCode,kill:T=>b.kill(T)}}_.spawn=u;async function g(x,m){let f=m?.stdin??"null",d=m?.stdout??"pipe",w=m?.stderr??"pipe",y=u(x,{cwd:m?.cwd,env:m?.env,stdin:f,stdout:d,stderr:w,windowsHide:m?.windowsHide,shell:m?.shell}),b=[],k=[];d==="pipe"&&y.stdout?.on("data",T=>{b.push(T);}),w==="pipe"&&y.stderr?.on("data",T=>{k.push(T);});let C=m?.timeout&&m.timeout>0?setTimeout(()=>{try{y.kill("SIGKILL");}catch{}y.stdout?.destroy(),y.stderr?.destroy(),y.stdin?.end();},m.timeout):void 0;try{let T=await y.exited;return clearTimeout(C),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:T,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")}}catch(T){return clearTimeout(C),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:-1,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")||(T instanceof Error?T.message:String(T))}}}_.run=g;async function S(x,m={},f={}){let d=u(x,{cwd:m.cwd,env:m.env,stdout:"pipe",stderr:"pipe",stdin:"null"}),w="",y="";d.stdout?.on("data",k=>{let C=k.toString("utf-8");w+=C,f.onStdout?.(C);}),d.stderr?.on("data",k=>{let C=k.toString("utf-8");y+=C,f.onStderr?.(C);});let b=m.timeout&&m.timeout>0?setTimeout(()=>{try{d.kill("SIGKILL");}catch{}d.stdout?.destroy(),d.stderr?.destroy();},m.timeout):void 0;try{let k=await d.exited;return clearTimeout(b),f.onExit?.(k),{code:k,stdout:w,stderr:y}}catch(k){clearTimeout(b);let C=k instanceof Error?k.message:String(k);return {code:-1,stdout:w,stderr:y||C}}}_.runWithStream=S;async function P(x){if(typeof x.pipeThrough=="function")try{let w=new TextDecoderStream("utf-8"),b=x.pipeThrough(w).getReader(),k="";try{for(;;){let{done:C,value:T}=await b.read();if(C)break;k+=T;}return k}finally{b.releaseLock();}}catch{}let m=x.getReader(),f=new TextDecoder("utf-8"),d=[];try{for(;;){let{done:w,value:y}=await m.read();if(w)break;d.push(f.decode(y,{stream:!0}));}return d.push(f.decode()),d.join("")}finally{m.releaseLock();}}_.readableStreamToText=P;async function D(x){let m=[];return new Promise((f,d)=>{x.on("data",w=>{typeof w=="string"?m.push(Buffer.from(w)):m.push(w);}),x.on("end",()=>{try{let y=Buffer.concat(m).toString("utf-8");f(y);}catch(w){d(w);}}),x.on("error",w=>{d(w);});})}_.nodeReadableStreamToText=D;function H(x,m=0){let C=new TextEncoder().encode(x),T=C.length,E,F=0;if(T>=16){let $=T-16,A=m+2654435761+2246822519|0,ee=m+2246822519|0,J=m+0|0,X=m-2654435761|0;for(;F<=$;)A=U(A,W(C,F)),F+=4,ee=U(ee,W(C,F)),F+=4,J=U(J,W(C,F)),F+=4,X=U(X,W(C,F)),F+=4;E=B(A,1)+B(ee,7)+B(J,12)+B(X,18)|0;}else E=m+374761393|0;for(E=E+T|0;F+4<=T;)E=E+W(C,F)*3266489917|0,E=B(E,17)*668265263|0,F+=4;for(;F<T;)E=E+C[F]*374761393|0,E=B(E,11)*2654435761|0,F++;return E^=E>>>15,E=E*2246822519|0,E^=E>>>13,E=E*3266489917|0,E^=E>>>16,E>>>0;function U($,A){return $=$+A*2246822519|0,$=B($,13),$=$*2654435761|0,$}function B($,A){return $<<A|$>>>32-A|0}function W($,A){return ($[A]|$[A+1]<<8|$[A+2]<<16|$[A+3]<<24)>>>0}}_.xxHash32=H;function q(x){let m=0;for(let f of x){let d=f.codePointAt(0)||f.charCodeAt(0);d<127?m+=1:d>=4352&&d<=4447||d>=9001&&d<=9002||d>=11904&&d<=42191&&d!==12351||d>=44032&&d<=55203||d>=63744&&d<=64255||d>=65040&&d<=65049||d>=65072&&d<=65135||d>=65280&&d<=65376||d>=65504&&d<=65510?m+=2:m+=1;}return m}_.stringWidth=q;class N{constructor(m){c$1(this,"pattern");this.pattern=m;}async*scan(m){let f=b.stream(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for await(let d of f)yield bn(d);}*scanSync(m){let f=a$1(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for(let d of f)yield bn(d);}match(m){return minimatch(m,this.pattern)}}_.Glob=N,_.stdin=process.stdin,_.stdout=process.stdout,_.stderr=process.stderr,_.sleep=x=>new Promise(m=>setTimeout(m,x)),_.color=(x,m)=>({black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",blink:"\x1B[5m",inverse:"\x1B[7m",hidden:"\x1B[8m",strikethrough:"\x1B[9m",reset:"\x1B[0m"})[x.toLowerCase()]||null,_.hash={xxHash32:_.xxHash32},_.build=un.build,_.server=ae,_.nodeWebSocket=createNodeWebSocket,_.restServer=lt,_.rpcServer=at,_.streamingServer=ut,_.webSocketServer=ct;})(L||(L={}));var Mr=L.readableStreamToText;L.nodeReadableStreamToText;L.which;var Er=L.whichSync;L.spawn;L.run;var wn=200,Sn={bash:{login:true,posix:true},dash:{login:true,posix:true},fish:{deny:true,login:true},ksh:{login:true,posix:true},nu:{deny:true},powershell:{ps:true},pwsh:{ps:true},sh:{login:true,posix:true},zsh:{login:true,posix:true}},ne;(m=>{let e=a.create({service:"shell"});async function t(f,d){let w=f.pid;if(!(!w||d?.exited?.())){if(process.platform==="win32"){await new Promise(y=>{let b=spawn("taskkill",["/pid",String(w),"/f","/t"],{stdio:"ignore",windowsHide:true});b.once("exit",()=>y()),b.once("error",()=>y());});return}try{process.kill(-w,"SIGTERM"),await setTimeout$1(wn),d?.exited?.()||process.kill(-w,"SIGKILL");}catch{f.kill("SIGTERM"),await setTimeout$1(wn),d?.exited?.()||f.kill("SIGKILL");}}}m.killTree=t;function r(f){if(process.platform!=="win32"||!f.includes("/")&&!f.includes("\\")&&!f.includes(":"))return f;let d=c.normalize(f);return P(d)==="bash"&&g()||d}function n(f){return Sn[P(f)]}function o(f){return n(f)?.deny!==true}function s(f){return c.isAbsolute(f)}function a$1(f){let d=r(f);if(s(d))return c.stat(d)?.isFile()?d:void 0;let w=L.whichSync(d);return w?c.normalize(w):void 0}function i(){return Array.from(new Set([L.whichSync("pwsh"),L.whichSync("powershell"),g(),process.env.COMSPEC||"cmd.exe"].filter(f=>!!f).map(r)))}async function l(){let f=await c.readText("/etc/shells").catch(()=>"");return f?Array.from(new Set(f.split(`
24
- `).filter(d=>d.trim()&&!d.startsWith("#")))):["/bin/bash","/bin/zsh","/bin/sh"]}function p(f,d){if(f&&(!d?.acceptable||o(f))){let w=a$1(f);if(w)return w}return process.platform==="win32"?i()[0]:S()}m.defaultPreferred=Ae(()=>p(process.env.SHELL)),m.defaultAcceptable=Ae(()=>p(process.env.SHELL,{acceptable:true}));function g(){if(process.platform!=="win32")return;if(process.env.EASBOT_GIT_BASH_PATH)return c.normalize(process.env.EASBOT_GIT_BASH_PATH);let f=L.whichSync("git");if(!f)return;let d=c.normalize(he.join(f,"..","..","bin","bash.exe"));if((c.stat(d)?.size??0)>0)return d}m.gitbash=g;function S(){if(process.platform==="win32"){let d=g();return d||"/bin/sh"}if(process.platform==="darwin")return "/bin/zsh";let f=L.whichSync("bash");return f?c.normalize(f):"/bin/sh"}function P(f){return he.posix.basename(c.toUnixPath(f)).toLowerCase()}m.name=P;function D(f){return n(f)?.login===true}m.login=D;function H(f){return n(f)?.posix===true}m.posix=H;function q(f){return n(f)?.ps===true}m.ps=q;function N(f){let d=r(f),w=P(d);return {path:d,name:w,acceptable:o(w)}}function le(f,d,w){let y=P(f),b=oe(d),k=me(b[0]??d,b.slice(1));return y==="nu"||y==="fish"?["-c",k]:y==="zsh"?["-l","-c",`
23
+ `),F=E.length>0?E[0]?.trim():null;if(F)return Q.set(b,F),F}}catch{}return Q.set(b,null),null}_.whichSync=n;function o(){Q.clear();}_.clearWhichCache=o;let s=createRequire(import.meta.url);async function a$2(x,m,f){try{let d=[];if(f?.extraPaths)for(let w of f.extraPaths){let y=he.join(w,"node_modules");d.push(y);}return m&&d.push(m),d.length>0?s.resolve(x,{paths:d}):s.resolve(x)}catch(d){throw new Error(`Cannot resolve module "${x}"${m?` from "${m}"`:""}: ${d instanceof Error?d.message:String(d)}`)}}_.resolve=a$2;function i(x){return {get name(){return he.basename(x)},async exists(){try{return await se.access(x),!0}catch{return false}},async getSize(){try{return (await se.stat(x)).size}catch{return}},async text(){return await se.readFile(x,"utf-8")},textSync(){return _e.readFileSync(x,"utf-8")},jsonSync(){let m=_e.readFileSync(x,"utf-8");return JSON.parse(m)},async bytes(){e.debug("[PKG.file.bytes] reading file:",{filePath:x});let m=await se.readFile(x);return e.debug("[PKG.file.bytes] read succeeded, size:",{size:m.length}),new Uint8Array(m.buffer,m.byteOffset,m.byteLength)},async arrayBuffer(){let m=await se.readFile(x);return m.buffer.slice(m.byteOffset,m.byteOffset+m.byteLength)},get type(){let m=he.extname(x).toLowerCase();return {".txt":"text/plain",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".json":"application/json",".xml":"application/xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".pdf":"application/pdf",".zip":"application/zip",".wav":"audio/wav",".mp3":"audio/mpeg",".mp4":"video/mp4",".webm":"video/webm"}[m]||"application/octet-stream"},async write(m){let f;if(m instanceof Response){let d=await m.arrayBuffer();f=new Uint8Array(d);}else f=m;await se.writeFile(x,f);},async json(){let m=await se.readFile(x,"utf-8");return JSON.parse(m)},async stat(){return await se.stat(x)}}}_.file=i;async function l(x,m,f){let d;if(m instanceof Response){let w=await m.arrayBuffer();d=new Uint8Array(w);}else d=m;await se.writeFile(x,d,f?{mode:f.mode}:void 0);}_.write=l;function p(x,m,f){_e.writeFileSync(x,m,f?{mode:f.mode}:void 0);}_.writeSync=p;function c(x,m="utf-8"){return _e.readFileSync(x,m)}_.readSync=c;function u(x,m){let f,d;if(typeof x=="object"&&"cmd"in x){let T=x;f=T.cmd,d={cwd:T.cwd,env:T.env,stdout:T.stdout,stderr:T.stderr,stdin:T.stdin,signal:T.signal,windowsHide:T.windowsHide,shell:T.shell};}else f=Array.isArray(x)?x:[x],d=m||{};if(!f||f.length===0||!f[0])throw new Error("Spawn command cannot be empty");let w=[d.stdin==="inherit"?"inherit":d.stdin==="null"?"ignore":"pipe",d.stdout==="inherit"?"inherit":d.stdout==="null"?"ignore":"pipe",d.stderr==="inherit"?"inherit":d.stderr==="null"?"ignore":"pipe"],y={cwd:d.cwd,env:d.env?{...process.env,...d.env}:process.env,stdio:w,timeout:d.timeout};d.shell!==void 0&&(y.shell=d.shell),process.platform==="win32"&&(y.windowsHide=d.windowsHide??true);let b=spawn(f[0],f.slice(1),y),k;if(d.signal){k=()=>{b.kill();},d.signal.addEventListener("abort",k,{once:true});let T=()=>{k&&(d.signal?.removeEventListener("abort",k),k=void 0);};b.on("close",T),b.on("error",T);}let C=new Promise((T,E)=>{let F=false,U=()=>{F||(F=true,b.removeAllListeners());};if(b.on("close",B=>{U(),T(B??0);}),b.on("error",B=>{U(),E(B);}),d.timeout!==false){let B=d.timeout||3e5;setTimeout(()=>{if(!F){e.debug(`Process timeout after ${B}ms, killing process`,{cmd:f.join(" ")}),U();try{b.kill("SIGKILL");}catch{}E(new Error(`Process timeout after ${B}ms: ${f.join(" ")}`));}},B);}});return {stdout:b.stdout,stderr:b.stderr,stdin:b.stdin,pid:b.pid,exited:C,exitCode:b.exitCode,kill:T=>b.kill(T)}}_.spawn=u;async function g(x,m){let f=m?.stdin??"null",d=m?.stdout??"pipe",w=m?.stderr??"pipe",y=u(x,{cwd:m?.cwd,env:m?.env,stdin:f,stdout:d,stderr:w,windowsHide:m?.windowsHide,shell:m?.shell}),b=[],k=[];d==="pipe"&&y.stdout?.on("data",T=>{b.push(T);}),w==="pipe"&&y.stderr?.on("data",T=>{k.push(T);});let C=m?.timeout&&m.timeout>0?setTimeout(()=>{try{y.kill("SIGKILL");}catch{}y.stdout?.destroy(),y.stderr?.destroy(),y.stdin?.end();},m.timeout):void 0;try{let T=await y.exited;return clearTimeout(C),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:T,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")}}catch(T){return clearTimeout(C),d==="pipe"&&y.stdout?.destroy(),w==="pipe"&&y.stderr?.destroy(),f==="pipe"&&y.stdin?.end(),{code:-1,stdout:Buffer.concat(b).toString("utf-8"),stderr:Buffer.concat(k).toString("utf-8")||(T instanceof Error?T.message:String(T))}}}_.run=g;async function S(x,m={},f={}){let d=u(x,{cwd:m.cwd,env:m.env,stdout:"pipe",stderr:"pipe",stdin:"null"}),w="",y="";d.stdout?.on("data",k=>{let C=k.toString("utf-8");w+=C,f.onStdout?.(C);}),d.stderr?.on("data",k=>{let C=k.toString("utf-8");y+=C,f.onStderr?.(C);});let b=m.timeout&&m.timeout>0?setTimeout(()=>{try{d.kill("SIGKILL");}catch{}d.stdout?.destroy(),d.stderr?.destroy();},m.timeout):void 0;try{let k=await d.exited;return clearTimeout(b),f.onExit?.(k),{code:k,stdout:w,stderr:y}}catch(k){clearTimeout(b);let C=k instanceof Error?k.message:String(k);return {code:-1,stdout:w,stderr:y||C}}}_.runWithStream=S;async function R(x){if(typeof x.pipeThrough=="function")try{let w=new TextDecoderStream("utf-8"),b=x.pipeThrough(w).getReader(),k="";try{for(;;){let{done:C,value:T}=await b.read();if(C)break;k+=T;}return k}finally{b.releaseLock();}}catch{}let m=x.getReader(),f=new TextDecoder("utf-8"),d=[];try{for(;;){let{done:w,value:y}=await m.read();if(w)break;d.push(f.decode(y,{stream:!0}));}return d.push(f.decode()),d.join("")}finally{m.releaseLock();}}_.readableStreamToText=R;async function D(x){let m=[];return new Promise((f,d)=>{x.on("data",w=>{typeof w=="string"?m.push(Buffer.from(w)):m.push(w);}),x.on("end",()=>{try{let y=Buffer.concat(m).toString("utf-8");f(y);}catch(w){d(w);}}),x.on("error",w=>{d(w);});})}_.nodeReadableStreamToText=D;function H(x,m=0){let C=new TextEncoder().encode(x),T=C.length,E,F=0;if(T>=16){let $=T-16,A=m+2654435761+2246822519|0,ee=m+2246822519|0,J=m+0|0,X=m-2654435761|0;for(;F<=$;)A=U(A,W(C,F)),F+=4,ee=U(ee,W(C,F)),F+=4,J=U(J,W(C,F)),F+=4,X=U(X,W(C,F)),F+=4;E=B(A,1)+B(ee,7)+B(J,12)+B(X,18)|0;}else E=m+374761393|0;for(E=E+T|0;F+4<=T;)E=E+W(C,F)*3266489917|0,E=B(E,17)*668265263|0,F+=4;for(;F<T;)E=E+C[F]*374761393|0,E=B(E,11)*2654435761|0,F++;return E^=E>>>15,E=E*2246822519|0,E^=E>>>13,E=E*3266489917|0,E^=E>>>16,E>>>0;function U($,A){return $=$+A*2246822519|0,$=B($,13),$=$*2654435761|0,$}function B($,A){return $<<A|$>>>32-A|0}function W($,A){return ($[A]|$[A+1]<<8|$[A+2]<<16|$[A+3]<<24)>>>0}}_.xxHash32=H;function q(x){let m=0;for(let f of x){let d=f.codePointAt(0)||f.charCodeAt(0);d<127?m+=1:d>=4352&&d<=4447||d>=9001&&d<=9002||d>=11904&&d<=42191&&d!==12351||d>=44032&&d<=55203||d>=63744&&d<=64255||d>=65040&&d<=65049||d>=65072&&d<=65135||d>=65280&&d<=65376||d>=65504&&d<=65510?m+=2:m+=1;}return m}_.stringWidth=q;class N{constructor(m){c$1(this,"pattern");this.pattern=m;}async*scan(m){let f=b.stream(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for await(let d of f)yield bn(d);}*scanSync(m){let f=a$1(this.pattern,{cwd:m?.cwd,absolute:m?.absolute,follow:m?.followSymlinks,dot:m?.dot,nodir:m?.onlyFiles});for(let d of f)yield bn(d);}match(m){return minimatch(m,this.pattern)}}_.Glob=N,_.stdin=process.stdin,_.stdout=process.stdout,_.stderr=process.stderr,_.sleep=x=>new Promise(m=>setTimeout(m,x)),_.color=(x,m)=>({black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m",bgBlack:"\x1B[40m",bgRed:"\x1B[41m",bgGreen:"\x1B[42m",bgYellow:"\x1B[43m",bgBlue:"\x1B[44m",bgMagenta:"\x1B[45m",bgCyan:"\x1B[46m",bgWhite:"\x1B[47m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",blink:"\x1B[5m",inverse:"\x1B[7m",hidden:"\x1B[8m",strikethrough:"\x1B[9m",reset:"\x1B[0m"})[x.toLowerCase()]||null,_.hash={xxHash32:_.xxHash32},_.build=un.build,_.server=ae,_.nodeWebSocket=createNodeWebSocket,_.restServer=lt,_.rpcServer=at,_.streamingServer=ut,_.webSocketServer=ct;})(L||(L={}));var Mr=L.readableStreamToText;L.nodeReadableStreamToText;L.which;var Er=L.whichSync;L.spawn;L.run;var wn=200,Sn={bash:{login:true,posix:true},dash:{login:true,posix:true},fish:{deny:true,login:true},ksh:{login:true,posix:true},nu:{deny:true},powershell:{ps:true},pwsh:{ps:true},sh:{login:true,posix:true},zsh:{login:true,posix:true}},ne;(m=>{let e=a.create({service:"shell"});async function t(f,d){let w=f.pid;if(!(!w||d?.exited?.())){if(process.platform==="win32"){await new Promise(y=>{let b=spawn("taskkill",["/pid",String(w),"/f","/t"],{stdio:"ignore",windowsHide:true});b.once("exit",()=>y()),b.once("error",()=>y());});return}try{process.kill(-w,"SIGTERM"),await setTimeout$1(wn),d?.exited?.()||process.kill(-w,"SIGKILL");}catch{f.kill("SIGTERM"),await setTimeout$1(wn),d?.exited?.()||f.kill("SIGKILL");}}}m.killTree=t;function r(f){if(process.platform!=="win32"||!f.includes("/")&&!f.includes("\\")&&!f.includes(":"))return f;let d=c.normalize(f);return R(d)==="bash"&&g()||d}function n(f){return Sn[R(f)]}function o(f){return n(f)?.deny!==true}function s(f){return c.isAbsolute(f)}function a$1(f){let d=r(f);if(s(d))return c.stat(d)?.isFile()?d:void 0;let w=L.whichSync(d);return w?c.normalize(w):void 0}function i(){return Array.from(new Set([L.whichSync("pwsh"),L.whichSync("powershell"),g(),process.env.COMSPEC||"cmd.exe"].filter(f=>!!f).map(r)))}async function l(){let f=await c.readText("/etc/shells").catch(()=>"");return f?Array.from(new Set(f.split(`
24
+ `).filter(d=>d.trim()&&!d.startsWith("#")))):["/bin/bash","/bin/zsh","/bin/sh"]}function p(f,d){if(f&&(!d?.acceptable||o(f))){let w=a$1(f);if(w)return w}return process.platform==="win32"?i()[0]:S()}m.defaultPreferred=Ae(()=>p(process.env.SHELL)),m.defaultAcceptable=Ae(()=>p(process.env.SHELL,{acceptable:true}));function g(){if(process.platform!=="win32")return;if(process.env.EASBOT_GIT_BASH_PATH)return c.normalize(process.env.EASBOT_GIT_BASH_PATH);let f=L.whichSync("git");if(!f)return;let d=c.normalize(he.join(f,"..","..","bin","bash.exe"));if((c.stat(d)?.size??0)>0)return d}m.gitbash=g;function S(){if(process.platform==="win32"){let d=g();return d||"/bin/sh"}if(process.platform==="darwin")return "/bin/zsh";let f=L.whichSync("bash");return f?c.normalize(f):"/bin/sh"}function R(f){return he.posix.basename(c.toUnixPath(f)).toLowerCase()}m.name=R;function D(f){return n(f)?.login===true}m.login=D;function H(f){return n(f)?.posix===true}m.posix=H;function q(f){return n(f)?.ps===true}m.ps=q;function N(f){let d=r(f),w=R(d);return {path:d,name:w,acceptable:o(w)}}function le(f,d,w){let y=R(f),b=oe(d),k=me(b[0]??d,b.slice(1));return y==="nu"||y==="fish"?["-c",k]:y==="zsh"?["-l","-c",`
25
25
  [[ -f ~/.zshenv ]] && source ~/.zshenv >/dev/null 2>&1 || true
26
26
  [[ -f "\${ZDOTDIR:-$HOME}/.zshrc" ]] && source "\${ZDOTDIR:-$HOME}/.zshrc" >/dev/null 2>&1 || true
27
27
  cd -- "$1"
@@ -31,36 +31,36 @@ ${s.stderr}`),{stdout:a.stdout,stderr:a.stderr,exitCode:a.exitCode});return a},o
31
31
  [[ -f ~/.bashrc ]] && source ~/.bashrc >/dev/null 2>&1 || true
32
32
  cd -- "$1"
33
33
  ${k}
34
- `,"easbot",w]:/^cmd(\.exe)?$/i.test(y)?["/c",`chcp 65001 >nul 2>&1 && ${k}`]:q(y)?["-NoProfile","-Command",`[Console]::OutputEncoding = [System.Text.Encoding]::UTF8; ${k}`]:["-c",k]}m.args=le;function ke(f){return f?p(f):(0, m.defaultPreferred)()}m.preferred=ke;function Ze(f){return f?p(f,{acceptable:true}):(0, m.defaultAcceptable)()}m.acceptable=Ze;function Nt(){m.defaultPreferred.reset(),m.defaultAcceptable.reset();}m.reset=Nt;async function zt(){return (process.platform==="win32"?i():await l()).filter(d=>a$1(d)).map(N)}m.list=zt;function I(f){return Sn[P(f)]}m.metaInfo=I;function O(f){return /[|&;<>()$`!#]/.test(f)}m.needsShell=O;function j(){return process.platform==="win32"?i():["/bin/bash","/bin/zsh","/bin/sh"]}m.platformShells=j;function Z(f){return f?!!a$1(f):false}m.isValid=Z;async function Y(f){let d=a$1(f);if(!d)return;let w=P(d);if(!/^cmd(\.exe)?$/i.test(w))try{let y;q(w)?y=["-NoProfile","-Command","$PSVersionTable.PSVersion.ToString()"]:y=["--version"],e.debug(`\u83B7\u53D6 Shell \u7248\u672C: ${d}`,{shell:d,args:y});let b=await L.run([d,...y]);if(b.code===0){let k=b.stdout.trim().split(`
35
- `)[0];return e.debug(`Shell \u7248\u672C\u83B7\u53D6\u6210\u529F: ${k}`),k}e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${b.code}`,{stderr:b.stderr});}catch(y){e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5F02\u5E38: ${y}`);}}m.version=Y;class ce extends Error{constructor(w,y,b,k){super(w);c$1(this,"message",w);c$1(this,"pkg",y);c$1(this,"version",b);c$1(this,"originalError",k);this.name="InstallFailedError";}}m.InstallFailedError=ce;async function ie(f,d="latest",w){let{Lock:y}=await import('./chunks/lock-EGXJVIO5.mjs'),{Filesystem:b}=await import('./chunks/filesystem-BAT2ZG5X.mjs'),{PackageRegistry:k}=await import('./chunks/registry-O74JPNLS.mjs');w=w??process.env.EASBOT_CACHE_PATH??he.join(".easbot","cache");let C=await y.write("pkg-install");try{let T=he.posix.join(w,"node_modules",f),E=he.posix.join(w,"package.json"),U=(await b.readJson(E).catch(async()=>{let K={dependencies:{}};return await b.writeJson(E,K),K})).dependencies??{},B=await b.exists(T),W=U[f],$=!1;if(!B||!W)$=!0;else {if(d!=="latest"&&W===d)return T;if(d==="latest"){if(!await k.isOutdated(f,W,w))return T;e.info("Cached version is outdated, proceeding with install",{pkg:f,cachedVersion:W}),$=!0;}}if(!$)return T;let A=m.acceptable(process.platform==="win32"?"cmd":void 0)??S(),ee=`${f}@${d}`;e.info("installing package",{pkg:f,version:d,cache:w,shell:A});let J=await L.packageManager();if(!J)throw new ce("No package manager found (npm, pnpm, bun)",f,d,"No package manager available");let X=J.name,Xe=X==="pnpm"?"add":"install",Qe=`${J.name} ${Xe} --save-exact ${ee}`;e.info(`Using ${X} to install package`,{pkg:f,version:d,shell:A,pmPath:J.path});try{let K=await m.run(A,Qe,{cwd:w,timeout:6e5,windowsHide:!0});if(K.code!==0)throw new Error(`Package manager exited with code ${K.code}: ${K.stderr}`);e.info(`Successfully installed ${f}@${d} with ${X}`);}catch(K){let Ht=K instanceof Error?K:new Error(String(K));if(!await b.exists(T))throw new ce(`Failed to install ${f}@${d}`,f,d,Ht.message);e.warn("Package install failed but module exists, continuing",{error:Ht.message});}let et=d;d==="latest"&&(et=(await b.readJson(he.join(T,"package.json")).catch(()=>({})))?.version??"unknown");let $e=await b.readJson(E);return $e.dependencies=$e.dependencies??{},$e.dependencies[f]=et,await b.writeJson(E,$e),e.info("Package installation completed",{pkg:f,version:et,path:T}),T}finally{C[Symbol.dispose]();}}m.install=ie;async function G(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`run shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{windowsHide:C,env:T,...E}=w??{},F={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...T};process.platform==="win32"&&(F.CHCP="65001");let{stdin:U,stdout:B,stderr:W,timeout:$,signal:A,...ee}=E??{},J={...ee,cwd:b,env:F,windowsHide:process.platform==="win32"?C??true:void 0,shell:ee.shell,timeout:$},X=P(y),Xe=/^cmd(\.exe)?$/i.test(X),Qe=process.platform==="win32"&&Xe?"cmd":y;return L.run([Qe,...k],J)}m.run=G;function _(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`Spawn shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{stdin:C,stdout:T,stderr:E,timeout:F,signal:U,windowsHide:B,env:W,...$}=w??{},A={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...W};process.platform==="win32"&&(A.CHCP="65001");let ee=P(y),J=/^cmd(\.exe)?$/i.test(ee),X={...$,cwd:b,env:A,windowsHide:process.platform==="win32"?B??true:void 0,shell:$.shell,timeout:F};return L.spawn([J?"cmd":y,...k],X)}m.spawn=_;function x(f,...d){let w=f.reduce((b,k,C)=>b+k+(d[C]??""),""),y=(b={})=>({quiet:()=>y({...b,quiet:true}),nothrow:()=>y({...b,nothrow:true}),cwd:k=>y({...b,cwd:k}),env:k=>y({...b,env:k}),stdin:k=>y({...b,stdin:k}),stdout:k=>y({...b,stdout:k}),stderr:k=>y({...b,stderr:k}),text:async()=>{let k=oe(w.trim());if(k.length===0)throw new Error("Empty command");let C=k[0]??"",T=P(C),E=/^cmd(\.exe)?$/i.test(T),F=process.platform==="win32"&&E?"cmd":I(C)?C:void 0,U=me(C,k.slice(1)),B=await m.run(F,U,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell});if(B.code!==0&&!b.nothrow)throw new Error(`Command failed with exit code ${B.code}: ${w}
34
+ `,"easbot",w]:/^cmd(\.exe)?$/i.test(y)?["/c",`chcp 65001 >nul 2>&1 && ${k}`]:q(y)?["-NoProfile","-Command",`[Console]::OutputEncoding = [System.Text.Encoding]::UTF8; ${k}`]:["-c",k]}m.args=le;function ke(f){return f?p(f):(0, m.defaultPreferred)()}m.preferred=ke;function Ze(f){return f?p(f,{acceptable:true}):(0, m.defaultAcceptable)()}m.acceptable=Ze;function Nt(){m.defaultPreferred.reset(),m.defaultAcceptable.reset();}m.reset=Nt;async function zt(){return (process.platform==="win32"?i():await l()).filter(d=>a$1(d)).map(N)}m.list=zt;function O(f){return Sn[R(f)]}m.metaInfo=O;function I(f){return /[|&;<>()$`!#]/.test(f)}m.needsShell=I;function j(){return process.platform==="win32"?i():["/bin/bash","/bin/zsh","/bin/sh"]}m.platformShells=j;function Z(f){return f?!!a$1(f):false}m.isValid=Z;async function G(f){let d=a$1(f);if(!d)return;let w=R(d);if(!/^cmd(\.exe)?$/i.test(w))try{let y;q(w)?y=["-NoProfile","-Command","$PSVersionTable.PSVersion.ToString()"]:y=["--version"],e.debug(`\u83B7\u53D6 Shell \u7248\u672C: ${d}`,{shell:d,args:y});let b=await L.run([d,...y]);if(b.code===0){let k=b.stdout.trim().split(`
35
+ `)[0];return e.debug(`Shell \u7248\u672C\u83B7\u53D6\u6210\u529F: ${k}`),k}e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5931\u8D25\uFF0C\u9000\u51FA\u7801: ${b.code}`,{stderr:b.stderr});}catch(y){e.debug(`Shell \u7248\u672C\u83B7\u53D6\u5F02\u5E38: ${y}`);}}m.version=G;class ce extends Error{constructor(w,y,b,k){super(w);c$1(this,"message",w);c$1(this,"pkg",y);c$1(this,"version",b);c$1(this,"originalError",k);this.name="InstallFailedError";}}m.InstallFailedError=ce;async function ie(f,d="latest",w){let{Lock:y}=await import('./chunks/lock-EGXJVIO5.mjs'),{Filesystem:b}=await import('./chunks/filesystem-BAT2ZG5X.mjs'),{PackageRegistry:k}=await import('./chunks/registry-O74JPNLS.mjs');w=w??process.env.EASBOT_CACHE_PATH??he.join(".easbot","cache");let C=await y.write("pkg-install");try{let T=he.posix.join(w,"node_modules",f),E=he.posix.join(w,"package.json"),U=(await b.readJson(E).catch(async()=>{let K={dependencies:{}};return await b.writeJson(E,K),K})).dependencies??{},B=await b.exists(T),W=U[f],$=!1;if(!B||!W)$=!0;else {if(d!=="latest"&&W===d)return T;if(d==="latest"){if(!await k.isOutdated(f,W,w))return T;e.info("Cached version is outdated, proceeding with install",{pkg:f,cachedVersion:W}),$=!0;}}if(!$)return T;let A=m.acceptable(process.platform==="win32"?"cmd":void 0)??S(),ee=`${f}@${d}`;e.info("installing package",{pkg:f,version:d,cache:w,shell:A});let J=await L.packageManager();if(!J)throw new ce("No package manager found (npm, pnpm, bun)",f,d,"No package manager available");let X=J.name,Xe=X==="pnpm"?"add":"install",Qe=`${J.name} ${Xe} --save-exact ${ee}`;e.info(`Using ${X} to install package`,{pkg:f,version:d,shell:A,pmPath:J.path});try{let K=await m.run(A,Qe,{cwd:w,timeout:6e5,windowsHide:!0});if(K.code!==0)throw new Error(`Package manager exited with code ${K.code}: ${K.stderr}`);e.info(`Successfully installed ${f}@${d} with ${X}`);}catch(K){let Ht=K instanceof Error?K:new Error(String(K));if(!await b.exists(T))throw new ce(`Failed to install ${f}@${d}`,f,d,Ht.message);e.warn("Package install failed but module exists, continuing",{error:Ht.message});}let et=d;d==="latest"&&(et=(await b.readJson(he.join(T,"package.json")).catch(()=>({})))?.version??"unknown");let $e=await b.readJson(E);return $e.dependencies=$e.dependencies??{},$e.dependencies[f]=et,await b.writeJson(E,$e),e.info("Package installation completed",{pkg:f,version:et,path:T}),T}finally{C[Symbol.dispose]();}}m.install=ie;async function V(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`run shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{windowsHide:C,env:T,...E}=w??{},F={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...T};process.platform==="win32"&&(F.CHCP="65001");let{stdin:U,stdout:B,stderr:W,timeout:$,signal:A,...ee}=E??{},J={...ee,cwd:b,env:F,windowsHide:process.platform==="win32"?C??true:void 0,shell:ee.shell,timeout:$},X=R(y),Xe=/^cmd(\.exe)?$/i.test(X),Qe=process.platform==="win32"&&Xe?"cmd":y;return L.run([Qe,...k],J)}m.run=V;function _(f,d,w){let y=f?m.acceptable(f)??S():m.acceptable()??S(),b=w?.cwd??process.cwd(),k=m.args(y,d,b);e.debug(`Spawn shell process: ${y} ${k.join(" ")}`,{command:d,cwd:b});let{stdin:C,stdout:T,stderr:E,timeout:F,signal:U,windowsHide:B,env:W,...$}=w??{},A={...process.env,LANG:"en_US.UTF-8",LC_ALL:"en_US.UTF-8",LC_CTYPE:"en_US.UTF-8",...W};process.platform==="win32"&&(A.CHCP="65001");let ee=R(y),J=/^cmd(\.exe)?$/i.test(ee),X={...$,cwd:b,env:A,windowsHide:process.platform==="win32"?B??true:void 0,shell:$.shell,timeout:F};return L.spawn([J?"cmd":y,...k],X)}m.spawn=_;function x(f,...d){let w=f.reduce((b,k,C)=>b+k+(d[C]??""),""),y=(b={})=>({quiet:()=>y({...b,quiet:true}),nothrow:()=>y({...b,nothrow:true}),cwd:k=>y({...b,cwd:k}),env:k=>y({...b,env:k}),stdin:k=>y({...b,stdin:k}),stdout:k=>y({...b,stdout:k}),stderr:k=>y({...b,stderr:k}),text:async()=>{let k=oe(w.trim());if(k.length===0)throw new Error("Empty command");let C=k[0]??"",T=R(C),E=/^cmd(\.exe)?$/i.test(T),F=process.platform==="win32"&&E?"cmd":O(C)?C:void 0,U=me(C,k.slice(1)),B=await m.run(F,U,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell});if(B.code!==0&&!b.nothrow)throw new Error(`Command failed with exit code ${B.code}: ${w}
36
36
  ${B.stderr}`);return B.stdout},lines:async()=>(await y(b).text()).split(`
37
- `).filter(C=>C.trim()),then:(k,C)=>{let T=oe(w.trim()),E=T[0]??"",F=P(E),U=/^cmd(\.exe)?$/i.test(F),B=process.platform==="win32"&&U?"cmd":I(E)?E:void 0,W=me(E,T.slice(1));return m.run(B,W,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell}).then($=>{if($.code!==0&&!b.nothrow){let A=new Error(`Command failed with exit code ${$.code}: ${w}
37
+ `).filter(C=>C.trim()),then:(k,C)=>{let T=oe(w.trim()),E=T[0]??"",F=R(E),U=/^cmd(\.exe)?$/i.test(F),B=process.platform==="win32"&&U?"cmd":O(E)?E:void 0,W=me(E,T.slice(1));return m.run(B,W,{cwd:b.cwd,env:b.env,stdin:b.stdin,stdout:b.stdout,stderr:b.stderr,timeout:b.timeout,windowsHide:process.platform==="win32"?b.windowsHide??true:void 0,shell:b.shell}).then($=>{if($.code!==0&&!b.nothrow){let A=new Error(`Command failed with exit code ${$.code}: ${w}
38
38
  ${$.stderr}`);if(C){C(A);return}throw A}return k({exitCode:$.code,stdout:new TextEncoder().encode($.stdout),stderr:new TextEncoder().encode($.stderr),text:()=>$.stdout,lines:()=>$.stdout.split(`
39
- `).filter(A=>A.trim())})},C)}});return y()}m.$=x;})(ne||(ne={}));var Ir=ne.$;k();var Pe=class Pe extends Error{static create(t,r){var s;let n=je.object({name:je.literal(t),data:r}).meta({ref:t}),o=(s=class extends Pe{constructor(i,l){super(t,l);c$1(this,"data",i);c$1(this,"name",t);this.name=t;}static isInstance(i){return typeof i=="object"&&"name"in i&&i.name===t}schema(){return n}toObject(){return {name:t,data:this.data}}},c$1(s,"Schema",n),s);return Object.defineProperty(o,"name",{value:t}),o}};c$1(Pe,"Unknown",Pe.create("UnknownError",je.object({message:je.string()})));var mt=Pe;k();var gt;(t=>{function e(r){return new ht(r)}t.create=e;})(gt||(gt={}));var ht=class{constructor(t){c$1(this,"rules",[]);c$1(this,"ignorecase");c$1(this,"debug");this.ignorecase=t?.ignorecase??false,this.debug=t?.debug??false;}add(t){let r=typeof t=="string"?t.split(`
40
- `):t;for(let n=0;n<r.length;n++){let o=r[n];this.parseRule(o,n+1);}return this}parseRule(t,r){let n=t;if(n.length===0||n.startsWith("#"))return;let s=n.startsWith("!");if(s&&(n=n.slice(1)),n=n.trimEnd(),n.length===0)return;if(n.startsWith("\\#")){n=n.slice(1);return}if(n.startsWith("#"))return;let i=n.endsWith("/");if(i&&(n=n.slice(0,-1)),n.length===0)return;let l=this.patternToRegex(n);l&&this.rules.push({pattern:n,regex:l,negative:s,isDirectory:i,original:t,lineNumber:r});}ignores(t,r){let n=this.normalizePath(t),o=r??t.endsWith("/"),s=this.checkIgnore(n,o);return this.debug&&console.log(`Ignore.ignores("${t}", isDirectory=${o}) => ${s}`),s}checkIgnore(t,r){let n=false;for(let o of this.rules)o.isDirectory&&!r||o.regex.test(t)&&(o.negative?n=false:n=true);return n}filter(t){return t.filter(r=>!this.ignores(r))}createFilter(){return t=>!this.ignores(t)}patternToRegex(t){let r=[],n=0,o=t.length;for(;n<o;){let p=t[n];if(p==="\\")if(n+1<o){let c=t[n+1];r.push(this.escapeRegexChar(c)),n+=2;continue}else {r.push("\\\\"),n++;continue}if(p==="*")if(n+1<o&&t[n+1]==="*")if(n+2<o&&t[n+2]==="/")if(n===0||t[n-1]==="/")if(n+3>=o){r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else if(n===0||t[n-1]==="/")if(n+2>=o){r.push(".*"),n+=2;continue}else {r.push("(?:/.*)*"),n+=2;continue}else {r.push(".*"),n+=2;continue}else {r.push("[^/]*"),n++;continue}if(p==="?"){r.push("[^/]"),n++;continue}if(p==="["){let c=this.findMatchingBracket(t,n);if(c!==-1){let u=t.slice(n,c+1);(u.startsWith("[!")||u.startsWith("[^"))&&(u="[^"+u.slice(2)),this.ignorecase&&(u=u.toLowerCase()),r.push(u),n=c+1;continue}}if(p==="/"){r.push("/"),n++;continue}if(".+$^{}|()".includes(p)){r.push("\\"+p),n++;continue}if(this.ignorecase&&p>="A"&&p<="Z"){r.push("["+p.toLowerCase()+p+"]"),n++;continue}r.push(p),n++;}let s=r.join(""),a=s.startsWith("/"),i=s.endsWith("/")&&!s.endsWith("\\/");a||(s="(?:.*/)?"+s),i&&(s=s.slice(0,-1)),!i&&!s.endsWith("(?:/.*)*")&&(s="(?:"+s+")(?:/.*)?");let l=this.ignorecase?"i":"";try{return new RegExp("^"+s+"$",l)}catch(p){return this.debug&&console.error(`Failed to create regex for pattern "${t}":`,p),null}}escapeRegexChar(t){return "\\[]{}().+^$|".includes(t)?"\\"+t:t}findMatchingBracket(t,r){let n=r+1,o=t.length;for((n>=o||t[n]==="!"||t[n]==="^")&&n++;n<o;){let s=t[n];if(s==="\\"&&n+1<o){n+=2;continue}if(s==="]")return n;if(n+2<o&&t[n+1]==="-"&&t[n+2]!=="]"){n+=3;continue}n++;}return -1}normalizePath(t){let r=t.replace(/\\/g,"/");if(r==="/")return "";for(;r.startsWith("./");)r=r.slice(2);return r}};k();function kn(e,t){let r=n=>{let o;try{o=e.parse(n);}catch(s){throw console.trace("schema validation failure stack trace:"),s instanceof z.ZodError&&console.error("schema validation issues:",JSON.stringify(s.issues,null,2)),s}return t(o)};return r.force=n=>t(n),r.schema=e,r}var Fr=kn,bt;(t=>t.fn=kn)(bt||(bt={}));k();function Lr(){let r=he.join(process.cwd(),".env");existsSync(r)&&config({path:r,override:true,debug:false,encoding:"utf-8",quiet:true});}k();async function _r(e,t){if(process.env.EASBOT_CLIENT==="acp")try{let s=process.platform==="win32"?"cmd":void 0,a=ne.spawn(s,`git ${e.join(" ")}`,{stdin:void 0,stdout:"pipe",stderr:"pipe",cwd:t.cwd,env:t.env?{...process.env,...t.env}:process.env}),[i,l,p]=await Promise.all([a.exited,new Response(a.stdout).arrayBuffer(),new Response(a.stderr).arrayBuffer()]),c=Buffer.from(l),u=Buffer.from(p);return {exitCode:i,text:()=>c.toString(),stdout:c,stderr:u}}catch(s){let a=Buffer.from(s instanceof Error?s.message:String(s));return {exitCode:1,text:()=>"",stdout:Buffer.alloc(0),stderr:a}}let r=t.env?{...process.env,...t.env}:void 0,n=ne.$`git ${e.join(" ")}`.quiet().nothrow().cwd(t.cwd);r&&(n=n.env(r));let o=await n;return {exitCode:o.exitCode,text:()=>o.text(),stdout:o.stdout,stderr:o.stderr}}k();function vn(e){return e?dirname(fileURLToPath(e)):typeof i<"u"?i:process.cwd()}function Tn(e,t,r=3){function n(o,s){if(s>r||!existsSync(o))return null;try{let a=readdirSync(o);for(let i of a){let l=join(o,i);try{let p=statSync(l);if(p.isFile()&&l.endsWith(t))return l;if(p.isDirectory()&&s<r){let c=n(l,s+1);if(c)return c}}catch{}}}catch{}return null}return n(e,0)}function Rn(e,t){let r=join(e,t);if(existsSync(r))return r;let n=t.split("/").pop()||t,o=e;for(let s=0;s<5;s++){let a=join(o,"assets","txt");if(existsSync(a)){let p=Tn(a,n,5);if(p)return p}let i=join(o,"dist","assets","txt");if(existsSync(i)){let p=Tn(i,n,5);if(p)return p}let l=join(o,"..");if(l===o)break;o=l;}return r}function Hr(e,t){return pe.lazy(()=>{try{let r=vn(t),n=Rn(r,e);return L.file(n).textSync()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}function Wr(e,t){return pe.lazy(async()=>{try{let r=vn(t),n=Rn(r,e);return await L.file(n).text()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}k();function Ur(e){return e()}k();function qr(e){if(!e||typeof e!="string")return {provider:"",model:""};let t=e.indexOf("/");return t===-1?{provider:"",model:e}:{provider:e.substring(0,t),model:e.substring(t+1)}}k();k();k();function yt(e,t,r,n=()=>true){let o=-1,s=-1,a=0;for(let i=t;i<r;i++){if(!n(i))continue;let l=e[i];if(l){if(l==="("){a+=1;continue}if(l===")"&&a>0){a-=1;continue}a===0&&(l===`
41
- `?o=i:/\s/.test(l)&&(s=i));}}return {lastNewline:o,lastWhitespace:s}}function Vr(e,t){if(!e)return [];if(t<=0)return [e];if(e.length<=t)return [e]}function be(e,t,r){try{let n=z.string().parse(e),o=z.number().int().parse(t),s=Vr(n,o);if(s)return s;let a=xt(n,o,i=>{let{lastNewline:l,lastWhitespace:p}=yt(i,0,i.length);return l>0?l:p});return r?.minLength&&r.minLength>0&&(a=Mn(a,r.minLength)),a}catch(n){return console.warn("Invalid input for chunkText:",n),typeof e=="string"&&e.length>0?[e]:[]}}function Mn(e,t){if(e.length<=1||t<=0)return e;let r=[],n=e[0]??"";for(let o=1;o<e.length;o++){let s=e[o]??"";n.length<t?n=n+`
39
+ `).filter(A=>A.trim())})},C)}});return y()}m.$=x;})(ne||(ne={}));var Or=ne.$;k();var Re=class Re extends Error{static create(t,r){var s;let n=je.object({name:je.literal(t),data:r}).meta({ref:t}),o=(s=class extends Re{constructor(i,l){super(t,l);c$1(this,"data",i);c$1(this,"name",t);this.name=t;}static isInstance(i){return typeof i=="object"&&"name"in i&&i.name===t}schema(){return n}toObject(){return {name:t,data:this.data}}},c$1(s,"Schema",n),s);return Object.defineProperty(o,"name",{value:t}),o}};c$1(Re,"Unknown",Re.create("UnknownError",je.object({message:je.string()})));var mt=Re;k();var gt;(t=>{function e(r){return new ht(r)}t.create=e;})(gt||(gt={}));var ht=class{constructor(t){c$1(this,"rules",[]);c$1(this,"ignorecase");c$1(this,"debug");this.ignorecase=t?.ignorecase??false,this.debug=t?.debug??false;}add(t){let r=typeof t=="string"?t.split(`
40
+ `):t;for(let n=0;n<r.length;n++){let o=r[n];this.parseRule(o,n+1);}return this}parseRule(t,r){let n=t;if(n.length===0||n.startsWith("#"))return;let s=n.startsWith("!");if(s&&(n=n.slice(1)),n=n.trimEnd(),n.length===0)return;if(n.startsWith("\\#")){n=n.slice(1);return}if(n.startsWith("#"))return;let i=n.endsWith("/");if(i&&(n=n.slice(0,-1)),n.length===0)return;let l=this.patternToRegex(n);l&&this.rules.push({pattern:n,regex:l,negative:s,isDirectory:i,original:t,lineNumber:r});}ignores(t,r){let n=this.normalizePath(t),o=r??t.endsWith("/"),s=this.checkIgnore(n,o);return this.debug&&console.log(`Ignore.ignores("${t}", isDirectory=${o}) => ${s}`),s}checkIgnore(t,r){let n=false;for(let o of this.rules)o.isDirectory&&!r||o.regex.test(t)&&(o.negative?n=false:n=true);return n}filter(t){return t.filter(r=>!this.ignores(r))}createFilter(){return t=>!this.ignores(t)}patternToRegex(t){let r=[],n=0,o=t.length;for(;n<o;){let p=t[n];if(p==="\\")if(n+1<o){let c=t[n+1];r.push(this.escapeRegexChar(c)),n+=2;continue}else {r.push("\\\\"),n++;continue}if(p==="*")if(n+1<o&&t[n+1]==="*")if(n+2<o&&t[n+2]==="/")if(n===0||t[n-1]==="/")if(n+3>=o){r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else {r.push(".*"),n+=3;continue}else if(n===0||t[n-1]==="/")if(n+2>=o){r.push(".*"),n+=2;continue}else {r.push("(?:/.*)*"),n+=2;continue}else {r.push(".*"),n+=2;continue}else {r.push("[^/]*"),n++;continue}if(p==="?"){r.push("[^/]"),n++;continue}if(p==="["){let c=this.findMatchingBracket(t,n);if(c!==-1){let u=t.slice(n,c+1);(u.startsWith("[!")||u.startsWith("[^"))&&(u="[^"+u.slice(2)),this.ignorecase&&(u=u.toLowerCase()),r.push(u),n=c+1;continue}}if(p==="/"){r.push("/"),n++;continue}if(".+$^{}|()".includes(p)){r.push("\\"+p),n++;continue}if(this.ignorecase&&p>="A"&&p<="Z"){r.push("["+p.toLowerCase()+p+"]"),n++;continue}r.push(p),n++;}let s=r.join(""),a=s.startsWith("/"),i=s.endsWith("/")&&!s.endsWith("\\/");a||(s="(?:.*/)?"+s),i&&(s=s.slice(0,-1)),!i&&!s.endsWith("(?:/.*)*")&&(s="(?:"+s+")(?:/.*)?");let l=this.ignorecase?"i":"";try{return new RegExp("^"+s+"$",l)}catch(p){return this.debug&&console.error(`Failed to create regex for pattern "${t}":`,p),null}}escapeRegexChar(t){return "\\[]{}().+^$|".includes(t)?"\\"+t:t}findMatchingBracket(t,r){let n=r+1,o=t.length;for((n>=o||t[n]==="!"||t[n]==="^")&&n++;n<o;){let s=t[n];if(s==="\\"&&n+1<o){n+=2;continue}if(s==="]")return n;if(n+2<o&&t[n+1]==="-"&&t[n+2]!=="]"){n+=3;continue}n++;}return -1}normalizePath(t){let r=t.replace(/\\/g,"/");if(r==="/")return "";for(;r.startsWith("./");)r=r.slice(2);return r}};k();function kn(e,t){let r=n=>{let o;try{o=e.parse(n);}catch(s){throw console.trace("schema validation failure stack trace:"),s instanceof z.ZodError&&console.error("schema validation issues:",JSON.stringify(s.issues,null,2)),s}return t(o)};return r.force=n=>t(n),r.schema=e,r}var Fr=kn,bt;(t=>t.fn=kn)(bt||(bt={}));k();function Lr(){let r=he.join(process.cwd(),".env");existsSync(r)&&config({path:r,override:true,debug:false,encoding:"utf-8",quiet:true});}k();async function _r(e,t){if(process.env.EASBOT_CLIENT==="acp")try{let s=process.platform==="win32"?"cmd":void 0,a=ne.spawn(s,`git ${e.join(" ")}`,{stdin:void 0,stdout:"pipe",stderr:"pipe",cwd:t.cwd,env:t.env?{...process.env,...t.env}:process.env}),[i,l,p]=await Promise.all([a.exited,new Response(a.stdout).arrayBuffer(),new Response(a.stderr).arrayBuffer()]),c=Buffer.from(l),u=Buffer.from(p);return {exitCode:i,text:()=>c.toString(),stdout:c,stderr:u}}catch(s){let a=Buffer.from(s instanceof Error?s.message:String(s));return {exitCode:1,text:()=>"",stdout:Buffer.alloc(0),stderr:a}}let r=t.env?{...process.env,...t.env}:void 0,n=ne.$`git ${e.join(" ")}`.quiet().nothrow().cwd(t.cwd);r&&(n=n.env(r));let o=await n;return {exitCode:o.exitCode,text:()=>o.text(),stdout:o.stdout,stderr:o.stderr}}k();function vn(e){return e?dirname(fileURLToPath(e)):typeof i<"u"?i:process.cwd()}function Tn(e,t,r=3){function n(o,s){if(s>r||!existsSync(o))return null;try{let a=readdirSync(o);for(let i of a){let l=join(o,i);try{let p=statSync(l);if(p.isFile()&&l.endsWith(t))return l;if(p.isDirectory()&&s<r){let c=n(l,s+1);if(c)return c}}catch{}}}catch{}return null}return n(e,0)}function Pn(e,t){let r=join(e,t);if(existsSync(r))return r;let n=t.split("/").pop()||t,o=e;for(let s=0;s<5;s++){let a=join(o,"assets","txt");if(existsSync(a)){let p=Tn(a,n,5);if(p)return p}let i=join(o,"dist","assets","txt");if(existsSync(i)){let p=Tn(i,n,5);if(p)return p}let l=join(o,"..");if(l===o)break;o=l;}return r}function Hr(e,t){return pe.lazy(()=>{try{let r=vn(t),n=Pn(r,e);return L.file(n).textSync()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}function Wr(e,t){return pe.lazy(async()=>{try{let r=vn(t),n=Pn(r,e);return await L.file(n).text()}catch(r){throw console.error(`Failed to load text file: ${e}`,r),r}})}k();function Ur(e){return e()}k();function qr(e){if(!e||typeof e!="string")return {provider:"",model:""};let t=e.indexOf("/");return t===-1?{provider:"",model:e}:{provider:e.substring(0,t),model:e.substring(t+1)}}k();k();k();function yt(e,t,r,n=()=>true){let o=-1,s=-1,a=0;for(let i=t;i<r;i++){if(!n(i))continue;let l=e[i];if(l){if(l==="("){a+=1;continue}if(l===")"&&a>0){a-=1;continue}a===0&&(l===`
41
+ `?o=i:/\s/.test(l)&&(s=i));}}return {lastNewline:o,lastWhitespace:s}}function Yr(e,t){if(!e)return [];if(t<=0)return [e];if(e.length<=t)return [e]}function be(e,t,r){try{let n=z.string().parse(e),o=z.number().int().parse(t),s=Yr(n,o);if(s)return s;let a=xt(n,o,i=>{let{lastNewline:l,lastWhitespace:p}=yt(i,0,i.length);return l>0?l:p});return r?.minLength&&r.minLength>0&&(a=Mn(a,r.minLength)),a}catch(n){return console.warn("Invalid input for chunkText:",n),typeof e=="string"&&e.length>0?[e]:[]}}function Mn(e,t){if(e.length<=1||t<=0)return e;let r=[],n=e[0]??"";for(let o=1;o<e.length;o++){let s=e[o]??"";n.length<t?n=n+`
42
42
 
43
43
  `+s:(r.push(n),n=s);}if(n.length>0)if(n.length<t&&r.length>0){let o=r.pop();r.push(o+`
44
44
 
45
- `+n);}else r.push(n);return r}function xt(e,t,r){if(!e)return [];if(t<=0||e.length<=t)return [e];let n=[],o=e;for(;o.length>t;){let s=o.slice(0,t),a=r(s),i=Number.isFinite(a)&&a>0&&a<=t?a:t,p=o.slice(0,i).trimEnd();p.length>0&&n.push(p);let c=i<o.length&&o[i]!==void 0&&/\s/.test(o[i]),u=Math.min(o.length,i+(c?1:0));o=o.slice(u).trimStart();}return o.length>0&&n.push(o),n}k();var wt=z.enum(["bold","italic","strikethrough","code","code_block","spoiler","blockquote"]),En=z.object({start:z.number().int().min(0),end:z.number().int().min(0),style:wt}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Cn=z.object({start:z.number().int().min(0),end:z.number().int().min(0),href:z.string().min(1)}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Ee=z.object({text:z.string(),styles:z.array(En),links:z.array(Cn)}).strict(),Ce=z.enum(["off","bullets","code"]),Ne=z.object({linkify:z.boolean().default(true),enableSpoilers:z.boolean().default(false),headingStyle:z.enum(["none","bold"]).default("none"),blockquotePrefix:z.string().default(""),autolink:z.boolean().default(true),tableMode:Ce.default("off")}).partial().default({}),In=z.object({open:z.string(),close:z.string()}).strict(),St=z.object({styleMarkers:z.record(wt,In).optional(),escapeText:z.any().optional(),buildLink:z.any().optional()}).strict();z.object({start:z.number().int().min(0),end:z.number().int().min(0),open:z.string(),close:z.string()}).strict();var kt=z.object({indentSize:z.number().int().min(1).default(2),listMarker:z.enum(["\u2022","-","*"]).default("\u2022"),codeBlockMarker:z.enum(["```","~~~"]).default("```"),preserveFrontmatter:z.boolean().default(true)}).strict(),Tt=z.record(z.string(),z.string()),ze=z.object({open:z.boolean(),ticks:z.number().int().min(0)}).strict();z.object({inlineState:ze,isInside:z.any()}).strict();z.object({start:z.number().int().min(0),end:z.number().int().min(0),openLine:z.string(),marker:z.string(),indent:z.string()}).strict();z.object({tables:Ce.optional()}).strict();function Xr(e){let t=new Zr({html:false,linkify:e.linkify??true,breaks:false,typographer:false});return t.enable("strikethrough"),e.tableMode&&e.tableMode!=="off"?t.enable("table"):t.disable("table"),e.autolink===false&&t.disable("autolink"),t}function On(e,t){if(e.attrGet)return e.attrGet(t);if(e.attrs){for(let[r,n]of e.attrs)if(r===t)return n}return null}function vt(e,t){return {...e,type:"text",content:t,children:void 0}}function Qr(e){for(let t of e)t.children&&t.children.length>0&&(t.children=eo(t.children));}function eo(e){let t=0;for(let a of e){if(a.type!=="text")continue;let i=a.content??"",l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1)break;t+=1,l=p+2;}}if(t<2)return e;let r=t-t%2,n=[],o={spoilerOpen:false},s=0;for(let a of e){if(a.type!=="text"){n.push(a);continue}let i=a.content??"";if(!i.includes("||")){n.push(a);continue}let l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1){l<i.length&&n.push(vt(a,i.slice(l)));break}if(s>=r){n.push(vt(a,i.slice(l)));break}p>l&&n.push(vt(a,i.slice(l,p))),s+=1,o.spoilerOpen=!o.spoilerOpen,n.push({type:o.spoilerOpen?"spoiler_open":"spoiler_close"}),l=p+2;}}return n}function to(){return {text:"",styles:[],openStyles:[],links:[],linkStack:[]}}function fe(e){return e.table?.currentCell??e}function He(e,t){if(!t)return;let r=fe(e);r.text+=t;}function ye(e,t){let r=fe(e);r.openStyles.push({style:t,start:r.text.length});}function xe(e,t){let r=fe(e);for(let n=r.openStyles.length-1;n>=0;n-=1){let o=r.openStyles[n];if(o?.style===t){let s=o.start;r.openStyles.splice(n,1);let a=r.text.length;a>s&&r.styles.push({start:s,end:a,style:t});return}}}function Fn(e){e.env.listStack.length>0||e.table||(e.text+=`
45
+ `+n);}else r.push(n);return r}function xt(e,t,r){if(!e)return [];if(t<=0||e.length<=t)return [e];let n=[],o=e;for(;o.length>t;){let s=o.slice(0,t),a=r(s),i=Number.isFinite(a)&&a>0&&a<=t?a:t,p=o.slice(0,i).trimEnd();p.length>0&&n.push(p);let c=i<o.length&&o[i]!==void 0&&/\s/.test(o[i]),u=Math.min(o.length,i+(c?1:0));o=o.slice(u).trimStart();}return o.length>0&&n.push(o),n}k();var wt=z.enum(["bold","italic","strikethrough","code","code_block","spoiler","blockquote"]),En=z.object({start:z.number().int().min(0),end:z.number().int().min(0),style:wt}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Cn=z.object({start:z.number().int().min(0),end:z.number().int().min(0),href:z.string().min(1)}).strict().refine(e=>e.end>=e.start,{message:"end must be greater than or equal to start"}),Ee=z.object({text:z.string(),styles:z.array(En),links:z.array(Cn)}).strict(),Ce=z.enum(["off","bullets","code"]),Ne=z.object({linkify:z.boolean().default(true),enableSpoilers:z.boolean().default(false),headingStyle:z.enum(["none","bold"]).default("none"),blockquotePrefix:z.string().default(""),autolink:z.boolean().default(true),tableMode:Ce.default("off")}).partial().default({}),On=z.object({open:z.string(),close:z.string()}).strict(),St=z.object({styleMarkers:z.record(wt,On).optional(),escapeText:z.any().optional(),buildLink:z.any().optional()}).strict();z.object({start:z.number().int().min(0),end:z.number().int().min(0),open:z.string(),close:z.string()}).strict();var kt=z.object({indentSize:z.number().int().min(1).default(2),listMarker:z.enum(["\u2022","-","*"]).default("\u2022"),codeBlockMarker:z.enum(["```","~~~"]).default("```"),preserveFrontmatter:z.boolean().default(true)}).strict(),Tt=z.record(z.string(),z.string()),ze=z.object({open:z.boolean(),ticks:z.number().int().min(0)}).strict();z.object({inlineState:ze,isInside:z.any()}).strict();z.object({start:z.number().int().min(0),end:z.number().int().min(0),openLine:z.string(),marker:z.string(),indent:z.string()}).strict();z.object({tables:Ce.optional()}).strict();function Xr(e){let t=new Zr({html:false,linkify:e.linkify??true,breaks:false,typographer:false});return t.enable("strikethrough"),e.tableMode&&e.tableMode!=="off"?t.enable("table"):t.disable("table"),e.autolink===false&&t.disable("autolink"),t}function In(e,t){if(e.attrGet)return e.attrGet(t);if(e.attrs){for(let[r,n]of e.attrs)if(r===t)return n}return null}function vt(e,t){return {...e,type:"text",content:t,children:void 0}}function Qr(e){for(let t of e)t.children&&t.children.length>0&&(t.children=eo(t.children));}function eo(e){let t=0;for(let a of e){if(a.type!=="text")continue;let i=a.content??"",l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1)break;t+=1,l=p+2;}}if(t<2)return e;let r=t-t%2,n=[],o={spoilerOpen:false},s=0;for(let a of e){if(a.type!=="text"){n.push(a);continue}let i=a.content??"";if(!i.includes("||")){n.push(a);continue}let l=0;for(;l<i.length;){let p=i.indexOf("||",l);if(p===-1){l<i.length&&n.push(vt(a,i.slice(l)));break}if(s>=r){n.push(vt(a,i.slice(l)));break}p>l&&n.push(vt(a,i.slice(l,p))),s+=1,o.spoilerOpen=!o.spoilerOpen,n.push({type:o.spoilerOpen?"spoiler_open":"spoiler_close"}),l=p+2;}}return n}function to(){return {text:"",styles:[],openStyles:[],links:[],linkStack:[]}}function fe(e){return e.table?.currentCell??e}function He(e,t){if(!t)return;let r=fe(e);r.text+=t;}function ye(e,t){let r=fe(e);r.openStyles.push({style:t,start:r.text.length});}function xe(e,t){let r=fe(e);for(let n=r.openStyles.length-1;n>=0;n-=1){let o=r.openStyles[n];if(o?.style===t){let s=o.start;r.openStyles.splice(n,1);let a=r.text.length;a>s&&r.styles.push({start:s,end:a,style:t});return}}}function Fn(e){e.env.listStack.length>0||e.table||(e.text+=`
46
46
 
47
- `);}function no(e){let t=e.env.listStack,r=t[t.length-1];if(!r)return;r.index+=1;let n=" ".repeat(Math.max(0,t.length-1)),o=r.type==="ordered"?`${r.index}. `:"\u2022 ";e.text+=`${n}${o}`;}function ro(e,t){if(!t)return;let r=fe(e),n=r.text.length;r.text+=t,r.styles.push({start:n,end:n+t.length,style:"code"});}function oo(e,t){let r=t??"",n=fe(e),o=n.text.length;n.text+=r,n.styles.push({start:o,end:o+r.length,style:"code_block"});}function so(e){let t=fe(e),r=t.linkStack.pop();if(!r?.href)return;let n=r.href.trim();if(!n)return;let o=r.labelStart,s=t.text.length;if(s<=o){t.links.push({start:o,end:s,href:n});return}t.links.push({start:o,end:s,href:n});}function io(){return {headers:[],rows:[],currentRow:[],currentCell:null,inHeader:false}}function ao(e){return An(e),{text:e.text,styles:e.styles,links:e.links}}function We(e){let t=e.text,r=0,n=t.length;for(;r<n&&/\s/.test(t[r]??"");)r+=1;for(;n>r&&/\s/.test(t[n-1]??"");)n-=1;if(r===0&&n===t.length)return e;let o=t.slice(r,n),s=o.length,a=[];for(let l of e.styles){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&a.push({start:p,end:c,style:l.style});}let i=[];for(let l of e.links){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&i.push({start:p,end:c,href:l.href});}return {text:o,styles:a,links:i}}function Rt(e,t){if(!t.text)return;let r=e.text.length;e.text+=t.text;for(let n of t.styles)e.styles.push({start:r+n.start,end:r+n.end,style:n.style});for(let n of t.links)e.links.push({start:r+n.start,end:r+n.end,href:n.href});}function lo(e,t){t.text&&(e.text+=t.text);}function $n(e,t){let{header:r,value:n,columnIndex:o,includeColumnFallback:s}=t;n?.text&&(e.text+="\u2022 ",r?.text?(Rt(e,r),e.text+=": "):s&&(e.text+=`Column ${o}: `),Rt(e,n),e.text+=`
48
- `);}function co(e){if(!e.table)return;let t=e.table.headers.map(We),r=e.table.rows.map(o=>o.map(We));if(t.length===0&&r.length===0)return;if(t.length>1&&r.length>0)for(let o of r){if(o.length===0)continue;let s=o[0];if(s?.text){let a=e.text.length;Rt(e,s);let i=e.text.length;i>a&&e.styles.push({start:a,end:i,style:"bold"}),e.text+=`
47
+ `);}function no(e){let t=e.env.listStack,r=t[t.length-1];if(!r)return;r.index+=1;let n=" ".repeat(Math.max(0,t.length-1)),o=r.type==="ordered"?`${r.index}. `:"\u2022 ";e.text+=`${n}${o}`;}function ro(e,t){if(!t)return;let r=fe(e),n=r.text.length;r.text+=t,r.styles.push({start:n,end:n+t.length,style:"code"});}function oo(e,t){let r=t??"",n=fe(e),o=n.text.length;n.text+=r,n.styles.push({start:o,end:o+r.length,style:"code_block"});}function so(e){let t=fe(e),r=t.linkStack.pop();if(!r?.href)return;let n=r.href.trim();if(!n)return;let o=r.labelStart,s=t.text.length;if(s<=o){t.links.push({start:o,end:s,href:n});return}t.links.push({start:o,end:s,href:n});}function io(){return {headers:[],rows:[],currentRow:[],currentCell:null,inHeader:false}}function ao(e){return An(e),{text:e.text,styles:e.styles,links:e.links}}function We(e){let t=e.text,r=0,n=t.length;for(;r<n&&/\s/.test(t[r]??"");)r+=1;for(;n>r&&/\s/.test(t[n-1]??"");)n-=1;if(r===0&&n===t.length)return e;let o=t.slice(r,n),s=o.length,a=[];for(let l of e.styles){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&a.push({start:p,end:c,style:l.style});}let i=[];for(let l of e.links){let p=Math.max(0,l.start-r),c=Math.min(s,l.end-r);c>p&&i.push({start:p,end:c,href:l.href});}return {text:o,styles:a,links:i}}function Pt(e,t){if(!t.text)return;let r=e.text.length;e.text+=t.text;for(let n of t.styles)e.styles.push({start:r+n.start,end:r+n.end,style:n.style});for(let n of t.links)e.links.push({start:r+n.start,end:r+n.end,href:n.href});}function lo(e,t){t.text&&(e.text+=t.text);}function $n(e,t){let{header:r,value:n,columnIndex:o,includeColumnFallback:s}=t;n?.text&&(e.text+="\u2022 ",r?.text?(Pt(e,r),e.text+=": "):s&&(e.text+=`Column ${o}: `),Pt(e,n),e.text+=`
48
+ `);}function co(e){if(!e.table)return;let t=e.table.headers.map(We),r=e.table.rows.map(o=>o.map(We));if(t.length===0&&r.length===0)return;if(t.length>1&&r.length>0)for(let o of r){if(o.length===0)continue;let s=o[0];if(s?.text){let a=e.text.length;Pt(e,s);let i=e.text.length;i>a&&e.styles.push({start:a,end:i,style:"bold"}),e.text+=`
49
49
  `;}for(let a=1;a<o.length;a++)$n(e,{header:t[a],value:o[a],columnIndex:a,includeColumnFallback:true});e.text+=`
50
50
  `;}else for(let o of r){for(let s=0;s<o.length;s++)$n(e,{header:t[s],value:o[s],columnIndex:s,includeColumnFallback:false});e.text+=`
51
51
  `;}}function uo(e){if(!e.table)return;let t=e.table.headers.map(We),r=e.table.rows.map(c=>c.map(We)),n=Math.max(t.length,...r.map(c=>c.length));if(n===0)return;let o=Array.from({length:n},()=>0),s=c=>{for(let u=0;u<n;u+=1){let S=c[u]?.text.length??0;(o[u]??0)<S&&(o[u]=S);}};s(t);for(let c of r)s(c);let a=e.text.length,i=c=>{e.text+="|";for(let u=0;u<n;u+=1){e.text+=" ";let g=c[u];g&&lo(e,g);let S=g?.text.length??0,D=(o[u]??0)-S;D>0&&(e.text+=" ".repeat(D)),e.text+=" |";}e.text+=`
52
52
  `;},l=()=>{e.text+="|";for(let c=0;c<n;c+=1){let u=o[c]??0,g=Math.max(3,u);e.text+=` ${"-".repeat(g)} |`;}e.text+=`
53
- `;};i(t),l();for(let c of r)i(c);let p=e.text.length;p>a&&e.styles.push({start:a,end:p,style:"code_block"});}function Pt(e,t){for(let r of e)switch(r.type){case "inline":r.children&&Pt(r.children,t);break;case "text":He(t,r.content??"");break;case "em_open":ye(t,"italic");break;case "em_close":xe(t,"italic");break;case "strong_open":ye(t,"bold");break;case "strong_close":xe(t,"bold");break;case "s_open":ye(t,"strikethrough");break;case "s_close":xe(t,"strikethrough");break;case "code_inline":ro(t,r.content??"");break;case "spoiler_open":t.enableSpoilers&&ye(t,"spoiler");break;case "spoiler_close":t.enableSpoilers&&xe(t,"spoiler");break;case "link_open":{let n=On(r,"href")??"",o=fe(t);o.linkStack.push({href:n,labelStart:o.text.length});break}case "link_close":so(t);break;case "image":He(t,r.content??"");break;case "softbreak":case "hardbreak":He(t,`
53
+ `;};i(t),l();for(let c of r)i(c);let p=e.text.length;p>a&&e.styles.push({start:a,end:p,style:"code_block"});}function Rt(e,t){for(let r of e)switch(r.type){case "inline":r.children&&Rt(r.children,t);break;case "text":He(t,r.content??"");break;case "em_open":ye(t,"italic");break;case "em_close":xe(t,"italic");break;case "strong_open":ye(t,"bold");break;case "strong_close":xe(t,"bold");break;case "s_open":ye(t,"strikethrough");break;case "s_close":xe(t,"strikethrough");break;case "code_inline":ro(t,r.content??"");break;case "spoiler_open":t.enableSpoilers&&ye(t,"spoiler");break;case "spoiler_close":t.enableSpoilers&&xe(t,"spoiler");break;case "link_open":{let n=In(r,"href")??"",o=fe(t);o.linkStack.push({href:n,labelStart:o.text.length});break}case "link_close":so(t);break;case "image":He(t,r.content??"");break;case "softbreak":case "hardbreak":He(t,`
54
54
  `);break;case "paragraph_close":Fn(t);break;case "heading_open":t.headingStyle==="bold"&&ye(t,"bold");break;case "heading_close":t.headingStyle==="bold"&&xe(t,"bold"),Fn(t);break;case "blockquote_open":t.blockquotePrefix&&(t.text+=t.blockquotePrefix),ye(t,"blockquote");break;case "blockquote_close":xe(t,"blockquote");break;case "bullet_list_open":t.env.listStack.length>0&&(t.text+=`
55
55
  `),t.env.listStack.push({type:"bullet",index:0});break;case "bullet_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
56
56
  `);break;case "ordered_list_open":{t.env.listStack.length>0&&(t.text+=`
57
- `);let n=Number(On(r,"start")??"1");t.env.listStack.push({type:"ordered",index:n-1});break}case "ordered_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
57
+ `);let n=Number(In(r,"start")??"1");t.env.listStack.push({type:"ordered",index:n-1});break}case "ordered_list_close":t.env.listStack.pop(),t.env.listStack.length===0&&(t.text+=`
58
58
  `);break;case "list_item_open":no(t);break;case "list_item_close":t.text.endsWith(`
59
59
  `)||(t.text+=`
60
60
  `);break;case "code_block":case "fence":oo(t,r.content??"");break;case "html_block":case "html_inline":He(t,r.content??"");break;case "table_open":t.tableMode!=="off"&&(t.table=io(),t.hasTables=true);break;case "table_close":t.table&&(t.tableMode==="bullets"?co(t):t.tableMode==="code"&&uo(t)),t.table=null;break;case "thead_open":t.table&&(t.table.inHeader=true);break;case "thead_close":t.table&&(t.table.inHeader=false);break;case "tbody_open":case "tbody_close":break;case "tr_open":t.table&&(t.table.currentRow=[]);break;case "tr_close":t.table&&(t.table.inHeader?t.table.headers=t.table.currentRow:t.table.rows.push(t.table.currentRow),t.table.currentRow=[]);break;case "th_open":case "td_open":t.table&&(t.table.currentCell=to());break;case "th_close":case "td_close":t.table?.currentCell&&(t.table.currentRow.push(ao(t.table.currentCell)),t.table.currentCell=null);break;case "hr":t.text+=`\u2500\u2500\u2500
61
61
 
62
- `;break;default:r.children&&Pt(r.children,t);break}}function An(e){for(let t=e.openStyles.length-1;t>=0;t-=1){let r=e.openStyles[t];if(!r)continue;let n=e.text.length;n>r.start&&e.styles.push({start:r.start,end:n,style:r.style});}e.openStyles=[];}function fo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,style:n.style});}return r}function po(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,href:n.href});}return r}function Bn(e){let t=[...e].toSorted((n,o)=>n.start!==o.start?n.start-o.start:n.end!==o.end?n.end-o.end:n.style.localeCompare(o.style)),r=[];for(let n of t){let o=r[r.length-1];if(o&&o.style===n.style&&(n.start<o.end||n.start===o.end&&n.style!=="blockquote")){o.end=Math.max(o.end,n.end);continue}r.push({...n});}return r}function Ln(e,t,r){let n=Math.max(e.start,t),o=Math.min(e.end,r);return o<=n?null:{start:n,end:o}}function mo(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Ln(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,style:o.style});}return Bn(n)}function go(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Ln(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,href:o.href});}return n}function we(e,t){try{let r=typeof e=="string"?e:"",n=Ne.parse(t??{});return Ie(r,n).ir}catch(r){return console.error("Markdown parse error:",r),{text:"",styles:[],links:[]}}}function Ie(e,t){try{let r=typeof e=="string"?e:"",n=Ne.parse(t),o={listStack:[]},a=Xr(n).parse(r||"",o);n.enableSpoilers&&Qr(a);let i=n.tableMode??"off",l={text:"",styles:[],openStyles:[],links:[],linkStack:[],env:o,headingStyle:n.headingStyle??"none",blockquotePrefix:n.blockquotePrefix??"",enableSpoilers:n.enableSpoilers??!1,tableMode:i,table:null,hasTables:!1};Pt(a,l),An(l);let c=l.text.trimEnd().length,u=0;for(let P of l.styles)P.style==="code_block"&&P.end>u&&(u=P.end);let g=Math.max(c,u);return {ir:{text:g===l.text.length?l.text:l.text.slice(0,g),styles:Bn(fo(l.styles,g)),links:po(l.links,g)},hasTables:l.hasTables}}catch(r){return console.error("Markdown parse error:",r),{ir:{text:"",styles:[],links:[]},hasTables:false}}}function _n(e,t){try{let r=Ee.parse(e),n=typeof t=="number"&&t>0?t:0;if(!r.text)return [];if(n<=0||r.text.length<=n)return [r];let o=be(r.text,n),s=[],a=0;return o.forEach((i,l)=>{if(!i)return;if(l>0)for(;a<r.text.length&&/\s/.test(r.text[a]??"");)a+=1;let p=a,c=Math.min(r.text.length,p+i.length);s.push({text:i,styles:mo(r.styles,p,c),links:go(r.links,p,c)}),a=c;}),s}catch(r){return console.error("Chunk IR error:",r),[]}}k();var ho={bold:{open:"**",close:"**"},italic:{open:"*",close:"*"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Oe(e,t){try{let r=Ee.parse(e),n=St.parse(t??{});if(!r.text)return "";let o=n.styleMarkers??ho,s=n.escapeText??(u=>u),a=n.buildLink,i=[];for(let u=0;u<r.styles.length;u++){let g=r.styles[u];g&&(i.push({position:g.start,type:"open",style:g.style,spanIndex:u}),i.push({position:g.end,type:"close",style:g.style,spanIndex:u}));}for(let u=0;u<r.links.length;u++){let g=r.links[u];g&&(i.push({position:g.start,type:"link_open",spanIndex:u,href:g.href}),i.push({position:g.end,type:"link_close",spanIndex:u,href:g.href}));}i.sort((u,g)=>{if(u.position!==g.position)return u.position-g.position;let S=(N,le)=>N==="link_open"?0:N==="open"?1:N==="close"?2:N==="link_close"?3:4,P=u.type==="close"||u.type==="link_close",D=g.type==="close"||g.type==="link_close",H=S(u.type,P),q=S(g.type,D);return H!==q?H-q:u.type==="open"&&g.type==="open"?u.spanIndex-g.spanIndex:u.type==="close"&&g.type==="close"?g.spanIndex-u.spanIndex:u.spanIndex-g.spanIndex});let l="",p=0,c=[];for(let u of i){if(u.position>p){let g=r.text.slice(p,u.position);l+=s?s(g):g;}if(u.type==="open"||u.type==="close"){let g=o[u.style];if(g)if(u.type==="open")l+=g.open,c.push(u);else {l+=g.close,u.style==="code_block"&&u.position<r.text.length&&(l+=`
63
- `);let S=c.findIndex(P=>P.spanIndex===u.spanIndex&&P.type==="open");S!==-1&&c.splice(S,1);}}else if(u.type==="link_open")l+="[",c.push(u);else if(u.type==="link_close"){l+="]("+u.href+")";let g=c.findIndex(S=>S.spanIndex===u.spanIndex&&S.type==="link_open");g!==-1&&c.splice(g,1);}p=u.position;}if(p<r.text.length){let u=r.text.slice(p);l+=s?s(u):u;}return l}catch(r){return console.error("Markdown render error:",r),""}}function Se(e,t){return Oe(e,t)}k();function bo(e){let t=e.replace(/\r\n/g,`
62
+ `;break;default:r.children&&Rt(r.children,t);break}}function An(e){for(let t=e.openStyles.length-1;t>=0;t-=1){let r=e.openStyles[t];if(!r)continue;let n=e.text.length;n>r.start&&e.styles.push({start:r.start,end:n,style:r.style});}e.openStyles=[];}function fo(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,style:n.style});}return r}function po(e,t){let r=[];for(let n of e){let o=Math.max(0,Math.min(n.start,t)),s=Math.max(o,Math.min(n.end,t));s>o&&r.push({start:o,end:s,href:n.href});}return r}function Bn(e){let t=[...e].toSorted((n,o)=>n.start!==o.start?n.start-o.start:n.end!==o.end?n.end-o.end:n.style.localeCompare(o.style)),r=[];for(let n of t){let o=r[r.length-1];if(o&&o.style===n.style&&(n.start<o.end||n.start===o.end&&n.style!=="blockquote")){o.end=Math.max(o.end,n.end);continue}r.push({...n});}return r}function Ln(e,t,r){let n=Math.max(e.start,t),o=Math.min(e.end,r);return o<=n?null:{start:n,end:o}}function mo(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Ln(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,style:o.style});}return Bn(n)}function go(e,t,r){if(e.length===0)return [];let n=[];for(let o of e){let s=Ln(o,t,r);s&&n.push({start:s.start-t,end:s.end-t,href:o.href});}return n}function we(e,t){try{let r=typeof e=="string"?e:"",n=Ne.parse(t??{});return Oe(r,n).ir}catch(r){return console.error("Markdown parse error:",r),{text:"",styles:[],links:[]}}}function Oe(e,t){try{let r=typeof e=="string"?e:"",n=Ne.parse(t),o={listStack:[]},a=Xr(n).parse(r||"",o);n.enableSpoilers&&Qr(a);let i=n.tableMode??"off",l={text:"",styles:[],openStyles:[],links:[],linkStack:[],env:o,headingStyle:n.headingStyle??"none",blockquotePrefix:n.blockquotePrefix??"",enableSpoilers:n.enableSpoilers??!1,tableMode:i,table:null,hasTables:!1};Rt(a,l),An(l);let c=l.text.trimEnd().length,u=0;for(let R of l.styles)R.style==="code_block"&&R.end>u&&(u=R.end);let g=Math.max(c,u);return {ir:{text:g===l.text.length?l.text:l.text.slice(0,g),styles:Bn(fo(l.styles,g)),links:po(l.links,g)},hasTables:l.hasTables}}catch(r){return console.error("Markdown parse error:",r),{ir:{text:"",styles:[],links:[]},hasTables:false}}}function _n(e,t){try{let r=Ee.parse(e),n=typeof t=="number"&&t>0?t:0;if(!r.text)return [];if(n<=0||r.text.length<=n)return [r];let o=be(r.text,n),s=[],a=0;return o.forEach((i,l)=>{if(!i)return;if(l>0)for(;a<r.text.length&&/\s/.test(r.text[a]??"");)a+=1;let p=a,c=Math.min(r.text.length,p+i.length);s.push({text:i,styles:mo(r.styles,p,c),links:go(r.links,p,c)}),a=c;}),s}catch(r){return console.error("Chunk IR error:",r),[]}}k();var ho={bold:{open:"**",close:"**"},italic:{open:"*",close:"*"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Ie(e,t){try{let r=Ee.parse(e),n=St.parse(t??{});if(!r.text)return "";let o=n.styleMarkers??ho,s=n.escapeText??(u=>u),a=n.buildLink,i=[];for(let u=0;u<r.styles.length;u++){let g=r.styles[u];g&&(i.push({position:g.start,type:"open",style:g.style,spanIndex:u}),i.push({position:g.end,type:"close",style:g.style,spanIndex:u}));}for(let u=0;u<r.links.length;u++){let g=r.links[u];g&&(i.push({position:g.start,type:"link_open",spanIndex:u,href:g.href}),i.push({position:g.end,type:"link_close",spanIndex:u,href:g.href}));}i.sort((u,g)=>{if(u.position!==g.position)return u.position-g.position;let S=(N,le)=>N==="link_open"?0:N==="open"?1:N==="close"?2:N==="link_close"?3:4,R=u.type==="close"||u.type==="link_close",D=g.type==="close"||g.type==="link_close",H=S(u.type,R),q=S(g.type,D);return H!==q?H-q:u.type==="open"&&g.type==="open"?u.spanIndex-g.spanIndex:u.type==="close"&&g.type==="close"?g.spanIndex-u.spanIndex:u.spanIndex-g.spanIndex});let l="",p=0,c=[];for(let u of i){if(u.position>p){let g=r.text.slice(p,u.position);l+=s?s(g):g;}if(u.type==="open"||u.type==="close"){let g=o[u.style];if(g)if(u.type==="open")l+=g.open,c.push(u);else {l+=g.close,u.style==="code_block"&&u.position<r.text.length&&(l+=`
63
+ `);let S=c.findIndex(R=>R.spanIndex===u.spanIndex&&R.type==="open");S!==-1&&c.splice(S,1);}}else if(u.type==="link_open")l+="[",c.push(u);else if(u.type==="link_close"){l+="]("+u.href+")";let g=c.findIndex(S=>S.spanIndex===u.spanIndex&&S.type==="link_open");g!==-1&&c.splice(g,1);}p=u.position;}if(p<r.text.length){let u=r.text.slice(p);l+=s?s(u):u;}return l}catch(r){return console.error("Markdown render error:",r),""}}function Se(e,t){return Ie(e,t)}k();function bo(e){let t=e.replace(/\r\n/g,`
64
64
  `).replace(/\r/g,`
65
65
  `);if(!t.startsWith("---"))return {frontmatter:"",content:e};let r=t.indexOf(`
66
66
  ---`,3);if(r===-1)return {frontmatter:"",content:e};let n=t.slice(0,r+4),o=t.slice(r+4).trimStart();return {frontmatter:n,content:o}}function Ue(e,t){try{let r=typeof e=="string"?e:"",n=kt.parse(t??{});if(!r)return "";let{frontmatter:o,content:s}=bo(r),a=we(s,{linkify:!0,enableSpoilers:!1,autolink:!0,headingStyle:"none",blockquotePrefix:"",tableMode:"off"}),i=Se(a);return i=i.replace(/\n{3,}/g,`
@@ -69,21 +69,21 @@ ${$.stderr}`);if(C){C(A);return}throw A}return k({exitCode:$.code,stdout:new Tex
69
69
  `,n.preserveFrontmatter&&o&&(i=o+`
70
70
  `+i),i}catch(r){return console.error("Markdown format error:",r),e}}k();function yo(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function xo(e){if(e!=null){if(typeof e=="string")return {value:e.trim(),kind:"scalar"};if(typeof e=="number"||typeof e=="boolean")return {value:String(e),kind:"scalar"};if(typeof e=="object")try{return {value:JSON.stringify(e),kind:"structured"}}catch{return}}}function wo(e){try{let t=jn.parse(e,{schema:"core"});if(!t||typeof t!="object"||Array.isArray(t))return null;let r={};for(let[n,o]of Object.entries(t)){let s=n.trim();if(!s)continue;let a=xo(o);a&&(r[s]=a);}return r}catch{return null}}function So(e,t){let r=[],n=t+1;for(;n<e.length;){let s=e[n];if(!s){n+=1;continue}if(s.length>0&&!s.startsWith(" ")&&!s.startsWith(" "))break;r.push(s),n+=1;}return {value:r.join(`
71
71
  `).trim(),linesConsumed:n-t}}function ko(e){let t={},r=e.split(`
72
- `),n=0;for(;n<r.length;){let o=r[n];if(!o){n+=1;continue}let s=o.match(/^([\w-]+):\s*(.*)$/);if(!s?.[1]||!s[2]){n+=1;continue}let a=s[1],i=s[2].trim();if(!a){n+=1;continue}if(!i&&n+1<r.length){let p=r[n+1];if(p&&(p.startsWith(" ")||p.startsWith(" "))){let{value:c,linesConsumed:u}=So(r,n);c&&(t[a]={value:c,kind:"multiline",rawInline:i}),n+=u;continue}}let l=yo(i);l&&(t[a]={value:l,kind:"inline",rawInline:i}),n+=1;}return t}function To(e){let t={};for(let[r,n]of Object.entries(e))t[r]=n.value;return t}function vo(e){return /^[|>][+-]?(\d+)?[+-]?$/.test(e)}function Ro(e){let{lineEntry:t,yamlValue:r}=e;return r.kind!=="structured"||t.kind!=="inline"||vo(t.rawInline)?false:t.value.includes(":")}function Po(e){let t=e.replace(/\r\n/g,`
72
+ `),n=0;for(;n<r.length;){let o=r[n];if(!o){n+=1;continue}let s=o.match(/^([\w-]+):\s*(.*)$/);if(!s?.[1]||!s[2]){n+=1;continue}let a=s[1],i=s[2].trim();if(!a){n+=1;continue}if(!i&&n+1<r.length){let p=r[n+1];if(p&&(p.startsWith(" ")||p.startsWith(" "))){let{value:c,linesConsumed:u}=So(r,n);c&&(t[a]={value:c,kind:"multiline",rawInline:i}),n+=u;continue}}let l=yo(i);l&&(t[a]={value:l,kind:"inline",rawInline:i}),n+=1;}return t}function To(e){let t={};for(let[r,n]of Object.entries(e))t[r]=n.value;return t}function vo(e){return /^[|>][+-]?(\d+)?[+-]?$/.test(e)}function Po(e){let{lineEntry:t,yamlValue:r}=e;return r.kind!=="structured"||t.kind!=="inline"||vo(t.rawInline)?false:t.value.includes(":")}function Ro(e){let t=e.replace(/\r\n/g,`
73
73
  `).replace(/\r/g,`
74
74
  `);if(!t.startsWith("---"))return;let r=t.indexOf(`
75
- ---`,3);if(r!==-1)return t.slice(4,r)}function Fe(e){try{if(typeof e!="string")return {};let t=Po(e);if(!t)return {};let r=ko(t),n=wo(t);if(n===null)return To(r);let o={};for(let[s,a]of Object.entries(n)){o[s]=a.value;let i=r[s];i&&Ro({lineEntry:i,yamlValue:a})&&(o[s]=i.value);}for(let[s,a]of Object.entries(r))s in o||(o[s]=a.value);return o}catch(t){return console.warn("Failed to parse frontmatter:",t),{}}}function qe(e){try{let t=Tt.parse(e);if(Object.keys(t).length===0)return "";let r={};for(let[o,s]of Object.entries(t))try{let a=JSON.parse(s);r[o]=a;}catch{r[o]=s;}return `---
75
+ ---`,3);if(r!==-1)return t.slice(4,r)}function Fe(e){try{if(typeof e!="string")return {};let t=Ro(e);if(!t)return {};let r=ko(t),n=wo(t);if(n===null)return To(r);let o={};for(let[s,a]of Object.entries(n)){o[s]=a.value;let i=r[s];i&&Po({lineEntry:i,yamlValue:a})&&(o[s]=i.value);}for(let[s,a]of Object.entries(r))s in o||(o[s]=a.value);return o}catch(t){return console.warn("Failed to parse frontmatter:",t),{}}}function qe(e){try{let t=Tt.parse(e);if(Object.keys(t).length===0)return "";let r={};for(let[o,s]of Object.entries(t))try{let a=JSON.parse(s);r[o]=a;}catch{r[o]=s;}return `---
76
76
  ${jn.stringify(r,{lineWidth:0,defaultStringType:"QUOTE_DOUBLE"}).trim()}
77
- ---`}catch(t){return console.warn("Failed to serialize frontmatter:",t),""}}function Ve(e){try{if(typeof e!="string")return {frontmatter:{},content:""};let t=e.replace(/\r\n/g,`
77
+ ---`}catch(t){return console.warn("Failed to serialize frontmatter:",t),""}}function Ye(e){try{if(typeof e!="string")return {frontmatter:{},content:""};let t=e.replace(/\r\n/g,`
78
78
  `).replace(/\r/g,`
79
79
  `);if(!t.startsWith("---"))return {frontmatter:{},content:e};let r=t.indexOf(`
80
- ---`,3);if(r===-1)return {frontmatter:{},content:e};let n=t.slice(4,r),o=t.slice(r+4).trimStart();return {frontmatter:Fe(e),content:o}}catch(t){return console.warn("Failed to extract frontmatter:",t),{frontmatter:{},content:e}}}k();k();function Ge(e){try{let t=z.string().parse(e),r=[],n,o=0;for(;o<=t.length;){let s=t.indexOf(`
81
- `,o),a=s===-1?t.length:s,i=t.slice(o,a),l=i.match(/^( {0,3})(`{3,}|~{3,})(.*)$/);if(l){let p=l[1],c=l[2];if(!p||!c){o=a+1;continue}let u=c[0];if(!u){o=a+1;continue}let g=c.length;if(!n)n={start:o,markerChar:u,markerLen:g,openLine:i,marker:c,indent:p};else if(n.markerChar===u&&g>=n.markerLen){let S=a;r.push({start:n.start,end:S,openLine:n.openLine,marker:n.marker,indent:n.indent}),n=void 0;}}if(s===-1)break;o=s+1;}return n&&r.push({start:n.start,end:t.length,openLine:n.openLine,marker:n.marker,indent:n.indent}),r}catch(t){return console.warn("Invalid input for parseFenceSpans:",t),[]}}function Mt(e,t){let r=0,n=e.length-1;for(;r<=n;){let o=Math.floor((r+n)/2),s=e[o];if(!s)break;if(t<=s.start){n=o-1;continue}if(t>=s.end){r=o+1;continue}return s}}function Dn(e,t){return !Mt(e,t)}function Ye(){return {open:false,ticks:0}}function Je(e,t){try{let r=z.string().parse(e),n=t?ze.parse(t):Ye(),o=Ge(r),s={open:n.open,ticks:n.ticks},{spans:a,state:i}=Co(r,o,s);return {inlineState:i,isInside:l=>Oo(l,o)||Fo(l,a)}}catch(r){return console.warn("Invalid input for buildCodeSpanIndex:",r),{inlineState:Ye(),isInside:()=>false}}}function Co(e,t,r){let n=[],o=r.open,s=r.ticks,a=o?0:-1,i=0;for(;i<e.length;){let l=Io(t,i);if(l){i=l.end;continue}if(e[i]!=="`"){i+=1;continue}let p=i,c=0;for(;i<e.length&&e[i]==="`";)c+=1,i+=1;if(!o){o=true,s=c,a=p;continue}c===s&&(n.push([a,i]),o=false,s=0,a=-1);}return o&&n.push([a,e.length]),{spans:n,state:{open:o,ticks:s}}}function Io(e,t){return e.find(r=>t>=r.start&&t<r.end)}function Oo(e,t){return t.some(r=>e>=r.start&&e<r.end)}function Fo(e,t){return t.some(([r,n])=>e>=r&&e<n)}k();var Ao={bold:{open:"**",close:"**"},italic:{open:"_",close:"_"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Ke(e,t){try{let r=z.string().parse(e),n=Ce.parse(t);if(!r||n==="off")return r;let{ir:o,hasTables:s}=Ie(r,{linkify:!1,enableSpoilers:!1,autolink:!1,headingStyle:"none",blockquotePrefix:"",tableMode:n});return s?Oe(o,{styleMarkers:Ao,escapeText:a=>a,buildLink:(a,i)=>{let l=a.href.trim();return !l||!i.slice(a.start,a.end)?null:{start:a.start,end:a.end,open:"[",close:`](${l})`}}}):r}catch(r){return console.warn("Invalid input for convertMarkdownTables:",r),typeof e=="string"?e:""}}var Et;(p=>{function e(c,u){try{return we(c,u)}catch(g){return console.warn("Markdown.parse error:",g),{text:"",styles:[],links:[]}}}p.parse=e;function t(c,u){try{return Se(c,u)}catch(g){return console.warn("Markdown.render error:",g),""}}p.render=t;function r(c,u){try{return Ue(c,u)}catch(g){return console.warn("Markdown.format error:",g),typeof c=="string"?c:""}}p.format=r;function n(c){try{return Fe(c)}catch(u){return console.warn("Markdown.parseFrontmatter error:",u),{}}}p.parseFrontmatter=n;function o(c){try{return qe(c)}catch(u){return console.warn("Markdown.serializeFrontmatter error:",u),""}}p.serializeFrontmatter=o;function s(c){try{return Ve(c)}catch(u){return console.warn("Markdown.extractFrontmatter error:",u),{frontmatter:{},content:typeof c=="string"?c:""}}}p.extractFrontmatter=s;function a(c,u,g){try{return be(c,u,g)}catch(S){return console.warn("Markdown.chunk error:",S),typeof c=="string"&&c.length>0?[c]:[]}}p.chunk=a;function i(c,u){try{return Je(c,u)}catch(g){return console.warn("Markdown.buildCodeIndex error:",g),{inlineState:{open:false,ticks:0},isInside:()=>false}}}p.buildCodeIndex=i;function l(c,u){try{return Ke(c,u)}catch(g){return console.warn("Markdown.convertTables error:",g),typeof c=="string"?c:""}}p.convertTables=l;})(Et||(Et={}));k();function Nn(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r[r.length-1]??""}function Bo(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r.slice(0,r.length-1).join("/")+"/"}function Lo(e){if(!e)return "";let t=e.split(".");return t[t.length-1]}function _o(e,t=20){let r=Nn(e);if(r.length<=t)return r;let n=r.lastIndexOf("."),o=n<=0?"":r.slice(n),s=t-o.length-1;return s<=0?r.slice(0,t-1)+"\u2026":r.slice(0,s)+"\u2026"+o}function jo(e,t=20){if(e.length<=t)return e;let r=t-1,n=Math.ceil(r/2),o=Math.floor(r/2);return e.slice(0,n)+"\u2026"+e.slice(-o)}k();var Do=["load failed","network connection was lost","network request failed","failed to fetch","econnreset","econnrefused","etimedout","socket hang up"];function No(e){if(!e)return false;let t=String(e instanceof Error?e.message:e).toLowerCase();return Do.some(r=>t.includes(r))}async function zo(e,t={}){let{attempts:r=3,delay:n=500,factor:o=2,maxDelay:s=1e4,retryIf:a=No}=t,i;for(let l=0;l<r;l++)try{return await e()}catch(p){if(i=p,l===r-1||!a(p))throw p;let c=Math.min(n*o**l,s);await new Promise(u=>setTimeout(u,c));}throw i}k();var Ct;(zt=>{let e=a.create({service:"fetch"}),t=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"],r=false,n=null;function o(){return t.some(I=>{let O=process.env[I];return typeof O=="string"&&O.trim().length>0})}zt.hasProxyConfigured=o;function s(){let I=process.env.http_proxy||process.env.HTTP_PROXY;return process.env.https_proxy||process.env.HTTPS_PROXY||I}zt.getProxyUrl=s;function a$1(I={}){let O=I.httpProxy||I.httpsProxy||s();if(!O){e.warn("[Fetch] \u672A\u914D\u7F6E\u4EE3\u7406\uFF0C\u73AF\u5883\u53D8\u91CF HTTP_PROXY/HTTPS_PROXY \u672A\u8BBE\u7F6E");return}let j=new ProxyAgent({uri:O,connectTimeout:I.connectTimeout||1e4,keepAliveTimeout:I.keepAliveTimeout||3e4});n=getGlobalDispatcher(),setGlobalDispatcher(j),r=true,console.log(`[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u542F\u7528: ${O}`);}zt.enableProxy=a$1;function i(){!r||!n||(setGlobalDispatcher(n),r=false,n=null,console.log("[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u7981\u7528"));}zt.disableProxy=i;function l(){return r}zt.isProxyEnabled=l;async function p(I,O){let j=O?.timeout||3e4,Z=O?.responseType||"json",{timeout:Y,responseType:ce,...ie}=O||{},G=null,_=null;try{ie.signal||(G=new AbortController,_=setTimeout(()=>G.abort(),j));let x=await fetch(I,{...ie,signal:ie.signal||G.signal});_&&clearTimeout(_);let m;switch(Z){case "arrayBuffer":m=await x.arrayBuffer();break;case "blob":m=await x.blob();break;case "buffer":{let f=await x.arrayBuffer();m=Buffer.from(f);break}case "text":m=await x.text();break;default:{let f=await x.text();try{m=JSON.parse(f);}catch{m=f;}break}}return {ok:x.ok,status:x.status,statusText:x.statusText,headers:x.headers,data:m,url:x.url}}catch(x){throw _&&clearTimeout(_),x}}async function c$1(I,O){let j=O?.retries||0,Z=O?.retryDelay||1e3,{retries:Y,retryDelay:ce,responseType:ie,...G}=O||{},_;for(let x=0;x<=j;x++)try{return await p(I,{...G,responseType:O?.responseType})}catch(m){if(_=m,x<j){let f=Z*2**x;await new Promise(d=>setTimeout(d,f));}}throw _}async function u(I,O){return c$1(I,{method:"GET",...O})}zt.get=u;async function g(I,O,j){return c$1(I,{method:"POST",headers:{"Content-Type":"application/json",...j?.headers},body:O?JSON.stringify(O):void 0,...j})}zt.post=g;async function S(I,O,j){return c$1(I,{method:"PUT",headers:{"Content-Type":"application/json",...j?.headers},body:O?JSON.stringify(O):void 0,...j})}zt.put=S;async function P(I,O,j){return c$1(I,{method:"DELETE",headers:{"Content-Type":"application/json",...j?.headers},body:O?JSON.stringify(O):void 0,...j})}zt.del=P;async function D(I,O,j){return c$1(I,{method:"PATCH",headers:{"Content-Type":"application/json",...j?.headers},body:O?JSON.stringify(O):void 0,...j})}zt.patch=D;async function H(I,O){return c$1(I,O)}zt.request=H;function q(I={}){return o()?(a$1(I),true):false}zt.autoProxy=q;function N(I){return new TextEncoder().encode(I)}function le(I){return c.mimeType(I)}function ke(I){return I.startsWith("file://")}async function Ze(I){let O=fileURLToPath(I);return await L.file(O).bytes()}async function Nt(I,O,j){let Z=`----FetchFormBoundary${Date.now()}`,Y=[];for(let f of O){let d=f.filename,w=`Content-Disposition: form-data; name="${f.name}"${d?`; filename="${d}"`:""}`;d&&(w+=`\r
80
+ ---`,3);if(r===-1)return {frontmatter:{},content:e};let n=t.slice(4,r),o=t.slice(r+4).trimStart();return {frontmatter:Fe(e),content:o}}catch(t){return console.warn("Failed to extract frontmatter:",t),{frontmatter:{},content:e}}}k();k();function Ve(e){try{let t=z.string().parse(e),r=[],n,o=0;for(;o<=t.length;){let s=t.indexOf(`
81
+ `,o),a=s===-1?t.length:s,i=t.slice(o,a),l=i.match(/^( {0,3})(`{3,}|~{3,})(.*)$/);if(l){let p=l[1],c=l[2];if(!p||!c){o=a+1;continue}let u=c[0];if(!u){o=a+1;continue}let g=c.length;if(!n)n={start:o,markerChar:u,markerLen:g,openLine:i,marker:c,indent:p};else if(n.markerChar===u&&g>=n.markerLen){let S=a;r.push({start:n.start,end:S,openLine:n.openLine,marker:n.marker,indent:n.indent}),n=void 0;}}if(s===-1)break;o=s+1;}return n&&r.push({start:n.start,end:t.length,openLine:n.openLine,marker:n.marker,indent:n.indent}),r}catch(t){return console.warn("Invalid input for parseFenceSpans:",t),[]}}function Mt(e,t){let r=0,n=e.length-1;for(;r<=n;){let o=Math.floor((r+n)/2),s=e[o];if(!s)break;if(t<=s.start){n=o-1;continue}if(t>=s.end){r=o+1;continue}return s}}function Dn(e,t){return !Mt(e,t)}function Ge(){return {open:false,ticks:0}}function Je(e,t){try{let r=z.string().parse(e),n=t?ze.parse(t):Ge(),o=Ve(r),s={open:n.open,ticks:n.ticks},{spans:a,state:i}=Co(r,o,s);return {inlineState:i,isInside:l=>Io(l,o)||Fo(l,a)}}catch(r){return console.warn("Invalid input for buildCodeSpanIndex:",r),{inlineState:Ge(),isInside:()=>false}}}function Co(e,t,r){let n=[],o=r.open,s=r.ticks,a=o?0:-1,i=0;for(;i<e.length;){let l=Oo(t,i);if(l){i=l.end;continue}if(e[i]!=="`"){i+=1;continue}let p=i,c=0;for(;i<e.length&&e[i]==="`";)c+=1,i+=1;if(!o){o=true,s=c,a=p;continue}c===s&&(n.push([a,i]),o=false,s=0,a=-1);}return o&&n.push([a,e.length]),{spans:n,state:{open:o,ticks:s}}}function Oo(e,t){return e.find(r=>t>=r.start&&t<r.end)}function Io(e,t){return t.some(r=>e>=r.start&&e<r.end)}function Fo(e,t){return t.some(([r,n])=>e>=r&&e<n)}k();var Ao={bold:{open:"**",close:"**"},italic:{open:"_",close:"_"},strikethrough:{open:"~~",close:"~~"},code:{open:"`",close:"`"},code_block:{open:"```\n",close:"```"},spoiler:{open:"||",close:"||"},blockquote:{open:"> ",close:""}};function Ke(e,t){try{let r=z.string().parse(e),n=Ce.parse(t);if(!r||n==="off")return r;let{ir:o,hasTables:s}=Oe(r,{linkify:!1,enableSpoilers:!1,autolink:!1,headingStyle:"none",blockquotePrefix:"",tableMode:n});return s?Ie(o,{styleMarkers:Ao,escapeText:a=>a,buildLink:(a,i)=>{let l=a.href.trim();return !l||!i.slice(a.start,a.end)?null:{start:a.start,end:a.end,open:"[",close:`](${l})`}}}):r}catch(r){return console.warn("Invalid input for convertMarkdownTables:",r),typeof e=="string"?e:""}}var Et;(p=>{function e(c,u){try{return we(c,u)}catch(g){return console.warn("Markdown.parse error:",g),{text:"",styles:[],links:[]}}}p.parse=e;function t(c,u){try{return Se(c,u)}catch(g){return console.warn("Markdown.render error:",g),""}}p.render=t;function r(c,u){try{return Ue(c,u)}catch(g){return console.warn("Markdown.format error:",g),typeof c=="string"?c:""}}p.format=r;function n(c){try{return Fe(c)}catch(u){return console.warn("Markdown.parseFrontmatter error:",u),{}}}p.parseFrontmatter=n;function o(c){try{return qe(c)}catch(u){return console.warn("Markdown.serializeFrontmatter error:",u),""}}p.serializeFrontmatter=o;function s(c){try{return Ye(c)}catch(u){return console.warn("Markdown.extractFrontmatter error:",u),{frontmatter:{},content:typeof c=="string"?c:""}}}p.extractFrontmatter=s;function a(c,u,g){try{return be(c,u,g)}catch(S){return console.warn("Markdown.chunk error:",S),typeof c=="string"&&c.length>0?[c]:[]}}p.chunk=a;function i(c,u){try{return Je(c,u)}catch(g){return console.warn("Markdown.buildCodeIndex error:",g),{inlineState:{open:false,ticks:0},isInside:()=>false}}}p.buildCodeIndex=i;function l(c,u){try{return Ke(c,u)}catch(g){return console.warn("Markdown.convertTables error:",g),typeof c=="string"?c:""}}p.convertTables=l;})(Et||(Et={}));k();function Nn(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r[r.length-1]??""}function Bo(e){if(!e)return "";let r=e.replace(/[/\\]+$/,"").split(/[/\\]/);return r.slice(0,r.length-1).join("/")+"/"}function Lo(e){if(!e)return "";let t=e.split(".");return t[t.length-1]}function _o(e,t=20){let r=Nn(e);if(r.length<=t)return r;let n=r.lastIndexOf("."),o=n<=0?"":r.slice(n),s=t-o.length-1;return s<=0?r.slice(0,t-1)+"\u2026":r.slice(0,s)+"\u2026"+o}function jo(e,t=20){if(e.length<=t)return e;let r=t-1,n=Math.ceil(r/2),o=Math.floor(r/2);return e.slice(0,n)+"\u2026"+e.slice(-o)}k();var Do=["load failed","network connection was lost","network request failed","failed to fetch","econnreset","econnrefused","etimedout","socket hang up"];function No(e){if(!e)return false;let t=String(e instanceof Error?e.message:e).toLowerCase();return Do.some(r=>t.includes(r))}async function zo(e,t={}){let{attempts:r=3,delay:n=500,factor:o=2,maxDelay:s=1e4,retryIf:a=No}=t,i;for(let l=0;l<r;l++)try{return await e()}catch(p){if(i=p,l===r-1||!a(p))throw p;let c=Math.min(n*o**l,s);await new Promise(u=>setTimeout(u,c));}throw i}k();var Ct;(zt=>{let e=a.create({service:"fetch"}),t=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"],r=false,n=null;function o(){return t.some(O=>{let I=process.env[O];return typeof I=="string"&&I.trim().length>0})}zt.hasProxyConfigured=o;function s(){let O=process.env.http_proxy||process.env.HTTP_PROXY;return process.env.https_proxy||process.env.HTTPS_PROXY||O}zt.getProxyUrl=s;function a$1(O={}){let I=O.httpProxy||O.httpsProxy||s();if(!I){e.warn("[Fetch] \u672A\u914D\u7F6E\u4EE3\u7406\uFF0C\u73AF\u5883\u53D8\u91CF HTTP_PROXY/HTTPS_PROXY \u672A\u8BBE\u7F6E");return}let j=new ProxyAgent({uri:I,connectTimeout:O.connectTimeout||1e4,keepAliveTimeout:O.keepAliveTimeout||3e4});n=getGlobalDispatcher(),setGlobalDispatcher(j),r=true,console.log(`[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u542F\u7528: ${I}`);}zt.enableProxy=a$1;function i(){!r||!n||(setGlobalDispatcher(n),r=false,n=null,console.log("[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u7981\u7528"));}zt.disableProxy=i;function l(){return r}zt.isProxyEnabled=l;async function p(O,I){let j=I?.timeout||3e4,Z=I?.responseType||"json",{timeout:G,responseType:ce,...ie}=I||{},V=null,_=null;try{ie.signal||(V=new AbortController,_=setTimeout(()=>V.abort(),j));let x=await fetch(O,{...ie,signal:ie.signal||V.signal});_&&clearTimeout(_);let m;switch(Z){case "arrayBuffer":m=await x.arrayBuffer();break;case "blob":m=await x.blob();break;case "buffer":{let f=await x.arrayBuffer();m=Buffer.from(f);break}case "text":m=await x.text();break;default:{let f=await x.text();try{m=JSON.parse(f);}catch{m=f;}break}}return {ok:x.ok,status:x.status,statusText:x.statusText,headers:x.headers,data:m,url:x.url}}catch(x){throw _&&clearTimeout(_),x}}async function c$1(O,I){let j=I?.retries||0,Z=I?.retryDelay||1e3,{retries:G,retryDelay:ce,responseType:ie,...V}=I||{},_;for(let x=0;x<=j;x++)try{return await p(O,{...V,responseType:I?.responseType})}catch(m){if(_=m,x<j){let f=Z*2**x;await new Promise(d=>setTimeout(d,f));}}throw _}async function u(O,I){return c$1(O,{method:"GET",...I})}zt.get=u;async function g(O,I,j){return c$1(O,{method:"POST",headers:{"Content-Type":"application/json",...j?.headers},body:I?JSON.stringify(I):void 0,...j})}zt.post=g;async function S(O,I,j){return c$1(O,{method:"PUT",headers:{"Content-Type":"application/json",...j?.headers},body:I?JSON.stringify(I):void 0,...j})}zt.put=S;async function R(O,I,j){return c$1(O,{method:"DELETE",headers:{"Content-Type":"application/json",...j?.headers},body:I?JSON.stringify(I):void 0,...j})}zt.del=R;async function D(O,I,j){return c$1(O,{method:"PATCH",headers:{"Content-Type":"application/json",...j?.headers},body:I?JSON.stringify(I):void 0,...j})}zt.patch=D;async function H(O,I){return c$1(O,I)}zt.request=H;function q(O={}){return o()?(a$1(O),true):false}zt.autoProxy=q;function N(O){return new TextEncoder().encode(O)}function le(O){return c.mimeType(O)}function ke(O){return O.startsWith("file://")}async function Ze(O){let I=fileURLToPath(O);return await L.file(I).bytes()}async function Nt(O,I,j){let Z=`----FetchFormBoundary${Date.now()}`,G=[];for(let f of I){let d=f.filename,w=`Content-Disposition: form-data; name="${f.name}"${d?`; filename="${d}"`:""}`;d&&(w+=`\r
82
82
  Content-Type: ${le(d)}`),w+=`\r
83
83
  \r
84
- `,Y.push(N(w));let y=f.value;if(typeof y=="string")if(ke(y)){let b=await Ze(y);d||(d=y.split("/").pop()||"file"),Y.push(b);}else Y.push(N(y));else Buffer.isBuffer(y)?Y.push(new Uint8Array(y.buffer,y.byteOffset,y.byteLength)):y instanceof Uint8Array&&Y.push(y);}let ce=N(`\r
84
+ `,G.push(N(w));let y=f.value;if(typeof y=="string")if(ke(y)){let b=await Ze(y);d||(d=y.split("/").pop()||"file"),G.push(b);}else G.push(N(y));else Buffer.isBuffer(y)?G.push(new Uint8Array(y.buffer,y.byteOffset,y.byteLength)):y instanceof Uint8Array&&G.push(y);}let ce=N(`\r
85
85
  --${Z}--`),ie=N(`\r
86
86
  --${Z}\r
87
- `),G=[];G.push(N(`--${Z}\r
88
- `));for(let f=0;f<Y.length;f++)G.push(Y[f]),f%2===1&&f<Y.length-1&&(G.push(ie),G.push(N(`--${Z}\r
89
- `)));G.push(ce);let _=G.reduce((f,d)=>f+d.length,0),x=new Uint8Array(_),m=0;for(let f of G)x.set(f,m),m+=f.length;return c$1(I,{method:"POST",headers:{"Content-Type":`multipart/form-data; boundary=${Z}`,...j?.headers},body:x,...j})}zt.postForm=Nt;})(Ct||(Ct={}));k();var It;(n=>{let e=["brave","calm","clever","cosmic","crisp","curious","eager","gentle","glowing","happy","hidden","jolly","kind","lucky","mighty","misty","neon","nimble","playful","proud","quick","quiet","shiny","silent","stellar","sunny","swift","tidy","witty"],t=["cabin","cactus","canyon","circuit","comet","eagle","engine","falcon","forest","garden","harbor","island","knight","lagoon","meadow","moon","mountain","nebula","orchid","otter","panda","pixel","planet","river","rocket","sailor","squid","star","tiger","wizard","wolf"];function r(){return [e[Math.floor(Math.random()*e.length)],t[Math.floor(Math.random()*t.length)]].join("-")}n.create=r;})(It||(It={}));k();function Hn(e){let t=new AbortController,r=setTimeout(t.abort.bind(t),e);return {controller:t,signal:t.signal,clearTimeout:()=>globalThis.clearTimeout(r)}}function qo(e,...t){let r=Hn(e);return {signal:AbortSignal.any([r.signal,...t]),clearTimeout:r.clearTimeout}}k();var Ot;(t=>{async function e(r,n){if(process.platform==="win32"){let o=he.resolve(r),s=he.resolve(n),a=`Expand-Archive -Path '${o}' -DestinationPath '${s}' -Force`,i=await ne.run("powershell",`-NoProfile -NonInteractive -Command "$global:ProgressPreference = 'SilentlyContinue'; ${a}"`);if(i.code!==0)throw new Error(`PowerShell exited with code ${i.code}: ${i.stderr}`)}else {let o=`unzip -o -q ${r} -d ${n}`,s=await ne.run(void 0,o);if(s.code!==0)throw new Error(`unzip exited with code ${s.code}: ${s.stderr}`)}}t.extractZip=e;})(Ot||(Ot={}));k();var Ft;(n=>{function e(o){return o?/^#[0-9a-fA-F]{6}$/.test(o):false}n.isValidHex=e;function t(o){let s=parseInt(o.slice(1,3),16),a=parseInt(o.slice(3,5),16),i=parseInt(o.slice(5,7),16);return {r:s,g:a,b:i}}n.hexToRgb=t;function r(o){if(!e(o))return;let{r:s,g:a,b:i}=t(o);return `\x1B[38;2;${s};${a};${i}m\x1B[1m`}n.hexToAnsiBold=r;})(Ft||(Ft={}));k();var $t;(r=>{class e extends Error{constructor(s){super(`No context found for ${s}`);c$1(this,"name",s);}}r.NotFound=e;function t(n){let o=new AsyncLocalStorage;return {use(){let s=o.getStore();if(!s)throw new e(n);return s},provide(s,a){return o.run(s,a)}}}r.create=t;})($t||($t={}));k();function Go(e){return {[Symbol.dispose](){e();},[Symbol.asyncDispose](){return Promise.resolve(e())}}}k();var At;(t=>{async function e(){return new Promise(r=>{let n=()=>{process._getActiveHandles().length===0&&process._getActiveRequests().length===0?r():setImmediate(n);};n();})}t.wait=e;})(At||(At={}));k();function Yo(e){if(e<=0)return "";if(e<60)return `${e}s`;if(e<3600){let r=Math.floor(e/60),n=e%60;return n>0?`${r}m ${n}s`:`${r}m`}if(e<86400){let r=Math.floor(e/3600),n=Math.floor(e%3600/60);return n>0?`${r}h ${n}m`:`${r}h`}if(e<604800){let r=Math.floor(e/86400);return r===1?"~1 day":`~${r} days`}let t=Math.floor(e/604800);return t===1?"~1 week":`~${t} weeks`}k();var Bt;(a=>{function e(i,l){if(i===l)return true;if(typeof i!="object"||typeof l!="object"||i===null||l===null)return false;let p=Object.keys(i),c=Object.keys(l);if(p.length!==c.length)return false;for(let u of p)if(!c.includes(u)||!e(i[u],l[u]))return false;return true}function t(i){return {...i,super:i.super??false}}function r(i,l){return i?e(t(i),t(l)):false}a.match=r;function n(i,l=false){return {name:i.name,ctrl:i.ctrl,meta:i.meta,shift:i.shift,super:i.super??false,leader:l}}a.fromParsedKey=n;function o(i){if(!i)return "";let l=[];i.ctrl&&l.push("ctrl"),i.meta&&l.push("alt"),i.super&&l.push("super"),i.shift&&l.push("shift"),i.name&&(i.name==="delete"?l.push("del"):l.push(i.name));let p=l.join("+");return i.leader&&(p=p?`<leader> ${p}`:"<leader>"),p}a.keyToString=o;function s(i){return i==="none"?[]:i.split(",").map(l=>{let c=l.replace(/<leader>/g,"leader+").toLowerCase().split("+"),u={ctrl:false,meta:false,shift:false,super:false,leader:false,name:""};for(let g of c)switch(g){case "ctrl":u.ctrl=true;break;case "alt":case "meta":case "option":u.meta=true;break;case "super":u.super=true;break;case "shift":u.shift=true;break;case "leader":u.leader=true;break;case "esc":u.name="escape";break;default:u.name=g;break}return u})}a.parse=s;})(Bt||(Bt={}));k();var Lt;(p=>{function e(c){return c.replace(/\b\w/g,u=>u.toUpperCase())}p.titlecase=e;function t(c){return new Date(c).toLocaleTimeString(void 0,{timeStyle:"short"})}p.time=t;function r(c){let u=new Date(c),g=t(c),S=u.toLocaleDateString();return `${g} \xB7 ${S}`}p.datetime=r;function n(c){let u=new Date(c),g=new Date;return u.getFullYear()===g.getFullYear()&&u.getMonth()===g.getMonth()&&u.getDate()===g.getDate()?t(c):r(c)}p.todayTimeOrDateTime=n;function o(c){return c>=1e6?(c/1e6).toFixed(1)+"M":c>=1e3?(c/1e3).toFixed(1)+"K":c.toString()}p.number=o;function s(c){if(c<1e3)return `${c}ms`;if(c<6e4)return `${(c/1e3).toFixed(1)}s`;if(c<36e5){let S=Math.floor(c/6e4),P=Math.floor(c%6e4/1e3);return `${S}m ${P}s`}if(c<864e5){let S=Math.floor(c/36e5),P=Math.floor(c%36e5/6e4);return `${S}h ${P}m`}let u=Math.floor(c/36e5);return `${Math.floor(c%36e5/864e5)}d ${u}h`}p.duration=s;function a(c,u){return c.length<=u?c:c.slice(0,u-1)+"\u2026"}p.truncate=a;function i(c,u=35){if(c.length<=u)return c;let g="\u2026",S=Math.ceil((u-g.length)/2),P=Math.floor((u-g.length)/2);return c.slice(0,S)+g+c.slice(-P)}p.truncateMiddle=i;function l(c,u,g){return (c===1?u:g).replace("{}",c.toString())}p.pluralize=l;})(Lt||(Lt={}));k();function Jo(){return !!(process.env.HTTP_PROXY||process.env.HTTPS_PROXY||process.env.http_proxy||process.env.https_proxy)}k();var _t=class{constructor(){c$1(this,"queue",[]);c$1(this,"resolvers",[]);}push(t){let r=this.resolvers.shift();r?r(t):this.queue.push(t);}async next(){return this.queue.length>0?this.queue.shift():new Promise(t=>this.resolvers.push(t))}async*[Symbol.asyncIterator](){for(;;)yield await this.next();}};async function Ko(e,t,r){let n=[...t];await Promise.all(Array.from({length:e},async()=>{for(;;){let o=n.pop();if(o===void 0)return;await r(o);}}));}k();function Zo(){let e,t=new Promise(r=>e=r);return {trigger(){return e()},wait(){return t}}}k();function Xo(e,t){let r;return Promise.race([e.then(n=>(clearTimeout(r),n)),new Promise((n,o)=>{r=setTimeout(()=>{o(new Error(`Operation timed out after ${t}ms`));},t);})])}k();var jt;(a=>{let r=/[\u4e00-\u9fff\u3400-\u4dbf]/g;function n(i){if(!i)return 0;let l=String(i),p=(l.match(r)||[]).length,c=l.length-p,u=Math.round(p/1.5),g=Math.round(c/4);return Math.max(0,u+g)}a.estimate=n;function o(i){if(i==null)return 0;try{let l=typeof i=="string"?i:JSON.stringify(i);return n(l)}catch{return 0}}a.estimateObject=o;function s(i){if(i.total!==void 0&&i.total>0)return i.total;let l=i.input??0,p=i.output??0,c=i.cache?.read??0,u=i.cache?.write??0;return l+p+c+u}a.total=s;})(jt||(jt={}));k();function es(e){let t={};for(let[r,n]of Object.entries(e.required().shape))t[r]=n.nullable();return je.object(t)}k();var Dt;(s=>{function e(a,i){let l=i.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return l.endsWith(" .*")&&(l=l.slice(0,-3)+"( .*)?"),new RegExp("^"+l+"$","s").test(a)}s.match=e;function t(a){return a.sort((i,l)=>{let p=i[0].length-l[0].length;return p!==0?p:i[0].localeCompare(l[0])})}function r(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p)e(a,u)&&(c=g);return c}s.all=r;function n(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p){let S=u.split(/\s+/);e(a.head,S[0])&&(S.length===1||o(a.tail,S.slice(1)))&&(c=g);}return c}s.allStructured=n;function o(a,i){if(i.length===0)return true;if(a.length<i.length)return false;for(let l=0;l<i.length;l++)if(!e(a[l],i[l]))return false;return true}})(Dt||(Dt={}));async function pc(e){let{Log:t}=await import('./chunks/log-K3P7BT54.mjs'),r=false;await t.init({logDir:e.logDir??process.env.EASBOT_LOG_PATH??process.cwd(),print:e.print??false,dev:e.dev??r,level:e.level??("INFO")});}export{Ir as $,Ot as Archive,_t as AsyncQueue,tt as Binary,Ft as Color,$t as Context,nt as Encode,At as EventLoop,Ct as Fetch,bt as Fn,Te as Identifier,gt as Ignore,Bt as Keybind,pe as Lazy,Lt as Locale,Et as Markdown,mt as NamedError,L as PKG,ve as PkgShell,it as SessionTitle,ne as Shell,It as Slug,jt as Token,rt as TruncateContent,Dt as Wildcard,Hn as abortAfter,qo as abortAfterAny,Je as buildCodeSpanIndex,_n as chunkMarkdownIR,be as chunkText,xt as chunkTextByBreakResolver,Ke as convertMarkdownTables,Ye as createInlineCodeState,de as createPkgShell,lt as createRESTServer,at as createRPCServer,ae as createServer,ut as createStreamingServer,ct as createWebSocketServer,Go as defer,mn as detectPlatform,pt as escapeCommandArg,pn as escapeCommandArgSafe,Ve as extractFrontmatter,Mt as findFenceSpanAt,Jn as findLast,Fr as fn,Yo as formatDuration,ot as formatLocalISO,st as formatLocalISOCompact,er as formatLogTime,Ue as formatMarkdown,Bo as getDirectory,Lo as getFileExtension,Nn as getFilename,_o as getFilenameTruncated,tr as getTimezoneOffset,_r as git,Ur as iife,pc as initLog,Dn as isSafeFenceBreak,me as joinCommandArgs,Ae as lazy,nr as lazyAsync,Lr as loadEnv,Hr as loadTextFile,Wr as loadTextFileAsync,we as markdownToIR,Ie as markdownToIRWithMeta,dn as needsShellExecution,Vt as now,Xn as nowLocalISO,oe as parseCommand,fn as parseCommandWithOptions,Ge as parseFenceSpans,Fe as parseFrontmatterBlock,Qn as parseLocalISO,qr as parseModelId,Jo as proxied,Mr as readableStreamToText,Se as renderMarkdown,Oe as renderMarkdownWithMarkers,zo as retry,yt as scanParenAwareBreakpoints,qe as serializeFrontmatter,hn as shell,Zo as signal,ir as startServer,jo as truncateMiddle,es as updateSchema,Er as whichSync,Xo as withTimeout,Ko as work};
87
+ `),V=[];V.push(N(`--${Z}\r
88
+ `));for(let f=0;f<G.length;f++)V.push(G[f]),f%2===1&&f<G.length-1&&(V.push(ie),V.push(N(`--${Z}\r
89
+ `)));V.push(ce);let _=V.reduce((f,d)=>f+d.length,0),x=new Uint8Array(_),m=0;for(let f of V)x.set(f,m),m+=f.length;return c$1(O,{method:"POST",headers:{"Content-Type":`multipart/form-data; boundary=${Z}`,...j?.headers},body:x,...j})}zt.postForm=Nt;})(Ct||(Ct={}));k();var Ot;(n=>{let e=["brave","calm","clever","cosmic","crisp","curious","eager","gentle","glowing","happy","hidden","jolly","kind","lucky","mighty","misty","neon","nimble","playful","proud","quick","quiet","shiny","silent","stellar","sunny","swift","tidy","witty"],t=["cabin","cactus","canyon","circuit","comet","eagle","engine","falcon","forest","garden","harbor","island","knight","lagoon","meadow","moon","mountain","nebula","orchid","otter","panda","pixel","planet","river","rocket","sailor","squid","star","tiger","wizard","wolf"];function r(){return [e[Math.floor(Math.random()*e.length)],t[Math.floor(Math.random()*t.length)]].join("-")}n.create=r;})(Ot||(Ot={}));k();function Hn(e){let t=new AbortController,r=setTimeout(t.abort.bind(t),e);return {controller:t,signal:t.signal,clearTimeout:()=>globalThis.clearTimeout(r)}}function qo(e,...t){let r=Hn(e);return {signal:AbortSignal.any([r.signal,...t]),clearTimeout:r.clearTimeout}}k();var It;(t=>{async function e(r,n){if(process.platform==="win32"){let o=he.resolve(r),s=he.resolve(n),a=`Expand-Archive -Path '${o}' -DestinationPath '${s}' -Force`,i=await ne.run("powershell",`-NoProfile -NonInteractive -Command "$global:ProgressPreference = 'SilentlyContinue'; ${a}"`);if(i.code!==0)throw new Error(`PowerShell exited with code ${i.code}: ${i.stderr}`)}else {let o=`unzip -o -q ${r} -d ${n}`,s=await ne.run(void 0,o);if(s.code!==0)throw new Error(`unzip exited with code ${s.code}: ${s.stderr}`)}}t.extractZip=e;})(It||(It={}));k();var Ft;(n=>{function e(o){return o?/^#[0-9a-fA-F]{6}$/.test(o):false}n.isValidHex=e;function t(o){let s=parseInt(o.slice(1,3),16),a=parseInt(o.slice(3,5),16),i=parseInt(o.slice(5,7),16);return {r:s,g:a,b:i}}n.hexToRgb=t;function r(o){if(!e(o))return;let{r:s,g:a,b:i}=t(o);return `\x1B[38;2;${s};${a};${i}m\x1B[1m`}n.hexToAnsiBold=r;})(Ft||(Ft={}));k();var $t;(r=>{class e extends Error{constructor(s){super(`No context found for ${s}`);c$1(this,"name",s);}}r.NotFound=e;function t(n){let o=new AsyncLocalStorage;return {use(){let s=o.getStore();if(!s)throw new e(n);return s},provide(s,a){return o.run(s,a)}}}r.create=t;})($t||($t={}));k();function Vo(e){return {[Symbol.dispose](){e();},[Symbol.asyncDispose](){return Promise.resolve(e())}}}k();var At;(t=>{async function e(){return new Promise(r=>{let n=()=>{process._getActiveHandles().length===0&&process._getActiveRequests().length===0?r():setImmediate(n);};n();})}t.wait=e;})(At||(At={}));k();function Go(e){if(e<=0)return "";if(e<60)return `${e}s`;if(e<3600){let r=Math.floor(e/60),n=e%60;return n>0?`${r}m ${n}s`:`${r}m`}if(e<86400){let r=Math.floor(e/3600),n=Math.floor(e%3600/60);return n>0?`${r}h ${n}m`:`${r}h`}if(e<604800){let r=Math.floor(e/86400);return r===1?"~1 day":`~${r} days`}let t=Math.floor(e/604800);return t===1?"~1 week":`~${t} weeks`}k();var Bt;(a=>{function e(i,l){if(i===l)return true;if(typeof i!="object"||typeof l!="object"||i===null||l===null)return false;let p=Object.keys(i),c=Object.keys(l);if(p.length!==c.length)return false;for(let u of p)if(!c.includes(u)||!e(i[u],l[u]))return false;return true}function t(i){return {...i,super:i.super??false}}function r(i,l){return i?e(t(i),t(l)):false}a.match=r;function n(i,l=false){return {name:i.name,ctrl:i.ctrl,meta:i.meta,shift:i.shift,super:i.super??false,leader:l}}a.fromParsedKey=n;function o(i){if(!i)return "";let l=[];i.ctrl&&l.push("ctrl"),i.meta&&l.push("alt"),i.super&&l.push("super"),i.shift&&l.push("shift"),i.name&&(i.name==="delete"?l.push("del"):l.push(i.name));let p=l.join("+");return i.leader&&(p=p?`<leader> ${p}`:"<leader>"),p}a.keyToString=o;function s(i){return i==="none"?[]:i.split(",").map(l=>{let c=l.replace(/<leader>/g,"leader+").toLowerCase().split("+"),u={ctrl:false,meta:false,shift:false,super:false,leader:false,name:""};for(let g of c)switch(g){case "ctrl":u.ctrl=true;break;case "alt":case "meta":case "option":u.meta=true;break;case "super":u.super=true;break;case "shift":u.shift=true;break;case "leader":u.leader=true;break;case "esc":u.name="escape";break;default:u.name=g;break}return u})}a.parse=s;})(Bt||(Bt={}));k();var Lt;(p=>{function e(c){return c.replace(/\b\w/g,u=>u.toUpperCase())}p.titlecase=e;function t(c){return new Date(c).toLocaleTimeString(void 0,{timeStyle:"short"})}p.time=t;function r(c){let u=new Date(c),g=t(c),S=u.toLocaleDateString();return `${g} \xB7 ${S}`}p.datetime=r;function n(c){let u=new Date(c),g=new Date;return u.getFullYear()===g.getFullYear()&&u.getMonth()===g.getMonth()&&u.getDate()===g.getDate()?t(c):r(c)}p.todayTimeOrDateTime=n;function o(c){return c>=1e6?(c/1e6).toFixed(1)+"M":c>=1e3?(c/1e3).toFixed(1)+"K":c.toString()}p.number=o;function s(c){if(c<1e3)return `${c}ms`;if(c<6e4)return `${(c/1e3).toFixed(1)}s`;if(c<36e5){let S=Math.floor(c/6e4),R=Math.floor(c%6e4/1e3);return `${S}m ${R}s`}if(c<864e5){let S=Math.floor(c/36e5),R=Math.floor(c%36e5/6e4);return `${S}h ${R}m`}let u=Math.floor(c/36e5);return `${Math.floor(c%36e5/864e5)}d ${u}h`}p.duration=s;function a(c,u){return c.length<=u?c:c.slice(0,u-1)+"\u2026"}p.truncate=a;function i(c,u=35){if(c.length<=u)return c;let g="\u2026",S=Math.ceil((u-g.length)/2),R=Math.floor((u-g.length)/2);return c.slice(0,S)+g+c.slice(-R)}p.truncateMiddle=i;function l(c,u,g){return (c===1?u:g).replace("{}",c.toString())}p.pluralize=l;})(Lt||(Lt={}));k();var Jo=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"];function Ko(){return Jo.some(e=>process.env[e])}function Zo(){return process.env.HTTPS_PROXY||process.env.https_proxy||process.env.HTTP_PROXY||process.env.http_proxy}function Xo(){let e=process.env.HTTP_PROXY||process.env.http_proxy,t=process.env.HTTPS_PROXY||process.env.https_proxy;return {http:e,https:t,enabled:!!(e||t)}}k();var _t=class{constructor(){c$1(this,"queue",[]);c$1(this,"resolvers",[]);}push(t){let r=this.resolvers.shift();r?r(t):this.queue.push(t);}async next(){return this.queue.length>0?this.queue.shift():new Promise(t=>this.resolvers.push(t))}async*[Symbol.asyncIterator](){for(;;)yield await this.next();}};async function Qo(e,t,r){let n=[...t];await Promise.all(Array.from({length:e},async()=>{for(;;){let o=n.pop();if(o===void 0)return;await r(o);}}));}k();function es(){let e,t=new Promise(r=>e=r);return {trigger(){return e()},wait(){return t}}}k();function ts(e,t){let r;return Promise.race([e.then(n=>(clearTimeout(r),n)),new Promise((n,o)=>{r=setTimeout(()=>{o(new Error(`Operation timed out after ${t}ms`));},t);})])}k();var jt;(a=>{let r=/[\u4e00-\u9fff\u3400-\u4dbf]/g;function n(i){if(!i)return 0;let l=String(i),p=(l.match(r)||[]).length,c=l.length-p,u=Math.round(p/1.5),g=Math.round(c/4);return Math.max(0,u+g)}a.estimate=n;function o(i){if(i==null)return 0;try{let l=typeof i=="string"?i:JSON.stringify(i);return n(l)}catch{return 0}}a.estimateObject=o;function s(i){if(i.total!==void 0&&i.total>0)return i.total;let l=i.input??0,p=i.output??0,c=i.cache?.read??0,u=i.cache?.write??0;return l+p+c+u}a.total=s;})(jt||(jt={}));k();function rs(e){let t={};for(let[r,n]of Object.entries(e.required().shape))t[r]=n.nullable();return je.object(t)}k();var Dt;(s=>{function e(a,i){let l=i.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*").replace(/\?/g,".");return l.endsWith(" .*")&&(l=l.slice(0,-3)+"( .*)?"),new RegExp("^"+l+"$","s").test(a)}s.match=e;function t(a){return a.sort((i,l)=>{let p=i[0].length-l[0].length;return p!==0?p:i[0].localeCompare(l[0])})}function r(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p)e(a,u)&&(c=g);return c}s.all=r;function n(a,i){let l=Object.entries(i),p=t(l),c;for(let[u,g]of p){let S=u.split(/\s+/);e(a.head,S[0])&&(S.length===1||o(a.tail,S.slice(1)))&&(c=g);}return c}s.allStructured=n;function o(a,i){if(i.length===0)return true;if(a.length<i.length)return false;for(let l=0;l<i.length;l++)if(!e(a[l],i[l]))return false;return true}})(Dt||(Dt={}));async function hc(e){let{Log:t}=await import('./chunks/log-K3P7BT54.mjs'),r=false;await t.init({logDir:e.logDir??process.env.EASBOT_LOG_PATH??process.cwd(),print:e.print??false,dev:e.dev??r,level:e.level??("INFO")});}export{Or as $,It as Archive,_t as AsyncQueue,tt as Binary,Ft as Color,$t as Context,nt as Encode,At as EventLoop,Ct as Fetch,bt as Fn,Te as Identifier,gt as Ignore,Bt as Keybind,pe as Lazy,Lt as Locale,Et as Markdown,mt as NamedError,L as PKG,ve as PkgShell,it as SessionTitle,ne as Shell,Ot as Slug,jt as Token,rt as TruncateContent,Dt as Wildcard,Hn as abortAfter,qo as abortAfterAny,Je as buildCodeSpanIndex,_n as chunkMarkdownIR,be as chunkText,xt as chunkTextByBreakResolver,Ke as convertMarkdownTables,Ge as createInlineCodeState,de as createPkgShell,lt as createRESTServer,at as createRPCServer,ae as createServer,ut as createStreamingServer,ct as createWebSocketServer,Vo as defer,mn as detectPlatform,pt as escapeCommandArg,pn as escapeCommandArgSafe,Ye as extractFrontmatter,Mt as findFenceSpanAt,Jn as findLast,Fr as fn,Go as formatDuration,ot as formatLocalISO,st as formatLocalISOCompact,er as formatLogTime,Ue as formatMarkdown,Bo as getDirectory,Lo as getFileExtension,Nn as getFilename,_o as getFilenameTruncated,Xo as getProxyConfig,Zo as getProxyUrl,tr as getTimezoneOffset,_r as git,Ur as iife,hc as initLog,Dn as isSafeFenceBreak,me as joinCommandArgs,Ae as lazy,nr as lazyAsync,Lr as loadEnv,Hr as loadTextFile,Wr as loadTextFileAsync,we as markdownToIR,Oe as markdownToIRWithMeta,dn as needsShellExecution,Yt as now,Xn as nowLocalISO,oe as parseCommand,fn as parseCommandWithOptions,Ve as parseFenceSpans,Fe as parseFrontmatterBlock,Qn as parseLocalISO,qr as parseModelId,Ko as proxied,Mr as readableStreamToText,Se as renderMarkdown,Ie as renderMarkdownWithMarkers,zo as retry,yt as scanParenAwareBreakpoints,qe as serializeFrontmatter,hn as shell,es as signal,ir as startServer,jo as truncateMiddle,rs as updateSchema,Er as whichSync,ts as withTimeout,Qo as work};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easbot/utils",
3
- "version": "0.2.28",
3
+ "version": "0.2.32",
4
4
  "description": "Shared utilities library for EASBOT ecosystem",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -64,7 +64,7 @@
64
64
  "ws": "^8.20.0",
65
65
  "yaml": "^2.8.4",
66
66
  "zod": "^4.4.3",
67
- "@easbot/types": "0.2.28"
67
+ "@easbot/types": "0.2.32"
68
68
  },
69
69
  "devDependencies": {
70
70
  "@biomejs/biome": "^2.4.14",