@easbot/utils 0.3.16 → 0.3.19
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/chunks/{chunk-PVTJQVMO.cjs → chunk-5XHOPT4Y.cjs} +1 -1
- package/dist/chunks/chunk-GVXRTRAT.cjs +2 -0
- package/dist/chunks/{chunk-QBLZGSTI.cjs → chunk-KKCFNFFR.cjs} +5 -5
- package/dist/chunks/{chunk-JI7GHGIF.mjs → chunk-N26SFBEH.mjs} +2 -2
- package/dist/chunks/{chunk-ZA3GGWB3.mjs → chunk-OEWMITBM.mjs} +1 -1
- package/dist/chunks/chunk-XGZ7XJWW.mjs +2 -0
- package/dist/chunks/filesystem-DXKLXORJ.cjs +1 -0
- package/dist/chunks/filesystem-YGESISP6.mjs +1 -0
- package/dist/chunks/registry-CEQNVNEA.cjs +1 -0
- package/dist/chunks/registry-JMOZUWPG.mjs +1 -0
- package/dist/chunks/shell-4USPDVM2.cjs +1 -0
- package/dist/chunks/shell-GC34UPJP.mjs +1 -0
- package/dist/index.cjs +20 -20
- package/dist/index.d.cts +66 -1
- package/dist/index.d.ts +66 -1
- package/dist/index.mjs +20 -20
- package/package.json +2 -2
- package/dist/chunks/chunk-AJU5GBQB.cjs +0 -2
- package/dist/chunks/chunk-QNKOAEBG.mjs +0 -2
- package/dist/chunks/filesystem-TBYCQ7D2.cjs +0 -1
- package/dist/chunks/filesystem-WCPIBXDN.mjs +0 -1
- package/dist/chunks/registry-7SGIVICB.cjs +0 -1
- package/dist/chunks/registry-ZZW4VHED.mjs +0 -1
- package/dist/chunks/shell-NYVVJ4D5.mjs +0 -1
- package/dist/chunks/shell-XYMW3MHM.cjs +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
export{a as Lock}from'./chunks/chunk-GOEMY5AZ.mjs';import {b,D,
|
|
2
|
-
Full ${
|
|
3
|
-
Use Read tool with offset/limit parameters to view specific sections.]`:`[Content truncated. Full ${
|
|
4
|
-
Use Read tool with offset/limit parameters to view specific sections.]`}async function
|
|
1
|
+
export{a as Lock}from'./chunks/chunk-GOEMY5AZ.mjs';import {a,b,D,G,c as c$1}from'./chunks/chunk-N26SFBEH.mjs';export{H as $,j as HTTPException,d as Hono,c as Lazy,D as PKG,A as PkgShell,G as Shell,g as compress,e as cors,s as createNodeWebSocket,B as createPkgShell,p as createRESTServer,n as createRPCServer,m as createServer,r as createStreamingServer,q as createWebSocketServer,y as detectPlatform,w as escapeCommandArg,x as escapeCommandArgSafe,z as joinCommandArgs,a as lazy,b as lazyAsync,f as logger,u as needsShellExecution,t as parseCommand,v as parseCommandWithOptions,E as readableStreamToText,h as secureHeaders,C as shell,o as startServer,i as timeout,k as validator,F as whichSync,l as zValidator}from'./chunks/chunk-N26SFBEH.mjs';import {d,b as b$2,a as a$1}from'./chunks/chunk-XGZ7XJWW.mjs';export{d as Filesystem,b as Glob,c as MIME_TYPES,a as Wildcard}from'./chunks/chunk-XGZ7XJWW.mjs';import {m,b as b$1}from'./chunks/chunk-OEWMITBM.mjs';export{m as Log,o as PackageRegistry,n as Semver,l as addMinutesInTimezone,a as formatLocalISO,b as formatLocalISOCompact,f as formatLogTime,g as formatLogTimeMs,h as getTimezoneOffset,i as getTimezoneParts,j as isValidTimezone,k as normalizeTimezone,c as now,d as nowLocalISO,e as parseLocalISO}from'./chunks/chunk-OEWMITBM.mjs';import {f,c,d as d$1}from'./chunks/chunk-6GV3NECV.mjs';import ue,{readFile,writeFile,rename}from'fs/promises';import B,{z}from'zod';import {randomBytes}from'crypto';import {config}from'dotenv';import Ae,{dirname,join}from'path';import {xdgData,xdgConfig}from'xdg-basedir';import Ot from'os';import {existsSync,mkdirSync,readdirSync,statSync}from'fs';import {fileURLToPath}from'url';import ge from'gray-matter';import {ProxyAgent,getGlobalDispatcher,setGlobalDispatcher}from'undici';import {AsyncLocalStorage}from'async_hooks';f();f();function Tt(r,t){for(let n=r.length-1;n>=0;n-=1){let o=r[n];if(o!==void 0&&t(o,n,r))return o}}f();var ye;(n=>{function r(o,a,c){let m=0,i=o.length-1;for(;m<=i;){let u=Math.floor((m+i)/2),x=o[u];if(x===void 0)break;let b=c(x);if(b===a)return {found:true,index:u};b<a?m=u+1:i=u-1;}return {found:false,index:m}}n.search=r;function t(o,a,c){let m=c(a),i=0,u=o.length;for(;i<u;){let x=Math.floor((i+u)/2),b=o[x];if(b===void 0)break;c(b)<m?i=x+1:u=x;}return o.splice(i,0,a),o}n.insert=t;})(ye||(ye={}));f();var be;(c=>{function r(m){let i=new TextEncoder().encode(m),u=Array.from(i,x=>String.fromCharCode(x)).join("");return btoa(u).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}c.base64Encode=r;function t(m){let i=atob(m.replace(/-/g,"+").replace(/_/g,"/")),u=Uint8Array.from(i,x=>x.charCodeAt(0));return new TextDecoder().decode(u)}c.base64Decode=t;async function n(m,i="SHA-256"){let x=new TextEncoder().encode(m),b=await crypto.subtle.digest(i,x);return Array.from(new Uint8Array(b)).map(h=>h.toString(16).padStart(2,"0")).join("")}c.hash=n;function o(m){if(!m)return;let i=2166136261;for(let u=0;u<m.length;u++)i^=m.charCodeAt(u),i=Math.imul(i,16777619);return (i>>>0).toString(36)}c.checksum=o;function a(m,i=5e5){if(!m)return;if(m.length<=i)return o(m);let u=4096,b=[0,Math.floor(m.length*.25),Math.floor(m.length*.5),Math.floor(m.length*.75),m.length-u].map(S=>{let P=Math.max(0,Math.min(m.length-u,S-Math.floor(u/2)));return o(m.slice(P,P+u))??""}).join(":");return `${m.length}:${b}`}c.sampledChecksum=a;})(be||(be={}));f();f();var ee;(S=>{let r={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",agent:"ag",subagent:"sub",hook:"hok",compaction:"cmp",context:"ctx",experience:"exp",pattern:"pat",knowledge:"knw",evolution:"evo",result:"res"};function t(P){return B.string().startsWith(r[P])}S.schema=t;let n=26,o=0,a=0;function c(P,h){return i(P,false,h)}S.ascending=c;function m(P,h){return i(P,true,h)}S.descending=m;function i(P,h,T){if(!T)return x(P,h);if(!T.startsWith(r[P]))throw new Error(`ID ${T} does not start with ${r[P]}`);return T}function u(P){let h="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",T="",E=randomBytes(P);for(let k=0;k<P;k++){let F=E[k];F!==void 0&&(T+=h[F%62]);}return T}function x(P,h,T){let E=T??Date.now();E!==o&&(o=E,a=0),a++;let k=BigInt(E)*BigInt(4096)+BigInt(a);k=h?~k:k;let F=Buffer.alloc(6);for(let z=0;z<6;z++)F[z]=Number(k>>BigInt(40-8*z)&BigInt(255));return r[P]+"_"+F.toString("hex")+u(n-12)}S.create=x;function b(P){let h=P.split("_")[0];if(!h)return 0;let T=P.slice(h.length+1,h.length+13),E=BigInt("0x"+T);return Number(E/BigInt(4096))}S.timestamp=b;})(ee||(ee={}));var we;(x=>{x.DEFAULT_MAX_CHARS=4e3,x.DIRECTION="head",x.DIR=d.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-output"),x.GLOB=d.join(x.DIR,"*");let a=10080*60*1e3;function c(b,S,P){return P?`[Content truncated. Source: ${P}
|
|
2
|
+
Full ${S} saved to: ${b}
|
|
3
|
+
Use Read tool with offset/limit parameters to view specific sections.]`:`[Content truncated. Full ${S} saved to: ${b}
|
|
4
|
+
Use Read tool with offset/limit parameters to view specific sections.]`}async function m(b,S={}){let P=S.maxChars??4e3,h=S.direction??x.DIRECTION,T=S.label??"content",E=S.sourcePath,k=d.join(process.env.EASBOT_DATA_PATH??`${process.cwd()}/data`,"context-output"),F=S.dir??k;if(b.length<=P)return {content:b,truncated:false};let z=ee.ascending("context"),j=d.join(F,z);await ue.mkdir(F,{recursive:true}).catch(()=>{}),await ue.writeFile(j,b,"utf-8");let H=b.length-P,G;h==="head"?G=b.slice(0,P):G=b.slice(-P);let q=c(j,T,E),e=`${H} characters truncated`;return {content:h==="head"?`${G}
|
|
5
5
|
|
|
6
6
|
...${e}...
|
|
7
7
|
|
|
8
|
-
${
|
|
8
|
+
${q}`:`...${e}...
|
|
9
9
|
|
|
10
|
-
${
|
|
10
|
+
${q}
|
|
11
11
|
|
|
12
|
-
${
|
|
13
|
-
`):t;for(let o=0;o<n.length;o++){let a=n[o];this.parseRule(a,o+1);}return this}parseRule(t,n){let o=t,a=t;if(o.length===0||o.startsWith("#"))return;let c=o.startsWith("!");if(c&&(o=o.slice(1)),o=o.trim(),o.length===0||(o.startsWith("\\#")&&(o=o.slice(1)),o.startsWith("#")))return;let
|
|
12
|
+
${G}`,truncated:true,outputPath:j,originalLength:b.length,removedLength:H,label:T}}x.truncate=m;function i(b){return b.truncated?c(b.outputPath,b.label):""}x.formatHint=i;async function u(){let b=ee.timestamp(ee.create("context",false,Date.now()-a)),P=(await ue.readdir(x.DIR).catch(()=>[])).filter(h=>h.startsWith("context_"));for(let h of P)ee.timestamp(h)>=b||await ue.unlink(d.join(x.DIR,h)).catch(()=>{});}x.cleanup=u;})(we||(we={}));f();var Te;(i=>{let r="New session - ",t="Child session - ";i.parentTitlePrefix=r,i.childTitlePrefix=t;function a(u=false){return (u?t:r)+b$1(new Date)}i.createDefault=a;function c(u){return new RegExp(`^(${r}|${t})\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}[+-]\\d{2}:\\d{2}$`).test(u)}i.isDefault=c;function m(u){let x=u.match(/^(.+) \(fork #(\d+)\)$/);if(x){let b=x[1]??"",S=parseInt(x[2]??"0",10);return `${b} (fork #${S+1})`}return `${u} (fork #1)`}i.getForked=m;})(Te||(Te={}));f();var ae=class ae extends Error{static create(t,n){var c$1;let o=B.object({name:B.literal(t),data:n}).meta({ref:t}),a=(c$1=class extends ae{constructor(i,u){super(t,u);c(this,"data",i);c(this,"name",t);this.name=t;}static isInstance(i){return i!==null&&typeof i=="object"&&"name"in i&&i.name===t}schema(){return o}toObject(){return {name:t,data:this.data}}},c(c$1,"Schema",o),c$1);return Object.defineProperty(a,"name",{value:t}),a}};c(ae,"Unknown",ae.create("UnknownError",B.object({message:B.string()})));var ce=ae;f();var Pe;(t=>{function r(n){return new Ee(n)}t.create=r;})(Pe||(Pe={}));var Ee=class{constructor(t){c(this,"rules",[]);c(this,"ignorecase");c(this,"debug");this.ignorecase=t?.ignorecase??false,this.debug=t?.debug??false;}add(t){let n=typeof t=="string"?t.split(`
|
|
13
|
+
`):t;for(let o=0;o<n.length;o++){let a=n[o];this.parseRule(a,o+1);}return this}parseRule(t,n){let o=t,a=t;if(o.length===0||o.startsWith("#"))return;let c=o.startsWith("!");if(c&&(o=o.slice(1)),o=o.trim(),o.length===0||(o.startsWith("\\#")&&(o=o.slice(1)),o.startsWith("#")))return;let m=o.startsWith("/");m&&(o=o.slice(1));let i=o.endsWith("/");i&&(o=o.slice(0,-1)),o.length!==0&&this.rules.push({pattern:o,negative:c,isDirectory:i,anchored:m,original:a,lineNumber:n});}ignores(t,n){let o=this.normalizePath(t),a=n??t.endsWith("/"),c=this.checkIgnore(o,a);return this.debug&&console.log(`Ignore.ignores("${t}", isDirectory=${a}) => ${c}`),c}checkIgnore(t,n){let o=false;for(let a of this.rules)a.isDirectory&&!n||this.matchPath(a,t)&&(a.negative?o=false:o=true);return o}matchPath(t,n){let o=this.ignorecase?n.toLowerCase():n,c=this.ignorecase?t.pattern.toLowerCase():t.pattern;if(t.anchored)return a$1.match(o,c);if(c.includes("/"))return a$1.match(o,c);let m=o.split("/");for(let i of m)if(a$1.match(i,c))return true;return false}filter(t){return t.filter(n=>!this.ignores(n))}createFilter(){return t=>!this.ignores(t)}normalizePath(t){let n=t.replace(/\\/g,"/");if(n==="/")return "";for(;n.startsWith("./");)n=n.slice(2);return n.endsWith("/")&&n.length>1&&(n=n.slice(0,-1)),n}};f();function He(r,t){let n=o=>{let a;try{a=r.parse(o);}catch(c){throw console.trace("schema validation failure stack trace:"),c instanceof z.ZodError&&console.error("schema validation issues:",JSON.stringify(c.issues,null,2)),c}return t(a)};return n.force=o=>t(o),n.schema=r,n}var At=He,Re;(t=>t.fn=He)(Re||(Re={}));f();var kt=m.create({service:"env"});function vt(r={}){let t=r.isDevelopment??false,n=t?".env.dev":".env",o=r.globalConfigPath??(xdgConfig?Ae.join(xdgConfig,"easbot"):void 0),a=r.projectRoot??process.cwd(),c=a?Ae.join(a,".easbot"):void 0,m=[{root:o,label:"global"},{root:a,label:"project"},{root:c,label:"workspace"}],i=["XDG_CONFIG_HOME","XDG_DATA_HOME","XDG_CACHE_HOME","XDG_STATE_HOME","XDG_RUNTIME_DIR","EASBOT_CONFIG_PATH","EASBOT_DATA_PATH","EASBOT_CACHE_PATH","EASBOT_STATE_PATH","EASBOT_LOG_PATH"];for(let{root:u,label:x}of m){if(!u)continue;let b=Ae.join(u,n),P=config({path:b,override:true,debug:false,encoding:"utf-8",quiet:true}).parsed;if(P&&(t&&kt.debug("loadEnv: loaded env file",{layer:x,path:b,keyCount:Object.keys(P).length}),t)){let h=i.filter(T=>T in P);h.length>0&&console.warn(`[loadEnv] ${b} contains keys that have no effect: ${h.join(", ")}.
|
|
14
14
|
Reason: xdg-basedir caches XDG_* on import, so this .env file loads too late.
|
|
15
|
-
How to override: export them in the shell before loadEnv() runs, or set process.env directly.`);}}}f();async function
|
|
16
|
-
`),p=[];for(let
|
|
17
|
-
`);return e.replace(
|
|
15
|
+
How to override: export them in the shell before loadEnv() runs, or set process.env directly.`);}}}var Se;(m=>{let r=a(()=>({...process.env}));function t(){r.reset();}m.reset=t;async function n(i){return r()[i]}m.get=n;async function o(){return r()}m.all=o;async function a$1(i,u){r()[i]=u;}m.set=a$1;async function c(i){delete r()[i];}m.remove=c;})(Se||(Se={}));f();var Nt="easbot-oauth-dummy-key",Ft=m.create({service:"auth"}),ve;(T=>{T.Oauth=B.object({type:B.literal("oauth"),refresh:B.string(),access:B.string(),expires:B.number(),accountId:B.string().optional(),enterpriseUrl:B.string().optional()}).meta({ref:"OAuth"}),T.Api=B.object({type:B.literal("api"),key:B.string()}).meta({ref:"ApiAuth"}),T.WellKnown=B.object({type:B.literal("wellknown"),key:B.string(),token:B.string()}).meta({ref:"WellKnownAuth"}),T.Info=B.discriminatedUnion("type",[T.Oauth,T.Api,T.WellKnown]).meta({ref:"Auth"});function a(){let E=process.env.EASBOT_DATA_PATH??(xdgData?Ae.join(xdgData,"easbot"):Ot.tmpdir());return Ae.join(E,"auth.json")}let c=b(async()=>{let k=await D.file(a()).json().catch(()=>({})),F={};for(let[z,j]of Object.entries(k)){let H=T.Info.safeParse(j);if(H.success){F[z]=H.data;continue}Ft.warn("auth.json entry skipped: schema validation failed",{providerId:z,issues:H.error.issues.map(G=>({path:G.path,message:G.message}))});}return F}),m=Promise.resolve(),i=E=>{let k=m.then(E,E);return m=k.catch(()=>{}),k};async function u(E,k){let F=Ae.dirname(E);existsSync(F)||mkdirSync(F,{recursive:true});let z=`${E}.${process.pid}.${Date.now()}.tmp`;await writeFile(z,JSON.stringify(k,null,2),{mode:384});try{await rename(z,E);}catch(j){try{let{unlink:H}=await import('fs/promises');await H(z);}catch{}throw await D.write(E,JSON.stringify(k,null,2)),j}}function x(){c.reset();}T.reset=x;async function b$1(E){return (await c())[E]}T.get=b$1;async function S(){return c()}T.all=S;async function P(E,k){await i(async()=>{let F=a(),z=await D.file(F).json().catch(()=>({})),j={};for(let[H,G]of Object.entries(z)){let q=T.Info.safeParse(G);q.success&&(j[H]=q.data);}j[E]=k,await u(F,j),c.reset();});}T.set=P;async function h(E){await i(async()=>{let k=a(),F=await D.file(k).json().catch(()=>({}));if(!(E in F)){c.reset();return}let z={};for(let[j,H]of Object.entries(F)){if(j===E)continue;let G=T.Info.safeParse(H);G.success&&(z[j]=G.data);}await u(k,z),c.reset();});}T.remove=h;})(ve||(ve={}));f();async function Lt(r,t){if(process.env.EASBOT_CLIENT==="acp")try{let c=process.platform==="win32"?"cmd":void 0,m=G.spawn(c,`git ${r.join(" ")}`,{stdin:void 0,stdout:"pipe",stderr:"pipe",cwd:t.cwd,env:t.env?{...process.env,...t.env}:process.env}),[i,u,x]=await Promise.all([m.exited,new Response(m.stdout).arrayBuffer(),new Response(m.stderr).arrayBuffer()]),b=Buffer.from(u),S=Buffer.from(x);return {exitCode:i,text:()=>b.toString(),stdout:b,stderr:S}}catch(c){let m=Buffer.from(c instanceof Error?c.message:String(c));return {exitCode:1,text:()=>"",stdout:Buffer.alloc(0),stderr:m}}let n=t.env?{...process.env,...t.env}:void 0,o=G.$`git ${r.join(" ")}`.quiet().nothrow().cwd(t.cwd);n&&(o=o.env(n));let a=await o;return {exitCode:a.exitCode,text:()=>a.text(),stdout:a.stdout,stderr:a.stderr}}f();function Xe(r){return r?dirname(fileURLToPath(r)):typeof d$1<"u"?d$1:process.cwd()}function qe(r,t,n=3){function o(a,c){if(c>n||!existsSync(a))return null;try{let m=readdirSync(a);for(let i of m){let u=join(a,i);try{let x=statSync(u);if(x.isFile()&&u.endsWith(t))return u;if(x.isDirectory()&&c<n){let b=o(u,c+1);if(b)return b}}catch{}}}catch{}return null}return o(r,0)}function Je(r,t){let n=join(r,t);if(existsSync(n))return n;let o=t.split("/").pop()||t,a=r;for(let c=0;c<5;c++){let m=join(a,"assets","txt");if(existsSync(m)){let x=qe(m,o,5);if(x)return x}let i=join(a,"dist","assets","txt");if(existsSync(i)){let x=qe(i,o,5);if(x)return x}let u=join(a,"..");if(u===a)break;a=u;}return n}function Ut(r,t){return c$1.lazy(()=>{try{let n=Xe(t),o=Je(n,r);return D.file(o).textSync()}catch(n){throw console.error(`Failed to load text file: ${r}`,n),n}})}function Bt(r,t){return c$1.lazy(async()=>{try{let n=Xe(t),o=Je(n,r);return await D.file(o).text()}catch(n){throw console.error(`Failed to load text file: ${r}`,n),n}})}f();function Ht(r){return r()}f();function Gt(r){if(!r||typeof r!="string")return {provider:"",model:""};let t=r.indexOf("/");return t===-1?{provider:"",model:r}:{provider:r.substring(0,t),model:r.substring(t+1)}}f();var Ie;(q=>{q.FILE_REGEX=/(?<![\w`])#(\S+)/g,q.SHELL_REGEX=/!`([^`]+)`/g;function n(e){return Array.from(e.matchAll(q.FILE_REGEX))}q.files=n;function o(e){return Array.from(e.matchAll(q.SHELL_REGEX))}q.shell=o;function a(e){if(!e||typeof e!="string")return typeof e=="string"?e:"";let s=e.match(/^---\r?\n([\s\S]*?)\r?\n---/);if(!s)return e;let d=s[0],l=(s[1]??"").split(`
|
|
16
|
+
`),p=[];for(let w of l){if(w.trim().startsWith("#")||w.trim()===""){p.push(w);continue}if(w.match(/^\s+/)){p.push(w);continue}let L=w.match(/^([a-zA-Z_][a-zA-Z0-9_]*)\s*:\s*(.*)$/);if(!L){p.push(w);continue}let R=L[1],O=L?.[2]?.trim();if(O===""||O===">"||O==="|"||O?.startsWith('"')||O?.startsWith("'")){p.push(w);continue}if(O?.includes(":")){p.push(`${R}: |-`),p.push(` ${O}`);continue}p.push(w);}let y=p.join(`
|
|
17
|
+
`);return e.replace(d,`---
|
|
18
18
|
${y}
|
|
19
|
-
---`)}
|
|
20
|
-
Content-Type: ${
|
|
19
|
+
---`)}q.fallbackSanitization=a;function c(e){if(typeof e!="string")return null;if(!e)return {data:{},content:""};try{let s=ge(e);return {data:s.data??{},content:s.content??""}}catch{try{let s=ge(a(e));return {data:s.data??{},content:s.content??""}}catch{return null}}}async function m(e){let s=await readFile(e,"utf-8"),d=c(s);if(!d){let f=`${e}: Failed to parse YAML frontmatter`;throw new q.FrontmatterError({path:e,message:f},{cause:new Error(f)})}return d}q.parse=m;function i(e){if(!e||typeof e!="string")return {frontmatter:{},content:typeof e=="string"?e:""};let s=c(e);return s?{frontmatter:s.data,content:s.content}:{frontmatter:{},content:e}}q.extractFrontmatter=i;function u(e,s){let d=e??"";return !s||Object.keys(s).length===0?ge.stringify(d,void 0):ge.stringify(d,s)}q.format=u,q.FrontmatterError=ce.create("ConfigFrontmatterError",z.object({path:z.string(),message:z.string()}));function b(e,s){return S(e,s)}q.replaceVariables=b;function S(e,s){return P(e,s)}q.renderTemplate=S;function P(e,s){let d=e;return d=h(d,s),d=k(d,s),d=j(d,s),d=z$1(d,s),d=d.replace(/\{\{([^}]*)\}\}/g,(f,l)=>{let p=l.trim();if(!p)return "";let y=he(p,s);return y!==void 0?String(G(y)):""}),d}function h(e,s){let d=e.replace(/\{\{#if\s+\((eq|ne|gt|lt|gte|lte)\s+([^)]+)\)\}\}([\s\S]*?)\{\{(?:else)\}\}([\s\S]*?)\{\{\/if\}\}/g,(f,l,p,y,w)=>{if(!l||!p||!y||!w)return f;let{a:L,b:R}=T(p,s);return L===void 0||R===void 0?f:E(l,L,R)?y:w});return d=d.replace(/\{\{#if\s+\((eq|ne|gt|lt|gte|lte)\s+([^)]+)\)\}\}([\s\S]*?)\{\{\/if\}\}/g,(f,l,p,y)=>{if(!l||!p||!y)return f;let{a:w,b:L}=T(p,s);return w===void 0||L===void 0?f:E(l,w,L)?y:""}),d}function T(e,s){let d=/"([^"]*)"|(\w+(?:\.\w+|\[\d+\])*)/g,f=[],l;for(;(l=d.exec(e))!==null;)l[1]!==void 0?f.push(l[1]):l[2]!==void 0&&f.push(l[2]);if(f.length<2)return {a:void 0,b:void 0};let p=he(f[0],s),y=he(f[1],s);return {a:p,b:y}}function E(e,s,d){switch(e){case "eq":return s===d;case "ne":return s!==d;case "gt":return Number(s)>Number(d);case "lt":return Number(s)<Number(d);case "gte":return Number(s)>=Number(d);case "lte":return Number(s)<=Number(d);default:return false}}function k(e,s){let d=e.replace(/\{\{#unless\s+(\w+)\}\}([\s\S]*?)\{\{(?:else)\}\}([\s\S]*?)\{\{\/unless\}\}/g,(f,l,p,y)=>{if(!l||!p||!y)return f;let w=s[l];return F(w)?p:y});return d=d.replace(/\{\{#unless\s+(\w+)\}\}([\s\S]*?)\{\{\/unless\}\}/g,(f,l,p)=>{if(!l||!p)return f;let y=s[l];return F(y)?p:""}),d}function F(e){return e==null||e===false||e===""}function z$1(e,s){let d=e.replace(/\{\{#if\s+(\w+)\}\}([\s\S]*?)\{\{(?:else)\}\}([\s\S]*?)\{\{\/if\}\}/g,(f,l,p,y)=>{if(!l||!p||!y)return f;let w=l in s?s[l]:void 0;return F(w)?y:p});return d=d.replace(/\{\{#if\s+(\w+)\}\}([\s\S]*?)\{\{\/if\}\}/g,(f,l,p)=>{if(!l||!p)return f;let y=l in s?s[l]:void 0;return F(y)?"":p}),d}function j(e,s){let d=e.match(/\{\{#each\s+([\w.]+)\}\}/);if(!d?.[1])return e;let f=d[1],l=he(f,s),p=d[0],y=d.index,w=e.slice(y+p.length),L;if(Array.isArray(l))L=l.map((A,I)=>({key:String(I),value:A}));else if(l!==null&&typeof l=="object")L=Object.entries(l).map(([A,I])=>({key:A,value:I}));else return H(e,y,p,w);let R=1,O=-1,$=/\{\{#each\s+[\w.]+\}\}|\{\{\/each\}\}/g,N;for($.lastIndex=0;(N=$.exec(w))!==null;)if(N[0].startsWith("{{#each"))R++;else if(R--,R===0){O=N.index;break}if(O===-1)return e;let C=w.slice(0,O),X=e.slice(y,y+p.length+O+"{{/each}}".length);if(L.length===0)return e.replace(X,"");let _=L.map(({key:A,value:I},U)=>{let M={...s};return typeof I=="object"&&I!==null?(Object.assign(M,I),M.this=I,M["@value"]=I,M["@index"]=U,M["@key"]=A):(M.this=I,M["@value"]=I,M["@index"]=U,M["@key"]=A),P(C,M)});return e.replace(X,_.join(""))}function H(e,s,d,f,l){let p=/\{\{#each\s+[\w.]+\}\}|\{\{\/each\}\}/g,y=1,w=-1,L;for(p.lastIndex=0;(L=p.exec(f))!==null;)if(L[0].startsWith("{{#each"))y++;else if(y--,y===0){w=L.index;break}if(w===-1)return e;let O=e.slice(s,s+d.length+w+"{{/each}}".length);return e.replace(O,"")}function G(e){return e instanceof Date?b$1(e):Array.isArray(e)?e.map(G).join(", "):e!==null&&typeof e=="object"?JSON.stringify(e,null,2):String(e)}q.formatVariableValue=G;})(Ie||(Ie={}));function he(r,t){let n=/(@\w+)|(\w+)|\[(\d+)\]/g,o=t,a;for(;(a=n.exec(r))!==null;){if(o==null)return;if(a[1]!==void 0){let c=a[1];o=t[c];}else if(a[2]!==void 0){let c=a[2];if(typeof o=="object"&&o!==null)o=o[c];else return}else if(a[3]!==void 0){let c=Number(a[3]);if(Array.isArray(o)&&c>=0&&c<o.length)o=o[c];else return}}return o}f();function Ye(r){if(!r)return "";let n=r.replace(/[/\\]+$/,"").split(/[/\\]/);return n[n.length-1]??""}function qt(r){if(!r)return "";let n=r.replace(/[/\\]+$/,"").split(/[/\\]/);return n.slice(0,n.length-1).join("/")+"/"}function Xt(r){if(!r)return "";let t=r.split(".");return t[t.length-1]}function Jt(r,t=20){let n=Ye(r);if(n.length<=t)return n;let o=n.lastIndexOf("."),a=o<=0?"":n.slice(o),c=t-a.length-1;return c<=0?n.slice(0,t-1)+"\u2026":n.slice(0,c)+"\u2026"+a}function Yt(r,t=20){if(r.length<=t)return r;let n=t-1,o=Math.ceil(n/2),a=Math.floor(n/2);return r.slice(0,o)+"\u2026"+r.slice(-a)}f();var Kt=["load failed","network connection was lost","network request failed","failed to fetch","econnreset","econnrefused","etimedout","socket hang up"];function Vt(r){if(!r)return false;let t=String(r instanceof Error?r.message:r).toLowerCase();return Kt.some(n=>t.includes(n))}async function $e(r,t={}){let{attempts:n=3,delay:o=500,factor:a=2,maxDelay:c=1e4,retryIf:m=Vt}=t,i;for(let u=0;u<n;u++)try{return await r()}catch(x){if(i=x,u===n-1||!m(x))throw x;let b=Math.min(o*a**u,c);await new Promise(S=>setTimeout(S,b));}throw i}f();var _e;(d$1=>{let r=m.create({service:"fetch"}),t=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"],n=false,o=null;function a(){return t.some(f=>{let l=process.env[f];return typeof l=="string"&&l.trim().length>0})}d$1.hasProxyConfigured=a;function c(){let f=process.env.http_proxy||process.env.HTTP_PROXY;return process.env.https_proxy||process.env.HTTPS_PROXY||f}d$1.getProxyUrl=c;function m$1(f={}){let l=f.httpProxy||f.httpsProxy||c();if(!l){r.warn("[Fetch] No proxy configured, HTTP_PROXY/HTTPS_PROXY environment variables not set");return}let p=new ProxyAgent({uri:l,connectTimeout:f.connectTimeout||1e4,keepAliveTimeout:f.keepAliveTimeout||3e4});o=getGlobalDispatcher(),setGlobalDispatcher(p),n=true,r.info(`[Fetch] Global proxy enabled: ${l}`);}d$1.enableProxy=m$1;function i(){!n||!o||(setGlobalDispatcher(o),n=false,o=null,r.info("[Fetch] \u5168\u5C40\u4EE3\u7406\u5DF2\u7981\u7528"));}d$1.disableProxy=i;function u(){return n}d$1.isProxyEnabled=u;async function x(f,l){let p=l?.timeout||3e4,y=l?.responseType||"json",{timeout:w,responseType:L,...R}=l||{},O=null,$=null;try{R.signal||(O=new AbortController,$=setTimeout(()=>O.abort(),p));let N=await fetch(f,{...R,signal:R.signal||O.signal});$&&clearTimeout($);let C;switch(y){case "arrayBuffer":C=await N.arrayBuffer();break;case "blob":C=await N.blob();break;case "buffer":{let W=await N.arrayBuffer();C=Buffer.from(W);break}case "text":C=await N.text();break;default:{let W=await N.text();try{C=JSON.parse(W);}catch{C=W;}break}}return {ok:N.ok,status:N.status,statusText:N.statusText,headers:N.headers,data:C,url:N.url}}catch(N){throw $&&clearTimeout($),N}}async function b(f,l){let p=l?.retries??0,y=l?.retryDelay??1e3,{retries:w,retryDelay:L,responseType:R,...O}=l||{};return $e(()=>x(f,{...O,responseType:l?.responseType}),{attempts:p+1,delay:y,maxDelay:y*2**(p+1)})}async function S(f,l){return b(f,{method:"GET",...l})}d$1.get=S;async function P(f,l,p){return b(f,{method:"POST",headers:{"Content-Type":"application/json",...p?.headers},body:l?JSON.stringify(l):void 0,...p})}d$1.post=P;async function h(f,l,p){return b(f,{method:"PUT",headers:{"Content-Type":"application/json",...p?.headers},body:l?JSON.stringify(l):void 0,...p})}d$1.put=h;async function T(f,l,p){return b(f,{method:"DELETE",headers:{"Content-Type":"application/json",...p?.headers},body:l?JSON.stringify(l):void 0,...p})}d$1.del=T;async function E(f,l,p){return b(f,{method:"PATCH",headers:{"Content-Type":"application/json",...p?.headers},body:l?JSON.stringify(l):void 0,...p})}d$1.patch=E;async function k(f,l){return b(f,l)}d$1.request=k;function F(f={}){return a()?(m$1(f),true):false}d$1.autoProxy=F;let z=5*1024*1024;function j(f){return new TextEncoder().encode(f)}function H(f){return d.mimeType(f)}function G(f){return f.startsWith("file://")}async function q(f){let l=fileURLToPath(f);return await D.file(l).bytes()}async function e(f,l,p){let y=`----FetchFormBoundary${Date.now()}`,w=[],R=l.some(_=>_.filename||_.value instanceof Uint8Array||Buffer.isBuffer(_.value))&&!p?.timeout?3e5:p?.timeout;for(let _ of l){let A=_.maxSize??z,I=_.filename,U=`Content-Disposition: form-data; name="${_.name}"${I?`; filename="${I}"`:""}`;I&&(U+=`\r
|
|
20
|
+
Content-Type: ${H(I)}`),U+=`\r
|
|
21
21
|
\r
|
|
22
|
-
`,
|
|
23
|
-
--${y}--`)
|
|
22
|
+
`,w.push(j(U));let M=_.value;if(typeof M=="string")if(G(M)){let xe=await q(M);if(I||(I=M.split("/").pop()||"file"),xe.byteLength>A)throw new Error(`File size ${xe.byteLength} exceeds limit ${A} bytes: ${I}`);w.push(xe);}else w.push(j(M));else if(Buffer.isBuffer(M)){if(M.byteLength>A)throw new Error(`Buffer size ${M.byteLength} exceeds limit ${A} bytes: ${_.name}`);w.push(new Uint8Array(M.buffer,M.byteOffset,M.byteLength));}else if(M instanceof Uint8Array){if(M.byteLength>A)throw new Error(`File size ${M.byteLength} exceeds limit ${A} bytes: ${_.name}`);w.push(M);}}let O=j(`\r
|
|
23
|
+
--${y}--`),$=j(`\r
|
|
24
24
|
--${y}\r
|
|
25
|
-
`),
|
|
26
|
-
`));for(let
|
|
27
|
-
`)));
|
|
28
|
-
`);C=
|
|
29
|
-
`)}
|
|
25
|
+
`),N=[];N.push(j(`--${y}\r
|
|
26
|
+
`));for(let _=0;_<w.length;_++)N.push(w[_]),_%2===1&&_<w.length-1&&(N.push($),N.push(j(`--${y}\r
|
|
27
|
+
`)));N.push(O);let C=N.reduce((_,A)=>_+A.length,0),W=new Uint8Array(C),X=0;for(let _ of N)W.set(_,X),X+=_.length;return b(f,{method:"POST",headers:{"Content-Type":`multipart/form-data; boundary=${y}`,...p?.headers},body:W,timeout:R,...p})}d$1.postForm=e;function s(f,l,p){let y=new AbortController,w=y.signal;return (async()=>{try{let R={Accept:"text/event-stream",...p?.headers||{}},O=await fetch(f,{...p,headers:R,signal:w});if(!O.ok)throw new Error(`SSE connection failed: ${O.status}`);let $=O.body?.getReader();if(!$)throw new Error("SSE stream not available");let N=new TextDecoder("utf-8"),C="";for(;!w.aborted;){let{done:W,value:X}=await $.read();if(W)break;let _=N.decode(X,{stream:!0});C+=_;let A=C.split(`
|
|
28
|
+
`);C=A.pop()??"";for(let I of A)if(I.startsWith("data: ")){let U=I.slice(6);if(U==="[DONE]"){l.onComplete?.();return}l.onMessage?.(U);}}l.onComplete?.();}catch(R){R.name!=="AbortError"&&l.onError?.(R);}})(),()=>{y.abort();}}d$1.sse=s;})(_e||(_e={}));f();var De;(o=>{let r=["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 n(){return [r[Math.floor(Math.random()*r.length)],t[Math.floor(Math.random()*t.length)]].join("-")}o.create=n;})(De||(De={}));f();var Ne;(a=>(a.positiveInt=B.union([B.number(),B.string().regex(/^\d+$/,"must be a positive integer (digits only)")]).transform(c=>typeof c=="number"?c:Number.parseInt(c,10)).pipe(B.number().int().positive()),a.nonNegativeInt=B.union([B.number(),B.string().regex(/^\d+$/,"must be a non-negative integer (digits only)")]).transform(c=>typeof c=="number"?c:Number.parseInt(c,10)).pipe(B.number().int().nonnegative()),a.booleanLike=B.union([B.boolean(),B.string()]).transform((c,m)=>{if(typeof c=="boolean")return c;let i=c.trim().toLowerCase();return ["true","1","yes","on"].includes(i)?true:["false","0","no","off"].includes(i)?false:(m.addIssue({code:"custom",message:`invalid boolean string: ${JSON.stringify(c)}`}),B.NEVER)}).pipe(B.boolean()),a.stringArray=(c=",")=>B.union([B.array(B.string()),B.string()]).transform(m=>Array.isArray(m)?m:m.split(c).map(u=>u.trim()).filter(u=>u.length>0)).pipe(B.array(B.string()))))(Ne||(Ne={}));f();function Ve(r){let t=new AbortController,n=setTimeout(t.abort.bind(t),r);return {controller:t,signal:t.signal,clearTimeout:()=>globalThis.clearTimeout(n)}}function tr(r,...t){let n=Ve(r);return {signal:AbortSignal.any([n.signal,...t]),clearTimeout:n.clearTimeout}}f();var Fe;(t=>{async function r(n,o){if(process.platform==="win32"){let a=Ae.resolve(n),c=Ae.resolve(o),m=`Expand-Archive -Path '${a}' -DestinationPath '${c}' -Force`,i=await G.run("powershell",`-NoProfile -NonInteractive -Command "$global:ProgressPreference = 'SilentlyContinue'; ${m}"`);if(i.code!==0)throw new Error(`PowerShell exited with code ${i.code}: ${i.stderr}`)}else {let a=`unzip -o -q ${n} -d ${o}`,c=await G.run(void 0,a);if(c.code!==0)throw new Error(`unzip exited with code ${c.code}: ${c.stderr}`)}}t.extractZip=r;})(Fe||(Fe={}));f();var Le;(o=>{function r(a){return a?/^#[0-9a-fA-F]{6}$/.test(a):false}o.isValidHex=r;function t(a){let c=parseInt(a.slice(1,3),16),m=parseInt(a.slice(3,5),16),i=parseInt(a.slice(5,7),16);return {r:c,g:m,b:i}}o.hexToRgb=t;function n(a){if(!r(a))return;let{r:c,g:m,b:i}=t(a);return `\x1B[38;2;${c};${m};${i}m\x1B[1m`}o.hexToAnsiBold=n;})(Le||(Le={}));f();var Me;(n=>{class r extends Error{constructor(c$1){super(`No context found for ${c$1}`);c(this,"name",c$1);}}n.NotFound=r;function t(o){let a=new AsyncLocalStorage;return {use(){let c=a.getStore();if(!c)throw new r(o);return c},provide(c,m){return a.run(c,m)}}}n.create=t;})(Me||(Me={}));f();function nr(r){return {[Symbol.dispose](){r();},[Symbol.asyncDispose](){return Promise.resolve(r())}}}f();var Ce;(t=>{async function r(){return new Promise(n=>{let o=()=>{process._getActiveHandles().length===0&&process._getActiveRequests().length===0?n():setImmediate(o);};o();})}t.wait=r;})(Ce||(Ce={}));f();function or(r){if(r<=0)return "";if(r<60)return `${r}s`;if(r<3600){let n=Math.floor(r/60),o=r%60;return o>0?`${n}m ${o}s`:`${n}m`}if(r<86400){let n=Math.floor(r/3600),o=Math.floor(r%3600/60);return o>0?`${n}h ${o}m`:`${n}h`}if(r<604800){let n=Math.floor(r/86400);return n===1?"~1 day":`~${n} days`}let t=Math.floor(r/604800);return t===1?"~1 week":`~${t} weeks`}f();var je;(q=>{let r=m.create({service:"grep"});async function t(){return n()}q.filepath=t;let n=b(async()=>{let e=await D.which("rg");if(!e)return null;try{if(!(await ue.stat(e)).isFile())return null}catch{return null}try{let s=await D.run([e,"--version"],{timeout:5e3});if(s.code!==0||!s.stdout.startsWith("ripgrep "))return r.warn("rg failed self-test, falling back to pure JS",{filepath:e,code:s.code,stderr:s.stderr.slice(0,200)}),null}catch(s){return r.warn("rg spawn failed during self-test, falling back to pure JS",{filepath:e,error:s.message.slice(0,200)}),null}return e});async function o(){return await t()!==null}q.isUsingRipgrep=o;async function*a$2(e){e.signal?.throwIfAborted();let s=await t();s?yield*c(s,e):(r.debug("ripgrep not available, using pure JS fallback for files()",{cwd:e.cwd}),yield*m$1(e));}q.files=a$2;async function*c(e,s){s.signal?.throwIfAborted();let d$1=["--files","--glob=!.git/*"];s.follow&&d$1.push("--follow");let f=s.hidden!==false;if(s.maxDepth!==void 0&&d$1.push(`--max-depth=${s.maxDepth}`),s.glob)for(let y of s.glob)d$1.push(`--glob=${y}`);try{if(!(await ue.stat(s.cwd)).isDirectory())throw Object.assign(new Error(`Not a directory: '${s.cwd}'`),{code:"ENOTDIR",errno:-20,path:s.cwd})}catch(y){throw y.code==="ENOENT"?Object.assign(new Error(`No such file or directory: '${s.cwd}'`),{code:"ENOENT",errno:-2,path:s.cwd}):y}let l=await D.run([e,...d$1],{cwd:s.cwd});if(l.code!==0&&l.code!==1)return;let p=l.stdout.split(/\r?\n/);for(let y of p){s.signal?.throwIfAborted();let w=y.trim();if(!w)continue;let L=d.toUnixPath(w);!f&&L.split("/").some(R=>R.startsWith("."))||(yield L);}}async function*m$1(e){e.signal?.throwIfAborted();try{if(!(await ue.stat(e.cwd)).isDirectory())throw Object.assign(new Error(`Not a directory: '${e.cwd}'`),{code:"ENOTDIR",errno:-20,path:e.cwd})}catch(R){throw R.code==="ENOENT"?Object.assign(new Error(`No such file or directory: '${e.cwd}'`),{code:"ENOENT",errno:-2,path:e.cwd}):R}let s=[],d=[];if(e.glob)for(let R of e.glob)R.startsWith("!")?d.push(R.slice(1)):s.push(R);let f=s.length>0?T(s):["**/*"],l=e.hidden!==false,p=new Set,y=b$2.DEFAULT_MAX_DEPTH,w;e.maxDepth===void 0?w=y:e.maxDepth<0?w=1:w=e.maxDepth+1;let L=Math.min(Math.max(w,1),y);for(let R of f){e.signal?.throwIfAborted();let O=await b$2.scan(R,{cwd:e.cwd,absolute:false,include:"file",dot:l,symlink:e.follow??false,maxDepth:L,ignore:d});for(let $ of O)!l&&$.split("/").some(N=>N.startsWith("."))||p.add($);}for(let R of Array.from(p).sort())e.signal?.throwIfAborted(),yield R;e.signal?.throwIfAborted();}async function i(e){r.debug("tree",{cwd:e.cwd}),e.signal?.throwIfAborted();let s=e.hidden!==false,d=e.glob??[],f=d.filter(A=>!A.startsWith("!")),l=d.filter(A=>A.startsWith("!")).map(A=>A.slice(1)),p=f.length>0?f:["**/*"],y=new Set,w=[];for(let A of p){e.signal?.throwIfAborted();let I=await b$2.scan(A,{cwd:e.cwd,absolute:false,include:"file",dot:s,symlink:false,maxDepth:b$2.DEFAULT_MAX_DEPTH});for(let U of I)y.has(U)||(y.add(U),w.push(U));}let L=w.filter(A=>{for(let I of l)if(b$2.match(I,A))return false;return true});function R(A,I){let U=A.children.get(I);if(U)return U;let M={name:I,children:new Map};return A.children.set(I,M),M}let O={children:new Map};for(let A of L){let I=A.split("/");if(I.length<2)continue;let U=O;for(let M of I.slice(0,-1))U=R(U,M);}let $=Array.from(O.children.values()).sort((A,I)=>A.name.localeCompare(I.name)),N=e.limit??Number.POSITIVE_INFINITY,C=[],W=$.map(A=>({node:A,path:A.name})),X=0,_=0;for(;W.length>0;){let A=W.shift();if(!A)break;if(X++,_<N){C.push(A.path),_++;for(let I of Array.from(A.node.children.values()).sort((U,M)=>U.name.localeCompare(M.name))){if(_>=N)break;W.push({node:I,path:`${A.path}/${I.name}`});}}}return X>_&&C.push(`[${_}/${X} shown, ${X-_} truncated]`),C.join(`
|
|
29
|
+
`)}q.tree=i;async function u(e){let s=await t();return s?x(s,e):(r.debug("ripgrep not available, using pure JS fallback for search()",{cwd:e.cwd,pattern:e.pattern}),b$1(e))}q.search=u;async function x(e,s){let d$1=["--json","--glob=!.git/*"];if(s.follow&&d$1.push("--follow"),s.glob)for(let w of s.glob)d$1.push(`--glob=${w}`);s.limit&&d$1.push(`--max-count=${s.limit}`),d$1.push("--"),d$1.push(s.pattern);let f=await D.run([e,...d$1],{cwd:s.cwd});if(f.code!==0)return [];let l=s.hidden!==false,p=f.stdout.split(/\r?\n/).filter(Boolean),y=[];for(let w of p)try{let L=JSON.parse(w);if(L?.type!=="match")continue;let R=L.data;if(!R?.path?.text||!R?.lines?.text)continue;let O=d.toUnixPath(R.path.text);if(!l&&O.split("/").some($=>$.startsWith(".")))continue;if(y.push({path:O,lines:R.lines.text,line_number:R.line_number,absolute_offset:R.absolute_offset??0}),s.limit&&y.length>=s.limit)break}catch{}return y}async function b$1(e){let s;try{s=new RegExp(e.pattern);}catch{return []}try{if(!(await ue.stat(e.cwd)).isDirectory())throw Object.assign(new Error(`Not a directory: '${e.cwd}'`),{code:"ENOTDIR",errno:-20,path:e.cwd})}catch($){throw $.code==="ENOENT"?Object.assign(new Error(`No such file or directory: '${e.cwd}'`),{code:"ENOENT",errno:-2,path:e.cwd}):$}let d$1=[],f=[];if(e.glob)for(let $ of e.glob)$.startsWith("!")?f.push($):d$1.push($);let p=T(f).map($=>$.startsWith("!")?$.slice(1):$),y=e.hidden!==false,w=[],L=d$1.length>0?T(d$1):["**/*"],R=new Set,O=[];for(let $ of L){e.signal?.throwIfAborted();let N=await b$2.scan($,{cwd:e.cwd,absolute:false,include:"file",dot:y,symlink:e.follow??false,maxDepth:void 0,ignore:p});for(let C of N)R.has(C)||(R.add(C),O.push(C));}for(let $ of O){if(e.signal?.throwIfAborted(),e.limit&&w.length>=e.limit)break;let N=d.join(e.cwd,$),C;try{C=await ue.readFile(N,"utf-8");}catch{continue}let W=C.split(/\r?\n/),X=0;for(let _=0;_<W.length;_++){let A=W[_]??"";if(s.test(A)&&(w.push({path:$,lines:A,line_number:_+1,absolute_offset:X}),e.limit&&w.length>=e.limit))break;X+=Buffer.byteLength(A,"utf-8")+1;}}return w}function S(e,s){return a$1.match(e,s)}q.match=S;let P=a(async()=>await t());async function h(){return await P()}q.filepathCached=h;function T(e){let s=[];for(let d of e){if(d.startsWith("!")){let l=d.slice(1);s.push(`!${E(l)}`);continue}let f=k(d);for(let l of f)s.push(F(l));}return s}function E(e){return !e||e.startsWith("**")||e.includes("/")?e:/[*?[\]]/.test(e)?`**/${e}`:`**/${e}/**`}function k(e){let s=z(e);if(s===-1)return [e];let d=j(e,s);if(d===-1)return [e];let f=e.slice(s+1,d),l=H(f);if(!l||l.length<=1)return [e];let p=e.slice(0,s),y=e.slice(d+1);return l.map(w=>p+w+y)}function F(e){return !e||e.includes("/")||e.startsWith("**")?e:`**/${e}`}function z(e){for(let d=0;d<e.length;d++){let f=e[d];if(f==="\\"){d++;continue}if(f==="{"){return d;}}return -1}function j(e,s){for(let d=s+1;d<e.length;d++){let f=e[d];if(f==="\\"){d++;continue}if(f==="}")return d}return -1}function H(e){return e?e.split(","):null}q._ready=a(async()=>{let e=await t();return r.debug("Grep initialized",{ripgrep:e?"available":"fallback (pure JS)"}),e});})(je||(je={}));f();var ze;(m=>{function r(i,u){if(i===u)return true;if(typeof i!="object"||typeof u!="object"||i===null||u===null)return false;let x=Object.keys(i),b=Object.keys(u);if(x.length!==b.length)return false;for(let S of x)if(!b.includes(S)||!r(i[S],u[S]))return false;return true}function t(i){return {...i,super:i.super??false}}function n(i,u){return i?r(t(i),t(u)):false}m.match=n;function o(i,u=false){return {name:i.name,ctrl:i.ctrl,meta:i.meta,shift:i.shift,super:i.super??false,leader:u}}m.fromParsedKey=o;function a(i){if(!i)return "";let u=[];i.ctrl&&u.push("ctrl"),i.meta&&u.push("alt"),i.super&&u.push("super"),i.shift&&u.push("shift"),i.name&&(i.name==="delete"?u.push("del"):u.push(i.name));let x=u.join("+");return i.leader&&(x=x?`<leader> ${x}`:"<leader>"),x}m.keyToString=a;function c(i){return i==="none"?[]:i.split(",").map(u=>{let b=u.replace(/<leader>/g,"leader+").toLowerCase().split("+"),S={ctrl:false,meta:false,shift:false,super:false,leader:false,name:""};for(let P of b)switch(P){case "ctrl":S.ctrl=true;break;case "alt":case "meta":case "option":S.meta=true;break;case "super":S.super=true;break;case "shift":S.shift=true;break;case "leader":S.leader=true;break;case "esc":S.name="escape";break;default:S.name=P;break}return S})}m.parse=c;})(ze||(ze={}));f();var oe;(P=>{P.SUPPORTED_LANGS=["zh-CN","en-US"],P.DEFAULT_LANG="zh-CN";function n(h,T="EASBOT_LANG"){let E=[h,process.env[T]?.trim()];for(let k of E)if(k&&P.SUPPORTED_LANGS.includes(k))return k;return P.DEFAULT_LANG}P.resolveLocaleLang=n;function o(h){return h.replace(/\b\w/g,T=>T.toUpperCase())}P.titlecase=o;function a(h){return new Date(h).toLocaleTimeString(void 0,{timeStyle:"short"})}P.time=a;function c(h){let T=new Date(h),E=a(h),k=T.toLocaleDateString();return `${E} \xB7 ${k}`}P.datetime=c;function m(h){let T=new Date(h),E=new Date;return T.getFullYear()===E.getFullYear()&&T.getMonth()===E.getMonth()&&T.getDate()===E.getDate()?a(h):c(h)}P.todayTimeOrDateTime=m;function i(h){return h>=1e6?(h/1e6).toFixed(1)+"M":h>=1e3?(h/1e3).toFixed(1)+"K":h.toString()}P.number=i;function u(h){if(h<1e3)return `${h}ms`;if(h<6e4)return `${(h/1e3).toFixed(1)}s`;if(h<36e5){let k=Math.floor(h/6e4),F=Math.floor(h%6e4/1e3);return `${k}m ${F}s`}if(h<864e5){let k=Math.floor(h/36e5),F=Math.floor(h%36e5/6e4);return `${k}h ${F}m`}let T=Math.floor(h/36e5);return `${Math.floor(h%36e5/864e5)}d ${T}h`}P.duration=u;function x(h,T){return h.length<=T?h:h.slice(0,T-1)+"\u2026"}P.truncate=x;function b(h,T=35){if(h.length<=T)return h;let E="\u2026",k=Math.ceil((T-E.length)/2),F=Math.floor((T-E.length)/2);return h.slice(0,k)+E+h.slice(-F)}P.truncateMiddle=b;function S(h,T,E){return (h===1?T:E).replace("{}",h.toString())}P.pluralize=S;})(oe||(oe={}));var sr=oe.resolveLocaleLang,ir=oe.SUPPORTED_LANGS,ar=oe.DEFAULT_LANG;f();var cr=["HTTP_PROXY","HTTPS_PROXY","http_proxy","https_proxy"];function lr(){return cr.some(r=>process.env[r])}function ur(){return process.env.HTTPS_PROXY||process.env.https_proxy||process.env.HTTP_PROXY||process.env.http_proxy}function fr(){let r=process.env.HTTP_PROXY||process.env.http_proxy,t=process.env.HTTPS_PROXY||process.env.https_proxy;return {http:r,https:t,enabled:!!(r||t)}}f();var Ue=class{constructor(){c(this,"queue",[]);c(this,"resolvers",[]);}push(t){let n=this.resolvers.shift();n?n(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 dr(r,t,n){let o=[...t];await Promise.all(Array.from({length:r},async()=>{for(;;){let a=o.pop();if(a===void 0)return;await n(a);}}));}f();function pr(){let r,t=new Promise(n=>r=n);return {trigger(){return r()},wait(){return t}}}f();function mr(r,t){let n;return Promise.race([r.then(o=>(clearTimeout(n),o)),new Promise((o,a)=>{n=setTimeout(()=>{a(new Error(`Operation timed out after ${t}ms`));},t);})])}f();var Be;(m=>{let n=/[\u4e00-\u9fff\u3400-\u4dbf]/g;function o(i){if(!i)return 0;let u=String(i),x=(u.match(n)||[]).length,b=u.length-x,S=Math.round(x/1.5),P=Math.round(b/4);return Math.max(0,S+P)}m.estimate=o;function a(i){if(i==null)return 0;try{let u=typeof i=="string"?i:JSON.stringify(i);return o(u)}catch{return 0}}m.estimateObject=a;function c(i){if(i.total!==void 0&&i.total>0)return i.total;let u=i.input??0,x=i.output??0,b=i.cache?.read??0,S=i.cache?.write??0;return u+x+b+S}m.total=c;})(Be||(Be={}));f();function hr(r){let t={},n=r.shape??r.required().shape;for(let[o,a]of Object.entries(n))t[o]=a.nullable().optional();return B.object(t)}export{Fe as Archive,Ue as AsyncQueue,ve as Auth,ye as Binary,Le as Color,Me as Context,ar as DEFAULT_LANG,be as Encode,Se as Env,Ce as EventLoop,_e as Fetch,Re as Fn,je as Grep,ee as Identifier,Pe as Ignore,ze as Keybind,oe as Locale,Ie as Markdown,ce as NamedError,Nt as OAUTH_DUMMY_KEY,ir as SUPPORTED_LANGS,Ne as Schema,Te as SessionTitle,De as Slug,Be as Token,we as TruncateContent,Ve as abortAfter,tr as abortAfterAny,nr as defer,Tt as findLast,At as fn,or as formatDuration,qt as getDirectory,Xt as getFileExtension,Ye as getFilename,Jt as getFilenameTruncated,fr as getProxyConfig,ur as getProxyUrl,Lt as git,Ht as iife,vt as loadEnv,Ut as loadTextFile,Bt as loadTextFileAsync,Gt as parseModelId,lr as proxied,sr as resolveLocaleLang,$e as retry,pr as signal,Yt as truncateMiddle,hr as updateSchema,mr as withTimeout,dr as work};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@easbot/utils",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.19",
|
|
4
4
|
"description": "Shared utilities library for EASBOT ecosystem",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"ws": "^8.20.0",
|
|
56
56
|
"xdg-basedir": "^5.1.0",
|
|
57
57
|
"zod": "^4.4.3",
|
|
58
|
-
"@easbot/types": "0.3.
|
|
58
|
+
"@easbot/types": "0.3.19"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@types/markdown-it": "^14.1.2",
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkK7PV4FXJ_cjs=require('./chunk-K7PV4FXJ.cjs'),ft=require('fs/promises'),fs=require('fs'),path=require('path'),stream=require('stream'),promises=require('stream/promises'),bt=require('os'),glob=require('glob');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var ft__default=/*#__PURE__*/_interopDefault(ft);var bt__default=/*#__PURE__*/_interopDefault(bt);chunkK7PV4FXJ_cjs.e();chunkK7PV4FXJ_cjs.e();chunkK7PV4FXJ_cjs.e();function Y(e,n){let s=new Set,i=0;for(;i<e.length;){let c=e[i];if(e[i+1]==="-"&&i+2<e.length){let l=e[i+2],g=c.charCodeAt(0),m=l.charCodeAt(0);if(g>m)return null;for(let S=g;S<=m;S++)s.add(String.fromCharCode(S));i+=3;}else s.add(c),i++;}return {kind:"class",chars:s,negate:n}}function _(e){let n=[],s="",i=0;for(;i<e.length;){let c=e[i];if(c==="\\"&&i+1<e.length){s+=e[i+1],i+=2;continue}if(c==="["){let r=e.indexOf("]",i+1);if(r!==-1){let l=e.slice(i+1,r),g=false,m=0;(l.startsWith("!")||l.startsWith("^"))&&(g=true,m=1);let S=Y(l.slice(m),g);if(S){s&&(n.push({kind:"literal",text:s}),s=""),n.push(S),i=r+1;continue}}}s+=c,i++;}return s&&n.push({kind:"literal",text:s}),n}function V(e){let n=tt(e);if(n===-1)return null;let s=et(e,n);if(s===-1)return null;let i=e.slice(n+1,s),c=nt(i);if(!c)return null;let r=e.slice(0,n),l=e.slice(s+1),g=[];for(let m of c)g.push(r+m+l);return g}function tt(e){for(let n=0;n<e.length;n++){if(e[n]==="\\"&&n+1<e.length){n++;continue}if(e[n]==="{")return n}return -1}function et(e,n){let s=1;for(let i=n+1;i<e.length;i++){if(e[i]==="\\"&&i+1<e.length){i++;continue}if(e[i]==="{")s++;else if(e[i]==="}"&&(s--,s===0))return i}return -1}function nt(e){let n=[],s="",i=0;for(let c=0;c<e.length;c++){let r=e[c];if(r==="\\"&&c+1<e.length){s+=e[c+1],c++;continue}if(r==="{")i++,s+=r;else if(r==="}"){if(i--,s+=r,i<0)return null}else r===","&&i===0?(n.push(s),s=""):s+=r;}return i!==0?null:(n.push(s),n)}function it(e){let n=V(e);return n?[{kind:"brace",alternatives:n.map(i=>F(i))}]:F(e)}function F(e,n=false){let s=[],i="",c=0,r=n?e.length-2:e.length;for(;c<r;){let l=e[c];if(l==="\\"&&c+1<r){i+=e[c+1],c+=2;continue}if(l==="*"&&e[c+1]==="*"&&(c+2>=r||e[c+2]==="/")&&(c===0||e[c-1]==="/")){i&&(s.push(..._(i)),i=""),s.push({kind:"starstar"}),c+=2,e[c]==="/"&&c++;continue}if(l==="*"){i&&(s.push(..._(i)),i=""),s.push({kind:"star"}),c++;continue}if(l==="?"){i&&(s.push(..._(i)),i=""),s.push({kind:"question"}),c++;continue}i+=l,c++;}return i&&s.push(..._(i)),s}function rt(e){let n=0;for(;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){n+=2;continue}if(s===" ")return e[n+1]==="*"&&n+2===e.length;n++;}return false}function C(e,n,s=0,i=0){for(;s<e.length;){let c=e[s];if(c.kind==="literal"){if(!n.startsWith(c.text,i))return false;i+=c.text.length;}else if(c.kind==="star"){let r=s+1;for(;r<e.length&&e[r].kind==="star";)r++;if(r>=e.length){for(let l=i;l<n.length;l++)if(n[l]==="/")return false;return true}for(let l=i;l<=n.length;l++){if(C(e,n,r,l))return true;if(n[l]==="/")break}return false}else if(c.kind==="starstar"){let r=s+1;for(;r<e.length&&e[r].kind==="starstar";)r++;if(r>=e.length)return true;for(let l=i;l<=n.length;l++)if(C(e,n,r,l))return true;return false}else if(c.kind==="question"){if(i>=n.length||n[i]==="/")return false;i++;}else if(c.kind==="class"){let r=n[i];if(r===void 0||c.chars.has(r)===c.negate)return false;i++;}else if(c.kind==="brace"){for(let r of c.alternatives)if(C(r,n,0,i))return true;return false}s++;}return i===n.length}function N(e){return e.sort((n,s)=>{let i=n[0].length-s[0].length;return i!==0?i:n[0].localeCompare(s[0])})}var A=new Map,st=1024;function q(e){let n=A.get(e);if(n)return n;let s=it(e);if(A.size>=st){let i=A.keys().next().value;i!==void 0&&A.delete(i);}return A.set(e,s),s}exports.a=void 0;(c=>{function e(r,l){if(!l)return r==="";try{if(n(r,l))return !0;if(rt(l)){let g=l.slice(0,-2);if(n(r,g))return !0}return !1}catch{return false}}c.match=e;function n(r,l){if(!r)return at(l);let g=q(l);return C(g,r)}function s(r,l){let g=N(Object.entries(l)),m;for(let[S,y]of g)e(r,S)&&(m=y);return m}c.all=s;function i(r,l){let g=N(Object.entries(l)),m;for(let[S,y]of g){let u=S.split(/\s+/);u.length!==0&&e(r.head,u[0])&&(u.length===1||ot(r.tail,u.slice(1)))&&(m=y);}return m}c.allStructured=i;})(exports.a||(exports.a={}));function ot(e,n){if(n.length===0)return true;if(e.length<n.length)return false;for(let s=0;s<n.length;s++)if(!exports.a.match(e[s],n[s]))return false;return true}function at(e){let n=q(e);return C(n,"")}exports.b=void 0;(y=>{y.DEFAULT_MAX_DEPTH=20;function n(u){let d;return u.maxDepth===void 0?d=20:u.maxDepth<1?d=1:u.maxDepth>20?d=20:d=u.maxDepth,{...u,follow:u.symlink??false,nodir:u.include!=="all",maxDepth:d}}async function s(u,d={}){let x=await glob.glob(u,n(d));return c(x)}y.scan=s;function i(u,d={}){let x=glob.globSync(u,n(d));return c(x)}y.scanSync=i;function c(u){let d=false;for(let x of u)if(x.indexOf("\\")!==-1){d=true;break}return d?u.map(x=>exports.d.toUnixPath(x)):u}function r(u,d){return exports.a.match(d,u)}y.match=r;async function l(u){try{let d=await ft__default.default.readFile(u,"utf-8");return g(d)}catch{return []}}y.parseGitignore=l;function g(u){let d=[],x=u.split(/\r?\n/);for(let T of x){let E=T.trim();if(!E||E.startsWith("#")||E.startsWith("!"))continue;let h=E;h.endsWith("/")&&(h=`${h}**`),!h.includes("*")&&!h.includes("?")&&!h.includes("[")&&(h=`**/${h}/**`),d.push(h);}return d}y.parseGitignoreContent=g;function m(u,d){let x=u.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/$/,"");for(let T of d)if(exports.a.match(x,T)||exports.a.match(x,`${T}/**`))return true;return false}y.isIgnored=m,y.DEFAULT_IGNORE_PATTERNS=["**/node_modules/**","**/dist/**","**/build/**","**/out/**","**/target/**","**/.cache/**","**/.vite/**","**/.turbo/**","**/.next/**","**/.nuxt/**","**/coverage/**","**/.nyc_output/**","**/logs/**","**/*.log","**/.DS_Store","**/Thumbs.db","**/tmp/**","**/temp/**","**/.git/**","**/*.min.js","**/*.min.ts","**/*.db","**/data/**"];})(exports.b||(exports.b={}));var U=process.platform==="win32",K={".html":"text/html",".htm":"text/html",".css":"text/css",".csv":"text/csv",".txt":"text/plain",".md":"text/markdown",".xml":"application/xml",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml",".ini":"text/plain",".cfg":"text/plain",".conf":"text/plain",".log":"text/plain",".sh":"application/x-sh",".bash":"application/x-bash",".zsh":"application/x-zsh",".fish":"application/x-fish",".ps1":"application/x-powershell",".bat":"application/x-batch",".cmd":"application/x-batch",".dockerfile":"application/x-dockerfile",".makefile":"application/x-makefile",".properties":"text/plain",".js":"application/javascript",".mjs":"application/javascript",".cjs":"application/javascript",".jsx":"text/javascript",".ts":"application/typescript",".tsx":"text/typescript",".mts":"application/typescript",".json":"application/json",".jsonc":"application/json",".json5":"application/json",".webmanifest":"application/manifest+json",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".webp":"image/webp",".avif":"image/avif",".heic":"image/heic",".heif":"image/heif",".bmp":"image/bmp",".tiff":"image/tiff",".tif":"image/tiff",".mp4":"video/mp4",".webm":"video/webm",".ogg":"video/ogg",".avi":"video/x-msvideo",".mkv":"video/x-matroska",".mov":"video/quicktime",".mp3":"audio/mpeg",".wav":"audio/wav",".flac":"audio/flac",".aac":"audio/aac",".opus":"audio/opus",".m4a":"audio/mp4",".pdf":"application/pdf",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".rtf":"application/rtf",".epub":"application/epub+zip",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".tgz":"application/gzip",".bz2":"application/x-bzip2",".xz":"application/x-xz",".7z":"application/x-7z-compressed",".rar":"application/vnd.rar",".wasm":"application/wasm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".otf":"font/otf",".eot":"application/vnd.ms-fontobject",".db":"application/x-sqlite3",".sqlite":"application/vnd.sqlite3",".proto":"application/protobuf"},St=Object.fromEntries(Object.entries(K).map(([e,n])=>[n,e]));exports.d=void 0;(Ct=>{async function e(t,a){await ft.mkdir(t,{recursive:a?.recursive??true});}Ct.mkdir=e;async function n(t,a,o){let p=o?.recursive??true;try{(await ft.stat(t)).isDirectory()||(p=!1);}catch{}await ft.cp(t,a,{recursive:p,dereference:o?.dereference??true,force:o?.force??true});}Ct.cp=n;async function s(t){try{return await ft.stat(t),!0}catch{return false}}Ct.exists=s;function i(t){try{return fs.statSync(t).isDirectory()}catch{return false}}Ct.isDir=i;function c(t){try{return fs.statSync(t)}catch{return}}Ct.stat=c;async function r(t){return c(t)?.size??0}Ct.size=r;async function l(t){return ft.readFile(t,"utf-8")}Ct.readText=l;async function g(t){let a=await ft.readFile(t,"utf-8");try{return JSON.parse(a)}catch(o){let f=o instanceof Error?o.message:String(o);throw new Error(`Invalid JSON in ${t}: ${f}`,{cause:o})}}Ct.readJson=g;async function m(t){return ft.readFile(t)}Ct.readBytes=m;async function S(t){let a=await ft.readFile(t);return a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength)}Ct.readArrayBuffer=S;async function y(t,a,o){let f=o!==void 0?{mode:o}:void 0;try{await ft.writeFile(t,a,f);}catch(p){if(yt(p)){await ft.mkdir(h(t),{recursive:true}),await ft.writeFile(t,a,f);return}throw p}}Ct.write=y;async function u(t,a,o){return y(t,JSON.stringify(a,null,2),o)}Ct.writeJson=u;async function d(t,a,o){await ft.mkdir(h(t),{recursive:true});let f=a instanceof ReadableStream?stream.Readable.fromWeb(a):a,p=o!==void 0?fs.createWriteStream(t,{mode:o}):fs.createWriteStream(t);await promises.pipeline(f,p);}Ct.writeStream=d;function x(t){let a=path.extname(t).toLowerCase();return K[a]||"application/octet-stream"}Ct.mimeType=x;function T(t){return St[t]}Ct.mimeTypeToExt=T;function E(t){return t?!!(t.startsWith("text/")||t==="application/json"||t==="application/xml"||t==="application/javascript"||t==="application/typescript"||t==="application/x-javascript"||t==="application/yaml"||t==="application/x-yaml"||t==="application/toml"||t==="application/x-sh"||t==="application/x-bash"||t==="application/x-zsh"||t==="application/x-powershell"||t==="application/x-batch"||t==="application/x-dockerfile"||t==="application/x-makefile"):false}Ct.isTextMime=E;function h(t){if(!t)return ".";let a=b(t).replace(/\/+$/,"")||"/";if(a==="/")return "/";let o=a.lastIndexOf("/");return o===-1?".":o===0?"/":a.slice(0,o)}Ct.dirname=h;function wt(t,a){if(!t)return "";let o=b(t).replace(/\/+$/,"");if(!o||o==="/")return "";let f=o.lastIndexOf("/"),p=f===-1?o:o.slice(f+1);return p?(a&&p.endsWith(a)&&(p=p.slice(0,-a.length)),p):""}Ct.basename=wt;function kt(t){if(!t)return "";let a=path.basename(b(t));if(!a||a==="."||a==="..")return "";let o=a.lastIndexOf(".");return o<=0?"":a.slice(o)}Ct.extname=kt;function b(t){return t==null?"":String(t).replace(/\\/g,"/")}Ct.toUnixPath=b;function Q(t,a){if(!t||!a)return "";let o=b(t),f=b(a),p=O(o)?o:path.resolve(o),v=O(f)?f:path.resolve(f);return b(path.relative(p,v))}Ct.relative=Q;function L(t=process.env,a=bt__default.default.homedir){let o=[t.EASBOT_TEST_HOME,t.EASBOT_HOME,t.HOME,t.USERPROFILE];for(let f of o)if(f?.trim())return b(f.trim());try{return b(a())}catch{return ""}}function P(t,a){let o=a??L();if(!t)return o;if(U&&(t=B(t)),t==="~"?t=o:t.startsWith("~/")?t=j(o,t.slice(2)):O(t)||(t=path.resolve(t)),t=b(t),U)try{t=b(fs.realpathSync.native(t));}catch{}return t}Ct.normalize=P;function Tt(t,a){let o=a??L();return t?(U&&(t=B(t)),t==="~"?t=o:t.startsWith("~/")?t=j(o,t.slice(2)):O(t)||(t=path.resolve(t)),b(t)):o}Ct.resolve=Tt;function O(t){return t?!!(t.startsWith("/")||/^[a-zA-Z]:[/\\]?$/.test(t)||/^[a-zA-Z]:[/\\]/.test(t)):false}Ct.isAbsolute=O;function j(t,...a){let o=b(t);for(let f of a){let p=b(f);O(p)?o=p:(o&&!o.endsWith("/")&&(o+="/"),o+=p);}return o}Ct.join=j;function B(t){return U?t.replace(/^\/([a-zA-Z]):(?:[\\/]|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/cygdrive\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/mnt\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`):t}Ct.windowsPath=B;function M(t,a){if(!t||!a)return false;let o=P(t),f=P(a);if(!o||!f)return false;let p=Q(o,f);return p?p!==".."&&!p.startsWith("../"):o===f}Ct.contains=M;function Et(t,a){return !t||!a?false:M(t,a)||M(a,t)}Ct.overlaps=Et;async function Pt(t,a,o){let f=[];return await Z(a,o,P,h,async p=>{let v=j(p,t);await s(v)&&f.push(v);}),f}Ct.findUp=Pt;async function*Ot(t){let{targets:a,stop:o}=t;yield*vt(t.start,o,P,h,async function*(f){for(let p of a){let v=j(f,p);await s(v)&&(yield v);}});}Ct.up=Ot;async function At(t,a,o){let f=[];return await Z(a,o,P,h,async p=>{try{let v=await exports.b.scan(t,{cwd:p,absolute:!0,include:"file",dot:!0});f.push(...v);}catch{}}),f}Ct.globUp=At;})(exports.d||(exports.d={}));async function Z(e,n,s,i,c){let r=s(e);if(!r)return;let l=n?s(n):void 0,g=new Set;for(;r&&!g.has(r)&&(g.add(r),await c(r),!(l&&r===l));){let m=i(r);if(m===r)break;r=m;}}async function*vt(e,n,s,i,c){let r=s(e);if(!r)return;let l=n?s(n):void 0,g=new Set;for(;r&&!g.has(r)&&(g.add(r),yield*c(r),!(l&&r===l));){let m=i(r);if(m===r)break;r=m;}}function yt(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}
|
|
2
|
-
exports.c=K;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import {f}from'./chunk-6GV3NECV.mjs';import ut,{mkdir,stat,cp,readFile,writeFile}from'fs/promises';import {statSync,createWriteStream,realpathSync}from'fs';import {extname,basename,resolve,relative}from'path';import {Readable}from'stream';import {pipeline}from'stream/promises';import St from'os';import {glob,globSync}from'glob';f();f();f();function V(e,n){let s=new Set,i=0;for(;i<e.length;){let c=e[i];if(e[i+1]==="-"&&i+2<e.length){let l=e[i+2],g=c.charCodeAt(0),m=l.charCodeAt(0);if(g>m)return null;for(let S=g;S<=m;S++)s.add(String.fromCharCode(S));i+=3;}else s.add(c),i++;}return {kind:"class",chars:s,negate:n}}function _(e){let n=[],s="",i=0;for(;i<e.length;){let c=e[i];if(c==="\\"&&i+1<e.length){s+=e[i+1],i+=2;continue}if(c==="["){let r=e.indexOf("]",i+1);if(r!==-1){let l=e.slice(i+1,r),g=false,m=0;(l.startsWith("!")||l.startsWith("^"))&&(g=true,m=1);let S=V(l.slice(m),g);if(S){s&&(n.push({kind:"literal",text:s}),s=""),n.push(S),i=r+1;continue}}}s+=c,i++;}return s&&n.push({kind:"literal",text:s}),n}function tt(e){let n=et(e);if(n===-1)return null;let s=nt(e,n);if(s===-1)return null;let i=e.slice(n+1,s),c=it(i);if(!c)return null;let r=e.slice(0,n),l=e.slice(s+1),g=[];for(let m of c)g.push(r+m+l);return g}function et(e){for(let n=0;n<e.length;n++){if(e[n]==="\\"&&n+1<e.length){n++;continue}if(e[n]==="{")return n}return -1}function nt(e,n){let s=1;for(let i=n+1;i<e.length;i++){if(e[i]==="\\"&&i+1<e.length){i++;continue}if(e[i]==="{")s++;else if(e[i]==="}"&&(s--,s===0))return i}return -1}function it(e){let n=[],s="",i=0;for(let c=0;c<e.length;c++){let r=e[c];if(r==="\\"&&c+1<e.length){s+=e[c+1],c++;continue}if(r==="{")i++,s+=r;else if(r==="}"){if(i--,s+=r,i<0)return null}else r===","&&i===0?(n.push(s),s=""):s+=r;}return i!==0?null:(n.push(s),n)}function rt(e){let n=tt(e);return n?[{kind:"brace",alternatives:n.map(i=>F(i))}]:F(e)}function F(e,n=false){let s=[],i="",c=0,r=n?e.length-2:e.length;for(;c<r;){let l=e[c];if(l==="\\"&&c+1<r){i+=e[c+1],c+=2;continue}if(l==="*"&&e[c+1]==="*"&&(c+2>=r||e[c+2]==="/")&&(c===0||e[c-1]==="/")){i&&(s.push(..._(i)),i=""),s.push({kind:"starstar"}),c+=2,e[c]==="/"&&c++;continue}if(l==="*"){i&&(s.push(..._(i)),i=""),s.push({kind:"star"}),c++;continue}if(l==="?"){i&&(s.push(..._(i)),i=""),s.push({kind:"question"}),c++;continue}i+=l,c++;}return i&&s.push(..._(i)),s}function st(e){let n=0;for(;n<e.length;){let s=e[n];if(s==="\\"&&n+1<e.length){n+=2;continue}if(s===" ")return e[n+1]==="*"&&n+2===e.length;n++;}return false}function C(e,n,s=0,i=0){for(;s<e.length;){let c=e[s];if(c.kind==="literal"){if(!n.startsWith(c.text,i))return false;i+=c.text.length;}else if(c.kind==="star"){let r=s+1;for(;r<e.length&&e[r].kind==="star";)r++;if(r>=e.length){for(let l=i;l<n.length;l++)if(n[l]==="/")return false;return true}for(let l=i;l<=n.length;l++){if(C(e,n,r,l))return true;if(n[l]==="/")break}return false}else if(c.kind==="starstar"){let r=s+1;for(;r<e.length&&e[r].kind==="starstar";)r++;if(r>=e.length)return true;for(let l=i;l<=n.length;l++)if(C(e,n,r,l))return true;return false}else if(c.kind==="question"){if(i>=n.length||n[i]==="/")return false;i++;}else if(c.kind==="class"){let r=n[i];if(r===void 0||c.chars.has(r)===c.negate)return false;i++;}else if(c.kind==="brace"){for(let r of c.alternatives)if(C(r,n,0,i))return true;return false}s++;}return i===n.length}function N(e){return e.sort((n,s)=>{let i=n[0].length-s[0].length;return i!==0?i:n[0].localeCompare(s[0])})}var A=new Map,ot=1024;function G(e){let n=A.get(e);if(n)return n;let s=rt(e);if(A.size>=ot){let i=A.keys().next().value;i!==void 0&&A.delete(i);}return A.set(e,s),s}var w;(c=>{function e(r,l){if(!l)return r==="";try{if(n(r,l))return !0;if(st(l)){let g=l.slice(0,-2);if(n(r,g))return !0}return !1}catch{return false}}c.match=e;function n(r,l){if(!r)return ct(l);let g=G(l);return C(g,r)}function s(r,l){let g=N(Object.entries(l)),m;for(let[S,y]of g)e(r,S)&&(m=y);return m}c.all=s;function i(r,l){let g=N(Object.entries(l)),m;for(let[S,y]of g){let u=S.split(/\s+/);u.length!==0&&e(r.head,u[0])&&(u.length===1||at(r.tail,u.slice(1)))&&(m=y);}return m}c.allStructured=i;})(w||(w={}));function at(e,n){if(n.length===0)return true;if(e.length<n.length)return false;for(let s=0;s<n.length;s++)if(!w.match(e[s],n[s]))return false;return true}function ct(e){let n=G(e);return C(n,"")}var z;(y=>{y.DEFAULT_MAX_DEPTH=20;function n(u){let d;return u.maxDepth===void 0?d=20:u.maxDepth<1?d=1:u.maxDepth>20?d=20:d=u.maxDepth,{...u,follow:u.symlink??false,nodir:u.include!=="all",maxDepth:d}}async function s(u,d={}){let x=await glob(u,n(d));return c(x)}y.scan=s;function i(u,d={}){let x=globSync(u,n(d));return c(x)}y.scanSync=i;function c(u){let d=false;for(let x of u)if(x.indexOf("\\")!==-1){d=true;break}return d?u.map(x=>D.toUnixPath(x)):u}function r(u,d){return w.match(d,u)}y.match=r;async function l(u){try{let d=await ut.readFile(u,"utf-8");return g(d)}catch{return []}}y.parseGitignore=l;function g(u){let d=[],x=u.split(/\r?\n/);for(let T of x){let E=T.trim();if(!E||E.startsWith("#")||E.startsWith("!"))continue;let h=E;h.endsWith("/")&&(h=`${h}**`),!h.includes("*")&&!h.includes("?")&&!h.includes("[")&&(h=`**/${h}/**`),d.push(h);}return d}y.parseGitignoreContent=g;function m(u,d){let x=u.replace(/\\/g,"/").replace(/^\.\//,"").replace(/\/$/,"");for(let T of d)if(w.match(x,T)||w.match(x,`${T}/**`))return true;return false}y.isIgnored=m,y.DEFAULT_IGNORE_PATTERNS=["**/node_modules/**","**/dist/**","**/build/**","**/out/**","**/target/**","**/.cache/**","**/.vite/**","**/.turbo/**","**/.next/**","**/.nuxt/**","**/coverage/**","**/.nyc_output/**","**/logs/**","**/*.log","**/.DS_Store","**/Thumbs.db","**/tmp/**","**/temp/**","**/.git/**","**/*.min.js","**/*.min.ts","**/*.db","**/data/**"];})(z||(z={}));var U=process.platform==="win32",Q={".html":"text/html",".htm":"text/html",".css":"text/css",".csv":"text/csv",".txt":"text/plain",".md":"text/markdown",".xml":"application/xml",".yaml":"application/yaml",".yml":"application/yaml",".toml":"application/toml",".ini":"text/plain",".cfg":"text/plain",".conf":"text/plain",".log":"text/plain",".sh":"application/x-sh",".bash":"application/x-bash",".zsh":"application/x-zsh",".fish":"application/x-fish",".ps1":"application/x-powershell",".bat":"application/x-batch",".cmd":"application/x-batch",".dockerfile":"application/x-dockerfile",".makefile":"application/x-makefile",".properties":"text/plain",".js":"application/javascript",".mjs":"application/javascript",".cjs":"application/javascript",".jsx":"text/javascript",".ts":"application/typescript",".tsx":"text/typescript",".mts":"application/typescript",".json":"application/json",".jsonc":"application/json",".json5":"application/json",".webmanifest":"application/manifest+json",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".webp":"image/webp",".avif":"image/avif",".heic":"image/heic",".heif":"image/heif",".bmp":"image/bmp",".tiff":"image/tiff",".tif":"image/tiff",".mp4":"video/mp4",".webm":"video/webm",".ogg":"video/ogg",".avi":"video/x-msvideo",".mkv":"video/x-matroska",".mov":"video/quicktime",".mp3":"audio/mpeg",".wav":"audio/wav",".flac":"audio/flac",".aac":"audio/aac",".opus":"audio/opus",".m4a":"audio/mp4",".pdf":"application/pdf",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".rtf":"application/rtf",".epub":"application/epub+zip",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".tgz":"application/gzip",".bz2":"application/x-bzip2",".xz":"application/x-xz",".7z":"application/x-7z-compressed",".rar":"application/vnd.rar",".wasm":"application/wasm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".otf":"font/otf",".eot":"application/vnd.ms-fontobject",".db":"application/x-sqlite3",".sqlite":"application/vnd.sqlite3",".proto":"application/protobuf"},vt=Object.fromEntries(Object.entries(Q).map(([e,n])=>[n,e])),D;(jt=>{async function e(t,a){await mkdir(t,{recursive:a?.recursive??true});}jt.mkdir=e;async function n(t,a,o){let p=o?.recursive??true;try{(await stat(t)).isDirectory()||(p=!1);}catch{}await cp(t,a,{recursive:p,dereference:o?.dereference??true,force:o?.force??true});}jt.cp=n;async function s(t){try{return await stat(t),!0}catch{return false}}jt.exists=s;function i(t){try{return statSync(t).isDirectory()}catch{return false}}jt.isDir=i;function c(t){try{return statSync(t)}catch{return}}jt.stat=c;async function r(t){return c(t)?.size??0}jt.size=r;async function l(t){return readFile(t,"utf-8")}jt.readText=l;async function g(t){let a=await readFile(t,"utf-8");try{return JSON.parse(a)}catch(o){let f=o instanceof Error?o.message:String(o);throw new Error(`Invalid JSON in ${t}: ${f}`,{cause:o})}}jt.readJson=g;async function m(t){return readFile(t)}jt.readBytes=m;async function S(t){let a=await readFile(t);return a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength)}jt.readArrayBuffer=S;async function y(t,a,o){let f=o!==void 0?{mode:o}:void 0;try{await writeFile(t,a,f);}catch(p){if(wt(p)){await mkdir(h(t),{recursive:true}),await writeFile(t,a,f);return}throw p}}jt.write=y;async function u(t,a,o){return y(t,JSON.stringify(a,null,2),o)}jt.writeJson=u;async function d(t,a,o){await mkdir(h(t),{recursive:true});let f=a instanceof ReadableStream?Readable.fromWeb(a):a,p=o!==void 0?createWriteStream(t,{mode:o}):createWriteStream(t);await pipeline(f,p);}jt.writeStream=d;function x(t){let a=extname(t).toLowerCase();return Q[a]||"application/octet-stream"}jt.mimeType=x;function T(t){return vt[t]}jt.mimeTypeToExt=T;function E(t){return t?!!(t.startsWith("text/")||t==="application/json"||t==="application/xml"||t==="application/javascript"||t==="application/typescript"||t==="application/x-javascript"||t==="application/yaml"||t==="application/x-yaml"||t==="application/toml"||t==="application/x-sh"||t==="application/x-bash"||t==="application/x-zsh"||t==="application/x-powershell"||t==="application/x-batch"||t==="application/x-dockerfile"||t==="application/x-makefile"):false}jt.isTextMime=E;function h(t){if(!t)return ".";let a=b(t).replace(/\/+$/,"")||"/";if(a==="/")return "/";let o=a.lastIndexOf("/");return o===-1?".":o===0?"/":a.slice(0,o)}jt.dirname=h;function kt(t,a){if(!t)return "";let o=b(t).replace(/\/+$/,"");if(!o||o==="/")return "";let f=o.lastIndexOf("/"),p=f===-1?o:o.slice(f+1);return p?(a&&p.endsWith(a)&&(p=p.slice(0,-a.length)),p):""}jt.basename=kt;function Tt(t){if(!t)return "";let a=basename(b(t));if(!a||a==="."||a==="..")return "";let o=a.lastIndexOf(".");return o<=0?"":a.slice(o)}jt.extname=Tt;function b(t){return t==null?"":String(t).replace(/\\/g,"/")}jt.toUnixPath=b;function Y(t,a){if(!t||!a)return "";let o=b(t),f=b(a),p=O(o)?o:resolve(o),v=O(f)?f:resolve(f);return b(relative(p,v))}jt.relative=Y;function L(t=process.env,a=St.homedir){let o=[t.EASBOT_TEST_HOME,t.EASBOT_HOME,t.HOME,t.USERPROFILE];for(let f of o)if(f?.trim())return b(f.trim());try{return b(a())}catch{return ""}}function P(t,a){let o=a??L();if(!t)return o;if(U&&(t=B(t)),t==="~"?t=o:t.startsWith("~/")?t=j(o,t.slice(2)):O(t)||(t=resolve(t)),t=b(t),U)try{t=b(realpathSync.native(t));}catch{}return t}jt.normalize=P;function Et(t,a){let o=a??L();return t?(U&&(t=B(t)),t==="~"?t=o:t.startsWith("~/")?t=j(o,t.slice(2)):O(t)||(t=resolve(t)),b(t)):o}jt.resolve=Et;function O(t){return t?!!(t.startsWith("/")||/^[a-zA-Z]:[/\\]?$/.test(t)||/^[a-zA-Z]:[/\\]/.test(t)):false}jt.isAbsolute=O;function j(t,...a){let o=b(t);for(let f of a){let p=b(f);O(p)?o=p:(o&&!o.endsWith("/")&&(o+="/"),o+=p);}return o}jt.join=j;function B(t){return U?t.replace(/^\/([a-zA-Z]):(?:[\\/]|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/cygdrive\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`).replace(/^\/mnt\/([a-zA-Z])(?:\/|$)/,(a,o)=>`${o.toUpperCase()}:/`):t}jt.windowsPath=B;function M(t,a){if(!t||!a)return false;let o=P(t),f=P(a);if(!o||!f)return false;let p=Y(o,f);return p?p!==".."&&!p.startsWith("../"):o===f}jt.contains=M;function Pt(t,a){return !t||!a?false:M(t,a)||M(a,t)}jt.overlaps=Pt;async function Ot(t,a,o){let f=[];return await K(a,o,P,h,async p=>{let v=j(p,t);await s(v)&&f.push(v);}),f}jt.findUp=Ot;async function*At(t){let{targets:a,stop:o}=t;yield*yt(t.start,o,P,h,async function*(f){for(let p of a){let v=j(f,p);await s(v)&&(yield v);}});}jt.up=At;async function Ct(t,a,o){let f=[];return await K(a,o,P,h,async p=>{try{let v=await z.scan(t,{cwd:p,absolute:!0,include:"file",dot:!0});f.push(...v);}catch{}}),f}jt.globUp=Ct;})(D||(D={}));async function K(e,n,s,i,c){let r=s(e);if(!r)return;let l=n?s(n):void 0,g=new Set;for(;r&&!g.has(r)&&(g.add(r),await c(r),!(l&&r===l));){let m=i(r);if(m===r)break;r=m;}}async function*yt(e,n,s,i,c){let r=s(e);if(!r)return;let l=n?s(n):void 0,g=new Set;for(;r&&!g.has(r)&&(g.add(r),yield*c(r),!(l&&r===l));){let m=i(r);if(m===r)break;r=m;}}function wt(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}
|
|
2
|
-
export{w as a,z as b,Q as c,D as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkAJU5GBQB_cjs=require('./chunk-AJU5GBQB.cjs');require('./chunk-K7PV4FXJ.cjs');Object.defineProperty(exports,"Filesystem",{enumerable:true,get:function(){return chunkAJU5GBQB_cjs.d}});Object.defineProperty(exports,"MIME_TYPES",{enumerable:true,get:function(){return chunkAJU5GBQB_cjs.c}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{d as Filesystem,c as MIME_TYPES}from'./chunk-QNKOAEBG.mjs';import'./chunk-6GV3NECV.mjs';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkPVTJQVMO_cjs=require('./chunk-PVTJQVMO.cjs');require('./chunk-K7PV4FXJ.cjs');Object.defineProperty(exports,"PackageRegistry",{enumerable:true,get:function(){return chunkPVTJQVMO_cjs.o}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{o as PackageRegistry}from'./chunk-ZA3GGWB3.mjs';import'./chunk-6GV3NECV.mjs';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{H as $,G as Shell}from'./chunk-JI7GHGIF.mjs';import'./chunk-QNKOAEBG.mjs';import'./chunk-ZA3GGWB3.mjs';import'./chunk-6GV3NECV.mjs';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkQBLZGSTI_cjs=require('./chunk-QBLZGSTI.cjs');require('./chunk-AJU5GBQB.cjs'),require('./chunk-PVTJQVMO.cjs'),require('./chunk-K7PV4FXJ.cjs');Object.defineProperty(exports,"$",{enumerable:true,get:function(){return chunkQBLZGSTI_cjs.H}});Object.defineProperty(exports,"Shell",{enumerable:true,get:function(){return chunkQBLZGSTI_cjs.G}});
|