@visulima/vis 1.0.0-alpha.27 → 1.0.0-alpha.29
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/CHANGELOG.md +42 -0
- package/LICENSE.md +3217 -99
- package/dist/bin.js +1 -1
- package/dist/binx.js +1 -1
- package/dist/packem_chunks/bin.js +468 -364
- package/dist/packem_chunks/bloom-status.js +1 -1
- package/dist/packem_chunks/bloom-sync.js +1 -1
- package/dist/packem_chunks/config.js +15 -15
- package/dist/packem_chunks/devtools.js +82 -0
- package/dist/packem_chunks/doctor-probe.js +1 -1
- package/dist/packem_chunks/fix.js +1 -1
- package/dist/packem_chunks/handler.js +1 -1
- package/dist/packem_chunks/handler10.js +1 -2
- package/dist/packem_chunks/handler11.js +5 -1
- package/dist/packem_chunks/handler12.js +1 -5
- package/dist/packem_chunks/handler13.js +27 -1
- package/dist/packem_chunks/handler14.js +5 -27
- package/dist/packem_chunks/handler15.js +1 -5
- package/dist/packem_chunks/handler16.js +1 -1
- package/dist/packem_chunks/handler17.js +1 -1
- package/dist/packem_chunks/handler18.js +1 -1
- package/dist/packem_chunks/handler19.js +1 -1
- package/dist/packem_chunks/handler2.js +1 -1
- package/dist/packem_chunks/handler20.js +5 -1
- package/dist/packem_chunks/handler21.js +2 -5
- package/dist/packem_chunks/handler22.js +2 -2
- package/dist/packem_chunks/handler23.js +1 -2
- package/dist/packem_chunks/handler24.js +1 -1
- package/dist/packem_chunks/handler25.js +5 -1
- package/dist/packem_chunks/handler26.js +1 -5
- package/dist/packem_chunks/handler27.js +3 -1
- package/dist/packem_chunks/handler28.js +1 -3
- package/dist/packem_chunks/handler29.js +7 -1
- package/dist/packem_chunks/handler3.js +4 -4
- package/dist/packem_chunks/handler30.js +32 -6
- package/dist/packem_chunks/handler31.js +3 -33
- package/dist/packem_chunks/handler32.js +8 -3
- package/dist/packem_chunks/handler33.js +1 -1
- package/dist/packem_chunks/handler34.js +4 -4
- package/dist/packem_chunks/handler35.js +11 -3
- package/dist/packem_chunks/handler36.js +3 -22
- package/dist/packem_chunks/handler37.js +21 -60
- package/dist/packem_chunks/handler38.js +61 -3
- package/dist/packem_chunks/handler39.js +3 -6
- package/dist/packem_chunks/handler4.js +5 -5
- package/dist/packem_chunks/handler40.js +6 -24
- package/dist/packem_chunks/handler41.js +24 -153
- package/dist/packem_chunks/handler42.js +153 -10
- package/dist/packem_chunks/handler43.js +6 -6
- package/dist/packem_chunks/handler44.js +10 -708
- package/dist/packem_chunks/handler45.js +708 -24
- package/dist/packem_chunks/handler46.js +24 -322
- package/dist/packem_chunks/handler47.js +322 -48
- package/dist/packem_chunks/handler48.js +48 -3
- package/dist/packem_chunks/handler49.js +3 -27
- package/dist/packem_chunks/handler5.js +7 -7
- package/dist/packem_chunks/handler50.js +21 -190
- package/dist/packem_chunks/handler51.js +194 -33
- package/dist/packem_chunks/handler52.js +34 -0
- package/dist/packem_chunks/handler6.js +1 -1
- package/dist/packem_chunks/handler7.js +1 -1
- package/dist/packem_chunks/handler8.js +1 -1
- package/dist/packem_chunks/handler9.js +1 -1
- package/dist/packem_chunks/heal-accept.js +1 -1
- package/dist/packem_chunks/heal.js +1 -1
- package/dist/packem_chunks/help-command.js +7 -17
- package/dist/packem_chunks/index.js +3 -3
- package/dist/packem_chunks/keys-refresh.js +1 -1
- package/dist/packem_chunks/list.js +2 -2
- package/dist/packem_chunks/loader.js +1 -1
- package/dist/packem_chunks/loader2.js +1 -1
- package/dist/packem_chunks/prune.js +1 -1
- package/dist/packem_chunks/run.js +1 -1
- package/dist/packem_chunks/status.js +1 -1
- package/dist/packem_chunks/sync.js +1 -1
- package/dist/packem_chunks/sync2.js +1 -1
- package/dist/packem_chunks/tripwire.js +2 -2
- package/dist/packem_chunks/verify-lockfile.js +1 -1
- package/dist/packem_shared/Table-3pFgIUZ2-DABgc6rj.js +12 -0
- package/dist/packem_shared/_commonjsHelpers-CLblCigl.js +1 -0
- package/dist/packem_shared/{advisories-xIOdLbAI.js → advisories-DpgSuWDH.js} +1 -1
- package/dist/packem_shared/{affected-shas-Dm7eqcI8.js → affected-shas-BkXXecyi.js} +1 -1
- package/dist/packem_shared/ai-analysis-KP8b5lc0.js +68 -0
- package/dist/packem_shared/{ai-fix-BlYyz5bI.js → ai-fix-CfFWatGY.js} +5 -5
- package/dist/packem_shared/{applyDefaults-KxZkvlp3.js → applyDefaults-DLvOqXGX.js} +1 -1
- package/dist/packem_shared/{build-scripts-3E2pmscY.js → build-scripts-D-ysm_bS.js} +1 -1
- package/dist/packem_shared/{cyclonedx-B3ILsY74.js → cyclonedx-B04lIvwu.js} +3 -3
- package/dist/packem_shared/{dependency-scan-s2MD0vi-.js → dependency-scan-B9wTcLxf.js} +1 -1
- package/dist/packem_shared/{docker-BynKrOLe.js → docker-DxA80dRx.js} +1 -1
- package/dist/packem_shared/{failure-log-B0Uh-65U.js → failure-log-n3j_-w8s.js} +1 -1
- package/dist/packem_shared/index-BDF8gawl.js +29 -0
- package/dist/packem_shared/{index-B_KtN1MB.js → index-BfG9_znI.js} +1 -1
- package/dist/packem_shared/{lifecycle-CJRNbN3x.js → lifecycle-NHIKDiCh.js} +2 -2
- package/dist/packem_shared/lockfile-CoeFxWAv.js +1 -0
- package/dist/packem_shared/lockfile-DAuTDwow.js +1 -0
- package/dist/packem_shared/{manifests-Z3spBpxv.js → manifests-B7wUR3Rk.js} +1 -1
- package/dist/packem_shared/{min-release-age-aEn0x8Vy.js → min-release-age-YyNI7gqV.js} +1 -1
- package/dist/packem_shared/{native-config-sync-DdhTLlKL.js → native-config-sync-CgRIIRZV.js} +2 -2
- package/dist/packem_shared/{osv-bloom-BJhlc_I2.js → osv-bloom-BQSIHt5h.js} +2 -2
- package/dist/packem_shared/pm-runner-Ta_yz2uP.js +1 -0
- package/dist/packem_shared/{provenance-BuiEsWbI.js → provenance-DoEp2uOo.js} +1 -1
- package/dist/packem_shared/{readFileSync-CGmzMUF2-D6rUjGDn.js → readFileSync-4c_c6Qey-6SWMDNdw.js} +1 -1
- package/dist/packem_shared/{registry-keys-pemEkRM9.js → registry-keys-CD1xHavV.js} +1 -1
- package/dist/packem_shared/{resolve-explicit-RgRrUDZv.js → resolve-explicit-DpSc7RN2.js} +1 -1
- package/dist/packem_shared/{runtime-check-DgXsKCsv.js → runtime-check-Cbtb_Utb.js} +1 -1
- package/dist/packem_shared/s1ngularity-CIX7UcT5.js +1 -0
- package/dist/packem_shared/scan-progress-CTVVf9WW.js +2 -0
- package/dist/packem_shared/{selectors-BE2BCnTR.js → selectors-BU8aTRQm.js} +1 -1
- package/dist/packem_shared/{signatures-LYMy8OR5.js → signatures-BHM7cnqB.js} +1 -1
- package/dist/packem_shared/spinner-C8xs6QZv.js +1 -0
- package/dist/packem_shared/spinners-f91Rbo99-Bjf3NcO0.js +1 -0
- package/dist/packem_shared/tabs-xZkm6Y_J.js +1 -0
- package/dist/packem_shared/{toolchain-Jx2lkAYy.js → toolchain-juKl-WgV.js} +1 -1
- package/dist/packem_shared/typosquats-DRKU6d2S.js +1 -0
- package/dist/packem_shared/use-measured-height-Lea6TCVD.js +1 -0
- package/dist/packem_shared/{verify-C8EAHql6.js → verify-DA80ja1b.js} +1 -1
- package/dist/packem_shared/vis-update-app-BCKzlqj8.js +1 -0
- package/dist/packem_shared/{watch-BSVsZ_1I.js → watch-DdR-pFzX.js} +1 -1
- package/dist/packem_shared/{watch-loop-DLlMLg_J.js → watch-loop-C8csFvRU.js} +2 -2
- package/index.d.ts +201 -201
- package/index.js +567 -751
- package/package.json +13 -13
- package/dist/packem_shared/ai-analysis-Csn82p17.js +0 -68
- package/dist/packem_shared/index-efSniSRN.js +0 -29
- package/dist/packem_shared/index.server-B7ETiT4C.js +0 -2
- package/dist/packem_shared/lockfile-BG1HvBzH.js +0 -1
- package/dist/packem_shared/pm-runner-BwX5AL3W.js +0 -1
- package/dist/packem_shared/s1ngularity-Bs9fUf3q.js +0 -1
- package/dist/packem_shared/scan-progress-DjPT66jy.js +0 -2
- package/dist/packem_shared/typosquats-znskIR5j.js +0 -1
- package/dist/packem_shared/use-measured-height-DjYgUOKk.js +0 -1
- package/dist/packem_shared/vis-update-app-qhQPV97i.js +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@visulima/vis",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.29",
|
|
4
4
|
"description": "A monorepo dev toolkit — task runner, remote caching, security scanning, git hooks, and AI agent integrations — powered by @visulima/task-runner",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"build",
|
|
@@ -78,10 +78,10 @@
|
|
|
78
78
|
"LICENSE.md"
|
|
79
79
|
],
|
|
80
80
|
"dependencies": {
|
|
81
|
-
"@visulima/secret-scanner": "1.0.0-alpha.
|
|
82
|
-
"@visulima/tabular": "4.0.0-alpha.
|
|
83
|
-
"@visulima/task-runner": "1.0.0-alpha.
|
|
84
|
-
"@visulima/tui": "1.0.0-alpha.
|
|
81
|
+
"@visulima/secret-scanner": "1.0.0-alpha.5",
|
|
82
|
+
"@visulima/tabular": "4.0.0-alpha.13",
|
|
83
|
+
"@visulima/task-runner": "1.0.0-alpha.19",
|
|
84
|
+
"@visulima/tui": "1.0.0-alpha.22",
|
|
85
85
|
"jiti": "^2.7.0",
|
|
86
86
|
"module-replacements": "^2.11.0",
|
|
87
87
|
"module-replacements-codemods": "^1.2.1",
|
|
@@ -110,14 +110,14 @@
|
|
|
110
110
|
}
|
|
111
111
|
},
|
|
112
112
|
"optionalDependencies": {
|
|
113
|
-
"@visulima/vis-binding-darwin-arm64": "1.0.0-alpha.
|
|
114
|
-
"@visulima/vis-binding-darwin-x64": "1.0.0-alpha.
|
|
115
|
-
"@visulima/vis-binding-linux-arm64-gnu": "1.0.0-alpha.
|
|
116
|
-
"@visulima/vis-binding-linux-
|
|
117
|
-
"@visulima/vis-binding-linux-x64-gnu": "1.0.0-alpha.
|
|
118
|
-
"@visulima/vis-binding-
|
|
119
|
-
"@visulima/vis-binding-
|
|
120
|
-
"@visulima/vis-binding-win32-x64-msvc": "1.0.0-alpha.
|
|
113
|
+
"@visulima/vis-binding-darwin-arm64": "1.0.0-alpha.29",
|
|
114
|
+
"@visulima/vis-binding-darwin-x64": "1.0.0-alpha.29",
|
|
115
|
+
"@visulima/vis-binding-linux-arm64-gnu": "1.0.0-alpha.29",
|
|
116
|
+
"@visulima/vis-binding-linux-x64-musl": "1.0.0-alpha.29",
|
|
117
|
+
"@visulima/vis-binding-linux-x64-gnu": "1.0.0-alpha.29",
|
|
118
|
+
"@visulima/vis-binding-linux-arm64-musl": "1.0.0-alpha.29",
|
|
119
|
+
"@visulima/vis-binding-win32-arm64-msvc": "1.0.0-alpha.29",
|
|
120
|
+
"@visulima/vis-binding-win32-x64-msvc": "1.0.0-alpha.29"
|
|
121
121
|
},
|
|
122
122
|
"engines": {
|
|
123
123
|
"node": "^22.14.0 || >=24.10.0"
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
var H=Object.defineProperty;var k=(e,r)=>H(e,"name",{value:r,configurable:!0});import{createRequire as B}from"node:module";import{renderToString as z}from"@visulima/tui";import{Box as U}from"@visulima/tui/components/box";import{Table as W}from"@visulima/tui/components/table";import{Text as y}from"@visulima/tui/components/text";import v from"react";import{a8 as K,a9 as G,aa as Y,ab as X}from"../packem_chunks/bin.js";const F=B(import.meta.url),w=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,$=k(e=>{if(typeof w<"u"&&w.versions&&w.versions.node){const[r,a]=w.versions.node.split(".").map(Number);if(r>22||r===22&&a>=3||r===20&&a>=16)return w.getBuiltinModule(e)}return F(e)},"__cjs_getBuiltinModule"),{spawn:D,execFileSync:O}=$("node:child_process"),{existsSync:C}=$("node:fs"),{platform:J,homedir:R}=$("node:os"),{join:g}=$("node:path"),Q=/v?(\d+\.\d+\.\d+(?:-[\w.]+)?)/,Z=5e3,ee=1e4,re=3e5,te=4096,E=J()==="win32",M=["amp","claude","codex","copilot","crush","cursor","droid","gemini","kimi","opencode","qwen"];var ae=Object.defineProperty,ne=k((e,r)=>ae(e,"name",{value:r,configurable:!0}),"A$1"),ie=Object.defineProperty,m=ne((e,r)=>ie(e,"name",{value:r,configurable:!0}),"o"),oe=Object.defineProperty,se=m((e,r)=>oe(e,"name",{value:r,configurable:!0}),"a$6");const ce={alternateCommands:[],buildArgs:se((e,r,a)=>["-x",e,"--dangerously-allow-all"],"buildArgs"),command:"amp",defaultModel:"",envVariable:"AMP_PATH"};var le=Object.defineProperty,ue=m((e,r)=>le(e,"name",{value:r,configurable:!0}),"t$8");const de={alternateCommands:[],buildArgs:ue((e,r,a)=>["--dangerously-skip-permissions","--model",r,"--output-format","text","-p",e],"buildArgs"),command:"claude",defaultModel:"claude-sonnet-4-20250514",envVariable:"CLAUDE_PATH"};var me=Object.defineProperty,pe=m((e,r)=>me(e,"name",{value:r,configurable:!0}),"a$4");const ge={alternateCommands:["openai-codex"],buildArgs:pe((e,r,a)=>[e,"--approval-mode","full-auto","--quiet","--model",r,"--max-tokens",String(a)],"buildArgs"),command:"codex",defaultModel:"o3",envVariable:"CODEX_PATH"};var fe=Object.defineProperty,he=m((e,r)=>fe(e,"name",{value:r,configurable:!0}),"l");const ve={alternateCommands:[],buildArgs:he((e,r,a)=>{const t=["-p",e,"--allow-all-tools"];return r&&t.push("--model",r),t},"buildArgs"),command:"copilot",defaultModel:"",envVariable:"COPILOT_PATH"};var ye=Object.defineProperty,be=m((e,r)=>ye(e,"name",{value:r,configurable:!0}),"n$2");const ke={alternateCommands:[],buildArgs:be((e,r,a)=>{const t=["run","--yolo"];return r&&t.push("-m",r),t.push(e),t},"buildArgs"),command:"crush",defaultModel:"",envVariable:"CRUSH_PATH"};var we=Object.defineProperty,Ae=m((e,r)=>we(e,"name",{value:r,configurable:!0}),"t$5");const $e={alternateCommands:["cursor"],buildArgs:Ae((e,r,a)=>{const t=["-p","--force","--output-format","text"];return r&&t.push("--model",r),t.push(e),t},"buildArgs"),command:"agent",defaultModel:"",envVariable:"CURSOR_PATH"};var Se=Object.defineProperty,Pe=m((e,r)=>Se(e,"name",{value:r,configurable:!0}),"i");const Ce={alternateCommands:[],buildArgs:Pe((e,r,a)=>{const t=[e,"--skip-permissions-unsafe","-o","text"];return r&&t.push("-m",r),t},"buildArgs"),command:"droid",defaultModel:"",envVariable:"DROID_PATH"};var Te=Object.defineProperty,je=m((e,r)=>Te(e,"name",{value:r,configurable:!0}),"o$1");const Oe={alternateCommands:["gemini-cli"],buildArgs:je((e,r,a)=>["--sandbox","--model",r,"--max-output-tokens",String(a),"-p",e],"buildArgs"),command:"gemini",defaultModel:"gemini-2.5-pro",envVariable:"GEMINI_PATH"};var Re=Object.defineProperty,Ee=m((e,r)=>Re(e,"name",{value:r,configurable:!0}),"o");const Me={alternateCommands:[],buildArgs:Ee((e,r,a)=>{const t=["--quiet","-p",e];return r&&t.push("-m",r),t},"buildArgs"),command:"kimi",defaultModel:"",envVariable:"KIMI_PATH"};var xe=Object.defineProperty,_e=m((e,r)=>xe(e,"name",{value:r,configurable:!0}),"r");const Ie={alternateCommands:[],buildArgs:_e((e,r,a)=>{const t=["run",e];return r&&t.push("-m",r),t},"buildArgs"),command:"opencode",defaultModel:"anthropic/claude-sonnet-4",envVariable:"OPENCODE_PATH"};var Ne=Object.defineProperty,Le=m((e,r)=>Ne(e,"name",{value:r,configurable:!0}),"n");const qe={alternateCommands:["qwen-code"],buildArgs:Le((e,r,a)=>["-p",e,"--yolo","-o","text"],"buildArgs"),command:"qwen",defaultModel:"",envVariable:"QWEN_PATH"};var Ve=Object.defineProperty,f=m((e,r)=>Ve(e,"name",{value:r,configurable:!0}),"s");const x={amp:ce,claude:de,codex:ge,copilot:ve,crush:ke,cursor:$e,droid:Ce,gemini:Oe,kimi:Me,opencode:Ie,qwen:qe},T=f(e=>e.startsWith("~")?g(R(),e.slice(1)):e,"resolveHome"),He=f(e=>{try{const r=O(E?"where":"which",[e],{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:Z}).trim().split(`
|
|
2
|
-
`)[0]?.trim();return r&&r.length>0?r:void 0}catch{return}},"whichCommand"),Be=f(e=>{const r=R();if(E){const a=process.env.APPDATA??"",t=process.env.LOCALAPPDATA??"",n=process.env.ProgramFiles??"";return[g(a,"npm",`${e}.cmd`),g(a,"npm",e),g(t,"Programs",e,`${e}.exe`),g(n,e,`${e}.exe`),g(r,".npm-global","bin",`${e}.cmd`)]}return[`/opt/homebrew/bin/${e}`,`/usr/local/bin/${e}`,g(r,".npm-global","bin",e),g(r,".local","bin",e),g(r,".cargo","bin",e)]},"getKnownPaths"),S=f(e=>{try{const r=O(e,["--version"],{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:ee}),a=Q.exec(r);return a?a[1]:void 0}catch{return}},"detectVersion"),_=f(e=>{const r=x[e],a={available:!1,name:e},t=process.env[r.envVariable];if(t&&C(T(t))){const i=T(t);return{...a,available:!0,detectionMethod:"envvar",path:i,version:S(i)}}const n=[r.command,...r.alternateCommands];for(const i of n){const o=He(i);if(o)return{...a,available:!0,detectionMethod:"which",path:o,version:S(o)}}for(const i of n)for(const o of Be(i))if(C(o))return{...a,available:!0,detectionMethod:"known-path",path:o,version:S(o)};return a},"detectProvider"),Fe=f(()=>M.map(e=>_(e)),"detectAllProviders"),De=f(()=>Fe().filter(e=>e.available),"detectAvailableProviders"),Je=f((e,r,a={})=>{const t=x[e],n=a.model??t.defaultModel,i=a.maxTokens??te;return t.buildArgs(r,n,i)},"buildCliArgs"),ze=f(async(e,r,a={})=>{if(!e.available||!e.path)throw new Error(`AI provider "${e.name}" is not available.`);const t=Je(e.name,r,a),n=a.timeoutMs??re;return new Promise((i,o)=>{const p={env:{...process.env,FORCE_COLOR:"0",NO_COLOR:"1"},stdio:["pipe","pipe","pipe"]},s=D(e.path,t,p);s.stdin.end();let c="",d="",u=!1;const b=setTimeout(()=>{u=!0,s.kill("SIGTERM"),o(new Error(`${e.name} CLI timed out after ${String(n)}ms`))},n);s.stdout.on("data",h=>{c+=h.toString("utf8")}),s.stderr.on("data",h=>{d+=h.toString("utf8")}),s.on("close",h=>{clearTimeout(b),!u&&(h===0?i({provider:e.name,stderr:d,stdout:c}):o(new Error(`${e.name} CLI exited with code ${String(h)}: ${d||c}`)))}),s.on("error",h=>{clearTimeout(b),u||o(new Error(`Failed to spawn ${e.name} CLI: ${h.message}`))})})},"runProvider");var Ue=Object.defineProperty,I=k((e,r)=>Ue(e,"name",{value:r,configurable:!0}),"i");const We=12e4,Ke=2,Ge=1e3,Ye=I(e=>new Promise(r=>{setTimeout(r,e)}),"sleep"),N=I(async(e,r,a=Ke)=>{let t;for(let n=0;n<=a;n+=1)try{return(await ze(e,r,{timeoutMs:We})).stdout}catch(i){if(t=i instanceof Error?i:new Error(String(i)),t.message.includes("timed out"))throw t;if(n<a){const o=Ge*2**n;await Ye(o)}}throw t??new Error("AI request failed after retries")},"runWithRetry");var Xe=Object.defineProperty,l=k((e,r)=>Xe(e,"name",{value:r,configurable:!0}),"c");const Qe={amp:30,claude:80,codex:60,copilot:50,crush:35,cursor:40,droid:20,gemini:100,kimi:25,opencode:35,qwen:30},Ze=l(e=>{if(e?.provider){if(!M.includes(e.provider))return;const t=_(e.provider);return t.available?t:void 0}const r=De();if(r.length===0)return;const a={...Qe,...e?.priority};return r.toSorted((t,n)=>(a[n.name]??0)-(a[t.name]??0))[0]},"resolveProvider"),er=new Set(["defer","review","skip","update"]),rr=new Set(["critical","high","low","medium"]),tr=new Set(["high","low","medium"]),ar=50,P=30,nr=l(e=>e.map(r=>{const a=r.vulnerabilities&&r.vulnerabilities.length>0?` [VULNERABILITIES: ${r.vulnerabilities.map(n=>`${n.severity} ${n.id}`).join(", ")}]`:"";let t="";if(r.socketReport){const n=Math.round(r.socketReport.score.overall*100),i=[`score:${String(n)}%`];if(r.socketReport.alerts.length>0){const o={};for(const s of r.socketReport.alerts)o[s.severity]=(o[s.severity]??0)+1;const p=Object.entries(o).map(([s,c])=>`${String(c)} ${s}`).join(", ");i.push(`alerts: ${p}`)}i.push(`supply-chain:${String(Math.round(r.socketReport.score.supplyChain*100))}%`),i.push(`quality:${String(Math.round(r.socketReport.score.quality*100))}%`),t=` [SOCKET.DEV: ${i.join(", ")}]`}return`- ${r.packageName}: ${r.currentRange} → ${r.newRange} (${r.updateType})${a}${t}`}).join(`
|
|
3
|
-
`),"buildPackageList"),A=`Respond ONLY with valid JSON in this exact structure:
|
|
4
|
-
{
|
|
5
|
-
"summary": "Brief overall summary",
|
|
6
|
-
"recommendations": [
|
|
7
|
-
{
|
|
8
|
-
"package": "package-name",
|
|
9
|
-
"action": "update|skip|review|defer",
|
|
10
|
-
"reason": "explanation",
|
|
11
|
-
"riskLevel": "low|medium|high|critical",
|
|
12
|
-
"breakingChanges": ["change1"],
|
|
13
|
-
"effort": "low|medium|high"
|
|
14
|
-
}
|
|
15
|
-
],
|
|
16
|
-
"warnings": ["warning1"]
|
|
17
|
-
}`,ir={compatibility:l(e=>`Analyze the compatibility of these package updates:
|
|
18
|
-
|
|
19
|
-
${e}
|
|
20
|
-
|
|
21
|
-
For each package:
|
|
22
|
-
1. Check peer dependency compatibility
|
|
23
|
-
2. Identify potential conflicts with other packages in the list
|
|
24
|
-
3. Assess API compatibility between current and target versions
|
|
25
|
-
4. Check for deprecated features being removed
|
|
26
|
-
5. Evaluate Node.js version requirements
|
|
27
|
-
|
|
28
|
-
${A}`,"compatibility"),impact:l(e=>`Analyze the impact of updating these npm packages:
|
|
29
|
-
|
|
30
|
-
${e}
|
|
31
|
-
|
|
32
|
-
For each package, provide:
|
|
33
|
-
1. Risk level (low/medium/high/critical)
|
|
34
|
-
2. Recommended action (update/skip/review/defer)
|
|
35
|
-
3. Reason for recommendation
|
|
36
|
-
4. Known breaking changes (if any)
|
|
37
|
-
5. Estimated migration effort (low/medium/high)
|
|
38
|
-
|
|
39
|
-
${A}`,"impact"),recommend:l(e=>`Provide smart recommendations for updating these packages:
|
|
40
|
-
|
|
41
|
-
${e}
|
|
42
|
-
|
|
43
|
-
Consider:
|
|
44
|
-
1. Update priority based on security, features, and stability
|
|
45
|
-
2. Grouping related packages for atomic updates
|
|
46
|
-
3. Best practices for the specific package ecosystem
|
|
47
|
-
4. Risk vs. benefit analysis
|
|
48
|
-
5. Suggested update order
|
|
49
|
-
6. If Socket.dev scores are provided, prioritize packages with low supply chain or quality scores
|
|
50
|
-
|
|
51
|
-
${A}`,"recommend"),security:l(e=>`Analyze the security implications of these package updates:
|
|
52
|
-
|
|
53
|
-
${e}
|
|
54
|
-
|
|
55
|
-
For each package:
|
|
56
|
-
1. Check if the update fixes known vulnerabilities (use the vulnerability data above)
|
|
57
|
-
2. Assess if the new version introduces security risks
|
|
58
|
-
3. Evaluate if this is a security-sensitive package (auth, crypto, session, etc.)
|
|
59
|
-
4. Recommend urgency of the update based on vulnerability severity
|
|
60
|
-
5. Flag any packages where skipping the update poses security risk
|
|
61
|
-
6. If Socket.dev scores are provided, factor in supply chain and quality scores — low scores indicate higher risk
|
|
62
|
-
|
|
63
|
-
${A}`,"security")},or=new Set(["compatibility","impact","recommend","security"]),$r=l(e=>or.has(e)?e:"impact","validateAnalysisType"),L=l((e,r="impact")=>{const a=nr(e);return ir[r](a)},"buildAnalysisPrompt"),sr=/```(?:json)?\s*([\s\S]*?)```/,cr=/\{[\s\S]*\}/,lr=l(e=>{try{return JSON.parse(e)}catch{}const r=sr.exec(e);if(r?.[1])try{return JSON.parse(r[1])}catch{}const a=cr.exec(e);if(a?.[0])try{return JSON.parse(a[0])}catch{}},"extractJson"),ur=l(e=>({action:er.has(e.action)?e.action:"review",breakingChanges:Array.isArray(e.breakingChanges)?e.breakingChanges:[],effort:tr.has(e.effort)?e.effort:"medium",package:typeof e.package=="string"?e.package:"",reason:typeof e.reason=="string"?e.reason:"",riskLevel:rr.has(e.riskLevel)?e.riskLevel:"medium"}),"normalizeRecommendation"),q=l((e,r,a)=>{const t=lr(e);if(!t||typeof t!="object")return{analysisType:a,provider:r,recommendations:[],summary:"Failed to parse AI response.",warnings:["AI response was not valid JSON."]};const n=t,i=Array.isArray(n.recommendations)?n.recommendations:[];return{analysisType:a,provider:r,recommendations:i.map(o=>ur(o)),summary:typeof n.summary=="string"?n.summary:"",warnings:Array.isArray(n.warnings)?n.warnings:[]}},"parseAiResponse"),dr={eslint:["ESLint 9.0: Flat config required","ESLint 8.0+: New rule formats"],next:["Next.js 13+: App router changes","Next.js 14+: Server components default"],react:["React 17 to 18: Concurrent features","React 18+: Strict mode changes"],typescript:["TypeScript 5.0: New decorators","TypeScript 4.7+: ESM changes"],vite:["Vite 5: Node.js 18+ required"],vue:["Vue 3: Composition API","Vue 3: Breaking template changes"],webpack:["Webpack 5: Node.js polyfills removed"]},mr=new Set(["bcrypt","cors","crypto-js","express-session","helmet","jose","jsonwebtoken","node-forge","oauth","passport"]),j=l((e,r)=>{const a=e.map(t=>{const n=t.vulnerabilities&&t.vulnerabilities.length>0,i=mr.has(t.packageName),o=dr[t.packageName]??[];let p="low",s="update",c="low",d="Patch/minor update, safe to apply.";return t.updateType==="major"?(p="high",s=o.length>0?"review":"update",c="medium",d=o.length>0?`Major update with known breaking changes: ${o[0]}`:"Major version update, review changelog before applying."):t.updateType==="minor"&&(p="medium",d="Minor update, generally safe."),n&&(p="high",s="update",d="Security update — current version has known vulnerabilities."),i&&t.updateType==="major"&&(s="review",d="Security-sensitive package with major update, careful review needed.",c="high"),{action:s,breakingChanges:o,effort:c,package:t.packageName,reason:d,riskLevel:p}});return{analysisType:r,provider:"rule-engine",recommendations:a,summary:`Rule-based ${r} analysis for ${String(e.length)} packages.`,warnings:["No AI provider available — using built-in rule engine."]}},"ruleBasedAnalysis"),pr=l(async(e,r,a)=>{const t=L(r,a),n=await N(e,t);return q(n,e.name,a)},"analyzeChunk"),gr=l((e,r,a)=>{const t=[],n=[],i=[];for(const o of e)t.push(...o.recommendations),n.push(...o.warnings),o.summary&&i.push(o.summary);return{analysisType:a,provider:r,recommendations:t,summary:i.length===1?i[0]??"":`Analyzed ${String(t.length)} packages in ${String(e.length)} batches.`,warnings:[...new Set(n)]}},"mergeResults"),V={compatibility:"Compatibility",impact:"Impact",recommend:"Recommendations",security:"Security"},Sr=l(e=>{const r=`${V[e.analysisType]??e.analysisType} Analysis (${e.provider})`,a=e.recommendations.flatMap(n=>{const i=[{action:n.action,effort:n.effort,package:n.package,reason:n.reason,risk:n.riskLevel}];return n.breakingChanges.length>0&&i.push({action:"",effort:"",package:"",reason:`Breaking: ${n.breakingChanges.join("; ")}`,risk:""}),i}),t=process.stdout.columns||80;return z(v.createElement(U,{borderStyle:"round",flexDirection:"column",paddingLeft:1,paddingRight:1},v.createElement(y,{bold:!0},r),v.createElement(y,null,""),v.createElement(y,null,e.summary),v.createElement(y,null,""),v.createElement(W,{borderStyle:"none",data:a}),...e.warnings.length>0?[v.createElement(y,null,""),...e.warnings.map((n,i)=>v.createElement(y,{dimColor:!0,key:String(i)},` ${n}`))]:[]),{columns:t})},"formatAiAnalysis");l(e=>JSON.stringify(e,void 0,2),"formatAiAnalysisJson");const Pr=l(async(e,r,a,t="impact")=>{const n=Ze(a);if(!n)return r.info(`No AI CLI tool found, using rule-based analysis.
|
|
64
|
-
`),j(e,t);const i=K(n.name,t,e),o=G(i);if(o)return r.info(`Using cached ${t} analysis from ${o.provider}.
|
|
65
|
-
`),o;const p=V[t]??t;r.info(`Running ${p.toLowerCase()} analysis with ${n.name}...
|
|
66
|
-
`);try{let s;if(e.length>ar){r.info(`Splitting ${String(e.length)} packages into batches of ${String(P)}...
|
|
67
|
-
`);const c=[];for(let u=0;u<e.length;u+=P)c.push(e.slice(u,u+P));const d=[];for(let u=0;u<c.length;u+=1){r.info(` Batch ${String(u+1)}/${String(c.length)}...`);const b=c[u];b&&d.push(await pr(n,b,t))}s=gr(d,n.name,t)}else{const c=await N(n,L(e,t));s=q(c,n.name,t)}return Y(i,s,X(t,a?.cacheTtl)),s}catch(s){const c=s instanceof Error?s.message:String(s);return r.warn(`AI analysis failed (${c}), falling back to rule engine.
|
|
68
|
-
`),j(e,t)}},"runAiAnalysis");export{$r as H,ze as O,Qe as R,Sr as Z,Fe as _,Ze as b,Pr as e,N as r,lr as w};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
var Fn=Object.defineProperty;var N=(t,e)=>Fn(t,"name",{value:e,configurable:!0});import{createRequire as zn}from"node:module";import __cjs_mod__ from "node:module"; // -- packem CommonJS require shim --
|
|
2
|
-
const require = __cjs_mod__.createRequire(import.meta.url);
|
|
3
|
-
const Wn=zn(import.meta.url),fe=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,qn=N(t=>{if(typeof fe<"u"&&fe.versions&&fe.versions.node){const[e,n]=fe.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return fe.getBuiltinModule(t)}return Wn(t)},"__cjs_getBuiltinModule"),{createRequire:Je}=qn("node:module"),Gn=16,tt=32,Hn=64,re=128,xe="positionals";var Kn=Object.defineProperty,Lt=N((t,e)=>Kn(t,"name",{value:e,configurable:!0}),"i$6"),Jn=Object.defineProperty,St=Lt((t,e)=>Jn(t,"name",{value:e,configurable:!0}),"s"),Zn=Object.defineProperty,Tt=St((t,e)=>Zn(t,"name",{value:e,configurable:!0}),"s"),Yn=Object.defineProperty,It=Tt((t,e)=>Yn(t,"name",{value:e,configurable:!0}),"i"),Qn=Object.defineProperty,Mt=It((t,e)=>Qn(t,"name",{value:e,configurable:!0}),"t");Mt(t=>t instanceof Error&&t.type==="VisulimaError","isVisulimaError");let Xn=class extends Error{static{N(this,"V")}static{Lt(this,"g")}static{St(this,"p")}static{Tt(this,"V")}static{It(this,"VisulimaError")}static{Mt(this,"VisulimaError")}loc;title;hint;type="VisulimaError";constructor({cause:e,hint:n,location:i,message:r,name:o,stack:l,title:s}){super(r,{cause:e}),this.title=s,this.name=o,this.stack=l??this.stack,this.loc=i,this.hint=n}setLocation(e){this.loc=e}setName(e){this.name=e}setMessage(e){this.message=e}setHint(e){this.hint=e}};var ei=Object.defineProperty,Vt=N((t,e)=>ei(t,"name",{value:e,configurable:!0}),"t$4"),ti=Object.defineProperty,Dt=Vt((t,e)=>ti(t,"name",{value:e,configurable:!0}),"t"),ni=Object.defineProperty,ii=Dt((t,e)=>ni(t,"name",{value:e,configurable:!0}),"e");let A=class extends Xn{static{N(this,"m")}static{Vt(this,"u")}static{Dt(this,"c")}static{ii(this,"CerebroError")}code;context;constructor(e,n,i){super({message:e,name:"CerebroError"}),this.code=n,this.context=i}};var oi=Object.defineProperty,ri=N((t,e)=>oi(t,"name",{value:e,configurable:!0}),"a$2"),ai=Object.defineProperty,si=ri((t,e)=>ai(t,"name",{value:e,configurable:!0}),"l"),li=Object.defineProperty,T=si((t,e)=>li(t,"name",{value:e,configurable:!0}),"r");const U=T(t=>"Deno"in t,"hasDeno"),B=T(t=>"Bun"in t,"hasBun"),Pe=T(()=>{if(U(globalThis)){const t=globalThis.Deno,e=t.execPath();let n=e;try{const{importMeta:i}=globalThis;i?.url&&(n=i.url)}catch{}return[e,n,...t.args]}return B(globalThis)?globalThis.Bun.process.argv:process.argv},"getArgv"),ci=T(()=>U(globalThis)?globalThis.Deno.cwd():B(globalThis)?globalThis.Bun.process.cwd():process.cwd(),"getCwd"),H=T(()=>{if(U(globalThis)){const t=globalThis.Deno;return new Proxy(t.env.toObject(),{get:T((e,n)=>typeof n=="string"?t.env.get(n):e[n],"get"),has:T((e,n)=>typeof n=="string"?t.env.has(n):n in e,"has"),set:T((e,n,i)=>typeof n=="string"?(i===void 0||t.env.set(n,i),!0):!1,"set")})}return B(globalThis)?globalThis.Bun.process.env:process.env},"getEnv"),Ut=T(()=>U(globalThis)?[]:B(globalThis)?globalThis.Bun.process.execArgv:process.execArgv,"getExecArgv"),Bt=T(()=>U(globalThis)?globalThis.Deno.execPath():B(globalThis)?globalThis.Bun.process.execPath:process.execPath,"getExecPath"),ui=T(()=>{if(U(globalThis)){const t=globalThis.Deno.build?.os??"unknown";return t==="windows"?"win32":t}return B(globalThis)?globalThis.Bun.platform??"unknown":process.platform},"getPlatform"),pi=T(()=>{if(U(globalThis)){const t=globalThis.Deno.build?.arch??"unknown";return t==="x86_64"?"x64":t==="aarch64"?"arm64":t}return B(globalThis)?globalThis.Bun.process.arch:process.arch},"getArch");T(()=>{if(U(globalThis)){const t=globalThis.Deno,e={};return t.version?.deno&&(e.deno=t.version.deno),t.version?.v8&&(e.v8=t.version.v8),t.version?.typescript&&(e.typescript=t.version.typescript),e}if(B(globalThis)){const t=globalThis.Bun,e={...t.process.versions};return t.version&&(e.bun=t.version),e}return process.versions},"getVersions");const W=T((t=0)=>{if(U(globalThis))throw globalThis.Deno.exit(t),new Error("Deno exit failed");if(B(globalThis))throw globalThis.Bun.process.exit(t),new Error("Bun exit failed");process.exit(t)},"exitProcess"),nt=T((t,e)=>{if(U(globalThis))return()=>{};if(B(globalThis)){try{const i=globalThis.Bun;if(i.process?.on)return i.process.on(t,e),()=>{i.process?.removeListener&&i.process.removeListener(t,e)}}catch{}return()=>{}}const n=process;return n.on(t,e),()=>{n.removeListener(t,e)}},"onProcessEvent");var fi=Object.defineProperty,Ne=N((t,e)=>fi(t,"name",{value:e,configurable:!0}),"k$2");const z=new Uint32Array(65536),di=Ne((t,e)=>{const n=t.length,i=e.length,r=1<<n-1;let o=-1,l=0,s=n,p=n;for(;p--;)z[t.charCodeAt(p)]|=1<<p;for(p=0;p<i;p++){let a=z[e.charCodeAt(p)];const c=a|l;a|=(a&o)+o^o,l|=~(a|o),o&=a,l&r&&s++,o&r&&s--,l=l<<1|1,o=o<<1|~(c|l),l&=c}for(p=n;p--;)z[t.charCodeAt(p)]=0;return s},"myers_32"),hi=Ne((t,e)=>{const n=e.length,i=t.length,r=[],o=[],l=Math.ceil(n/32),s=Math.ceil(i/32);for(let u=0;u<l;u++)o[u]=-1,r[u]=0;let p=0;for(;p<s-1;p++){let u=0,v=-1;const w=p*32,y=Math.min(32,i)+w;for(let O=w;O<y;O++)z[t.charCodeAt(O)]|=1<<O;for(let O=0;O<n;O++){const E=z[e.charCodeAt(O)],h=o[O/32|0]>>>O&1,m=r[O/32|0]>>>O&1,b=E|u,$=((E|m)&v)+v^v|E|m;let P=u|~($|v),k=v&$;P>>>31^h&&(o[O/32|0]^=1<<O),k>>>31^m&&(r[O/32|0]^=1<<O),P=P<<1|h,k=k<<1|m,v=k|~(b|P),u=P&b}for(let O=w;O<y;O++)z[t.charCodeAt(O)]=0}let a=0,c=-1;const d=p*32,f=Math.min(32,i-d)+d;for(let u=d;u<f;u++)z[t.charCodeAt(u)]|=1<<u;let g=i;for(let u=0;u<n;u++){const v=z[e.charCodeAt(u)],w=o[u/32|0]>>>u&1,y=r[u/32|0]>>>u&1,O=v|a,E=((v|y)&c)+c^c|v|y;let h=a|~(E|c),m=c&E;g+=h>>>i-1&1,g-=m>>>i-1&1,h>>>31^w&&(o[u/32|0]^=1<<u),m>>>31^y&&(r[u/32|0]^=1<<u),h=h<<1|w,m=m<<1|y,c=m|~(O|h),a=h&O}for(let u=d;u<f;u++)z[t.charCodeAt(u)]=0;return g},"myers_x"),Rt=Ne((t,e)=>{if(t.length<e.length){const n=e;e=t,t=n}return e.length===0?t.length:t.length<=32?di(t,e):hi(t,e)},"distance");Ne((t,e)=>{let n=1/0,i=0;for(let r=0;r<e.length;r++){const o=Rt(t,e[r]);o<n&&(n=o,i=r)}return e[i]},"closest");var mi=Object.defineProperty,gi=N((t,e)=>mi(t,"name",{value:e,configurable:!0}),"a$1"),vi=Object.defineProperty,bi=gi((t,e)=>vi(t,"name",{value:e,configurable:!0}),"a"),yi=Object.defineProperty,wi=bi((t,e)=>yi(t,"name",{value:e,configurable:!0}),"p"),$i=Object.defineProperty,Ft=wi((t,e)=>$i(t,"name",{value:e,configurable:!0}),"e"),Oi=Object.defineProperty,xi=Ft((t,e)=>Oi(t,"name",{value:e,configurable:!0}),"E");const zt=String.raw,it=zt`\p{Emoji}(?:\p{EMod}|[\u{E0020}-\u{E007E}]+\u{E007F}|\uFE0F?\u20E3?)`,Pi=xi(()=>new RegExp(zt`\p{RI}{2}|(?)${it}(?:\u200D${it})*`,"gu"),"default");var Ei=Object.defineProperty,Ai=Ft((t,e)=>Ei(t,"name",{value:e,configurable:!0}),"p");Object.freeze(new Map([[0,0],[1,22],[2,22],[3,23],[4,24],[7,27],[8,28],[9,29],[30,39],[31,39],[32,39],[33,39],[34,39],[35,39],[36,39],[37,39],[40,49],[41,49],[42,49],[43,49],[44,49],[45,49],[46,49],[47,49],[90,39]]));const Rc=/[\u001B\u009B](?:[[()#;?]{0,10}(?:\d{1,4}(?:;\d{0,4})*)?[0-9A-ORZcf-nqry=><]|\]8;;[^\u0007\u001B]{0,100}(?:\u0007|\u001B\\))/g,Fc=/[\u0000-\u0008\n-\u001F\u007F-\u009F]{1,1000}/y,se=Pi(),Ni=/[-_./\s]+/g,ve=/(\u001B\[[0-9;]*[a-z])/i,ot=new RegExp("\\p{Script=Arabic}","u"),Ci=new RegExp("\\p{Script=Bengali}","u"),ie=new RegExp("\\p{Script=Cyrillic}","u"),ji=new RegExp("\\p{Script=Devanagari}","u"),ki=new RegExp("\\p{Script=Ethiopic}","u"),Ue=new RegExp("\\p{Script=Greek}","u"),rt=new RegExp("\\p{Script=Greek}+|\\p{Script=Latin}+|[^\\p{Script=Greek}\\p{Script=Latin}]+","gu"),_i=new RegExp("\\p{Script=Gujarati}","u"),Li=new RegExp("\\p{Script=Gurmukhi}","u"),at=new RegExp("\\p{Script=Hangul}","u"),st=new RegExp("\\p{Script=Hebrew}","u"),Si=new RegExp("\\p{Script=Hiragana}","u"),lt=new RegExp("\\p{Script=Han}","u"),Ti=new RegExp("\\p{Script=Kannada}","u"),Ii=new RegExp("\\p{Script=Katakana}","u"),Mi=new RegExp("\\p{Script=Khmer}","u"),Vi=new RegExp("\\p{Script=Lao}","u"),I=new RegExp("\\p{Script=Latin}","u"),Di=new RegExp("\\p{Script=Malayalam}","u"),Ui=new RegExp("\\p{Script=Myanmar}","u"),Bi=new RegExp("\\p{Script=Oriya}","u"),Ri=new RegExp("\\p{Script=Sinhala}","u"),Fi=new RegExp("\\p{Script=Tamil}","u"),zi=new RegExp("\\p{Script=Telugu}","u"),Wi=new RegExp("\\p{Script=Thai}","u"),qi=new RegExp("\\p{Script=Tibetan}","u"),ct=/[\u02BB\u02BC\u0027]/u,Gi=Ai(t=>t.replace(se,""),"stripEmoji");var Hi=Object.defineProperty,S=N((t,e)=>Hi(t,"name",{value:e,configurable:!0}),"x$2"),Ki=Object.defineProperty,x=S((t,e)=>Ki(t,"name",{value:e,configurable:!0}),"O");const Ji=Je(import.meta.url),de=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,Wt=x(t=>{if(typeof de<"u"&&de.versions&&de.versions.node){const[e,n]=de.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return de.getBuiltinModule(t)}return Ji(t)},"__cjs_getBuiltinModule"),{writeFile:Zi,stat:Yi,rm:Qi,readFile:ut,readdir:Xi,mkdir:eo,access:to}=Wt("node:fs/promises"),{createRequire:no}=Wt("node:module"),we=[{description:"Turn on verbose output",group:"global",name:"verbose",type:Boolean},{description:"Turn on debugging output",group:"global",name:"debug",type:Boolean},{alias:"h",description:"Print out helpful usage information",group:"global",name:"help",type:Boolean},{alias:"q",description:"Silence output",group:"global",name:"quiet",type:Boolean},{alias:"V",description:"Print version info",group:"global",name:"version",type:Boolean},{description:"Turn off colored output",group:"global",name:"no-color",type:Boolean},{description:"Force colored output",group:"global",name:"color",type:Boolean}];var io=Object.defineProperty,oo=x((t,e)=>io(t,"name",{value:e,configurable:!0}),"t$9");let K=class extends A{static{N(this,"D")}static{S(this,"S")}static{x(this,"a")}static{oo(this,"CommandNotFoundError")}commandName;constructor(e,n=[]){const i=`Command "${e}" not found${n.length>0?`. Did you mean: ${n.join(", ")}?`:""}`;super(i,"COMMAND_NOT_FOUND",{commandName:e,suggestions:n}),this.name="CommandNotFoundError",this.commandName=e,n.length>0&&(this.hint=`Try one of these commands: ${n.join(", ")}`)}};var ro=Object.defineProperty,ao=x((t,e)=>ro(t,"name",{value:e,configurable:!0}),"e$7");let qt=class extends A{static{N(this,"at")}static{S(this,"at")}static{x(this,"o")}static{ao(this,"ConflictingOptionsError")}option1;option2;constructor(t,e){super(`Options "${t}" and "${e}" cannot be used together`,"CONFLICTING_OPTIONS",{option1:t,option2:e}),this.name="ConflictingOptionsError",this.option1=t,this.option2=e,this.hint=`Remove either --${t} or --${e}`}};var so=Object.defineProperty,lo=x((t,e)=>so(t,"name",{value:e,configurable:!0}),"e$6");let co=class extends A{static{N(this,"jn")}static{S(this,"jn")}static{x(this,"o")}static{lo(this,"PluginError")}pluginName;constructor(t,e,n){super(`Plugin "${t}" error: ${e}`,"PLUGIN_ERROR",{originalError:n,pluginName:t}),this.name="PluginError",this.pluginName=t,n&&(this.cause=n)}};var uo=Object.defineProperty,pt=x((t,e)=>uo(t,"name",{value:e,configurable:!0}),"d$7");let po=class{static{N(this,"Mn")}static{S(this,"Un")}static{x(this,"p")}static{pt(this,"PluginManager")}logger;plugins=new Map;initialized=!1;cachedDependencyOrder=void 0;constructor(t){this.logger=t}hasPlugins(){return this.plugins.size>0}register(t){if(this.initialized)throw new Error(`Cannot register plugin "${t.name}" after initialization`);if(this.plugins.has(t.name))throw new Error(`Plugin "${t.name}" is already registered`);H().CEREBRO_OUTPUT_LEVEL===String(re)&&this.logger.debug(`registering plugin: ${t.name}`),this.plugins.set(t.name,t),this.cachedDependencyOrder=void 0}async init(t){if(this.initialized)throw new Error("PluginManager already initialized");if(this.plugins.size===0){this.logger.debug("no plugins registered, skipping initialization"),this.initialized=!0;return}this.validateDependencies();const e=this.getDependencyOrder();this.logger.debug(`initializing ${String(e.length)} plugin(s)...`);for(const n of e)if(typeof n.init=="function"){this.logger.debug(`initializing plugin: ${n.name}`);try{await n.init(t)}catch(i){const r=new co(n.name,`Failed to initialize: ${i instanceof Error?i.message:String(i)}`,i instanceof Error?i:void 0);throw this.logger.error(r.message),r}}this.initialized=!0}async executeLifecycle(t,e,n){if(!this.initialized)throw new Error("PluginManager not initialized");if(this.plugins.size===0)return;const i=this.getDependencyOrder();for(const r of i){const o=r[t];if(typeof o=="function"){this.logger.debug(`executing ${t} hook for plugin: ${r.name}`);try{await(t==="afterCommand"?o(e,n):o(e))}catch(l){throw this.logger.error(`Error in ${t} hook for plugin "${r.name}":`,l),l}}}}async executeErrorHandlers(t,e){if(!this.initialized||this.plugins.size===0)return;const n=this.getDependencyOrder();for(const i of n)if(typeof i.onError=="function"){this.logger.debug(`executing error handler for plugin: ${i.name}`);try{await i.onError(t,e)}catch(r){this.logger.error(`Error in error handler for plugin "${i.name}":`,r)}}}getDependencyOrder(){if(this.cachedDependencyOrder!==void 0)return this.cachedDependencyOrder;const t=[],e=new Set,n=new Set,i=pt(r=>{if(e.has(r))return;if(n.has(r))throw new Error(`Circular dependency detected involving plugin "${r}"`);const o=this.plugins.get(r);if(!o)throw new Error(`Plugin "${r}" not found`);if(n.add(r),o.dependencies)for(const l of o.dependencies)i(l);n.delete(r),e.add(r),t.push(o)},"visit");for(const r of this.plugins.keys())i(r);return this.cachedDependencyOrder=t,t}validateDependencies(){for(const t of this.plugins.values())if(t.dependencies){for(const e of t.dependencies)if(!this.plugins.has(e))throw new Error(`Plugin "${t.name}" depends on "${e}" which is not registered`)}}};var fo=Object.defineProperty,ho=x((t,e)=>fo(t,"name",{value:e,configurable:!0}),"n$a");const be=ho(t=>t.type?.name==="Boolean","optionIsBoolean");var mo=Object.defineProperty,Gt=x((t,e)=>mo(t,"name",{value:e,configurable:!0}),"p$9");const go=Gt(t=>{let e=t.type?t.type.name.toLowerCase():"string";const n=t.multiple??t.lazyMultiple?"[]":"";return e&&(e=e==="boolean"?"":`{underline ${e}${n}}`),e},"getTypeLabel"),ft=Gt(t=>(be(t)||(t.typeLabel=t.typeLabel??go(t),t.defaultOption&&(t.typeLabel=`${t.typeLabel} (D)`),t.required&&(t.typeLabel=`${t.typeLabel} (R)`)),t),"mapOptionTypeLabel");var vo=Object.defineProperty,Ht=x((t,e)=>vo(t,"name",{value:e,configurable:!0}),"e$4");const bo=new RegExp(/^-([^\d-])$/),yo=new RegExp(/^--(\S+)/),wo=new RegExp(/^-([^\d-]{2,})$/),$o=Ht(t=>bo.test(t)||yo.test(t)||wo.test(t),"isOption"),Oo=Ht((t,e)=>{const n=e[0]&&$o(e[0])||e.length===0?null:e.shift()??null;if(!t.includes(n)){const i=new Error(`Command not recognised: ${String(n)}`);throw i.command=n,i.name="INVALID_COMMAND",i}return{argv:e,command:n}},"commandLineCommands");var xo=Object.defineProperty,Kt=x((t,e)=>xo(t,"name",{value:e,configurable:!0}),"i$b"),Po=Object.defineProperty,Jt=Kt((t,e)=>Po(t,"name",{value:e,configurable:!0}),"i"),Eo=Object.defineProperty,Zt=Jt((t,e)=>Eo(t,"name",{value:e,configurable:!0}),"s"),Ao=Object.defineProperty,Yt=Zt((t,e)=>Ao(t,"name",{value:e,configurable:!0}),"i"),No=Object.defineProperty,Qt=Yt((t,e)=>No(t,"name",{value:e,configurable:!0}),"t");Qt(t=>t instanceof Error&&t.type==="VisulimaError","isVisulimaError");let Ce=class extends Error{static{N(this,"ue")}static{S(this,"ce")}static{x(this,"v")}static{Kt(this,"g")}static{Jt(this,"p")}static{Zt(this,"V")}static{Yt(this,"VisulimaError")}static{Qt(this,"VisulimaError")}loc;title;hint;type="VisulimaError";constructor({cause:e,hint:n,location:i,message:r,name:o,stack:l,title:s}){super(r,{cause:e}),this.title=s,this.name=o,this.stack=l??this.stack,this.loc=i,this.hint=n}setLocation(e){this.loc=e}setName(e){this.name=e}setMessage(e){this.message=e}setHint(e){this.hint=e}};var Co=Object.defineProperty,Xt=x((t,e)=>Co(t,"name",{value:e,configurable:!0}),"o$b"),jo=Object.defineProperty,en=Xt((t,e)=>jo(t,"name",{value:e,configurable:!0}),"o"),ko=Object.defineProperty,_o=en((t,e)=>ko(t,"name",{value:e,configurable:!0}),"i");let Lo=class tn extends Ce{static{N(this,"mt")}static{S(this,"ht")}static{x(this,"a")}static{Xt(this,"a")}static{en(this,"t")}static{_o(this,"AlreadySetError")}optionName;constructor(e){super({cause:void 0,hint:`Remove the duplicate option '${e}' from your command line arguments.`,location:void 0,message:`Option '${e}' is already set`,name:"ALREADY_SET",stack:void 0,title:"Option Already Set"}),this.optionName=e,Object.setPrototypeOf(this,tn.prototype)}};var So=Object.defineProperty,nn=x((t,e)=>So(t,"name",{value:e,configurable:!0}),"t$7"),To=Object.defineProperty,on=nn((t,e)=>To(t,"name",{value:e,configurable:!0}),"e"),Io=Object.defineProperty,Mo=on((t,e)=>Io(t,"name",{value:e,configurable:!0}),"e");let dt=class rn extends Ce{static{N(this,"yt")}static{S(this,"vt")}static{x(this,"n")}static{nn(this,"n")}static{on(this,"o")}static{Mo(this,"UnknownOptionError")}optionName;constructor(e){super({cause:void 0,hint:`Check your option definitions or remove the unknown option '${e}' from your command line arguments.`,location:void 0,message:`Unknown option: --${e}`,name:"UNKNOWN_OPTION",stack:void 0,title:"Unknown Option"}),this.optionName=`--${e}`,Object.setPrototypeOf(this,rn.prototype)}};var Vo=Object.defineProperty,an=x((t,e)=>Vo(t,"name",{value:e,configurable:!0}),"a$9"),Do=Object.defineProperty,sn=an((t,e)=>Do(t,"name",{value:e,configurable:!0}),"a"),Uo=Object.defineProperty,Bo=sn((t,e)=>Uo(t,"name",{value:e,configurable:!0}),"o");let Ro=class ln extends Ce{static{N(this,"Ot")}static{S(this,"bt")}static{x(this,"n")}static{an(this,"o")}static{sn(this,"e")}static{Bo(this,"UnknownValueError")}value;constructor(e){super({hint:"Use a defined option or add a defaultOption to capture this value.",message:`Unknown value: ${e}`,name:"UNKNOWN_VALUE",title:"Unknown Value"}),this.value=e,Object.setPrototypeOf(this,ln.prototype)}};var Fo=Object.defineProperty,cn=x((t,e)=>Fo(t,"name",{value:e,configurable:!0}),"i$8"),zo=Object.defineProperty,un=cn((t,e)=>zo(t,"name",{value:e,configurable:!0}),"i"),Wo=Object.defineProperty,qo=un((t,e)=>Wo(t,"name",{value:e,configurable:!0}),"i");let M=class pn extends Ce{static{N(this,"Nt")}static{S(this,"Pt")}static{x(this,"a")}static{cn(this,"o")}static{un(this,"e")}static{qo(this,"InvalidDefinitionsError")}constructor(e,n){super({cause:void 0,hint:n,location:void 0,message:e,name:"INVALID_DEFINITIONS",stack:void 0,title:"Invalid Option Definition"}),Object.setPrototypeOf(this,pn.prototype)}};var Go=Object.defineProperty,Ho=x((t,e)=>Go(t,"name",{value:e,configurable:!0}),"z"),Ko=Object.defineProperty,ce=Ho((t,e)=>Ko(t,"name",{value:e,configurable:!0}),"S"),Jo=Object.defineProperty,je=ce((t,e)=>Jo(t,"name",{value:e,configurable:!0}),"o");const ht=je(t=>t===Boolean||typeof t=="function"&&t.name.startsWith("Boolean"),"isBooleanType"),mt=je(t=>t===Number||typeof t=="function"&&t.name==="Number","isNumberType"),gt=je(t=>t===String||typeof t=="function"&&t.name==="String","isStringType"),Zo=je((t,e)=>Array.isArray(t)?ht(e)?t.map(Boolean):mt(e)?t.map(Number):gt(e)?t.map(String):t.map(n=>e(String(n))):t===null?null:ht(e)?!!t:mt(e)?Number(t):gt(e)?typeof t=="string"?t:String(t):e(typeof t=="string"?t:String(t)),"convertValue");var Yo=Object.defineProperty,Qo=ce((t,e)=>Yo(t,"name",{value:e,configurable:!0}),"e");const L=Qo((t,e,n,...i)=>{t&&console.debug(`[command-line-args:${n}] ${e}`,...i)},"debug");var Xo=Object.defineProperty,te=ce((t,e)=>Xo(t,"name",{value:e,configurable:!0}),"h$1");const er=/-([a-z])/g,tr=/^\d+$/,Be=te(t=>t===Boolean||typeof t=="function"&&t.name.startsWith("Boolean"),"isBooleanType"),nr=te(t=>t.codePointAt(0)===95,"isSpecialKey"),vt=te((t,e)=>Array.isArray(t)?[...t,...e]:[t,...e],"appendToArrayMultiple"),bt=te(t=>t==="__proto__"||t==="constructor"||t==="prototype","isUnsafeKey"),yt=te((t,e,n,i=!1)=>{t[e]===void 0?t[e]=i?[n]:n:i&&Array.isArray(t[e])?t[e].push(n):t[e]=[t[e],n]},"createOrAppendArray"),ir=te((t,e,n,i,r)=>{let o=e.get(t)??n.get(t);if(!o&&i){const l=t.toLowerCase();o=i.get(l)??r?.get(l)}return o},"getDefinition"),or=te((t,e,n,i)=>{const r=n.debug??!1;L(r,"resolveArgs called with options:","resolver",{partial:n.partial,stopAtFirstUnknown:n.stopAtFirstUnknown}),L(r,"Starting argument resolution","resolver"),L(r,"Tokens:","resolver",t),L(r,"Definitions:","resolver",e),L(r,"Processing tokens...","resolver");const o=new Map,l=new Map,s=n.caseInsensitive?new Map:void 0,p=n.caseInsensitive?new Map:void 0,a=n.camelCase?new Map:void 0,c=n.camelCase?new Map:void 0;for(const h of e)if(o.set(h.name,h),h.alias&&l.set(h.alias,h),n.caseInsensitive&&s&&(s.set(h.name.toLowerCase(),h),h.alias&&p&&p.set(h.alias.toLowerCase(),h)),n.camelCase&&a&&c){const m=h.name.replaceAll(er,(b,$)=>$.toUpperCase());a.set(h.name,m),c.set(m,h.name)}const d={},f={},g=[],u=new Set;let v=!1;const w=e.find(h=>h.defaultOption),y=e.some(h=>h.group),O=e.some(h=>h.type===Number);for(let h=0;h<t.length;h++){const m=t[h];if(m.kind==="option-terminator"){d._unknown=i.slice(m.index),v=!0;break}if(m.kind==="option"&&m.name){let b=ir(m.name,o,l,s,p);if(!b&&m.value===void 0&&O&&tr.test(m.name)){const C=e.find(R=>R.type===Number);C&&(b=C,m.value=m.name,m.name=C.name)}const $=b?b.name:m.name,P=b?.multiple,k=b?.lazyMultiple;if(f[$]!==void 0&&!P&&!k&&!n.partial)throw new Lo($);if(!b&&n.partial){const C=m.rawName??`--${m.name}${m.value!==void 0&&m.inlineValue?`=${m.value}`:""}`;g.push({index:m.index,value:C});continue}if(!b&&n.stopAtFirstUnknown){d._unknown=i.slice(m.index);break}if(!b&&!n.partial)throw new dt(m.name);if(m.value===void 0){const C=t[h+1],R=C?.kind==="option"&&!("name"in C)&&C.value!==void 0,V=C&&b&&!(b.type&&Be(b.type))&&(C.kind==="positional"||R),Rn=b&&b.defaultOption&&!b.multiple&&!b.lazyMultiple;if(V&&(!b?.defaultOption||Rn))if(P){let F=h+1;const De=[];for(;F<t.length&&(t[F].kind==="positional"||t[F].kind==="option"&&!("name"in t[F])&&t[F].value!==void 0);)De.push(t[F].value),u.add(t[F].index),F++;f[$]=f[$]===void 0?De:vt(f[$],De),h=F-1}else k?(yt(f,$,C.value,!0),u.add(C.index),h++):(f[$]=C.value,u.add(C.index),h++);else b?.type&&Be(b.type)?yt(f,$,!0,P):f[$]=P?[]:null}else{let{value:C}=m;if(b?.type&&Be(b.type))switch(C){case"":{if(n.partial)f._unknown??=[],f._unknown.push(`${m.rawName??`--${m.name}`}${m.value?`=${m.value}`:""}`),C=!0;else throw new dt(m.name);break}case"false":{C=!1;break}case"true":{C=!0;break}default:C=!0}const R=[C];if(P){let V=h+1;for(;V<t.length&&t[V].kind==="positional";)R.push(t[V].value),u.add(t[V].index),V++;h=V-1}f[$]===void 0?f[$]=P||k?R:C:P||k?f[$]=vt(f[$],R):f[$]=C}}else if(m.kind==="positional"&&n.stopAtFirstUnknown&&!u.has(m.index)&&!w){L(r,`Found unconsumed positional token at index ${String(m.index)}, stopping processing`,"resolver"),d._unknown=i.slice(m.index);break}}for(const[h,m]of Object.entries(f)){const b=o.get(h);b&&(b.multiple||b.lazyMultiple)&&!Array.isArray(m)&&(f[h]=[m])}let E=Number.POSITIVE_INFINITY;if(n.stopAtFirstUnknown&&!v){for(const h of t)if(h.kind==="option"&&!o.has(h.name??"")&&!l.has(h.name??"")&&(!n.caseInsensitive||!s?.has(h.name?.toLowerCase()??"")&&!p?.has(h.name?.toLowerCase()??""))){E=h.index;break}}if(w){const h=[],m=[];for(const b of t)b.kind==="positional"&&!u.has(b.index)&&b.index<E&&(h.push(b.value),m.push(b));if(h.length>0){const b=f[w.name],$=w.multiple??w.lazyMultiple;b===void 0?$?(m.forEach(P=>u.add(P.index)),f[w.name]=h):(u.add(m[0].index),f[w.name]=h[0]):$&&(m.forEach(P=>u.add(P.index)),f[w.name]=Array.isArray(b)?[...h,...b]:[...h,b])}}if(!n.partial){for(const h of t)if(h.kind==="positional"&&!u.has(h.index))throw new Ro(i[h.index])}if(n.partial&&!n.stopAtFirstUnknown){const h=[...g];if(f._unknown){const m=new Map;for(const[b,$]of i.entries())m.set($,b);for(const b of f._unknown){const $=m.get(b);$!==void 0&&h.push({index:$,value:b})}}for(const m of t)m.kind==="positional"&&!u.has(m.index)&&h.push({index:m.index,value:i[m.index]});h.length>0&&(h.sort((m,b)=>m.index-b.index),d._unknown=h.map(m=>m.value))}if(n.stopAtFirstUnknown&&!v){const h=t.findIndex($=>$.kind==="option"&&!o.has($.name??"")&&!l.has($.name??"")&&(!n.caseInsensitive||!s?.has($.name?.toLowerCase()??"")&&!p?.has($.name?.toLowerCase()??""))),m=t.findIndex($=>$.kind==="positional"&&!u.has($.index));let b=-1;if(h!==-1&&m!==-1?b=Math.min(h,m):h!==-1?b=h:m!==-1&&(b=m),b>=0){const $=t[b].index;d._unknown=i.slice($)}}else g.length>0&&!n.partial&&(d._unknown=g.map(h=>h.value));for(const[h,m]of Object.entries(f)){const b=n.camelCase?a?.get(h)??h:h,$=o.get(h);d[b]=$?.type?Zo(m,$.type):m===void 0?null:m}for(const h of e){const m=n.camelCase?a?.get(h.name)??h.name:h.name;!(m in d)&&h.defaultValue!==void 0&&(h.multiple??h.lazyMultiple?d[m]=Array.isArray(h.defaultValue)?[...h.defaultValue]:[h.defaultValue]:d[m]=h.defaultValue)}if(y){const h={},m={},b={};for(const P of e)if(P.group){const k=Array.isArray(P.group)?P.group:[P.group];for(const C of k)bt(C)||(h[C]??={})}for(const P of Object.keys(d))if(!nr(P)){m[P]=d[P];let k=P;n.camelCase&&(k=c?.get(P)??P);const C=o.get(k);if(C?.group){const R=Array.isArray(C.group)?C.group:[C.group];for(const V of R)bt(V)||h[V]&&(h[V][P]=d[P])}else b[P]=d[P]}const $={_all:m};for(const[P,k]of Object.entries(h))$[P]=k;Object.keys(b).length>0&&($._none=b),d._unknown&&($._unknown=d._unknown),Object.keys(d).forEach(P=>delete d[P]),Object.assign(d,$)}return L(r,"Final parsed result:","resolver",d),d},"resolveArgs");var rr=Object.defineProperty,ne=ce((t,e)=>rr(t,"name",{value:e,configurable:!0}),"l");const Q="-".codePointAt(0),Y="=",ar=Y.codePointAt(0),sr="--",lr="-",cr="--",fn=ne(t=>t.length>2&&t.startsWith(cr),"hasLongOptionPrefix"),ur=ne(t=>fn(t)&&!t.includes(Y,3),"isLongOption"),pr=ne(t=>fn(t)&&t.includes(Y,3),"isLongOptionAndValue"),fr=ne(t=>t!==void 0&&t.length>0&&t.codePointAt(0)!==Q,"hasOptionValue"),dr=ne(t=>{if(t.length!==2||t.codePointAt(0)!==Q||t.codePointAt(1)===Q)return!1;const e=t.codePointAt(1);return e!==void 0&&(e<48||e>57)},"isShortOption"),hr=ne(t=>!(t.length<=2||t.codePointAt(0)!==Q||t.codePointAt(1)===Q),"isShortOptionGroup"),mr=ne(t=>{const e=[],n=[...t];let i=-1,r=0;for(;n.length>0;){const o=n.shift();if(o===void 0)break;const l=n[0];if(r>0?r--:i++,o===sr){e.push({index:i,kind:"option-terminator"});const s=n.map((p,a)=>({index:i+a+1,kind:"positional",value:p}));e.push(...s),i+=n.length;break}if(dr(o)){const s=o.charAt(1);let p;r?(e.push({index:i,kind:"option",name:s,rawName:o,value:p}),r===1&&fr(l)&&(p=n.shift(),e.push({index:i,kind:"option",value:p}))):e.push({index:i,kind:"option",name:s,rawName:o,value:p}),p!==void 0&&++i;continue}if(hr(o)&&!o.includes(Y)){const s=[];let p="",a=!1;for(let c=1;c<o.length;c++){const d=o.charAt(c);a?p+=d:d.codePointAt(0)===ar?a=!0:s.push(`${lr}${d}`)}if(a)if(s.length>0){const c=s.pop();s.push(`${c}=${p}`)}else s.push(p);n.unshift(...s),r=s.length;continue}if(ur(o)){const s=o.slice(2);e.push({index:i,kind:"option",name:s,rawName:o});continue}if(pr(o)){const s=o.indexOf(Y),p=o.slice(2,s),a=o.slice(s+1);e.push({index:i,inlineValue:!0,kind:"option",name:p,rawName:o,value:a});continue}if(o.length>2&&o.codePointAt(0)===Q&&o.codePointAt(1)!==Q&&o.includes(Y)){const s=o.indexOf(Y),p=o.charAt(1),a=o.slice(s+1);e.push({index:i,inlineValue:!0,kind:"option",name:p,rawName:o,value:a});continue}e.push({index:i,kind:"positional",value:o})}return e},"parseArgsTokens");var gr=Object.defineProperty,Ze=ce((t,e)=>gr(t,"name",{value:e,configurable:!0}),"d");const vr=/\d/,br=Ze(t=>t!=null&&(t===Boolean||typeof t=="function"&&t.name.startsWith("Boolean")),"isBooleanType"),yr=Ze(t=>typeof t=="function","isValidCustomTypeFunction"),wr=Ze((t,e,n)=>{const i=n?.debug??!1;L(i,"Validating definitions:","validation",t,"caseInsensitive:",e);const r=new Set,o=new Set,l=new Set,s=new Set;let p=0;for(const a of t){if(L(i,"Checking definition:","validation",a),!a.name)throw L(i,"Validation failed: name is required","validation"),new M("Invalid option definition: name is required");if(typeof a.name!="string")throw new M("Invalid option definition: name must be a string");if(a.name.trim()==="")throw new M("Invalid option definition: name cannot be empty");const c=e?a.name.toLowerCase():"";if(r.has(a.name)||e&&l.has(c))throw new M(`Invalid option definition: duplicate name '${a.name}'`);if(o.has(a.name)||e&&s.has(c))throw new M(`Invalid option definition: name '${a.name}' conflicts with an existing alias`);if(r.add(a.name),e&&l.add(c),a.alias!==void 0){if(typeof a.alias!="string")throw new M("Invalid option definition: alias must be a string");if(a.alias.length!==1)throw new M("Invalid option definition: alias must be a single character");if(vr.test(a.alias))throw new M("Invalid option definition: alias cannot be numeric");if(a.alias==="-")throw new M('Invalid option definition: alias cannot be "-"');const d=e?a.alias.toLowerCase():"";if(o.has(a.alias)||e&&s.has(d))throw new M(`Invalid option definition: duplicate alias '${a.alias}'`);if(r.has(a.alias)||e&&l.has(d))throw new M(`Invalid option definition: alias '${a.alias}' conflicts with an existing option name`);o.add(a.alias),e&&s.add(d)}if(a.defaultOption&&(p++,a.type!==void 0&&br(a.type)))throw new M("Invalid option definition: defaultOption cannot be Boolean type");if(a.type!==void 0&&!(a.type===Boolean||a.type===Number||a.type===String||typeof a.type=="function"&&yr(a.type)))throw new M("Invalid option definition: invalid type")}if(p>1)throw L(i,"Validation failed: multiple defaultOptions not allowed","validation"),new M("Invalid option definition: multiple defaultOptions not allowed");L(i,"Validation completed successfully","validation")},"validateDefinitions");var $r=Object.defineProperty,Or=ce((t,e)=>$r(t,"name",{value:e,configurable:!0}),"O");const xr=Or((t,e={})=>{const n=e.debug??!1;L(n,"Starting command-line-args parsing","index"),L(n,"Options:","index",e);const i={...e};i.stopAtFirstUnknown&&(i.partial=!0);const r=Array.isArray(t)?t:[t];L(n,"Normalized definitions:","index",r),wr(r,i.caseInsensitive,n?i:void 0);let{argv:o}=i;if(!o&&(o=process.argv.slice(2),process.execArgv.length>0)){const a=new Set(process.execArgv);o=o.filter(c=>!a.has(c))}L(n,"Using argv:","index",o);let l=o;i.caseInsensitive&&(l=o.map(a=>{if(a.startsWith("--")){const c=a.indexOf("="),d=(c===-1?a.slice(2):a.slice(2,c)).toLowerCase();return c===-1?`--${d}`:`--${d}${a.slice(c)}`}if(a.startsWith("-")&&!a.startsWith("--")&&a.length>1){const c=a.slice(1).split("=",2),d=c[0],f=c[1];if(!d)return a;const g=d.toLowerCase();return f===void 0?`-${g}`:`-${g}=${f}`}return a}));const s=mr(l.map(String));L(n,"Tokenized arguments:","index",s);const p=or(s,r,i,o);return L(n,"Command-line-args parsing completed","index"),p},"commandLineArgs");var Pr=Object.defineProperty,Er=x((t,e)=>Pr(t,"name",{value:e,configurable:!0}),"b$2");let Ar=class{static{N(this,"Yi")}static{S(this,"Ki")}static{x(this,"m")}static{Er(this,"EmptyToolbox")}result;argv;options;argument;command;commandName;env;logger;console;fs;process;runtime;rawUnknown;constructor(t,e){this.commandName=t,this.command=e}};var Nr=Object.defineProperty,Cr=x((t,e)=>Nr(t,"name",{value:e,configurable:!0}),"n$6");let Re=class extends A{static{N(this,"Oe")}static{S(this,"be")}static{x(this,"i")}static{Cr(this,"CommandLoaderError")}commandName;constructor(e,n,i){super(`Failed to load command "${e}": ${n}`,"COMMAND_LOADER_ERROR",{commandName:e,reason:n}),this.name="CommandLoaderError",this.commandName=e,this.hint="Ensure the loader resolves to a module with a default export that is the command handler function.",i!==void 0&&(this.cause=i)}};var jr=Object.defineProperty,kr=x((t,e)=>jr(t,"name",{value:e,configurable:!0}),"f$5");const _r=/^-{1,2}(\w+)(=(.+))?$/,dn=kr((t,e,n,i)=>{const r=_r.exec(t);if(r===null)return{};const o=r[1];if(!o)return{};const l=n&&i?n.get(o)??i.get(o):e.find(s=>s.name===o||s.alias===o);return l!==void 0?{argName:l.name,argValue:r[3],option:l}:{}},"getParameterOption");var Lr=Object.defineProperty,Ke=x((t,e)=>Lr(t,"name",{value:e,configurable:!0}),"e$3");const wt=Ke((t,e)=>{if(e.type===void 0)return t;if(e.type.name==="Boolean"){if(t==="true"||t==="1")return e.type(!0);if(t==="false"||t==="0")return e.type(!1)}return e.type(t)},"convertType"),Sr=new Set(["0","1","false","true"]),Tr=Ke((t,e,n,i)=>{if(e.length===0||t.length===0)return{};const r=Ke((o,l)=>{const{argName:s,argValue:p,option:a}=dn(l,e,n,i),{lastOption:c}=o;return a&&be(a)&&p&&s?o.partial[s]=wt(p,a):o.lastName&&c&&be(c)&&Sr.has(l)&&(o.partial[o.lastName]=wt(l,c)),{lastName:s,lastOption:a,partial:o.partial}},"getBooleanValue");return t.reduce(r,{partial:{}}).partial},"getBooleanValues");var Ir=Object.defineProperty,$t=x((t,e)=>Ir(t,"name",{value:e,configurable:!0}),"s$8");const Mr=new Set(["0","1","false","true"]),Vr=$t((t,e,n,i)=>{if(e.length===0||t.length===0)return t;const r=$t((o,l)=>{const{argValue:s,option:p}=dn(l,e,n,i),{lastOption:a}=o;if(a&&be(a)&&Mr.has(l)){const{args:c}=o;return{args:c.slice(0,-1)}}return p&&be(p)&&s?{args:o.args}:{args:[...o.args,l],lastOption:p}},"removeBooleanArguments");return t.reduce(r,{args:[]}).args},"removeBooleanValues");var Dr=Object.defineProperty,Ur=x((t,e)=>Dr(t,"name",{value:e,configurable:!0}),"o$8");const Br=Ur(t=>{const e=new Map;for(const n of t){const i=e.get(n.name);i?e.set(n.name,{...i,...n}):e.set(n.name,n)}return[...e.values()]},"mergeArguments");var Rr=Object.defineProperty,ke=x((t,e)=>Rr(t,"name",{value:e,configurable:!0}),"o$7");const Fr=ke(t=>{if(t===void 0)return;const e=t.toLowerCase().trim();return e==="true"||e==="1"||e==="yes"||e==="on"},"transformBooleanEnv"),zr=ke((t,e)=>{if(!t.type)return e;if(e!==void 0){if(t.type===Boolean||typeof t.type=="function"&&t.type.name==="Boolean")return Fr(e);if(t.type===Number||typeof t.type=="function"&&t.type.name==="Number"){const n=Number.parseFloat(e);return Number.isNaN(n)?void 0:n}return t.type===String||typeof t.type=="function"&&t.type.name==="String"?e:t.type(e)}},"transformEnvValue"),Wr=/_./g,qr=/^[A-Z]/,Gr=ke(t=>t.toLowerCase().replaceAll(Wr,e=>e[1]?.toUpperCase()??e).replace(qr,e=>e.toLowerCase()),"toCamelCase"),Hr=ke(t=>{if(!t||t.length===0)return{};const e={},n=H();for(const i of t){const r=n[i.name],o=zr(i,r),l=o===void 0?i.defaultValue:o,s=Gr(i.name);e[s]=l}return e},"processEnvVariables");var Kr=Object.defineProperty,ye=x((t,e)=>Kr(t,"name",{value:e,configurable:!0}),"a$5");const Jr=ye(t=>{const e=new Map,n=new Map;for(const i of t)if(e.set(i.name,i),i.alias){const r=Array.isArray(i.alias)?i.alias:[i.alias];for(const o of r)n.set(o,i)}return{optionMapByAlias:n,optionMapByName:e}},"buildOptionMaps"),hn=ye(async t=>{if(typeof t.__resolvedExecute__=="function")return t.__resolvedExecute__;if(typeof t.loader!="function")throw new Re(t.name,"no execute or loader defined");let e;try{e=await t.loader()}catch(i){throw new Re(t.name,i instanceof Error?i.message:String(i),i)}const n=e.default;if(typeof n!="function")throw new Re(t.name,"loader did not return a module with a default-exported handler function");return t.__resolvedExecute__=n,n},"loadLazyHandler"),Zr=ye((t,e,n,i)=>{const r=new Ar(t.name,t),{_all:o,_unknown:l,positionals:s}=e,p=Object.keys(n).length>0?{...o,...n}:o;xe in p&&delete p[xe],r.argument=s?.[xe]??[],r.rawUnknown=[...l??[]];const a=Object.keys(i).length>0;return r.options=a?{...p,...i}:p,r.env=Hr(t.env),r},"prepareToolbox"),Yr=ye((t,e,n)=>{const i=t.options??[],r=i.length>0;let o=Br(r?[...i,...n]:n);if(o.length>0){for(const a of o)if(a.multiple&&a.lazyMultiple)throw new Error(`Argument "${a.name}" cannot have both multiple and lazyMultiple options, please choose one.`)}t.argument&&(o=[{defaultOption:!0,description:t.argument.description,group:"positionals",multiple:!0,name:xe,type:t.argument.type,typeLabel:t.argument.typeLabel},...o]);let l,s;if(r){const{optionMapByAlias:a,optionMapByName:c}=Jr(i);l=Vr(e,i,c,a),s=Tr(e,i,c,a)}else l=e,s={};const p=xr(o,{argv:l,camelCase:!0,partial:!0,stopAtFirstUnknown:!0});return{arguments_:o,booleanValues:s,parsedArgs:p}},"processCommandArgs"),oe=ye(async(t,e,n)=>typeof t.execute=="function"?t.execute(e):(await hn(t))(e),"executeCommand");var Qr=Object.defineProperty,Xr=x((t,e)=>Qr(t,"name",{value:e,configurable:!0}),"n$5");let ea=class extends A{static{N(this,"No")}static{S(this,"$a")}static{x(this,"s")}static{Xr(this,"CommandValidationError")}commandName;missingOptions;constructor(t,e){super(`Command "${t}" is missing required options: ${e.join(", ")}`,"COMMAND_VALIDATION_ERROR",{commandName:t,missingOptions:e}),this.name="CommandValidationError",this.commandName=t,this.missingOptions=e,this.hint=`Provide the following required options: ${e.join(", ")}`}};var ta=Object.defineProperty,na=x((t,e)=>ta(t,"name",{value:e,configurable:!0}),"t$5");const Ot=na((t,e,n=!1)=>{const i=[];for(const r of t)if(!(!n&&!r.required)&&e[r.name]===void 0){if(r.type?.name==="Boolean"){e[r.name]=!1;continue}i.push(r)}return i},"listMissingArguments");var ia=Object.defineProperty,mn=x((t,e)=>ia(t,"name",{value:e,configurable:!0}),"n$4");const oa=mn((t,e)=>e.includes(t)?!0:Math.abs(t.length-e.length)>t.length/2?!1:Rt(t,e)<=t.length/3,"isSimilar"),Z=mn((t,e)=>{const n=t.toLowerCase();return e.filter(i=>oa(i.toLowerCase(),n))},"findAlternatives");var ra=Object.defineProperty,_e=x((t,e)=>ra(t,"name",{value:e,configurable:!0}),"a$4");const aa=_e((t,e)=>{const n=[];if(t._unknown&&t._unknown.forEach(i=>{const r=i.startsWith("--");let o=`Found unknown ${r?"option":"argument"} "${i}"`;if(r){const l=Z(i.replace("--",""),(e.options??[]).map(s=>s.name));if(l.length>0){const[s,...p]=l.map(a=>`--${a}`);o+=p.length>0?`, did you mean ${s??""} or ${p.join(", ")}?`:`, did you mean ${s??""}?`}}n.push(o)}),n.length>0)throw new Error(n.join(`
|
|
4
|
-
`))},"validateUnknownOptions"),sa=_e((t,e,n)=>{const i=n.__requiredOptions__,r=i?Ot(i,e,!0):Ot(t,e,!1);if(r.length>0)throw new ea(n.name,r.map(o=>o.name));e._unknown&&e._unknown.length>0&&!n.argument&&aa(e,n)},"validateRequiredOptions"),la=_e((t,e,n)=>{const i=n.__conflictingOptions__??t.filter(r=>r.conflicts!==void 0);if(i.length>0){const r=i.find(o=>Array.isArray(o.conflicts)?o.conflicts.some(l=>e[l]!==void 0)&&e[o.name]!==void 0:e[o.conflicts]!==void 0&&e[o.name]!==void 0);if(r)throw new qt(r.name,typeof r.conflicts=="string"?r.conflicts:r.conflicts?.[0]??"unknown")}},"validateConflictingOptions"),ca=_e(t=>{if(!Array.isArray(t.options))return;const e=new Map,n=new Map;for(const r of t.options){if(r.name){const o=e.get(r.name)??[];o.push(r),e.set(r.name,o)}if(typeof r.alias=="string"&&r.alias.length>0){const o=n.get(r.alias)??[];o.push(r),n.set(r.alias,o)}else if(Array.isArray(r.alias)){for(const o of r.alias)if(o.length>0){const l=n.get(o)??[];l.push(r),n.set(o,l)}}}const i=[];for(const[r,o]of e)o.length>1&&i.push(`Duplicate option name "${r}" in command "${t.name}": ${JSON.stringify(o)}`);for(const[r,o]of n)o.length>1&&i.push(`Duplicate option alias "-${r}" used by options ${o.map(l=>`"${l.name}"`).join(", ")} in command "${t.name}"`);if(i.length>0)throw new Error(i.join(`
|
|
5
|
-
`))},"validateDuplicateOptions");var ua=Object.defineProperty,Ye=x((t,e)=>ua(t,"name",{value:e,configurable:!0}),"s$4");const pa=Ye((t,e)=>{if(e.length===0)return{argv:[],commandPath:void 0};const n=[];let i;for(let r=1;r<=e.length;r+=1){const o=e[r-1];if(o===void 0||o.startsWith("-"))break;n.push(o);const l=n.join(" ");t.has(l)&&(i={commandPath:[...n],depth:r})}return i?{argv:e.slice(i.depth),commandPath:i.commandPath}:{argv:e,commandPath:void 0}},"parseNestedCommand"),J=Ye(t=>t.join(" "),"getCommandPathKey"),xt=Ye((t,e)=>e&&e.length>0?[...e,t]:[t],"getFullCommandPath");var fa=Object.defineProperty,gn=x((t,e)=>fa(t,"name",{value:e,configurable:!0}),"i$5"),da=Object.defineProperty,vn=gn((t,e)=>da(t,"name",{value:e,configurable:!0}),"r"),ha=Object.defineProperty,ma=vn((t,e)=>ha(t,"name",{value:e,configurable:!0}),"c");let bn=class{static{N(this,"xt")}static{S(this,"xt")}static{x(this,"l")}static{gn(this,"y")}static{vn(this,"s")}static{ma(this,"LRUCache")}capacity;cache;keyOrder;constructor(t){this.capacity=t,this.cache=new Map,this.keyOrder=[]}get(t){if(this.cache.has(t))return this.keyOrder=this.keyOrder.filter(e=>e!==t),this.keyOrder.push(t),this.cache.get(t)}has(t){return this.cache.has(t)}set(t,e){if(this.cache.has(t))this.keyOrder=this.keyOrder.filter(n=>n!==t);else if(this.cache.size>=this.capacity){const n=this.keyOrder.shift();n!==void 0&&this.cache.delete(n)}this.cache.set(t,e),this.keyOrder.push(t)}delete(t){this.cache.delete(t),this.keyOrder=this.keyOrder.filter(e=>e!==t)}clear(){this.cache.clear(),this.keyOrder=[]}size(){return this.cache.size}};var ga=Object.defineProperty,va=x((t,e)=>ga(t,"name",{value:e,configurable:!0}),"r$5"),ba=Object.defineProperty,ya=va((t,e)=>ba(t,"name",{value:e,configurable:!0}),"a"),wa=Object.defineProperty,$a=ya((t,e)=>wa(t,"name",{value:e,configurable:!0}),"s");const Oa=$a((t,e)=>typeof t!="string"||t===""?"":(e?.locale?t[0].toLocaleLowerCase(e.locale):t[0].toLowerCase())+t.slice(1),"lowerFirst");var xa=Object.defineProperty,Pa=x((t,e)=>xa(t,"name",{value:e,configurable:!0}),"I"),Ea=Object.defineProperty,Le=Pa((t,e)=>Ea(t,"name",{value:e,configurable:!0}),"W");const Aa=no(import.meta.url),he=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,Na=Le(t=>{if(typeof he<"u"&&he.versions&&he.versions.node){const[e,n]=he.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return he.getBuiltinModule(t)}return Aa(t)},"__cjs_getBuiltinModule"),{stripVTControlCharacters:Ca}=Na("node:util");var ja=Object.defineProperty,ka=Le((t,e)=>ja(t,"name",{value:e,configurable:!0}),"g");const Fe=new bn(1e3),_a=/[.*+?^${}()|[\]\\]/g,La=ka(t=>{const e=t.join("");if(Fe.has(e))return Fe.get(e);const n=t.map(r=>r.replaceAll(_a,String.raw`\$&`)).join("|"),i=new RegExp(n,"g");return Fe.set(e,i),i},"getSeparatorsRegex");var Sa=Object.defineProperty,Ta=Le((t,e)=>Sa(t,"name",{value:e,configurable:!0}),"t");const Ia=Ta(t=>{const e=[];let n=0,i;for(se.lastIndex=0;(i=se.exec(t))!==null;)i.index>n&&e.push(t.slice(n,i.index)),e.push(i[0]),n=se.lastIndex;return n<t.length&&e.push(t.slice(n)),e.filter(Boolean)},"splitByEmoji");var Ma=Object.defineProperty,j=Le((t,e)=>Ma(t,"name",{value:e,configurable:!0}),"u");const Va=/[ČŠŽĐ]/i,yn=new Uint8Array(128),wn=new Uint8Array(128),$n=new Uint8Array(128);for(let t=0;t<128;t++)yn[t]=t>=65&&t<=90?1:0,wn[t]=t>=97&&t<=122?1:0,$n[t]=t>=48&&t<=57?1:0;const ze=j(t=>yn[t],"isUpper"),Pt=j(t=>wn[t],"isLower"),We=j(t=>$n[t],"isDigit"),G=j((t,e,n,i,r)=>{if(t.length===0)return[];let o=!1;const l=Object.values(e);for(const g of l)if(g(t[0])){o=!0;break}if(!o&&!n)return[t];const s=[...t],p=[];let a=s[0],c="other";const d=Object.entries(e);for(const g of d){const[u,v]=g;if(v(s[0])){c=u;break}}let f=n&&i?s[0]===s[0].toLocaleUpperCase(i):!1;for(let g=1;g<s.length;g++){const u=s[g];let v="other";for(const O of d){const[E,h]=O;if(h(u)){v=E;break}}const w=n&&i?u===u.toLocaleUpperCase(i):!1;let y=!1;r?y=r(c,v,f,w,u,g,s):(c!==v&&c!=="other"&&v!=="other"&&(y=!0),n&&v!=="other"&&!f&&w&&(y=!0)),y?(p.push(a),a=u):a+=u,c=v,n&&(f=w)}return a&&a.length>0&&p.push(a),p.length>0?p:[t]},"handleScriptTransitions"),Da=j((t,e,n,i)=>{if(n.size===0)return e;for(const r of n)if(t.startsWith(r,e))return i.push(r),e+r.length;return e},"detectAndProcessAcronym"),On=j((t,e=new Set)=>{if(t.length===0)return[];if(t.toUpperCase()===t)return[t];let n=0;const i=[],r=t.length;for(let o=1;o<r;o++){const l=Da(t,n,e,i);if(l!==n){n=l,o=n-1;continue}const s=t.codePointAt(o-1),p=t.codePointAt(o),a=s&&s<128&&ze(s),c=p&&p<128&&ze(p),d=s&&s<128&&Pt(s),f=s&&s<128&&We(s),g=p&&p<128&&We(p);if(d&&c){i.push(t.slice(n,o)),n=o;continue}if(f&&!g||!f&&g){i.push(t.slice(n,o)),n=o;continue}if(g&&!f){let u=!1,v=!1;if(o+1<r){const w=t.codePointAt(o+1);u=w&&w<128&&ze(w),v=w&&w<128&&We(w)}if(!v&&u){i.push(t.slice(n,o),t.slice(o,o+1)),n=o+1;continue}}if(o+1<r){const u=t.codePointAt(o+1),v=u&&u<128&&Pt(u);if(a&&c&&v){const w=t.slice(n,o+1);e.has(w)||(i.push(t.slice(n,o)),n=o)}}}return n<r&&i.push(t.slice(n)),i.filter(o=>o!=="")},"splitCamelCaseFast"),xn=j((t,e,n)=>{if(t.length===0)return[];const i=t===t.toLocaleUpperCase(e);if(e.startsWith("de")){if(!i&&t.replaceAll("ß","SS")===t.toLocaleUpperCase(e))return[t];const a=[...t],c=a.length,d=[];let f=a[0],g=a[0]===a[0].toLocaleUpperCase(e),u=g,v=g?0:-1;for(let w=1;w<c;w++){const y=a[w],O=y===y.toLocaleUpperCase(e);if(O===g)f+=y;else if(O)f&&f.length>0&&(d.push(f),f=y),u=!0,v=w;else{if(u&&w-v>1){const E=a[w-1],h=f.slice(0,-1);h&&h.length>0&&d.push(h),f=E+y}else f+=y;u=!1,v=-1}g=O}return f&&f.length>0&&d.push(f),d}if(e.startsWith("uk")||e.startsWith("ru")||e.startsWith("bg")||e.startsWith("sr")||e.startsWith("mk")||e.startsWith("be")){if(!ie.test(t)&&!I.test(t))return[t];const a=[...t],c=a.length,d=[];let f=a[0];const g=a[0];let u;ie.test(g)?u=1:I.test(g)?u=2:u=0;let v=g===g.toLocaleUpperCase(e);for(let y=1;y<c;y++){const O=a[y];let E;ie.test(O)?E=1:I.test(O)?E=2:E=0;const h=O===O.toLocaleUpperCase(e);u!==E&&(u===1||u===2)&&(E===1||E===2)||E===u&&!v&&h?(d.push(f),f=O):f+=O,u=E,v=h}f&&f.length>0&&d.push(f);const w=[];for(let y=0;y<d.length;y++)y<d.length-1&&d[y].length===1&&I.test(d[y])&&ie.test(d[y+1][0])?(w.push(d[y]+d[y+1]),y+=1):w.push(d[y]);return w}if(e.startsWith("el")){if(!Ue.test(t)&&!I.test(t))return[t];const a=[];rt.lastIndex=0;let c;for(;(c=rt.exec(t))!==null;)a.push(c[0]);a.length===0&&a.push(t);const d=[];if(a.length===1){const f=a[0];if(!f||!Ue.test(f[0])||f.length===1)return[f??t]}for(const f of a){if(!f)continue;if(!Ue.test(f[0])||f.length===1){d.push(f);continue}const g=f.length;let u=f[0],v=f[0]===f[0].toLocaleUpperCase(e);for(let w=1;w<g;w++){const y=f[w],O=y===y.toLocaleUpperCase(e);!v&&O?(d.push(u),u=y):u+=y,v=O}u&&d.push(u)}return d}if(e.startsWith("ja")||e.startsWith("ko")){const a=e.startsWith("ja"),c=a?{hiragana:j(f=>Si.test(f),"hiragana"),kanji:j(f=>lt.test(f),"kanji"),katakana:j(f=>Ii.test(f),"katakana"),latin:j(f=>I.test(f),"latin")}:{hangul:j(f=>at.test(f),"hangul"),latin:j(f=>I.test(f),"latin")},d=new Set(["が","で","と","に","の","は","へ","も","や","を"]);if(a){const f=G(t,c,!1,e,(u,v)=>u==="hiragana"&&v==="katakana"||u==="katakana"&&v==="hiragana"||u==="hiragana"&&v==="latin"||u==="katakana"&&v==="latin"||u==="kanji"&&v==="latin"||u==="latin"&&(v==="hiragana"||v==="katakana"||v==="kanji")),g=[];for(const u of f){const v=u;v.length===1&&d.has(v)&&g.length>0?g[g.length-1]=g.at(-1)+v:g.push(v)}return g.length>0?g:[t]}return G(t,c,!1,e,(f,g)=>f==="hangul"&&g==="latin"||f==="latin"&&g==="hangul")}if(e.startsWith("sl")){const a=[...t],c=a.length,d=[];let f=a[0],g=a[0]===a[0].toLocaleUpperCase(e);for(let u=1;u<c;u++){const v=a[u],w=v===v.toLocaleUpperCase(e),y=Va.test(v),O=u<c-1&&a[u+1]===a[u+1].toLocaleUpperCase(e);!g&&w||y&&O?(d.push(f),f=v,y&&O&&(d.push(f),f="")):f+=v,g=w}return f&&f.length>0&&d.push(f),d}if(e.startsWith("zh"))return G(t,{han:j(a=>lt.test(a),"han"),latin:j(a=>I.test(a),"latin")},!1,e);if(["ar","fa","he","ur"].includes(e.split("-")[0])){const a=j(c=>st.test(c)||ot.test(c),"isRtlChar");return G(t,{latin:j(c=>I.test(c),"latin"),rtl:j(c=>a(c),"rtl")},!1,e)}if(["am","bn","gu","hi","km","kn","lo","ml","mr","ne","or","pa","si","ta","te","th"].includes(e.split("-")[0])){const a=j(c=>ji.test(c)||Ci.test(c)||_i.test(c)||Li.test(c)||Ti.test(c)||Fi.test(c)||zi.test(c)||Di.test(c)||Ri.test(c)||Wi.test(c)||Vi.test(c)||qi.test(c)||Ui.test(c)||ki.test(c)||Mi.test(c)||Bi.test(c),"isIndicChar");return G(t,{indic:j(c=>a(c),"indic"),latin:j(c=>I.test(c),"latin")},!1,e)}if(["be","bg","ru","sr","uk"].includes(e))return G(t,{cyrillic:j(a=>ie.test(a),"cyrillic"),latin:j(a=>I.test(a),"latin")},!0,e);if(["ar","fa","he"].includes(e))return G(t,{latin:j(a=>I.test(a),"latin"),rtl:j(a=>st.test(a)||ot.test(a),"rtl")},!1,e);if(e.startsWith("ko"))return G(t,{hangul:j(a=>at.test(a),"hangul"),latin:j(a=>I.test(a),"latin")},!1,e);if(e.startsWith("uz")){if(!ie.test(t)&&!I.test(t))return[t];const a=[...t],c=a.length,d=[];let f=a[0],g=a[0]===a[0].toLocaleUpperCase(e);for(let u=1;u<c;u++){const v=a[u],w=v===v.toLocaleUpperCase(e);if(ct.test(v)||ct.test(a[u-1])){f+=v;continue}!g&&w?(d.push(f),f=v):f+=v,g=w}return f&&f.length>0&&d.push(f),d}const r=[...t],o=r.length,l=[];let s=r[0],p=r[0]===r[0].toLocaleUpperCase(e);for(const a of n)if(t.startsWith(a)){l.push(a),s=r[a.length],p=s===s.toLocaleUpperCase(e);break}for(let a=1;a<o;a++){const c=r[a],d=c===c.toLocaleUpperCase(e);let f=0;for(const g of n)if(t.startsWith(g,a)){l.push(s,g),f=g.length,s="";const u=g.at(-1);u&&(p=u===u.toLocaleUpperCase(e));break}if(f>0){a+=f-1;continue}!p&&d?(l.push(s),s=c):s+=c,p=d}return s&&l.push(s),l},"splitCamelCaseLocale"),Ua=j((t,e,n)=>{const i=[],r=ve.test(t)?t.split(ve).filter(Boolean):[t];for(const o of r){const l=o;if(ve.test(l))i.push(l);else{const s=se.test(l)?Ia(l).filter(Boolean):[l];for(const p of s)if(se.test(p))i.push(p);else if(e){const a=e.toLowerCase().split("-")[0];i.push(...xn(p,a,n))}else i.push(...On(p,n))}}return i},"processTextWithAnsiEmoji"),Ba=j((t,e={})=>{if(!t||typeof t!="string")return[];const{handleAnsi:n=!1,handleEmoji:i=!1,knownAcronyms:r=[],locale:o,normalize:l=!1,separators:s,stripAnsi:p=!1,stripEmoji:a=!1}=e,c=new Set([...r].toSorted((y,O)=>O.length-y.length));let d=t;p&&(d=Ca(d)),a&&(d=Gi(d));let f;Array.isArray(s)?f=La(s):s instanceof RegExp?f=s:f=Ni;const g=[];let u=d;const v=f.flags.includes("g")?f:new RegExp(f.source,`${f.flags}g`);for(;u.length>0;){const y=v.exec(u);if(!y){u===".."?g.push(".."):u==="."?g.push("."):u.length>0&&g.push(u);break}const O=y.index,E=y[0],h=E.length,m=u.slice(0,O),b=u.slice(O+h);if(E.startsWith("../"))g.push(".."),u=u.slice(O+3);else if(E.startsWith("./"))g.push("."),u=u.slice(O+2);else if(O===0&&E==="..")g.push(".."),u=u.slice(2);else if(O===0&&E===".")g.push("."),u=u.slice(1);else{m.length>0&&g.push(m);let $=0;for(;($=E.indexOf("../",$))!==-1;)g.push(".."),$+=3;for($=0;($=E.indexOf("./",$))!==-1;)($===0||E[$-1]!==".")&&g.push("."),$+=2;let P=b;for(;P.startsWith("../");)g.push(".."),P=P.slice(3);for(;P.startsWith("./");)g.push("."),P=P.slice(2);if(P===".."){g.push("..");break}else if(P==="."){g.push(".");break}else u=P}v.lastIndex=0}if(g.length===0){const y=d.split(f).filter(Boolean);g.push(...y)}let w=[];for(const y of g)n||i?w.push(...Ua(y,o,c)):o?w.push(...xn(y,o,c)):w.push(...On(y,c));return l&&(w=w.map(y=>c.has(y)?y:o&&y===y.toLocaleUpperCase(o)?y[0]+y.slice(1).toLocaleLowerCase(o):y.toUpperCase()===y&&!c.has(y)?y.slice(0,1)+y.slice(1).toLowerCase():y)),w},"splitByCase");var Ra=Object.defineProperty,Fa=x((t,e)=>Ra(t,"name",{value:e,configurable:!0}),"r$4"),za=Object.defineProperty,Wa=Fa((t,e)=>za(t,"name",{value:e,configurable:!0}),"o"),qa=Object.defineProperty,Ga=Wa((t,e)=>qa(t,"name",{value:e,configurable:!0}),"s");const Ha=Ga((t,e)=>typeof t!="string"||t===""?"":(e?.locale?t[0].toLocaleUpperCase(e.locale):t[0].toUpperCase())+t.slice(1),"upperFirst");var Ka=Object.defineProperty,Ja=x((t,e)=>Ka(t,"name",{value:e,configurable:!0}),"r$3"),Za=Object.defineProperty,Ya=Ja((t,e)=>Za(t,"name",{value:e,configurable:!0}),"r"),Qa=Object.defineProperty,Xa=Ya((t,e)=>Qa(t,"name",{value:e,configurable:!0}),"n");const es=Xa((t,e)=>`${t}::${e?.joiner??""}::${e?.locale??""}::${e?.knownAcronyms?.join(",")??""}::${e?.normalize?"true":"false"}`,"generateCacheKey");var ts=Object.defineProperty,ns=x((t,e)=>ts(t,"name",{value:e,configurable:!0}),"i$3"),is=Object.defineProperty,os=ns((t,e)=>is(t,"name",{value:e,configurable:!0}),"f"),rs=Object.defineProperty,as=os((t,e)=>rs(t,"name",{value:e,configurable:!0}),"l");const ss=as((t,e)=>{const{length:n}=t;if(n===0)return"";if(n===1)return t[0];const i=[];let r="",o="";for(let l=0;l<n;l++){const s=t[l];if(ve.test(s)){r?(i.push(r+o+s),r="",o=""):(i.length>0&&i.push(e),r=s);continue}r?(o&&(o+=e),o+=s):(i.length>0&&i.push(e),i.push(s))}return i.join("")},"joinSegments");var ls=Object.defineProperty,cs=x((t,e)=>ls(t,"name",{value:e,configurable:!0}),"r$2"),us=Object.defineProperty,ps=cs((t,e)=>us(t,"name",{value:e,configurable:!0}),"a"),fs=Object.defineProperty,ds=ps((t,e)=>fs(t,"name",{value:e,configurable:!0}),"e");const hs=/(?<![a-zß])SS(?![a-z])/g,ms=ds(t=>t.replaceAll(hs,"ß"),"normalizeGermanEszett");var gs=Object.defineProperty,vs=x((t,e)=>gs(t,"name",{value:e,configurable:!0}),"c$2"),bs=Object.defineProperty,ys=vs((t,e)=>bs(t,"name",{value:e,configurable:!0}),"c"),ws=Object.defineProperty,$s=ys((t,e)=>ws(t,"name",{value:e,configurable:!0}),"o");const Os=new bn(1e3),Pn=$s((t,e)=>{if(typeof t!="string"||!t)return"";const n=e?.cache??!1,i=e?.cacheStore??Os;let r;if(n&&(r=es(t,e)),n&&r&&i.has(r))return i.get(r);let o=!0;const l=ss(Ba(t,{handleAnsi:e?.handleAnsi,handleEmoji:e?.handleEmoji,knownAcronyms:e?.knownAcronyms,locale:e?.locale,normalize:e?.normalize,separators:void 0,stripAnsi:e?.stripAnsi,stripEmoji:e?.stripEmoji}).map(s=>{if(e?.handleAnsi&&ve.test(s))return s;const p=e?.locale?.startsWith("de")?ms(s):s,a=e?.locale?p.toLocaleLowerCase(e.locale):p.toLowerCase();return o?(o=!1,Oa(a,e)):Ha(a,e)}),"");return n&&r&&i.set(r,l),l},"camelCase");var xs=Object.defineProperty,Se=x((t,e)=>xs(t,"name",{value:e,configurable:!0}),"a$2");const Ps=Se(t=>{t.options?.forEach(e=>{e.__camelCaseName__=Pn(e.name)})},"processOptionNames"),Es=Se(t=>{if(!Array.isArray(t.options)||t.options.length===0)return;const e=new Set;for(const i of t.options)e.add(i.name);const n=[];for(const i of t.options)if(i.name.startsWith("no-")){const r=i.name.replace("no-","");if(!e.has(r)){if(i.type!==Boolean)throw new Error(`Cannot add negated option "${i.name}" to command "${t.name}" because it is not a boolean.`);const o={...i,defaultValue:i.defaultValue===void 0?!0:!i.defaultValue,name:r};n.push(o),e.add(r)}}n.length>0&&t.options.push(...n)},"addNegatableOptions"),As=Se((t,e)=>{if(!e.options||e.options.length===0)return;const{options:n}=t,i=new Map;for(const o of e.options)if(o.name.startsWith("no-")){const l=Pn(o.name);i.set(l,o)}const r=Object.keys(n).filter(o=>i.has(o));if(r.length!==0)for(const o of r){const l=o.charAt(2);if(!l)continue;const s=l.toLowerCase()+o.slice(3),p=i.get(o);p&&(p.__negated__=!0),n[s]=!n[o],Reflect.deleteProperty(n,o)}},"mapNegatableOptions"),Ns=Se((t,e)=>{if(!e.options||e.options.length===0)return;const n=new Map;for(const r of e.options)r.__camelCaseName__&&r.__negated__===void 0&&r.implies!==void 0&&n.set(r.__camelCaseName__,r);if(n.size===0)return;const{options:i}=t;for(const r of Object.keys(i)){const o=n.get(r);if(o?.implies){const{implies:l}=o;for(const[s,p]of Object.entries(l))i[s]===void 0&&(i[s]=p)}}},"mapImpliedOptions");var Cs=Object.defineProperty,Te=x((t,e)=>Cs(t,"name",{value:e,configurable:!0}),"e$2");const js=Te(()=>!!process.versions.electron,"isElectronApp"),ks=Te(()=>js()&&!process.defaultApp,"isBundledElectronApp"),_s=Te(()=>ks()?0:1,"getProcessArgvBinIndex"),Ls=Te(t=>t.slice(_s()+1),"hideBin");var Ss=Object.defineProperty,En=x((t,e)=>Ss(t,"name",{value:e,configurable:!0}),"e$1");const Ts=" ",Is=En((t,e)=>t===e?!0:t.length!==e.length?!1:t.every((n,i)=>n===e[i]),"equals"),Ms=En(t=>{if(typeof t=="string")return t.split(Ts);const e=Pe();return Is(t,e)?Ls(t):t},"parseRawCommand");var Vs=Object.defineProperty,qe=x((t,e)=>Vs(t,"name",{value:e,configurable:!0}),"r");const Ds=qe(t=>{const e=qe(o=>{t.error(`Uncaught exception: ${o.message||o}`),o.stack&&t.error(o.stack),W(1)},"uncaughtExceptionHandler"),n=qe((o,l)=>{if(o instanceof Error)t.error(`Promise rejection: ${o.message||o}`),o.stack&&t.error(o.stack);else{let s;if(typeof o=="string")s=o;else try{s=JSON.stringify(o)}catch{s=String(o)}t.error(`Promise rejection: ${s}`)}W(1)},"unhandledRejectionHandler"),i=nt("uncaughtException",e),r=nt("unhandledRejection",n);return()=>{i(),r()}},"registerExceptionHandler");var Us=Object.defineProperty,ue=x((t,e)=>Us(t,"name",{value:e,configurable:!0}),"e");const Ee=100,An=/^[a-z][\w-]*$/i,Ae=ue((t,e)=>{if(typeof t!="string"||t.trim().length===0)throw new A(`${e} must be a non-empty string`,"INVALID_INPUT",{fieldName:e,value:t});return t.trim()},"validateNonEmptyString"),Et=ue((t,e)=>{if(!Array.isArray(t)||!t.every(n=>typeof n=="string"))throw new A(`${e} must be an array of strings`,"INVALID_INPUT",{fieldName:e,value:t});return t},"validateStringArray");ue((t,e)=>{if(typeof t!="function")throw new A(`${e} must be a function`,"INVALID_INPUT",{fieldName:e,value:t});return t},"validateFunction");const Ge=ue((t,e)=>{if(typeof t!="object"||t===null)throw new A(`${e} must be an object`,"INVALID_INPUT",{fieldName:e,value:t});return t},"validateObject"),$e=ue(t=>{const e=Ae(t,"Command name");if(e.length>Ee)throw new A(`Command name is too long (maximum ${String(Ee)} characters)`,"INVALID_COMMAND_NAME",{commandName:e,length:e.length});if(e.includes("..")||e.includes("/")||e.includes("\\")||e.includes(";")||e.includes("|")||e.includes("&"))throw new A(`Command name "${e}" contains invalid characters`,"INVALID_COMMAND_NAME",{commandName:e});if(!An.test(e))throw new A(`Command name "${e}" must start with a letter and contain only letters, numbers, hyphens, and underscores`,"INVALID_COMMAND_NAME",{commandName:e});return e},"validateCommandName");ue(t=>{const e=Ae(t,"Plugin name");if(e.length>Ee)throw new A(`Plugin name is too long (maximum ${String(Ee)} characters)`,"INVALID_PLUGIN_NAME",{length:e.length,pluginName:e});if(e.includes("..")||e.includes("/")||e.includes("\\")||e.includes(";")||e.includes("|")||e.includes("&"))throw new A(`Plugin name "${e}" contains invalid characters`,"INVALID_PLUGIN_NAME",{pluginName:e});if(!An.test(e))throw new A(`Plugin name "${e}" must start with a letter and contain only letters, numbers, hyphens, and underscores`,"INVALID_PLUGIN_NAME",{pluginName:e});return e},"validatePluginName");var Bs=Object.defineProperty,Ie=x((t,e)=>Bs(t,"name",{value:e,configurable:!0}),"s");const Rs=new Set([`
|
|
6
|
-
`,"\r"," ","\0",'"',"$","&","'","(",")",";","<",">","[","\\","]","`","{","|","}"]),Fs=/^[A-Z]:/i,zs=Ie(t=>{if(typeof t!="string")throw new TypeError("Argument must be a string");if(t.length>1e4)throw new Error(`Argument is too long (maximum ${String(1e4)} characters)`);for(const e of t)if(Rs.has(e))throw new Error(`Argument contains dangerous character: ${e}`);return t.trim()},"sanitizeArgument"),At=Ie(t=>{if(!Array.isArray(t))throw new TypeError("Arguments must be an array");if(t.length>100)throw new Error(`Too many arguments (maximum ${String(100)})`);return t.map(e=>zs(e))},"sanitizeArguments");Ie(t=>{if(typeof t!="string")throw new TypeError("Path must be a string");const e=t.trim();if(e.includes("..")||e.includes("../")||e.includes("..\\"))throw new Error("Path contains directory traversal sequences");if(e.startsWith("/")||Fs.test(e))throw new Error("Absolute paths are not allowed");if(e.length>1e3)throw new Error("Path is too long");return e},"validateSafePath");class Gc{static{N(this,"$s")}static{S(this,"Ir")}static{x(this,"RateLimiter")}static{Ie(this,"RateLimiter")}attempts=new Map;maxAttempts;windowMs;constructor(e=5,n=6e4){if(e<=0||n<=0)throw new Error("maxAttempts and windowMs must be positive numbers");this.maxAttempts=e,this.windowMs=n}checkLimit(e){const n=Date.now(),i=this.attempts.get(e);return!i||n>i.resetTime?(this.attempts.set(e,{count:1,resetTime:n+this.windowMs}),this.cleanup(n),!0):i.count>=this.maxAttempts?!1:(i.count+=1,!0)}reset(e){this.attempts.delete(e)}cleanup(e){for(const[n,i]of this.attempts.entries())e>i.resetTime&&this.attempts.delete(n)}}var Ws=Object.defineProperty,D=x((t,e)=>Ws(t,"name",{value:e,configurable:!0}),"b");const qs=/^-([^\d-])$/,Gs=/^--(\S+)/,Hs=/^-([^\d-]{2,})$/,He=D(t=>qs.test(t)||Gs.test(t)||Hs.test(t),"isOption"),Ks={access:D((t,e)=>to(t,e),"access"),mkdir:D((t,e)=>eo(t,e),"mkdir"),readdir:D(t=>Xi(t),"readdir"),readFile:D((async(t,e)=>e===void 0?ut(t):ut(t,e)),"readFile"),rm:D((t,e)=>Qi(t,e),"rm"),stat:D(t=>Yi(t),"stat"),writeFile:D((t,e,n)=>Zi(t,e,n),"writeFile")};let Js=class Nn{static{N(this,"Ie")}static{S(this,"Dt")}static{x(this,"Cli")}static{D(this,"Cli")}#t;#e;#c;#u;#f;#d;#y;#w;#$;#O;#x;#p;#n;#i;#o;#r;#a;#h=!1;#P;#E=!1;#m;#g;#v;#l=[];#k(){return this.#m===void 0&&(this.#m=[...this.#i.keys()]),this.#m}#A(){return this.#g===void 0&&(this.#g=[...this.#n.keys()]),this.#g}#s(){return this.#v===void 0&&(this.#v=[...this.#k(),...this.#A()]),this.#v}#N(){return this.#l.length===0?we:[...we,...this.#l]}#C(){this.#m=void 0,this.#g=void 0,this.#v=void 0}#b(){if(this.#c===void 0){const e=Ms(this.#e.argv);this.#c=At(e),this.#_()}return this.#c}#_(){if(!this.#c)return;const e=H();let n=!1;for(const i of this.#c){if(i==="--quiet"||i==="-q"){e.CEREBRO_OUTPUT_LEVEL=String(Gn),n=!0;break}if(i==="--verbose"||i==="-v"){e.CEREBRO_OUTPUT_LEVEL=String(Hn),n=!0;break}if(i==="--debug"||i==="-vvv"){e.CEREBRO_OUTPUT_LEVEL=String(re),n=!0;break}}n||(e.CEREBRO_OUTPUT_LEVEL=Object.hasOwn(e,"DEBUG")?String(re):String(tt))}#L(){this.#E||(this.#P=Ds(this.#t),this.#E=!0)}#S(){return{arch:pi(),argv:this.#b(),cwd:this.#u,env:this.#O??H(),exit:this.#$??(e=>W(e??0)),platform:ui(),stdin:this.#x}}#j(e,n,i,r){this.#t.debug(`command '${r}' found, parsing command args: ${n.join(", ")}`);const{arguments_:o,booleanValues:l,parsedArgs:s}=Yr(e,n,this.#N()),p=Object.keys(l).length>0;let a=s;p&&(a={...s,_all:{...s._all,...l}}),sa(o,a,e);const c=Zr(e,s,l,i);c.runtime=this,c.argv=this.#b(),c.fs=this.#w??Ks,c.process=this.#S(),c.console=this.#t;const d=e.options&&e.options.length>0;if(d&&e.options){const f=e.options.filter(g=>g.name.startsWith("no-"));for(const g of f){const u=g.name.replace("no-",""),v=`--${g.name}`,w=`--${u}`,y=n.includes(v),O=n.includes(w);if(y&&O)throw new qt(u,g.name)}}return d&&(As(c,e),Ns(c,e)),la(o,c.options,e),H().CEREBRO_OUTPUT_LEVEL===String(re)&&(this.#t.debug("command options parsed from options:"),this.#t.debug(JSON.stringify(c.options,null,2)),this.#t.debug("command argument parsed from argument:"),this.#t.debug(JSON.stringify(c.argument,null,2))),{arguments_:o,booleanValues:l,commandArgs:a,parsedArgs:s,toolbox:c}}constructor(e,n={}){if(typeof e!="string"||e.trim().length===0)throw new A("CLI name must be a non-empty string","INVALID_INPUT",{cliName:e});this.#f=e.trim();const i=n.argv??Pe(),r=n.cwd??ci();if(this.#e={...n,argv:i,cwd:r},this.#e.argv&&!Array.isArray(this.#e.argv))throw new A("CLI argv option must be an array of strings","INVALID_INPUT",{argv:this.#e.argv});if(this.#e.cwd&&typeof this.#e.cwd!="string")throw new A("CLI cwd option must be a string","INVALID_INPUT",{cwd:this.#e.cwd});if(this.#e.packageName&&typeof this.#e.packageName!="string")throw new A("CLI packageName option must be a string","INVALID_INPUT",{packageName:this.#e.packageName});if(this.#e.packageVersion&&typeof this.#e.packageVersion!="string")throw new A("CLI packageVersion option must be a string","INVALID_INPUT",{packageVersion:this.#e.packageVersion});const o=H();if(o.CEREBRO_OUTPUT_LEVEL=String(tt),typeof this.#e.logger=="object"){const c=["debug","error","info","log","warn"],d=[],f=this.#e.logger;for(const g of c)typeof f[g]!="function"&&d.push(g);if(d.length>0)throw new A(`Logger object is missing required methods: ${d.join(", ")}`,"INVALID_INPUT",{logger:this.#e.logger,missingMethods:d});this.#t=this.#e.logger}else this.#t={...console,debug:D((...c)=>{o.CEREBRO_OUTPUT_LEVEL===String(re)&&console.debug(...c)},"debug")};this.#d=this.#e.packageVersion,this.#y=this.#e.packageName,this.#u=this.#e.cwd,this.#r="help",this.#a={};const l=n.fs;if(l!==void 0&&(typeof l!="object"||l===null))throw new A("CLI fs option must be an object implementing the CerebroFs interface","INVALID_INPUT",{fs:n.fs});const s=n.exit;if(s!==void 0&&typeof s!="function")throw new A("CLI exit option must be a function","INVALID_INPUT",{exit:n.exit});const p=n.env;if(p!==void 0&&(typeof p!="object"||p===null))throw new A("CLI env option must be a record of string keys","INVALID_INPUT",{env:n.env});const a=n.stdin;if(a!==void 0&&typeof a!="string")throw new A("CLI stdin option must be a string","INVALID_INPUT",{stdin:n.stdin});this.#w=n.fs,this.#$=n.exit,this.#O=n.env,this.#x=n.stdin??"",this.#n=new Map,this.#i=new Map,this.#o=new Map}setCommandSection(e){return this.#a=e,this}getCommandSection(){return this.#a.header||(this.#a.header=`${this.#f}${this.#d?` v${this.#d}`:""}`),this.#a}setDefaultCommand(e){return this.#r=e,this}get defaultCommand(){return this.#r}addCommand(e){Ge(e,"Command"),$e(e.name);const n=typeof e.execute=="function",i=typeof e.loader=="function";if(n&&i)throw new A(`Command "${e.name}" cannot define both "execute" and "loader" — choose one`,"INVALID_COMMAND",{commandName:e.name});if(!n&&!i)throw new A(`Command "${e.name}" must define either "execute" or "loader"`,"INVALID_COMMAND",{commandName:e.name});e.alias&&(typeof e.alias=="string"?$e(e.alias):Et(e.alias,"Command alias").forEach(a=>$e(a))),e.argument&&Ge(e.argument,"Command argument"),e.options&&Ge(e.options,"Command options"),e.commandPath&&(Et(e.commandPath,"Command commandPath"),e.commandPath.forEach(a=>{$e(a)}));const r=xt(e.name,e.commandPath),o=J(r);if(this.#i.has(o))throw new A(`Command with path "${o}" already exists`,"DUPLICATE_COMMAND",{commandName:e.name,commandPath:e.commandPath});const l=Array.isArray(e.commandPath)&&e.commandPath.length>0,s=this.#n.get(e.name),p=s!==void 0&&(s.commandPath===void 0||s.commandPath.length===0);if(!l&&p)throw new A(`Command with name "${e.name}" already exists`,"DUPLICATE_COMMAND",{commandName:e.name});if(e.options)for(const a of e.options)ft(a);if(ca(e),Es(e),Ps(e),e.options&&(e.__conflictingOptions__=e.options.filter(a=>a.conflicts!==void 0),e.__requiredOptions__=e.options.filter(a=>a.required===!0)),l&&s!==void 0)this.#n.set(o,e);else{if(!l&&s!==void 0&&!p){const a=xt(s.name,s.commandPath);this.#n.set(J(a),s)}this.#n.set(e.name,e)}if(this.#i.set(o,r),this.#o.set(o,e),this.#C(),e.alias!==void 0){const a=typeof e.alias=="string"?[e.alias]:e.alias;for(const c of a){if(H().CEREBRO_OUTPUT_LEVEL===String(re)&&this.#t.debug("adding alias",c),this.#n.has(c))throw new A(`Command alias "${c}" conflicts with existing command`,"DUPLICATE_COMMAND",{alias:c,commandName:e.name});this.#n.set(c,e)}}return this}addGlobalOption(e){const n=e,i=new Set(we.map(o=>o.name)),r=new Set(we.map(o=>o.alias).filter(Boolean));if(i.has(n.name))throw new A(`Cannot add global option "--${n.name}": it conflicts with a built-in global option`,"DUPLICATE_OPTION",{optionName:n.name});if(n.alias&&r.has(n.alias))throw new A(`Cannot add global option with alias "-${n.alias}": it conflicts with a built-in global option alias`,"DUPLICATE_OPTION",{alias:n.alias,optionName:n.name});if(new Set(this.#l.map(o=>o.name)).has(n.name))throw new A(`Global option "--${n.name}" has already been added`,"DUPLICATE_OPTION",{optionName:n.name});return n.group="global",ft(n),this.#l.push(n),this}getGlobalOptions(){return this.#N()}addPlugin(e){return this.getPluginManager().register(e),this}getPluginManager(){return this.#p?this.#p:(this.#p=new po(this.#t),this.#p.register({description:"Attaches the logger to the toolbox",execute:D(e=>{e.logger=this.#t,e.console=e.logger},"execute"),name:"logger"}),this.#p)}getCliName(){return this.#f}getPackageVersion(){return this.#d}getPackageName(){return this.#y}getCommands(){return this.#n}getCwd(){return this.#u}dispose(){this.#P?.()}async run(e={}){const{autoDispose:n=!0,shouldExitProcess:i=!0,...r}=e;if(!this.#n.has("help")){const{default:m}=await import("../packem_chunks/help-command.js");this.addCommand(new m(this.#n))}const o=this.#A(),l=this.#i;this.#L();const s=this.#b();let p,a=[...s];const c=Bt(),d=Ut(),f=Pe();this.#t.debug(`process.execPath: ${c}`),this.#t.debug(`process.execArgv: ${d.join(" ")}`),this.#t.debug(`process.argv: ${f.join(" ")}`);const g=pa(l,[...s]);if(g.commandPath)p=g.commandPath,a=g.argv;else{if(s.length>1&&s[0]&&s[1]&&!He(s[0])&&!He(s[1])){const b=[];let $=0;for(;$<s.length;){const k=s[$];if(!k||He(k))break;b.push(k),$+=1}const P=J(b);if(b[0]&&!o.includes(b[0])){const k=this.#s(),C=Z(P,k);throw new K(P,C)}}let m;try{m=Oo([null,...o],[...s])}catch(b){if(b instanceof Error&&b.name==="INVALID_COMMAND"&&"command"in b){const $=b.command,P=this.#s(),k=Z($,P);throw new K($,k)}throw b}m.command&&(p=[m.command],a=m.argv)}if(!p)if(this.#r)p=[this.#r];else{const m=this.#s();throw new K("",m)}const u=J(p),v=this.#i.get(u);let w;if(v){if(w=this.#o.get(u),!w||J(v)!==u){const m=this.#s(),b=Z(u,m);throw new K(u,b)}}else{const m=p.at(-1);if(w=m?this.#n.get(m):void 0,!w){const b=this.#s(),$=Z(u,b);throw new K(u,$)}}if(typeof w.execute!="function"&&typeof w.loader!="function")return this.#t.error(`Command "${w.name}" has no function to execute.`),i?W(1):void 0;const y=a;let O,E;try{({commandArgs:O,toolbox:E}=this.#j(w,y,r,u))}catch(m){if(this.#t.error(m),i)return W(1);throw m}const h=this.getPluginManager();try{!this.#h&&h.hasPlugins()&&(await h.init({cli:this,cwd:this.#u,logger:this.#t}),this.#h=!0),await h.executeLifecycle("execute",E),await h.executeLifecycle("beforeCommand",E);let m;const b=O.global;if(b?.help){const $=this.#n.get("help");if(!$)throw new A("Help command not found","COMMAND_NOT_FOUND");m=await oe($,E,O)}else if(b?.version??b?.V){const $=this.#n.get("version");if(!$)throw new A("Version command not found","COMMAND_NOT_FOUND");m=await oe($,E,O)}else m=await oe(w,E,O);return await h.executeLifecycle("afterCommand",E,m),i?W(0):void 0}catch(m){throw await h.executeErrorHandlers(m,E),m}finally{n&&this.dispose()}}async runCommand(e,n={}){const{argv:i=[],...r}=n;Ae(e,"Command name");const o=e.split(" ").filter(Boolean),l=J(o),s=this.#i.get(l)?this.#o.get(l):this.#n.get(e);if(!s){const f=this.#s(),g=Z(l||e,f);throw new K(e,g)}if(typeof s.execute!="function"&&typeof s.loader!="function")throw new A(`Command "${s.name}" has no function to execute`,"INVALID_COMMAND",{commandName:s.name});const p=[...At(i)];this.#t.debug(`running command '${e}' programmatically with args: ${p.join(", ")}`);const{commandArgs:a,toolbox:c}=this.#j(s,p,r,l||e),d=this.getPluginManager();try{!this.#h&&d.hasPlugins()&&(await d.init({cli:this,cwd:this.#u,logger:this.#t}),this.#h=!0),await d.executeLifecycle("execute",c),await d.executeLifecycle("beforeCommand",c);let f;const g=a.global;if(g?.help){const u=this.#n.get("help");if(!u)throw new A("Help command not found","COMMAND_NOT_FOUND");f=await oe(u,c,a)}else if(g?.version??g?.V){const u=this.#n.get("version");if(!u)throw new A("Version command not found","COMMAND_NOT_FOUND");f=await oe(u,c,a)}else f=await oe(s,c,a);return await d.executeLifecycle("afterCommand",c,f),f}catch(f){throw await d.executeErrorHandlers(f,c),f}}clone(e){const n={...this.#e,...e},i=new Nn(this.#f,n);for(const[r,o]of this.#n)i.#n.set(r,o);for(const[r,o]of this.#i)i.#i.set(r,[...o]);for(const[r,o]of this.#o)i.#o.set(r,o);for(const r of this.#l)i.#l.push(r);return i.#r=this.#r,i.#a={...this.#a},i.#C(),i}async getAction(e){Ae(e,"Command name");const n=e.split(" ").filter(Boolean),i=J(n),r=this.#i.get(i)?this.#o.get(i):this.#n.get(e);if(!r){const o=this.#s(),l=Z(i||e,o);throw new K(e,l)}if(typeof r.execute=="function")return r.execute;if(typeof r.loader=="function")return hn(r);throw new A(`Command "${r.name}" has no execute or loader defined`,"INVALID_COMMAND",{commandName:r.name})}};var Zs=Object.defineProperty,Ys=N((t,e)=>Zs(t,"name",{value:e,configurable:!0}),"e$1"),Qs=Object.defineProperty,Xs=Ys((t,e)=>Qs(t,"name",{value:e,configurable:!0}),"o"),el=Object.defineProperty,tl=Xs((t,e)=>el(t,"name",{value:e,configurable:!0}),"t");const Hc=tl((t,e)=>new Js(t,e),"createCerebro");var nl=Object.defineProperty,le=N((t,e)=>nl(t,"name",{value:e,configurable:!0}),"t$1");function il(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}N(il,"getDefaultExportFromCjs");le(il,"getDefaultExportFromCjs");function ol(t){return t&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}N(ol,"getDefaultExportFromNamespaceIfPresent");le(ol,"getDefaultExportFromNamespaceIfPresent");function rl(t){return t&&Object.prototype.hasOwnProperty.call(t,"default")&&Object.keys(t).length===1?t.default:t}N(rl,"getDefaultExportFromNamespaceIfNotNamed");le(rl,"getDefaultExportFromNamespaceIfNotNamed");function al(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if(typeof e=="function"){var n=le(N(function i(){var r=!1;try{r=this instanceof i}catch{}return r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)},"a"),"a");n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(i){var r=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(n,i,r.get?r:{enumerable:!0,get:le(function(){return t[i]},"get")})}),n}N(al,"getAugmentedNamespace");le(al,"getAugmentedNamespace");var sl=Object.defineProperty,ll=N((t,e)=>sl(t,"name",{value:e,configurable:!0}),"r$1"),cl=Object.defineProperty,ul=ll((t,e)=>cl(t,"name",{value:e,configurable:!0}),"r"),pl=Object.defineProperty,fl=ul((t,e)=>pl(t,"name",{value:e,configurable:!0}),"o");const Kc=fl(()=>{try{const t=require("node:module");if(typeof t.enableCompileCache=="function"){t.enableCompileCache();return}}catch{}try{require("v8-compile-cache")}catch{}},"enableCompileCache");var dl=Object.defineProperty,hl=N((t,e)=>dl(t,"name",{value:e,configurable:!0}),"u$2"),ml=Object.defineProperty,Cn=hl((t,e)=>ml(t,"name",{value:e,configurable:!0}),"p");const gl=Je(import.meta.url),me=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,jn=Cn(t=>{if(typeof me<"u"&&me.versions&&me.versions.node){const[e,n]=me.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return me.getBuiltinModule(t)}return gl(t)},"__cjs_getBuiltinModule"),{execFileSync:vl}=jn("node:child_process"),{totalmem:bl}=jn("node:os");var yl=Object.defineProperty,Me=Cn((t,e)=>yl(t,"name",{value:e,configurable:!0}),"r");const wl=/--max-old-space-size=(\d+)/,$l=/--max-semi-space-size=(\d+)/,Ol=Me(t=>Math.floor(bl()/1024/1024*t),"getDefaultMaxOldSpaceSize"),xl=Me(t=>t<=512?4:t<=1024?8:t<=2048?16:t<=4096?32:t<=8192?64:Math.floor(Math.log2(t))*8,"getSemiSpaceSize"),Nt=Me((t,e)=>{for(const n of e){const i=t.exec(n);if(i)return Number.parseInt(i[1],10)}},"extractFlag"),Jc=Me(t=>{const e=t?.maxOldSpacePercent??.75,n=[...Ut()],i=[...Pe()],r=Nt(wl,n),o=Nt($l,n);if(r!==void 0&&o!==void 0)return;const l=r??Ol(e),s=o??xl(l),p=[];if(r===void 0&&p.push(`--max-old-space-size=${String(l)}`),o===void 0&&p.push(`--max-semi-space-size=${String(s)}`),p.length!==0)try{vl(Bt(),[...p,...n,...i.slice(1)],{env:H(),stdio:"inherit"}),W(0)}catch(a){const c=a.status;W(typeof c=="number"?c:1)}},"applyHeapTuning");var Pl=Object.defineProperty,El=N((t,e)=>Pl(t,"name",{value:e,configurable:!0}),"T"),Al=Object.defineProperty,Ve=El((t,e)=>Al(t,"name",{value:e,configurable:!0}),"N");const Nl=Je(import.meta.url),ge=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,Cl=Ve(t=>{if(typeof ge<"u"&&ge.versions&&ge.versions.node){const[e,n]=ge.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return ge.getBuiltinModule(t)}return Nl(t)},"__cjs_getBuiltinModule"),{createRequire:jl}=Cl("node:module");var kl=Object.defineProperty,_l=Ve((t,e)=>kl(t,"name",{value:e,configurable:!0}),"A$2"),Ll=Object.defineProperty,Qe=_l((t,e)=>Ll(t,"name",{value:e,configurable:!0}),"$"),Sl=Object.defineProperty,Tl=Qe((t,e)=>Sl(t,"name",{value:e,configurable:!0}),"r$1");const Il=Tl(t=>t.replaceAll(/\r\n|\r(?!\n)|\n/gu,`
|
|
7
|
-
`),"normalizeLF"),Ml=globalThis.process??Object.create(null),Ct={versions:{}},jt=new Proxy(Ml,{get(t,e){if(e in t)return t[e];if(e in Ct)return Ct[e]}});var Vl=Object.defineProperty,Dl=Qe((t,e)=>Vl(t,"name",{value:e,configurable:!0}),"b");const Ul=Dl((t,e,n,i)=>{const r={column:0,line:-1,...t.start},o={...r,...t.end},l=r.line,s=r.column,p=o.line,a=o.column;let c=Math.max(l-(n+1),0),d=Math.min(e.length,p+i);l===-1&&(c=0),p===-1&&(d=e.length);const f=p-l,g={};if(f)for(let u=0;u<=f;u++){const v=u+l;if(!s)g[v]=!0;else if(u===0){const w=e[v-1]?.length;g[v]=[s,(w??0)-s+1]}else if(u===f)g[v]=[0,a];else{const w=e[v-u]?.length;g[v]=[0,w]}}else s===a?g[l]=s?[s,0]:!0:g[l]=[s,(a??0)-(s??0)];return{end:d,markerLines:g,start:c}},"getMarkerLines");var Bl=Object.defineProperty,Oe=Qe((t,e)=>Bl(t,"name",{value:e,configurable:!0}),"t");const Rl=jt.platform==="win32"&&!jt.env?.WT_SESSION?">":"❯",Fl=Oe((t,e,n)=>{const i={linesAbove:2,linesBelow:3,prefix:"",showGutter:!0,tabWidth:4,...n,color:{gutter:Oe(u=>u,"gutter"),marker:Oe(u=>u,"marker"),message:Oe(u=>u,"message"),...n?.color}},r=typeof e.start.column=="number";let o=Il(t).split(`
|
|
8
|
-
`);typeof i.tabWidth=="number"&&(o=o.map(u=>u.replaceAll(" "," ".repeat(i.tabWidth))));const{end:l,markerLines:s,start:p}=Ul(e,o,i.linesAbove,i.linesBelow),a=String(l).length,{gutter:c,marker:d,message:f}=i.color;let g=o.slice(p,l).map((u,v)=>{const w=p+1+v,y=s[w],O=` ${String(w)}`.slice(-a),E=!s[w+1],h=` ${O}${i.showGutter?" |":""}`;if(y){let m="";if(Array.isArray(y)){const b=u.replaceAll(/[^\t]/g," ").slice(0,Math.max(y[0]-1,0)),$=y[1]||1;m=[`
|
|
9
|
-
`,i.prefix+c(h.replaceAll(/\d/g," "))," ",b,d("^").repeat($)].join(""),E&&i.message&&(m+=` ${f(i.message)}`)}return[i.prefix+d(Rl),c(h),u.length>0?` ${u}`:"",m].join("")}return`${i.prefix} ${c(h)}${u.length>0?` ${u}`:""}`}).join(`
|
|
10
|
-
`);return i.message&&!r&&(g=`${i.prefix+" ".repeat(a+1)+i.message}
|
|
11
|
-
${g}`),g},"codeFrame");var zl=Object.defineProperty,Wl=Ve((t,e)=>zl(t,"name",{value:e,configurable:!0}),"x$1"),ql=Object.defineProperty,Gl=Wl((t,e)=>ql(t,"name",{value:e,configurable:!0}),"x"),Hl=Object.defineProperty,q=Gl((t,e)=>Hl(t,"name",{value:e,configurable:!0}),"u");const X=q((t,...e)=>{process.env.DEBUG&&process.env.DEBUG==="true"&&console.debug(`error:parse-stacktrace: ${t}`,...e)},"debugLog"),ee="<unknown>",Kl=/^.*?\s*at\s(?:(.+?\)(?:\s\[.+\])?|\(?.*?)\s?\((?:address\sat\s)?)?(?:async\s)?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Jl=/\((\S+)\),\s(<[^>]+>)?:(\d+)?:(\d+)?\)?/,Zl=/(.*?):(\d+):(\d+)(?:\s<-\s.+:\d+:\d+)?/,Yl=/eval\sat\s(<anonymous>)\s\((.*)\)?:(\d+)?:(\d+)\),\s*<anonymous>?:(\d+)?:(\d+)/,Ql=/^\s*in\s(?:([^\\/]+(?:\s\[as\s\S+\])?)\s\(?)?\(at?\s?(.*?):(\d+)(?::(\d+))?\)?\s*$/,Xl=/in\s(.*)\s\(at\s(.+)\)\sat/,ec=/^(?:.*@)?(.*):(\d+):(\d+)$/,tc=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. \/=]+)(?::(\d+))?(?::(\d+))?\s*$/i,nc=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,ic=/(\S[^\s[]*\[.*\]|.*?)@(.*):(\d+):(\d+)/,kt=/\(error: (.*)\)/,oc=/at\s/,rc=/^(\S+):(\d+):(\d+)$|^(\S+):(\d+)$/,ac=/\S*(?:Error: |AggregateError:)/,kn=/^Anonymous function$/,sc=/^\s*in\s.*/,lc=/^.*?\s*at\s.*/,cc=/^.*?\s*@.*|\[native code\]/,_n=q((t,e)=>{const n=t.includes("safari-extension"),i=t.includes("safari-web-extension");return n||i?[t.includes("@")?t.split("@")[0]:ee,n?`safari-extension:${e}`:`safari-web-extension:${e}`]:[t,e]},"extractSafariExtensionDetails"),Ln=q((t,e)=>{const n=Zl.exec(e);n&&(t.file=n[1],t.line=+n[2],t.column=+n[3])},"parseMapped"),uc=q(t=>{const e=Xl.exec(t);if(e){X(`parse nested node error stack line: "${t}"`,`found: ${JSON.stringify(e)}`);const i=e[2].split(":");return{column:i[2]?+i[2]:void 0,file:i[0],line:i[1]?+i[1]:void 0,methodName:e[1]??ee,raw:t,type:void 0}}const n=Ql.exec(t);if(n){X(`parse node error stack line: "${t}"`,`found: ${JSON.stringify(n)}`);const i={column:n[4]?+n[4]:void 0,file:n[2]?n[2].replace(oc,""):void 0,line:n[3]?+n[3]:void 0,methodName:n[1]??ee,raw:t,type:t.startsWith("internal")?"internal":void 0};return Ln(i,`${n[2]}:${n[3]}:${n[4]}`),i}},"parseNode"),pc=q(t=>{const e=Kl.exec(t);if(e){X(`parse chrome error stack line: "${t}"`,`found: ${JSON.stringify(e)}`);const n=e[2]?.startsWith("native"),i=e[2]?.startsWith("eval")||e[1]?.startsWith("eval");let r,o;if(i){const a=Jl.exec(t);if(a){const c=rc.exec(a[1]);c?(e[2]=c[4]??c[1],e[3]=c[5]??c[2],e[4]=c[3]):a[2]&&(e[2]=a[1]),a[2]&&(r={column:a[4]?+a[4]:void 0,file:a[2],line:a[3]?+a[3]:void 0,methodName:"eval",raw:t,type:"eval"})}else{const c=Yl.exec(t);c&&(o={column:c[4]?+c[4]:void 0,file:c[2],line:c[3]?+c[3]:void 0},r={column:c[6]?+c[6]:void 0,file:c[1],line:c[5]?+c[5]:void 0,methodName:"eval",raw:c[0],type:"eval"})}}const[l,s]=_n(e[1]?e[1].replace(kn,"<anonymous>"):ee,e[2]),p={column:e[4]?+e[4]:void 0,evalOrigin:r,file:s,line:e[3]?+e[3]:void 0,methodName:l,raw:t,type:i?"eval":n?"native":void 0};return o?(p.column=o.column,p.file=o.file,p.line=o.line):Ln(p,`${s}:${e[3]}:${e[4]}`),p}},"parseChromium"),fc=q((t,e)=>{const n=tc.exec(t);if(n){X(`parse gecko error stack line: "${t}"`,`found: ${JSON.stringify(n)}`);const i=n[3]?.includes(" > eval"),r=i&&n[3]&&nc.exec(n[3]);let o;i&&r&&(n[3]=r[1],o={column:n[5]?+n[5]:void 0,file:n[3],line:n[4]?+n[4]:void 0,methodName:"eval",raw:t,type:"eval"},n[4]=r[2]);const[l,s]=_n(n[1]?n[1].replace(kn,"<anonymous>"):ee,n[3]);let p;(e?.type==="safari"||!i&&e?.type==="firefox")&&e.column?p=e.column:!i&&n[5]&&(p=+n[5]);let a;return(e?.type==="safari"||!i&&e?.type==="firefox")&&e.line?a=e.line:n[4]&&(a=+n[4]),{column:p,evalOrigin:o,file:s,line:a,methodName:l,raw:t,type:i?"eval":s.includes("[native code]")?"native":void 0}}},"parseGecko"),dc=q((t,e)=>{const n=ic.exec(t);if(!(n&&n[2].includes(" > eval"))&&n)return X(`parse firefox error stack line: "${t}"`,`found: ${JSON.stringify(n)}`),{column:n[4]?+n[4]:e?.column??void 0,file:n[2],line:n[3]?+n[3]:e?.line??void 0,methodName:n[1]||ee,raw:t,type:void 0}},"parseFirefox"),hc=q(t=>{const e=ec.exec(t);if(e)return X(`parse react android native error stack line: "${t}"`,`found: ${JSON.stringify(e)}`),{column:e[3]?+e[3]:void 0,file:e[1],line:e[2]?+e[2]:void 0,methodName:ee,raw:t,type:void 0}},"parseReactAndroidNative"),Sn=q((t,{filter:e,frameLimit:n=50}={})=>{const i=t;let r=(typeof i.stacktrace=="string"?i.stacktrace:t.stack??"").split(`
|
|
12
|
-
`).map(o=>(kt.test(o)?o.replace(kt,"$1"):o).trim()).filter(o=>!ac.test(o)&&o!=="eval code");return e&&(r=r.filter(o=>e(o))),r=r.slice(0,n),r.reduce((o,l,s)=>{if(!l||l.length>1024)return o;let p;if(sc.test(l))p=uc(l);else if(lc.test(l))p=pc(l);else if(cc.test(l)){let a;if(s===0){const c=t,d=c.columnNumber,f=c.lineNumber,g=c.line,u=c.column;d||f?a={column:d,line:f,type:"firefox"}:(g||u)&&(a={column:u,line:g,type:"safari"})}p=dc(l,a)??fc(l,a)}else p=hc(l);return p?o.push(p):X(`parse error stack line: "${l}"`,"not parser found"),o},[])},"parseStacktrace");var mc=Object.defineProperty,gc=Ve((t,e)=>mc(t,"name",{value:e,configurable:!0}),"p"),vc=Object.defineProperty,Tn=gc((t,e)=>vc(t,"name",{value:e,configurable:!0}),"m");const bc=jl(import.meta.url),ae=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,Xe=Tn(t=>{if(typeof ae<"u"&&ae.versions&&ae.versions.node){const[e,n]=ae.versions.node.split(".").map(Number);if(e>22||e===22&&n>=3||e===20&&n>=16)return ae.getBuiltinModule(t)}return bc(t)},"__cjs_getBuiltinModule"),{existsSync:yc,readFileSync:wc}=Xe("node:fs"),{relative:$c}=Xe("node:path"),{cwd:Oc}=ae,{fileURLToPath:xc}=Xe("node:url");var Pc=Object.defineProperty,_=Tn((t,e)=>Pc(t,"name",{value:e,configurable:!0}),"o");const pe=_((t,e,n)=>n===0?t:e===" "?t+" ".repeat(n):t+" ".repeat(e*n),"getPrefix"),Ec=_((t,e)=>{const n=t.replace("async file:","file:");return $c(e,n.startsWith("file:")?xc(n):n)},"getRelativePath"),Ac=_((t,e,n)=>{if(e)return n.title(t.message);const i=t.message?`: ${t.message}`:"";return n.title(t.name+i)},"getTitleText"),In=_((t,{color:e,hideErrorTitle:n,indentation:i,prefix:r},o)=>`${pe(r,i,o)}${Ac(t,n,e)}
|
|
13
|
-
`,"getMessage"),Mn=_((t,{color:e,indentation:n,prefix:i},r)=>{if(t.hint===void 0)return;const o=pe(i,n,r);let l="";if(Array.isArray(t.hint))for(const s of t.hint)l+=`${o+s}
|
|
14
|
-
`;else l+=o+t.hint;return e.hint(l)},"getHint"),et=_((t,{color:e,cwd:n,displayShortPath:i,indentation:r,prefix:o},l=0)=>{const s=i?Ec(t.file,n):t.file,{fileLine:p,method:a}=e;return`${pe(o,r,l)}at ${t.methodName?`${a(t.methodName)} `:""}${p(s)}:${p(t.line?.toString()??"")}`},"getMainFrame"),Vn=_((t,{color:e,indentation:n,linesAbove:i,linesBelow:r,prefix:o,showGutter:l,showLineNumbers:s,tabWidth:p},a)=>{if(t.file===void 0)return;const c=t.file.replace("file://","");if(!yc(c))return;const d=wc(c,"utf8");return Fl(d,{start:{column:t.column,line:t.line}},{color:e,linesAbove:i,linesBelow:r,prefix:pe(o,n,a),showGutter:l,showLineNumbers:s,tabWidth:p})},"getCode"),Dn=_((t,e,n)=>{if(t.errors.length===0)return;let i=`${pe(e.prefix,e.indentation,n)}Errors:
|
|
15
|
-
|
|
16
|
-
`,r=!0;for(const o of t.errors)r?r=!1:i+=`
|
|
17
|
-
|
|
18
|
-
`,i+=Bn(o,{...e,framesMaxLimit:1,hideErrorCodeView:e.hideErrorErrorsCodeView},n+1);return`
|
|
19
|
-
${i}`},"getErrors"),Un=_((t,e,n)=>{let i=`${pe(e.prefix,e.indentation,n)}Caused by:
|
|
20
|
-
|
|
21
|
-
`;const r=t.cause;i+=In(r,e,n);const o=Sn(r).shift(),l=Mn(r,e,n);if(l&&(i+=`${l}
|
|
22
|
-
`),o&&(i+=et(o,e,n),!e.hideErrorCauseCodeView)){const s=Vn(o,e,n);s!==void 0&&(i+=`
|
|
23
|
-
${s}`)}if(r.cause)i+=`
|
|
24
|
-
${Un(r,e,n+1)}`;else if(r instanceof AggregateError){const s=Dn(r,e,n);s!==void 0&&(i+=`
|
|
25
|
-
${s}`)}return`
|
|
26
|
-
${i}`},"getCause"),Nc=_((t,e)=>(t.length>0?`
|
|
27
|
-
`:"")+t.map(n=>et(n,e)).join(`
|
|
28
|
-
`),"getStacktrace"),Bn=_((t,e,n)=>{const i={cwd:Oc(),displayShortPath:!1,filterStacktrace:void 0,framesMaxLimit:Number.POSITIVE_INFINITY,hideErrorCauseCodeView:!1,hideErrorCodeView:!1,hideErrorErrorsCodeView:!1,hideErrorTitle:!1,hideMessage:!1,indentation:4,linesAbove:2,linesBelow:3,prefix:"",showGutter:!0,showLineNumbers:!0,tabWidth:4,...e,color:{fileLine:_(l=>l,"fileLine"),gutter:_(l=>l,"gutter"),hint:_(l=>l,"hint"),marker:_(l=>l,"marker"),message:_(l=>l,"message"),method:_(l=>l,"method"),title:_(l=>l,"title"),...e.color}},r=Sn(t,{filter:e.filterStacktrace,frameLimit:i.framesMaxLimit}),o=r.shift();return[e.hideMessage?void 0:In(t,i,n),Mn(t,i,n),o?et(o,i,n):void 0,o&&!i.hideErrorCodeView?Vn(o,i,n):void 0,t instanceof AggregateError?Dn(t,i,n):void 0,t.cause===void 0?void 0:Un(t,i,n),r.length>0?Nc(r,i):void 0].filter(Boolean).join(`
|
|
29
|
-
`).replaceAll("\\","/")},"internalRenderError"),Cc=_((t,e={})=>{if(e.framesMaxLimit!==void 0&&e.framesMaxLimit<=0)throw new RangeError("The 'framesMaxLimit' option must be a positive number");return Bn(t,e,0)},"renderError");var jc=Object.defineProperty,kc=N((t,e)=>jc(t,"name",{value:e,configurable:!0}),"i$1"),_c=Object.defineProperty,Lc=kc((t,e)=>_c(t,"name",{value:e,configurable:!0}),"n"),Sc=Object.defineProperty,_t=Lc((t,e)=>Sc(t,"name",{value:e,configurable:!0}),"n");const Zc=_t((t={})=>({description:"Enhanced error handling and reporting with beautiful code frames",name:"error-handler",onError:_t((e,n)=>{const{logger:i,runtime:r}=n,{detailed:o=!1,exitOnError:l=!0,formatter:s,logErrors:p=!0,renderOptions:a={}}=t;if(p)if(s)i.error(s(e));else if(o){const c=r.getCwd(),d=Cc(e,{cwd:c,hideErrorCodeView:!1,hideErrorTitle:!1,hideMessage:!1,linesAbove:2,linesBelow:3,...a});i.error(d)}else i.error(e);l&&W(1)},"handleError"),version:"1.0.0"}),"errorHandlerPlugin");var Tc="1.0.0-alpha.26";const Yc={version:Tc};var Ic=Object.defineProperty,Mc=N((t,e)=>Ic(t,"name",{value:e,configurable:!0}),"e");const Qc={argument:{description:"Package to execute (optionally with @version)",name:"package",type:String},description:"Execute a remote package without permanent installation",examples:[["vis dlx create-vite my-app","Scaffold a new project"],["vis dlx typescript@5.5.4 tsc --version","Run specific version"],["vis dlx -p cowsay -p lolcatjs -c 'echo hi | cowsay | lolcatjs'","Multiple packages with shell"],["vis install && vis dlx --offline typescript tsc --version","Hardened: pre-install + offline (no registry fetch on dlx)"]],group:"Run & Execute",loader:Mc(()=>import("../packem_chunks/handler9.js"),"loader"),name:"dlx",options:[{alias:"p",description:"Additional packages to install (repeatable)",multiple:!0,name:"package",type:String},{alias:"c",defaultValue:!1,description:"Execute within shell environment",name:"shell-mode",type:Boolean},{alias:"s",defaultValue:!1,description:"Suppress output except command results",name:"silent",type:Boolean},{defaultValue:!1,description:"Resolve from local store only — fail rather than fetch from the registry. Pair with `vis install` for hardened npx-style workflows.",name:"offline",type:Boolean}]};export{Jc as N,Hc as T,Qc as a,H as b,Rc as c,A as d,al as e,Fc as f,il as g,Kc as i,Yc as m,se as n,Zc as w};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var Z=Object.defineProperty;var T=(e,r)=>Z(e,"name",{value:r,configurable:!0});var Q=Object.defineProperty,X=T((e,r)=>Q(e,"name",{value:r,configurable:!0}),"p$1"),ee=Object.defineProperty,re=X((e,r)=>ee(e,"name",{value:r,configurable:!0}),"C"),te=Object.defineProperty,v=re((e,r)=>te(e,"name",{value:r,configurable:!0}),"u");const ne=/^-{1,2}(no-color|no-colors|color=false|color=never)$/,oe=/^-{1,2}(color=256)$/,ie=/^-{1,2}(color=16m|color=full|color=truecolor)$/,ce=/^-{1,2}(color|colors|color=true|color=always)$/,ae=/-mono|dumb/i,ue=/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/,le=/-256(color)?$/i,se=/^screen|^tmux|^xterm|^vt[1-5]\d\d|^ansi|color|mintty|rxvt|cygwin|linux/i,Y=v(e=>{const r=globalThis,n=r.Deno!=null,o=r.process??r.Deno??{},l=o.argv??o.args??[],c=v(g=>{const j=l.indexOf("--"),w=l.findIndex(J=>g.test(J));return w!==-1&&(j===-1||w<j)},"oneOfFlags");let i={};try{i=n?o.env.toObject():o.env??{}}catch{}const O="FORCE_COLOR",z=O in i,b=i[O]??void 0,x=Object.prototype.toString.call(b).slice(8,-1)==="String",K=typeof b=="number";let f;if(b==="true"?f=1:b==="false"?f=0:x&&b.length===0?f=1:x&&b.length>0?f=Math.min(Number.parseInt(b,10),3):K&&(f=Math.min(b,3)),b!=="true"&&b!=="false"&&f!==void 0&&f<4)return f;if("NO_COLOR"in i||z&&f===0||c(ne))return 0;if(c(oe))return 2;if(c(ie))return 3;if(c(ce))return 1;const B=f??0;if("TF_BUILD"in i&&"AGENT_NAME"in i)return 1;if(i.TERM&&ae.test(i.TERM))return B;if((n?r.Deno.build.os:o.platform)==="win32")try{const g=(n?r.Deno.osRelease():o.os.release()).split(".");return Number(g[0])>=10&&Number(g[2])>=10586?Number(g[2])>=14931?3:2:1}catch{}if("CI"in i)return["GITEA_ACTIONS","CIRCLECI","GITHUB_WORKFLOW","GITHUB_ACTIONS"].some(g=>g in i)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(g=>g in i)||i.CI_NAME==="codeship"?1:B;if(i.TERMINAL_EMULATOR?.includes("JediTerm"))return 3;if("TEAMCITY_VERSION"in i)return ue.test(i.TEAMCITY_VERSION)?1:0;if(i.COLORTERM==="truecolor"||i.TERM==="xterm-kitty"||i.TERM==="xterm-ghostty"||i.TERM==="wezterm")return 3;if("TERM_PROGRAM"in i){const g=Number.parseInt((i.TERM_PROGRAM_VERSION??"").split(".")[0],10);if(i.TERM_PROGRAM==="iTerm.app")return g>=3?3:2;if(i.TERM_PROGRAM==="Apple_Terminal")return 2}if(le.test(i.TERM))return 2;let R;return n?R=e==="out"?r.Deno.stdout.isTerminal():r.Deno.stderr.isTerminal():"PM2_HOME"in i&&"pm_id"in i?R=!0:R=o[`std${e}`]&&"isTTY"in o[`std${e}`],R&&se.test(i.TERM)||"COLORTERM"in i?1:B},"isColorSupportedFactory"),ge=v(()=>Y("out"),"isStdoutColorSupported");v(()=>Y("err"),"isStderrColorSupported");var be=Object.defineProperty,V=T((e,r)=>be(e,"name",{value:r,configurable:!0}),"B"),fe=Object.defineProperty,p=V((e,r)=>fe(e,"name",{value:r,configurable:!0}),"u"),$e=Object.defineProperty,de=p((e,r)=>$e(e,"name",{value:r,configurable:!0}),"e$1");function M({onlyFirst:e=!1}={}){const r="(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";return new RegExp(r,e?void 0:"g")}T(M,"x");V(M,"N");p(M,"t$1");de(M,"ansiRegex");var pe=Object.defineProperty,me=p((e,r)=>pe(e,"name",{value:r,configurable:!0}),"n$1");const $=me((e,r,n)=>r>e?r:Math.min(e,n),"clamp");var he=Object.defineProperty,Oe=p((e,r)=>he(e,"name",{value:r,configurable:!0}),"a$1");const Re=/([a-f\d]{3,6})/i,Te=Oe(e=>{let[,r]=Re.exec(e)??[];const n=r?r.length:0;if(n===3){const l=r.charAt(0),c=r.charAt(1),i=r.charAt(2);r=l+l+c+c+i+i}else if(n!==6)return[0,0,0];const o=Number.parseInt(r,16);return[o>>16&255,o>>8&255,o&255]},"convertHexToRgb");var ve=Object.defineProperty,P=p((e,r)=>ve(e,"name",{value:r,configurable:!0}),"e");const W=P((e,r,n)=>e===r&&r===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/51)+6*Math.round(r/51)+Math.round(n/51),"rgbToAnsi256"),C=P(e=>{let r,n,o;if(e<8)return 30+e;if(e<16)return 90+(e-8);if(e>=232)r=n=o=((e-232)*10+8)/255;else{e-=16;const i=e%36;r=Math.floor(e/36)/5,n=Math.floor(i/6)/5,o=i%6/5}const l=Math.max(r,n,o)*2;if(l===0)return 30;const c=30+(Math.round(o)<<2|Math.round(n)<<1|Math.round(r));return l===2?c+60:c},"ansi256To16"),k=P((e,r,n)=>C(W(e,r,n)),"rgbToAnsi16");var ye=Object.defineProperty,s=p((e,r)=>ye(e,"name",{value:r,configurable:!0}),"b");const a=39,u=49,G=10,E=ge(),q={close:"",open:""},t=E>0?(e,r)=>({close:`\x1B[${String(r)}m`,open:`\x1B[${String(e)}m`}):()=>q,L=s(e=>(r,n,o)=>e(W(Number(r),Number(n),Number(o))),"createRgbFunction"),D=s(e=>r=>{const[n,o,l]=Te(r);return e(n,o,l)},"createHexFunction");let A=s(e=>t(`38;5;${String(e)}`,a),"createAnsi256"),N=s(e=>t(`48;5;${String(e)}`,u),"createBgAnsi256"),y=s((e,r,n)=>t(`38;2;${String(e)};${String(r)};${String(n)}`,a),"createRgb"),S=s((e,r,n)=>t(`48;2;${String(e)};${String(r)};${String(n)}`,u),"createBgRgb");E===1?(A=s(e=>t(C(Number(e)),a),"createAnsi256"),N=s(e=>t(C(Number(e))+G,u),"createBgAnsi256"),y=s((e,r,n)=>t(k(Number(e),Number(r),Number(n)),a),"createRgb"),S=s((e,r,n)=>t(k(Number(e),Number(r),Number(n))+G,u),"createBgRgb")):E===2&&(y=L(A),S=L(N));const F={bold:t(1,22),dim:t(2,22),hidden:t(8,28),inverse:t(7,27),italic:t(3,23),overline:t(53,55),reset:t(0,0),strike:t(9,29),strikethrough:t(9,29),underline:t(4,24),visible:q},H={bgBlack:t(40,u),bgBlackBright:t(100,u),bgBlue:t(44,u),bgBlueBright:t(104,u),bgCyan:t(46,u),bgCyanBright:t(106,u),bgGray:t(100,u),bgGreen:t(42,u),bgGreenBright:t(102,u),bgGrey:t(100,u),bgMagenta:t(45,u),bgMagentaBright:t(105,u),bgRed:t(41,u),bgRedBright:t(101,u),bgWhite:t(47,u),bgWhiteBright:t(107,u),bgYellow:t(43,u),bgYellowBright:t(103,u),black:t(30,a),blackBright:t(90,a),blue:t(34,a),blueBright:t(94,a),cyan:t(36,a),cyanBright:t(96,a),gray:t(90,a),green:t(32,a),greenBright:t(92,a),grey:t(90,a),magenta:t(35,a),magentaBright:t(95,a),red:t(31,a),redBright:t(91,a),white:t(37,a),whiteBright:t(97,a),yellow:t(33,a),yellowBright:t(93,a)},U={bg:s(e=>N($(e,0,255)),"bg"),bgHex:D(S),bgRgb:s((e,r,n)=>S($(e,0,255),$(r,0,255),$(n,0,255)),"bgRgb"),fg:s(e=>A($(e,0,255)),"fg"),hex:D(y),rgb:s((e,r,n)=>y($(e,0,255),$(r,0,255),$(n,0,255)),"rgb")};var Se=Object.defineProperty,Me=p((e,r)=>Se(e,"name",{value:r,configurable:!0}),"s");const Be=Me((e,r,n)=>{if(r==="")return e;let o=e.indexOf(r);if(o<0)return e;const l=r.length;let c=0,i="";for(;~o;)i+=e.slice(c,o)+n,c=o+l,o=e.indexOf(r,c);return i+e.slice(c)},"stringReplaceAll");var Ce=Object.defineProperty,h=p((e,r)=>Ce(e,"name",{value:r,configurable:!0}),"a");const d={};let _=null;const Ee=h((e,r,n)=>{if(!e)return"";let o;if(e.raw===void 0?o=String(e):o=String.raw(e,...r),o.includes("\x1B"))for(let l=n;l;l=l.props)o=Be(o,l.close,l.open);return o.includes(`
|
|
2
|
-
`)&&(o=o.replace(/(\r*\n)/g,`${n.closeStack}$1${n.openStack}`)),n.openStack+o+n.closeStack},"wrapText"),I=h(({props:e},{close:r,open:n})=>{const o=(e?.openStack??"")+n,l=r+(e?.closeStack??""),c=h((i,...O)=>Ee(i,O,c.props),"style");return Object.setPrototypeOf(c,_),c.props={close:r,closeStack:l,open:n,openStack:o,props:e},c.open=o,c.close=l,c},"createStyle"),Ae=h(function(){const e=h(r=>String(r),"self");e.strip=r=>r.replaceAll(M(),"");for(const r in H)d[r]={get(){const n=I(this,H[r]);return Object.defineProperty(this,r,{value:n}),n}};for(const r in F)d[r]={get(){const n=I(this,F[r]);return Object.defineProperty(this,r,{value:n}),n}};return _=Object.defineProperties({},d),Object.setPrototypeOf(e,_),e},"Colorize");for(const e in U)d[e]={get(){return(...r)=>I(this,U[e](...r))}};d.ansi256=d.fg;d.bgAnsi256=d.bg;const m=new Ae,_e=m.bold,Ie=m.cyan,Pe=m.dim,xe=m.green,je=m.inverse,we=m.magenta,ke=m.red,Ge=m.yellow;export{ge as B,Pe as E,xe as I,je as N,we as P,ke as T,Ge as e,m as g,_e as j,Ie as q};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var T=Object.defineProperty;var j=(n,e)=>T(n,"name",{value:e,configurable:!0});import{createRequire as A}from"node:module";import{k as R,j as C}from"../packem_chunks/bin.js";const B=A(import.meta.url),h=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,q=j(n=>{if(typeof h<"u"&&h.versions&&h.versions.node){const[e,t]=h.versions.node.split(".").map(Number);if(e>22||e===22&&t>=3||e===20&&t>=16)return h.getBuiltinModule(n)}return B(n)},"__cjs_getBuiltinModule"),{createRequire:N}=q("node:module");var U=Object.defineProperty,z=j((n,e)=>U(n,"name",{value:e,configurable:!0}),"L"),I=Object.defineProperty,F=z((n,e)=>I(n,"name",{value:e,configurable:!0}),"F");const J=N(import.meta.url),y=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,S=F(n=>{if(typeof y<"u"&&y.versions&&y.versions.node){const[e,t]=y.versions.node.split(".").map(Number);if(e>22||e===22&&t>=3||e===20&&t>=16)return y.getBuiltinModule(n)}return J(n)},"__cjs_getBuiltinModule"),{readFileSync:Y}=S("node:fs"),{readFile:Z}=S("node:fs/promises");var K=Object.defineProperty,l=F((n,e)=>K(n,"name",{value:e,configurable:!0}),"g");const G={sha256:"sha256",sha384:"sha384",sha512:"sha512"},H=1024,Q=/^[A-Z0-9+/]+={0,2}$/i,V=/.*node_modules\/((?:@[^/]+\/)?[^/]+)$/,k=/^['"]/,v=/['"]$/,X=/^[a-z][a-zA-Z0-9]*:\s*$/m,ee=/resolution:\s*\{[^}]*integrity:\s*([^,}\s]+)/,ne=/^["']?((?:@[^/@"']+\/)?[^@"'\n]+)@[^"'\n]+["']?:?[\t\v\f\r \u00A0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]*\n((?:[\t ][^\n]*\n?)+)/gm,te=/^\s+version:?\s+"?([^"\n]+)"?/m,se=/^\s+integrity[\s:]+"?([^"\s]+)"?/m,x=l(n=>{if(n.length>H)return;const e=n.indexOf("-");if(e<=0)return;const t=G[n.slice(0,e).toLowerCase()];if(!t)return;const s=n.slice(e+1);if(Q.test(s))try{const i=Buffer.from(s,"base64");return i.length===0?void 0:{algorithm:t,hex:i.toString("hex")}}catch{return}},"decodeSriIntegrity"),w=l((n,e,t)=>{const s=`${t.name}@${t.version}`;e.has(s)||(e.add(s),n.push(t))},"pushUniqueEntry"),m=l((n,e,t)=>{t&&Object.keys(t).length>0&&(n[e]={...t})},"copyDepMap"),g=l(n=>{if(!n)return;const e={};for(const[t,s]of Object.entries(n))e[t]=[s];return Object.keys(e).length>0?e:void 0},"liftDepMap"),re=l(n=>{const e=[],t=new Set;let s;try{s=JSON.parse(n)}catch{return e}if(!s.packages)return e;for(const[i,r]of Object.entries(s.packages)){if(!i||!r.version)continue;const p=V.exec(i);if(!p?.[1])continue;const c=r.name??p[1];if(c.startsWith("."))continue;const o={name:c,version:r.version};if(r.integrity){const a=x(r.integrity);a&&(o.integrity=a)}m(o,"dependencies",g(r.dependencies)),m(o,"peerDependencies",g(r.peerDependencies)),m(o,"optionalDependencies",g(r.optionalDependencies)),w(e,t,o)}return e},"parseNpmLockFile"),_=l(n=>{let e=n.trim();e.startsWith("/")&&(e=e.slice(1)),e=e.replace(k,"").replace(v,"");const t=e.indexOf("(");t>0&&(e=e.slice(0,t));const s=e.lastIndexOf("@");if(s<=0)return;const i=e.slice(0,s),r=e.slice(s+1);if(!(!i||!r||r.startsWith("link:")||r.startsWith("workspace:")||r.startsWith("file:")))return{name:i,version:r}},"splitPnpmPackageKey"),W=l((n,e)=>{const t=new RegExp(String.raw`^${e}:\s*$`,"m").exec(n);if(!t)return;const s=t.index+t[0].length,i=X.exec(n.slice(s));return n.slice(s,i?s+i.index:n.length)},"sliceTopLevelSection"),oe=l(n=>{const e=new Map,t=W(n,"snapshots");if(!t)return e;const s=/^ {2}(['"]?[^\s:][^:\n]*?['"]?):\s*\n((?: {4}[^\n]*\n?)+)/gm;let i;for(;(i=s.exec(t)??void 0)!==void 0;){const r=_(i[1]);if(!r)continue;const p=`${r.name}@${r.version}`,c=i[2],o=e.get(p)??{};for(const a of["dependencies","peerDependencies","optionalDependencies"]){const u=b(c,a);if(!u)continue;const d=o[a]??{};for(const[f,P]of Object.entries(u)){const D=d[f]??[];for(const $ of P)D.includes($)||D.push($);d[f]=D}o[a]=d}e.set(p,o)}return e},"parsePnpmSnapshotEdges"),ie=l(n=>{const e=[],t=new Set,s=W(n,"packages");if(!s)return e;const i=oe(n),r=/^ {2}(['"]?[^\s:][^:\n]*?['"]?):\s*\n((?: {4}[^\n]*\n?)+)/gm;let p;for(;(p=r.exec(s)??void 0)!==void 0;){const c=_(p[1]);if(!c)continue;const o=p[2],a=ee.exec(o),u={name:c.name,version:c.version};if(a?.[1]){const f=x(a[1]);f&&(u.integrity=f)}const d=i.get(`${c.name}@${c.version}`);m(u,"dependencies",d?.dependencies??b(o,"dependencies")),m(u,"peerDependencies",d?.peerDependencies??b(o,"peerDependencies")),m(u,"optionalDependencies",d?.optionalDependencies??b(o,"optionalDependencies")),w(e,t,u)}return e},"parsePnpmLockFile"),b=l((n,e)=>{const t=new RegExp(String.raw`^ {4}${e}:\s*\n((?: {6,}[^\n]*\n?)+)`,"m").exec(n);if(!t?.[1])return;const s={},i=/^ {6}([^\s:]+):\s*([^\n]+)/gm;let r;for(;(r=i.exec(t[1])??void 0)!==void 0;){const p=r[1].replace(k,"").replace(v,"");let c=r[2].trim();c=c.replace(k,"").replace(v,"");const o=c.indexOf("(");if(o>0&&(c=c.slice(0,o).trim()),!p||!c)continue;const a=s[p]??[];a.includes(c)||a.push(c),s[p]=a}return Object.keys(s).length>0?s:void 0},"extractPnpmDependencyMap"),ce=l(n=>{const e=[],t=new Set,s=ne;s.lastIndex=0;let i;for(;(i=s.exec(n)??void 0)!==void 0;){const r=i[1].replace(k,"").replace(v,"");if(!r)continue;const p=i[2],c=te.exec(p);if(!c?.[1])continue;const o={name:r,version:c[1].trim()},a=se.exec(p);if(a?.[1]){const u=x(a[1]);u&&(o.integrity=u)}m(o,"dependencies",O(p,"dependencies")),m(o,"peerDependencies",O(p,"peerDependencies")),m(o,"optionalDependencies",O(p,"optionalDependencies")),w(e,t,o)}return e},"parseYarnLockFile"),O=l((n,e)=>{const t=new RegExp(String.raw`^ {2}${e}:\s*\n((?: {4,}[^\n]*\n?)+)`,"m").exec(n);if(!t?.[1])return;const s={},i=/^ {4}(['"]?[^\s:'"]+['"]?)\s*(?::\s*)?['"]([^'"\n]+)['"]/gm;let r;for(;(r=i.exec(t[1])??void 0)!==void 0;){const p=r[1].replace(k,"").replace(v,""),c=r[2];if(p&&c){const o=s[p]??[];o.includes(c)||o.push(c),s[p]=o}}return Object.keys(s).length>0?s:void 0},"extractYarnDependencyMap"),pe=/,(?=\s*[}\]])/g,ae=l(n=>{const e=[],t=new Set;let s;try{s=JSON.parse(n.replaceAll(pe,""))}catch{return e}if(!s.packages)return e;for(const i of Object.values(s.packages)){const r=i[0];if(typeof r!="string")continue;const p=r.indexOf("@",1);if(p<=0)continue;const c=r.slice(0,p),o=r.slice(p+1);if(!c||!o||o.startsWith("workspace:")||o.startsWith("link:")||o.startsWith("file:"))continue;const a={name:c,version:o},u=i[3];if(typeof u=="string"&&u.length>0){const f=x(u);f&&(a.integrity=f)}const d=i[2];if(d&&typeof d=="object"&&!Array.isArray(d)){const f=d;m(a,"dependencies",g(f.dependencies)),m(a,"peerDependencies",g(f.peerDependencies)),m(a,"optionalDependencies",g(f.optionalDependencies))}w(e,t,a)}return e},"parseBunLockFile"),E=l(n=>{if(n.endsWith("pnpm-lock.yaml"))return"pnpm";if(n.endsWith("package-lock.json"))return"npm";if(n.endsWith("yarn.lock"))return"yarn";if(n.endsWith("bun.lock"))return"bun"},"inferLockFileType"),L=l((n,e)=>{switch(e){case"bun":return ae(n);case"npm":return re(n);case"pnpm":return ie(n);case"yarn":return ce(n);default:return[]}},"parseLockFileContent"),M=["pnpm-lock.yaml","package-lock.json","yarn.lock","bun.lock"];l(async n=>{const e=await R(M,{type:"file",...n&&{cwd:n}});if(!e)throw new Error("Could not find a supported lock file (pnpm-lock.yaml, package-lock.json, yarn.lock, bun.lock)");const t=E(e);if(!t)throw new Error(`Unsupported lock file: ${e}`);const s=await Z(e,"utf8");return{entries:L(s,t),path:e,type:t}},"parseLockFile");l(n=>{const e=C(M,{type:"file",...n&&{cwd:n}});if(!e)throw new Error("Could not find a supported lock file (pnpm-lock.yaml, package-lock.json, yarn.lock, bun.lock)");const t=E(e);if(!t)throw new Error(`Unsupported lock file: ${e}`);return{entries:L(Y(e,"utf8"),t),path:e,type:t}},"parseLockFileSync");export{L as F};
|