@visulima/vis 1.0.0-alpha.25 → 1.0.0-alpha.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/LICENSE.md +19 -152
  3. package/README.md +24 -22
  4. package/dist/bin.js +1 -1
  5. package/dist/binx.js +1 -1
  6. package/dist/config/index.d.ts +176 -16
  7. package/dist/packem_chunks/bin.js +263 -263
  8. package/dist/packem_chunks/bloom-status.js +1 -1
  9. package/dist/packem_chunks/bloom-sync.js +1 -1
  10. package/dist/packem_chunks/config.js +15 -15
  11. package/dist/packem_chunks/handler10.js +1 -1
  12. package/dist/packem_chunks/handler11.js +1 -1
  13. package/dist/packem_chunks/handler12.js +1 -1
  14. package/dist/packem_chunks/handler13.js +1 -1
  15. package/dist/packem_chunks/handler14.js +8 -9
  16. package/dist/packem_chunks/handler15.js +1 -1
  17. package/dist/packem_chunks/handler16.js +1 -1
  18. package/dist/packem_chunks/handler17.js +1 -1
  19. package/dist/packem_chunks/handler18.js +1 -1
  20. package/dist/packem_chunks/handler19.js +1 -1
  21. package/dist/packem_chunks/handler2.js +1 -1
  22. package/dist/packem_chunks/handler20.js +1 -1
  23. package/dist/packem_chunks/handler22.js +1 -1
  24. package/dist/packem_chunks/handler23.js +1 -1
  25. package/dist/packem_chunks/handler27.js +1 -1
  26. package/dist/packem_chunks/handler28.js +1 -1
  27. package/dist/packem_chunks/handler29.js +1 -1
  28. package/dist/packem_chunks/handler30.js +3 -3
  29. package/dist/packem_chunks/handler31.js +2 -2
  30. package/dist/packem_chunks/handler34.js +1 -1
  31. package/dist/packem_chunks/handler35.js +3 -22
  32. package/dist/packem_chunks/handler36.js +21 -60
  33. package/dist/packem_chunks/handler37.js +61 -6
  34. package/dist/packem_chunks/handler38.js +3 -24
  35. package/dist/packem_chunks/handler39.js +6 -153
  36. package/dist/packem_chunks/handler4.js +1 -1
  37. package/dist/packem_chunks/handler40.js +24 -10
  38. package/dist/packem_chunks/handler41.js +153 -25
  39. package/dist/packem_chunks/handler42.js +10 -708
  40. package/dist/packem_chunks/handler43.js +25 -24
  41. package/dist/packem_chunks/handler44.js +659 -273
  42. package/dist/packem_chunks/handler45.js +24 -46
  43. package/dist/packem_chunks/handler46.js +322 -3
  44. package/dist/packem_chunks/handler47.js +48 -27
  45. package/dist/packem_chunks/handler48.js +3 -186
  46. package/dist/packem_chunks/handler49.js +23 -30
  47. package/dist/packem_chunks/handler5.js +6 -6
  48. package/dist/packem_chunks/handler50.js +196 -0
  49. package/dist/packem_chunks/handler51.js +34 -0
  50. package/dist/packem_chunks/handler8.js +1 -1
  51. package/dist/packem_chunks/handler9.js +1 -1
  52. package/dist/packem_chunks/heal-accept.js +1 -1
  53. package/dist/packem_chunks/help-command.js +16 -16
  54. package/dist/packem_chunks/index.js +1 -1
  55. package/dist/packem_chunks/list.js +1 -1
  56. package/dist/packem_chunks/loader.js +1 -1
  57. package/dist/packem_chunks/prune.js +1 -1
  58. package/dist/packem_chunks/status.js +1 -1
  59. package/dist/packem_chunks/sync.js +1 -1
  60. package/dist/packem_chunks/sync2.js +1 -1
  61. package/dist/packem_chunks/tripwire.js +1 -1
  62. package/dist/packem_chunks/verify-lockfile.js +1 -1
  63. package/dist/packem_shared/{advisories-U1QKY_tg.js → advisories-xIOdLbAI.js} +1 -1
  64. package/dist/packem_shared/{cyclonedx-D6F9rAay.js → cyclonedx-B3ILsY74.js} +1 -1
  65. package/dist/packem_shared/{docker-BU-7veP5.js → docker-BynKrOLe.js} +1 -1
  66. package/dist/packem_shared/{index-PexbdLyT.js → index-B_KtN1MB.js} +1 -1
  67. package/dist/packem_shared/{index-D9ZIw4ra.js → index-efSniSRN.js} +1 -1
  68. package/dist/packem_shared/{lifecycle-ChCFTm5Q.js → lifecycle-CJRNbN3x.js} +2 -2
  69. package/dist/packem_shared/{min-release-age-heJgeP7o.js → min-release-age-aEn0x8Vy.js} +1 -1
  70. package/dist/packem_shared/{native-config-sync-BOeuyrBj.js → native-config-sync-DdhTLlKL.js} +1 -1
  71. package/dist/packem_shared/{osv-bloom-CyCDpXBl.js → osv-bloom-BJhlc_I2.js} +2 -2
  72. package/dist/packem_shared/{pm-runner-Cj76BV8q.js → pm-runner-BwX5AL3W.js} +1 -1
  73. package/dist/packem_shared/{provenance-CdvMwB2R.js → provenance-BuiEsWbI.js} +1 -1
  74. package/dist/packem_shared/{resolve-explicit-CRFybyxv.js → resolve-explicit-RgRrUDZv.js} +1 -1
  75. package/dist/packem_shared/{s1ngularity-CiZla5EP.js → s1ngularity-Bs9fUf3q.js} +1 -1
  76. package/dist/packem_shared/{scan-progress-EbvmIh4i.js → scan-progress-DjPT66jy.js} +2 -2
  77. package/dist/packem_shared/{signatures-BsEDWhME.js → signatures-LYMy8OR5.js} +1 -1
  78. package/dist/packem_shared/{typosquats-_7T7U2q2.js → typosquats-znskIR5j.js} +1 -1
  79. package/dist/packem_shared/watch-BSVsZ_1I.js +1 -0
  80. package/dist/packem_shared/watch-loop-DLlMLg_J.js +11 -0
  81. package/index.d.ts +201 -201
  82. package/index.js +751 -567
  83. package/package.json +11 -11
  84. package/schemas/project.schema.json +86 -1
  85. package/schemas/vis-config.schema.json +255 -7
@@ -1,4 +1,4 @@
1
- var v=Object.defineProperty;var E=(o,l)=>v(o,"name",{value:l,configurable:!0});import{M as c,$ as S,i as g}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{B as i,n as O}from"../packem_chunks/config.js";import{e as N,o as U}from"../packem_chunks/bin.js";var x=Object.defineProperty,D=E((o,l)=>x(o,"name",{value:l,configurable:!0}),"f");const W=D((o,l,d)=>{const s=[],b=Object.entries(d).filter(([,n])=>n).map(([n])=>n);switch(o){case"bun":{const n=c(l,"package.json");if(g(n))try{const e=O(n);e.trustedDependencies=b,i(n,`${JSON.stringify(e,null,2)}
1
+ var v=Object.defineProperty;var E=(o,l)=>v(o,"name",{value:l,configurable:!0});import{M as c,$ as S,i as g}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{d as i,n as O}from"../packem_chunks/config.js";import{e as N,o as U}from"../packem_chunks/bin.js";var x=Object.defineProperty,D=E((o,l)=>x(o,"name",{value:l,configurable:!0}),"f");const W=D((o,l,d)=>{const s=[],b=Object.entries(d).filter(([,n])=>n).map(([n])=>n);switch(o){case"bun":{const n=c(l,"package.json");if(g(n))try{const e=O(n);e.trustedDependencies=b,i(n,`${JSON.stringify(e,null,2)}
2
2
  `),s.push(`Updated package.json trustedDependencies with ${b.length} packages`)}catch(e){s.push(`Failed to update package.json: ${e instanceof Error?e.message:String(e)}`)}break}case"npm":{const n=c(l,".npmrc");let e=g(n)?S(n):"";/^\s*ignore-scripts\s*=\s*true\s*$/m.test(e)?s.push(".npmrc already has ignore-scripts=true"):(e=`${e.trimEnd()}
3
3
  ignore-scripts=true
4
4
  `,i(n,e),s.push("Added ignore-scripts=true to .npmrc"));break}case"pnpm":{const n=c(l,"pnpm-workspace.yaml");if(!g(n)){s.push("pnpm-workspace.yaml not found. Cannot sync allowBuilds.");break}let e={},m=[];try{const t=U(n);e=t?.allowBuilds??{},m=Array.isArray(t?.onlyBuiltDependencies)?t.onlyBuiltDependencies:[]}catch{}const h={...e,...d},A=Object.keys(d).filter(t=>e[t]!==d[t]).length,u=b.toSorted((t,p)=>t.localeCompare(p)),k=[...new Set([...m,...u])].toSorted((t,p)=>t.localeCompare(p)),w=u.filter(t=>!m.includes(t)).length;if(A===0&&w===0)s.push(`All ${String(Object.keys(d).length)} allowBuilds entries already present in pnpm-workspace.yaml.`);else{const t=Object.keys(h).sort(),p=D(a=>a.startsWith("@")||a.includes("/")||/[:#\s]/.test(a),"needsQuote"),$=D(a=>p(a)?`'${a.replaceAll("'","''")}'`:a,"renderKey"),y=`allowBuilds:
@@ -1,2 +1,2 @@
1
- var U=Object.defineProperty;var l=(e,o)=>U(e,"name",{value:o,configurable:!0});import{createRequire as P}from"node:module";import{K as z}from"../packem_chunks/config.js";import{NATIVE_BINDING_VERSION as M,osvBloomDecode as Y,osvBloomProbe as Q,osvBloomProbeBatch as X}from"#native";const V=P(import.meta.url),d=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,O=l(e=>{if(typeof d<"u"&&d.versions&&d.versions.node){const[o,t]=d.versions.node.split(".").map(Number);if(o>22||o===22&&t>=3||o===20&&t>=16)return d.getBuiltinModule(e)}return V(e)},"__cjs_getBuiltinModule"),{randomUUID:H,createHash:F}=O("node:crypto"),{existsSync:p}=O("node:fs"),{readFile:y,mkdir:L,stat:I,rm:q,writeFile:G,rename:J,unlink:K}=O("node:fs/promises"),{join:w,dirname:W}=O("node:path");var Z=Object.defineProperty,s=l((e,o)=>Z(e,"name",{value:o,configurable:!0}),"r");const N=5;if(M!==N)throw new Error(`vis native binding ABI mismatch in osv-bloom: expected ${N}, got ${M}. Rebuild via \`pnpm --filter @visulima/vis run build:native\` or reinstall the platform binding package.`);const ut="https://endevco.github.io/osv-bloom",tt=new Set(["endevco.github.io"]);class g extends Error{static{l(this,"OsvBloomSourceNotAllowedError")}static{s(this,"OsvBloomSourceNotAllowedError")}cause="OSV_BLOOM_SOURCE_NOT_ALLOWED";constructor(o){super(`osv-bloom source host '${o}' is not in the built-in allowlist. Add it to \`security.audit.advisories.bloom.allowedHosts\` if intentional.`),this.name="OsvBloomSourceNotAllowedError"}}class B extends Error{static{l(this,"OsvBloomNetworkError")}static{s(this,"OsvBloomNetworkError")}cause="OSV_BLOOM_NETWORK";constructor(o,t){super(`osv-bloom fetch failed for ${o}: ${t}. Check connectivity, proxy env vars, or --source.`),this.name="OsvBloomNetworkError"}}class et extends Error{static{l(this,"OsvBloomIntegrityError")}static{s(this,"OsvBloomIntegrityError")}cause="OSV_BLOOM_INTEGRITY";constructor(o,t){super(`osv-bloom filter.bin sha256 mismatch (expected ${o}, got ${t}). Refusing to install a corrupted filter.`),this.name="OsvBloomIntegrityError"}}class v extends Error{static{l(this,"OsvBloomManifestError")}static{s(this,"OsvBloomManifestError")}cause="OSV_BLOOM_MANIFEST";constructor(o){super(`osv-bloom manifest invalid: ${o}`),this.name="OsvBloomManifestError"}}class ot extends Error{static{l(this,"OsvBloomCacheMissError")}static{s(this,"OsvBloomCacheMissError")}cause="OSV_BLOOM_CACHE_MISS";constructor(o){super(`No osv-bloom cache at ${o}. Run 'vis advisories bloom sync' first.`),this.name="OsvBloomCacheMissError"}}const b=s(e=>{const o=z("vis",{create:!0,cwd:e})??w(e,"node_modules",".cache","vis");return w(o,"osv-bloom")},"resolveOsvBloomCacheDir"),h=s(e=>w(e,"filter.bin"),"filterPath"),R=s(e=>w(e,"manifest.json"),"manifestPath"),T=s(e=>w(e,"state.json"),"statePath"),st=s((e,o)=>{let t;try{t=new URL(e)}catch{throw new g(e)}if(!t.host)throw new g(e);if(t.protocol!=="https:")throw new g(`${t.protocol}//${t.host}`);if(!new Set([...tt,...o??[]]).has(t.host))throw new g(t.host);return t},"validateOsvBloomSource"),ht=s(async e=>{const o=Date.now(),t=e.cacheDir??b(e.workspaceRoot);await L(t,{recursive:!0});const r=st(e.source,e.allowedHosts),a=new URL("manifest.json",$(r.toString())),i=new URL("filter.bin",$(r.toString())),n=await x(a,{method:"GET"});if(!n.ok)throw new B(a.toString(),n.status);const S=await n.text(),c=k(S),m=await C(t);if(!e.force&&m?.setDigestSha256===c.setDigestSha256&&p(h(t)))return{bytesOnDisk:(await I(h(t))).size,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!0};const E={};!e.force&&m?.filterEtag&&(E.headers={"if-none-match":m.filterEtag});const f=await x(i,{...E,method:"GET"});if(f.status===304&&m&&p(h(t)))return await A(t,S,{fetchedAtIso:new Date().toISOString(),filterEtag:m.filterEtag,setDigestSha256:c.setDigestSha256}),{bytesOnDisk:(await I(h(t))).size,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!0};if(!f.ok||!f.body)throw new B(i.toString(),f.status);const u=Buffer.from(await f.arrayBuffer());e.onProgress&&e.onProgress(u.length,u.length);const D=rt(u);if(D!==c.filterSha256)throw new et(c.filterSha256,D);if(u.length!==c.bloomByteLen)throw new v(`filter.bin length ${u.length} does not match manifest.bloom_byte_len ${c.bloomByteLen}`);const j=f.headers.get("etag")??void 0;return await _(h(t),u),await A(t,S,{fetchedAtIso:new Date().toISOString(),filterEtag:j,setDigestSha256:c.setDigestSha256}),{bytesOnDisk:u.length,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!1}},"syncOsvBloom"),ft=s(async(e,o)=>{const t=o?.cacheDir??b(e),r=h(t);if(!p(r)){if(o?.softFail)return null;throw new ot(t)}const a=await y(r);return Y(a)},"loadOsvBloomHandle");s((e,o,t)=>Q(e,o,t),"probeOsvBloom");const mt=s((e,o)=>X(e,o),"probeOsvBloomBatch"),dt=s(async(e,o)=>{const t=o??b(e);if(!p(h(t)))return{cacheDir:t,present:!1};let r,a;try{r=k(await y(R(t),"utf8"))}catch{}try{a=await C(t)}catch{}return{cacheDir:t,fetchedAtIso:a?.fetchedAtIso,manifest:r,present:!0}},"getOsvBloomStatus");s(async(e,o)=>{const t=o??b(e);await q(t,{force:!0,recursive:!0})},"clearOsvBloomCache");const k=s(e=>{let o;try{o=JSON.parse(e)}catch(i){throw new v(i instanceof Error?i.message:String(i))}const t=s(i=>{const n=o[i];if(typeof n!="number"||Number.isNaN(n))throw new v(`field '${i}' missing or non-numeric`);return n},"requireNumber"),r=s(i=>{const n=o[i];if(typeof n!="string"||n.length===0)throw new v(`field '${i}' missing or empty`);return n},"requireString"),a=t("format_version");if(a!==1)throw new v(`unsupported format_version ${a} (this build expects v1)`);return{advisoryCount:t("advisory_count"),bloomByteLen:t("bloom_byte_len"),bloomKHashes:t("bloom_k_hashes"),bloomMBits:t("bloom_m_bits"),builtAtRfc3339:r("built_at_rfc3339"),builtAtUnix:t("built_at_unix"),entryCount:t("entry_count"),filterSha256:r("filter_sha256"),formatVersion:a,setDigestSha256:r("set_digest_sha256"),sourceUrl:r("source_url"),targetFpr:t("target_fpr")}},"parseManifest"),C=s(async e=>{try{const o=await y(T(e),"utf8"),t=JSON.parse(o);return typeof t.setDigestSha256!="string"||typeof t.fetchedAtIso!="string"?void 0:{fetchedAtIso:t.fetchedAtIso,filterEtag:typeof t.filterEtag=="string"?t.filterEtag:void 0,setDigestSha256:t.setDigestSha256}}catch{return}},"readState"),A=s(async(e,o,t)=>{await _(R(e),Buffer.from(o,"utf8")),await _(T(e),Buffer.from(`${JSON.stringify(t,void 0,2)}
2
- `,"utf8"))},"persistManifestAndState"),_=s(async(e,o)=>{await L(W(e),{recursive:!0});const t=`${e}.${process.pid}.${H()}.tmp`;try{await G(t,o),await J(t,e)}catch(r){throw await K(t).catch(()=>{}),r}},"atomicWrite"),rt=s(e=>F("sha256").update(e).digest("hex"),"sha256Hex"),$=s(e=>e.endsWith("/")?e:`${e}/`,"ensureTrailingSlash"),it=3e4,x=s(async(e,o)=>{try{return await fetch(e,{...o,signal:AbortSignal.timeout(it)})}catch(t){throw new B(e.toString(),t instanceof Error?t.message:String(t))}},"safeFetch");export{ut as D,ot as O,dt as g,ft as l,mt as p,ht as s};
1
+ var U=Object.defineProperty;var l=(e,o)=>U(e,"name",{value:o,configurable:!0});import{createRequire as P}from"node:module";import{B as K}from"../packem_chunks/config.js";import{NATIVE_BINDING_VERSION as M,osvBloomDecode as Y,osvBloomProbe as Q,osvBloomProbeBatch as X}from"#native";const V=P(import.meta.url),d=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,O=l(e=>{if(typeof d<"u"&&d.versions&&d.versions.node){const[o,t]=d.versions.node.split(".").map(Number);if(o>22||o===22&&t>=3||o===20&&t>=16)return d.getBuiltinModule(e)}return V(e)},"__cjs_getBuiltinModule"),{randomUUID:H,createHash:F}=O("node:crypto"),{existsSync:p}=O("node:fs"),{readFile:y,mkdir:L,stat:I,rm:q,writeFile:G,rename:J,unlink:W}=O("node:fs/promises"),{join:w,dirname:z}=O("node:path");var Z=Object.defineProperty,s=l((e,o)=>Z(e,"name",{value:o,configurable:!0}),"r");const N=5;if(M!==N)throw new Error(`vis native binding ABI mismatch in osv-bloom: expected ${N}, got ${M}. Rebuild via \`pnpm --filter @visulima/vis run build:native\` or reinstall the platform binding package.`);const ut="https://endevco.github.io/osv-bloom",tt=new Set(["endevco.github.io"]);class g extends Error{static{l(this,"OsvBloomSourceNotAllowedError")}static{s(this,"OsvBloomSourceNotAllowedError")}cause="OSV_BLOOM_SOURCE_NOT_ALLOWED";constructor(o){super(`osv-bloom source host '${o}' is not in the built-in allowlist. Add it to \`security.audit.advisories.bloom.allowedHosts\` if intentional.`),this.name="OsvBloomSourceNotAllowedError"}}class S extends Error{static{l(this,"OsvBloomNetworkError")}static{s(this,"OsvBloomNetworkError")}cause="OSV_BLOOM_NETWORK";constructor(o,t){super(`osv-bloom fetch failed for ${o}: ${t}. Check connectivity, proxy env vars, or --source.`),this.name="OsvBloomNetworkError"}}class et extends Error{static{l(this,"OsvBloomIntegrityError")}static{s(this,"OsvBloomIntegrityError")}cause="OSV_BLOOM_INTEGRITY";constructor(o,t){super(`osv-bloom filter.bin sha256 mismatch (expected ${o}, got ${t}). Refusing to install a corrupted filter.`),this.name="OsvBloomIntegrityError"}}class v extends Error{static{l(this,"OsvBloomManifestError")}static{s(this,"OsvBloomManifestError")}cause="OSV_BLOOM_MANIFEST";constructor(o){super(`osv-bloom manifest invalid: ${o}`),this.name="OsvBloomManifestError"}}class ot extends Error{static{l(this,"OsvBloomCacheMissError")}static{s(this,"OsvBloomCacheMissError")}cause="OSV_BLOOM_CACHE_MISS";constructor(o){super(`No osv-bloom cache at ${o}. Run 'vis advisories bloom sync' first.`),this.name="OsvBloomCacheMissError"}}const b=s(e=>{const o=K("vis",{create:!0,cwd:e})??w(e,"node_modules",".cache","vis");return w(o,"osv-bloom")},"resolveOsvBloomCacheDir"),h=s(e=>w(e,"filter.bin"),"filterPath"),R=s(e=>w(e,"manifest.json"),"manifestPath"),T=s(e=>w(e,"state.json"),"statePath"),st=s((e,o)=>{let t;try{t=new URL(e)}catch{throw new g(e)}if(!t.host)throw new g(e);if(t.protocol!=="https:")throw new g(`${t.protocol}//${t.host}`);if(!new Set([...tt,...o??[]]).has(t.host))throw new g(t.host);return t},"validateOsvBloomSource"),ht=s(async e=>{const o=Date.now(),t=e.cacheDir??b(e.workspaceRoot);await L(t,{recursive:!0});const r=st(e.source,e.allowedHosts),a=new URL("manifest.json",$(r.toString())),i=new URL("filter.bin",$(r.toString())),n=await x(a,{method:"GET"});if(!n.ok)throw new S(a.toString(),n.status);const B=await n.text(),c=k(B),m=await C(t);if(!e.force&&m?.setDigestSha256===c.setDigestSha256&&p(h(t)))return{bytesOnDisk:(await I(h(t))).size,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!0};const E={};!e.force&&m?.filterEtag&&(E.headers={"if-none-match":m.filterEtag});const f=await x(i,{...E,method:"GET"});if(f.status===304&&m&&p(h(t)))return await A(t,B,{fetchedAtIso:new Date().toISOString(),filterEtag:m.filterEtag,setDigestSha256:c.setDigestSha256}),{bytesOnDisk:(await I(h(t))).size,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!0};if(!f.ok||!f.body)throw new S(i.toString(),f.status);const u=Buffer.from(await f.arrayBuffer());e.onProgress&&e.onProgress(u.length,u.length);const D=rt(u);if(D!==c.filterSha256)throw new et(c.filterSha256,D);if(u.length!==c.bloomByteLen)throw new v(`filter.bin length ${u.length} does not match manifest.bloom_byte_len ${c.bloomByteLen}`);const j=f.headers.get("etag")??void 0;return await _(h(t),u),await A(t,B,{fetchedAtIso:new Date().toISOString(),filterEtag:j,setDigestSha256:c.setDigestSha256}),{bytesOnDisk:u.length,cacheDir:t,durationMs:Date.now()-o,manifest:c,upToDate:!1}},"syncOsvBloom"),ft=s(async(e,o)=>{const t=o?.cacheDir??b(e),r=h(t);if(!p(r)){if(o?.softFail)return null;throw new ot(t)}const a=await y(r);return Y(a)},"loadOsvBloomHandle");s((e,o,t)=>Q(e,o,t),"probeOsvBloom");const mt=s((e,o)=>X(e,o),"probeOsvBloomBatch"),dt=s(async(e,o)=>{const t=o??b(e);if(!p(h(t)))return{cacheDir:t,present:!1};let r,a;try{r=k(await y(R(t),"utf8"))}catch{}try{a=await C(t)}catch{}return{cacheDir:t,fetchedAtIso:a?.fetchedAtIso,manifest:r,present:!0}},"getOsvBloomStatus");s(async(e,o)=>{const t=o??b(e);await q(t,{force:!0,recursive:!0})},"clearOsvBloomCache");const k=s(e=>{let o;try{o=JSON.parse(e)}catch(i){throw new v(i instanceof Error?i.message:String(i))}const t=s(i=>{const n=o[i];if(typeof n!="number"||Number.isNaN(n))throw new v(`field '${i}' missing or non-numeric`);return n},"requireNumber"),r=s(i=>{const n=o[i];if(typeof n!="string"||n.length===0)throw new v(`field '${i}' missing or empty`);return n},"requireString"),a=t("format_version");if(a!==1)throw new v(`unsupported format_version ${a} (this build expects v1)`);return{advisoryCount:t("advisory_count"),bloomByteLen:t("bloom_byte_len"),bloomKHashes:t("bloom_k_hashes"),bloomMBits:t("bloom_m_bits"),builtAtRfc3339:r("built_at_rfc3339"),builtAtUnix:t("built_at_unix"),entryCount:t("entry_count"),filterSha256:r("filter_sha256"),formatVersion:a,setDigestSha256:r("set_digest_sha256"),sourceUrl:r("source_url"),targetFpr:t("target_fpr")}},"parseManifest"),C=s(async e=>{try{const o=await y(T(e),"utf8"),t=JSON.parse(o);return typeof t.setDigestSha256!="string"||typeof t.fetchedAtIso!="string"?void 0:{fetchedAtIso:t.fetchedAtIso,filterEtag:typeof t.filterEtag=="string"?t.filterEtag:void 0,setDigestSha256:t.setDigestSha256}}catch{return}},"readState"),A=s(async(e,o,t)=>{await _(R(e),Buffer.from(o,"utf8")),await _(T(e),Buffer.from(`${JSON.stringify(t,void 0,2)}
2
+ `,"utf8"))},"persistManifestAndState"),_=s(async(e,o)=>{await L(z(e),{recursive:!0});const t=`${e}.${process.pid}.${H()}.tmp`;try{await G(t,o),await J(t,e)}catch(r){throw await W(t).catch(()=>{}),r}},"atomicWrite"),rt=s(e=>F("sha256").update(e).digest("hex"),"sha256Hex"),$=s(e=>e.endsWith("/")?e:`${e}/`,"ensureTrailingSlash"),it=3e4,x=s(async(e,o)=>{try{return await fetch(e,{...o,signal:AbortSignal.timeout(it)})}catch(t){throw new S(e.toString(),t instanceof Error?t.message:String(t))}},"safeFetch");export{ut as D,ot as O,dt as g,ft as l,mt as p,ht as s};
@@ -1 +1 @@
1
- var wt=Object.defineProperty;var h=(e,r)=>wt(e,"name",{value:r,configurable:!0});import{createRequire as $t}from"node:module";import{i as ur,M as se,K as lr,O as cr,$ as Lt}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as St}from"./index-D9ZIw4ra.js";import{whichBin as Nt,detectPackageManager as At,execPmCommandInteractive as Pt,resolveInstall as Tt,resolveAdd as jt,resolveRemove as Ct,resolveDedupe as qt,resolveWhy as Dt,resolveOutdated as Mt,resolveLink as _t,resolveUnlink as Gt,resolveDlx as Ft,resolveExec as Ut,resolvePmCommand as xt}from"#native";const Ot=$t(import.meta.url),K=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,It=h(e=>{if(typeof K<"u"&&K.versions&&K.versions.node){const[r,t]=K.versions.node.split(".").map(Number);if(r>22||r===22&&t>=3||r===20&&t>=16)return K.getBuiltinModule(e)}return Ot(e)},"__cjs_getBuiltinModule"),{spawn:yt,spawnSync:kt}=It("node:child_process");var me,br;function ie(){return br||(br=1,me=process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{}),me}h(ie,"requireDebug");var de,Rr;function re(){return Rr||(Rr=1,de={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER||9007199254740991,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}),de}h(re,"requireConstants");var ae={exports:{}},wr;function te(){return wr||(wr=1,(function(e,r){var t=Object.defineProperty,i=h((k,A)=>t(k,"name",{value:A,configurable:!0}),"O");const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:a,MAX_LENGTH:o}=re(),m=ie();r=e.exports={};const p=r.re=[],f=r.safeRe=[],u=r.src=[],l=r.safeSrc=[],s=r.t={};let c=0;const g="[a-zA-Z0-9-]",w=[["\\s",1],["\\d",o],[g,a]],N=i(k=>{for(const[A,M]of w)k=k.split(`${A}*`).join(`${A}{0,${M}}`).split(`${A}+`).join(`${A}{1,${M}}`);return k},"makeSafeRegex"),v=i((k,A,M)=>{const T=N(A),_=c++;m(k,_,A),s[k]=_,u[_]=A,l[_]=T,p[_]=new RegExp(A,M?"g":void 0),f[_]=new RegExp(T,M?"g":void 0)},"createToken");v("NUMERICIDENTIFIER","0|[1-9]\\d*"),v("NUMERICIDENTIFIERLOOSE","\\d+"),v("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${g}*`),v("MAINVERSION",`(${u[s.NUMERICIDENTIFIER]})\\.(${u[s.NUMERICIDENTIFIER]})\\.(${u[s.NUMERICIDENTIFIER]})`),v("MAINVERSIONLOOSE",`(${u[s.NUMERICIDENTIFIERLOOSE]})\\.(${u[s.NUMERICIDENTIFIERLOOSE]})\\.(${u[s.NUMERICIDENTIFIERLOOSE]})`),v("PRERELEASEIDENTIFIER",`(?:${u[s.NONNUMERICIDENTIFIER]}|${u[s.NUMERICIDENTIFIER]})`),v("PRERELEASEIDENTIFIERLOOSE",`(?:${u[s.NONNUMERICIDENTIFIER]}|${u[s.NUMERICIDENTIFIERLOOSE]})`),v("PRERELEASE",`(?:-(${u[s.PRERELEASEIDENTIFIER]}(?:\\.${u[s.PRERELEASEIDENTIFIER]})*))`),v("PRERELEASELOOSE",`(?:-?(${u[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${u[s.PRERELEASEIDENTIFIERLOOSE]})*))`),v("BUILDIDENTIFIER",`${g}+`),v("BUILD",`(?:\\+(${u[s.BUILDIDENTIFIER]}(?:\\.${u[s.BUILDIDENTIFIER]})*))`),v("FULLPLAIN",`v?${u[s.MAINVERSION]}${u[s.PRERELEASE]}?${u[s.BUILD]}?`),v("FULL",`^${u[s.FULLPLAIN]}$`),v("LOOSEPLAIN",`[v=\\s]*${u[s.MAINVERSIONLOOSE]}${u[s.PRERELEASELOOSE]}?${u[s.BUILD]}?`),v("LOOSE",`^${u[s.LOOSEPLAIN]}$`),v("GTLT","((?:<|>)?=?)"),v("XRANGEIDENTIFIERLOOSE",`${u[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),v("XRANGEIDENTIFIER",`${u[s.NUMERICIDENTIFIER]}|x|X|\\*`),v("XRANGEPLAIN",`[v=\\s]*(${u[s.XRANGEIDENTIFIER]})(?:\\.(${u[s.XRANGEIDENTIFIER]})(?:\\.(${u[s.XRANGEIDENTIFIER]})(?:${u[s.PRERELEASE]})?${u[s.BUILD]}?)?)?`),v("XRANGEPLAINLOOSE",`[v=\\s]*(${u[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${u[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${u[s.XRANGEIDENTIFIERLOOSE]})(?:${u[s.PRERELEASELOOSE]})?${u[s.BUILD]}?)?)?`),v("XRANGE",`^${u[s.GTLT]}\\s*${u[s.XRANGEPLAIN]}$`),v("XRANGELOOSE",`^${u[s.GTLT]}\\s*${u[s.XRANGEPLAINLOOSE]}$`),v("COERCEPLAIN",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),v("COERCE",`${u[s.COERCEPLAIN]}(?:$|[^\\d])`),v("COERCEFULL",u[s.COERCEPLAIN]+`(?:${u[s.PRERELEASE]})?(?:${u[s.BUILD]})?(?:$|[^\\d])`),v("COERCERTL",u[s.COERCE],!0),v("COERCERTLFULL",u[s.COERCEFULL],!0),v("LONETILDE","(?:~>?)"),v("TILDETRIM",`(\\s*)${u[s.LONETILDE]}\\s+`,!0),r.tildeTrimReplace="$1~",v("TILDE",`^${u[s.LONETILDE]}${u[s.XRANGEPLAIN]}$`),v("TILDELOOSE",`^${u[s.LONETILDE]}${u[s.XRANGEPLAINLOOSE]}$`),v("LONECARET","(?:\\^)"),v("CARETTRIM",`(\\s*)${u[s.LONECARET]}\\s+`,!0),r.caretTrimReplace="$1^",v("CARET",`^${u[s.LONECARET]}${u[s.XRANGEPLAIN]}$`),v("CARETLOOSE",`^${u[s.LONECARET]}${u[s.XRANGEPLAINLOOSE]}$`),v("COMPARATORLOOSE",`^${u[s.GTLT]}\\s*(${u[s.LOOSEPLAIN]})$|^$`),v("COMPARATOR",`^${u[s.GTLT]}\\s*(${u[s.FULLPLAIN]})$|^$`),v("COMPARATORTRIM",`(\\s*)${u[s.GTLT]}\\s*(${u[s.LOOSEPLAIN]}|${u[s.XRANGEPLAIN]})`,!0),r.comparatorTrimReplace="$1$2$3",v("HYPHENRANGE",`^\\s*(${u[s.XRANGEPLAIN]})\\s+-\\s+(${u[s.XRANGEPLAIN]})\\s*$`),v("HYPHENRANGELOOSE",`^\\s*(${u[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${u[s.XRANGEPLAINLOOSE]})\\s*$`),v("STAR","(<|>)?=?\\s*\\*"),v("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),v("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(ae,ae.exports)),ae.exports}h(te,"requireRe");var ve,$r;function pr(){if($r)return ve;$r=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"t");const t=Object.freeze({loose:!0}),i=Object.freeze({});return ve=r(a=>a?typeof a!="object"?t:a:i,"parseOptions"),ve}h(pr,"requireParseOptions");var ge,Or;function ht(){if(Or)return ge;Or=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"s");const t=/^[0-9]+$/,i=r((a,o)=>{if(typeof a=="number"&&typeof o=="number")return a===o?0:a<o?-1:1;const m=t.test(a),p=t.test(o);return m&&p&&(a=+a,o=+o),a===o?0:m&&!p?-1:p&&!m?1:a<o?-1:1},"compareIdentifiers"),n=r((a,o)=>i(o,a),"rcompareIdentifiers");return ge={compareIdentifiers:i,rcompareIdentifiers:n},ge}h(ht,"requireIdentifiers");var Ee,Ir;function G(){if(Ir)return Ee;Ir=1;var e=Object.defineProperty,r=h((u,l)=>e(u,"name",{value:l,configurable:!0}),"a");const t=ie(),{MAX_LENGTH:i,MAX_SAFE_INTEGER:n}=re(),{safeRe:a,t:o}=te(),m=pr(),{compareIdentifiers:p}=ht();class f{static{h(this,"SemVer")}static{r(this,"SemVer")}constructor(l,s){if(s=m(s),l instanceof f){if(l.loose===!!s.loose&&l.includePrerelease===!!s.includePrerelease)return l;l=l.version}else if(typeof l!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof l}".`);if(l.length>i)throw new TypeError(`version is longer than ${i} characters`);t("SemVer",l,s),this.options=s,this.loose=!!s.loose,this.includePrerelease=!!s.includePrerelease;const c=l.trim().match(s.loose?a[o.LOOSE]:a[o.FULL]);if(!c)throw new TypeError(`Invalid Version: ${l}`);if(this.raw=l,this.major=+c[1],this.minor=+c[2],this.patch=+c[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");c[4]?this.prerelease=c[4].split(".").map(g=>{if(/^[0-9]+$/.test(g)){const w=+g;if(w>=0&&w<n)return w}return g}):this.prerelease=[],this.build=c[5]?c[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(l){if(t("SemVer.compare",this.version,this.options,l),!(l instanceof f)){if(typeof l=="string"&&l===this.version)return 0;l=new f(l,this.options)}return l.version===this.version?0:this.compareMain(l)||this.comparePre(l)}compareMain(l){return l instanceof f||(l=new f(l,this.options)),this.major<l.major?-1:this.major>l.major?1:this.minor<l.minor?-1:this.minor>l.minor?1:this.patch<l.patch?-1:this.patch>l.patch?1:0}comparePre(l){if(l instanceof f||(l=new f(l,this.options)),this.prerelease.length&&!l.prerelease.length)return-1;if(!this.prerelease.length&&l.prerelease.length)return 1;if(!this.prerelease.length&&!l.prerelease.length)return 0;let s=0;do{const c=this.prerelease[s],g=l.prerelease[s];if(t("prerelease compare",s,c,g),c===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(c===void 0)return-1;if(c!==g)return p(c,g)}while(++s)}compareBuild(l){l instanceof f||(l=new f(l,this.options));let s=0;do{const c=this.build[s],g=l.build[s];if(t("build compare",s,c,g),c===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(c===void 0)return-1;if(c!==g)return p(c,g)}while(++s)}inc(l,s,c){if(l.startsWith("pre")){if(!s&&c===!1)throw new Error("invalid increment argument: identifier is empty");if(s){const g=`-${s}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!g||g[1]!==s)throw new Error(`invalid identifier: ${s}`)}}switch(l){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",s,c);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",s,c);break;case"prepatch":this.prerelease.length=0,this.inc("patch",s,c),this.inc("pre",s,c);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",s,c),this.inc("pre",s,c);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{const g=Number(c)?1:0;if(this.prerelease.length===0)this.prerelease=[g];else{let w=this.prerelease.length;for(;--w>=0;)typeof this.prerelease[w]=="number"&&(this.prerelease[w]++,w=-2);if(w===-1){if(s===this.prerelease.join(".")&&c===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(g)}}if(s){let w=[s,g];c===!1&&(w=[s]),p(this.prerelease[0],s)===0?isNaN(this.prerelease[1])&&(this.prerelease=w):this.prerelease=w}break}default:throw new Error(`invalid increment argument: ${l}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}return Ee=f,Ee}h(G,"requireSemver$1");var be,yr;function W(){if(yr)return be;yr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=G();return be=r((n,a,o=!1)=>{if(n instanceof t)return n;try{return new t(n,a)}catch(m){if(!o)return null;throw m}},"parse"),be}h(W,"requireParse");var Re,kr;function Xt(){if(kr)return Re;kr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return Re=r((n,a)=>{const o=t(n,a);return o?o.version:null},"valid"),Re}h(Xt,"requireValid$1");var we,Lr;function Vt(){if(Lr)return we;Lr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return we=r((n,a)=>{const o=t(n.trim().replace(/^[=v]+/,""),a);return o?o.version:null},"clean"),we}h(Vt,"requireClean");var $e,Sr;function Bt(){if(Sr)return $e;Sr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"u");const t=G();return $e=r((n,a,o,m,p)=>{typeof o=="string"&&(p=m,m=o,o=void 0);try{return new t(n instanceof t?n.version:n,o).inc(a,m,p).version}catch{return null}},"inc"),$e}h(Bt,"requireInc");var Oe,Nr;function Wt(){if(Nr)return Oe;Nr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"u");const t=W();return Oe=r((n,a)=>{const o=t(n,null,!0),m=t(a,null,!0),p=o.compare(m);if(p===0)return null;const f=p>0,u=f?o:m,l=f?m:o,s=!!u.prerelease.length;if(l.prerelease.length&&!s){if(!l.patch&&!l.minor)return"major";if(l.compareMain(u)===0)return l.minor&&!l.patch?"minor":"patch"}const c=s?"pre":"";return o.major!==m.major?c+"major":o.minor!==m.minor?c+"minor":o.patch!==m.patch?c+"patch":"prerelease"},"diff"),Oe}h(Wt,"requireDiff");var Ie,Ar;function Ht(){if(Ar)return Ie;Ar=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=G();return Ie=r((n,a)=>new t(n,a).major,"major"),Ie}h(Ht,"requireMajor");var ye,Pr;function Yt(){if(Pr)return ye;Pr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=G();return ye=r((n,a)=>new t(n,a).minor,"minor"),ye}h(Yt,"requireMinor");var ke,Tr;function zt(){if(Tr)return ke;Tr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=G();return ke=r((n,a)=>new t(n,a).patch,"patch"),ke}h(zt,"requirePatch");var Le,jr;function Jt(){if(jr)return Le;jr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return Le=r((n,a)=>{const o=t(n,a);return o&&o.prerelease.length?o.prerelease:null},"prerelease"),Le}h(Jt,"requirePrerelease");var Se,Cr;function X(){if(Cr)return Se;Cr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"c");const t=G();return Se=r((n,a,o)=>new t(n,o).compare(new t(a,o)),"compare"),Se}h(X,"requireCompare");var Ne,qr;function Zt(){if(qr)return Ne;qr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"o");const t=X();return Ne=r((n,a,o)=>t(a,n,o),"rcompare"),Ne}h(Zt,"requireRcompare");var Ae,Dr;function Kt(){if(Dr)return Ae;Dr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ae=r((n,a)=>t(n,a,!0),"compareLoose"),Ae}h(Kt,"requireCompareLoose");var Pe,Mr;function fr(){if(Mr)return Pe;Mr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"o");const t=G();return Pe=r((n,a,o)=>{const m=new t(n,o),p=new t(a,o);return m.compare(p)||m.compareBuild(p)},"compareBuild"),Pe}h(fr,"requireCompareBuild");var Te,_r;function Qt(){if(_r)return Te;_r=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"e");const t=fr();return Te=r((n,a)=>n.sort((o,m)=>t(o,m,a)),"sort"),Te}h(Qt,"requireSort");var je,Gr;function en(){if(Gr)return je;Gr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"e");const t=fr();return je=r((n,a)=>n.sort((o,m)=>t(m,o,a)),"rsort"),je}h(en,"requireRsort");var Ce,Fr;function oe(){if(Fr)return Ce;Fr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ce=r((n,a,o)=>t(n,a,o)>0,"gt"),Ce}h(oe,"requireGt");var qe,Ur;function hr(){if(Ur)return qe;Ur=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return qe=r((n,a,o)=>t(n,a,o)<0,"lt"),qe}h(hr,"requireLt");var De,xr;function mt(){if(xr)return De;xr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return De=r((n,a,o)=>t(n,a,o)===0,"eq"),De}h(mt,"requireEq");var Me,Xr;function dt(){if(Xr)return Me;Xr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Me=r((n,a,o)=>t(n,a,o)!==0,"neq"),Me}h(dt,"requireNeq");var _e,Vr;function mr(){if(Vr)return _e;Vr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return _e=r((n,a,o)=>t(n,a,o)>=0,"gte"),_e}h(mr,"requireGte");var Ge,Br;function dr(){if(Br)return Ge;Br=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ge=r((n,a,o)=>t(n,a,o)<=0,"lte"),Ge}h(dr,"requireLte");var Fe,Wr;function vt(){if(Wr)return Fe;Wr=1;var e=Object.defineProperty,r=h((f,u)=>e(f,"name",{value:u,configurable:!0}),"n");const t=mt(),i=dt(),n=oe(),a=mr(),o=hr(),m=dr();return Fe=r((f,u,l,s)=>{switch(u){case"===":return typeof f=="object"&&(f=f.version),typeof l=="object"&&(l=l.version),f===l;case"!==":return typeof f=="object"&&(f=f.version),typeof l=="object"&&(l=l.version),f!==l;case"":case"=":case"==":return t(f,l,s);case"!=":return i(f,l,s);case">":return n(f,l,s);case">=":return a(f,l,s);case"<":return o(f,l,s);case"<=":return m(f,l,s);default:throw new TypeError(`Invalid operator: ${u}`)}},"cmp"),Fe}h(vt,"requireCmp");var Ue,Hr;function rn(){if(Hr)return Ue;Hr=1;var e=Object.defineProperty,r=h((m,p)=>e(m,"name",{value:p,configurable:!0}),"u");const t=G(),i=W(),{safeRe:n,t:a}=te();return Ue=r((m,p)=>{if(m instanceof t)return m;if(typeof m=="number"&&(m=String(m)),typeof m!="string")return null;p=p||{};let f=null;if(!p.rtl)f=m.match(p.includePrerelease?n[a.COERCEFULL]:n[a.COERCE]);else{const w=p.includePrerelease?n[a.COERCERTLFULL]:n[a.COERCERTL];let N;for(;(N=w.exec(m))&&(!f||f.index+f[0].length!==m.length);)(!f||N.index+N[0].length!==f.index+f[0].length)&&(f=N),w.lastIndex=N.index+N[1].length+N[2].length;w.lastIndex=-1}if(f===null)return null;const u=f[2],l=f[3]||"0",s=f[4]||"0",c=p.includePrerelease&&f[5]?`-${f[5]}`:"",g=p.includePrerelease&&f[6]?`+${f[6]}`:"";return i(`${u}.${l}.${s}${c}${g}`,p)},"coerce"),Ue}h(rn,"requireCoerce");var xe,Yr;function tn(){if(Yr)return xe;Yr=1;var e=Object.defineProperty,r=h((f,u)=>e(f,"name",{value:u,configurable:!0}),"t");const t=W(),i=re(),n=G(),a=r((f,u,l)=>{if(!i.RELEASE_TYPES.includes(u))return null;const s=o(f,l);return s&&m(s,u)},"truncate"),o=r((f,u)=>{const l=f instanceof n?f.version:f;return t(l,u)},"cloneInputVersion"),m=r((f,u)=>{if(p(u))return f.version;switch(f.prerelease=[],u){case"major":f.minor=0,f.patch=0;break;case"minor":f.patch=0;break}return f.format()},"doTruncation"),p=r(f=>f.startsWith("pre"),"isPrerelease");return xe=a,xe}h(tn,"requireTruncate");var Xe,zr;function nn(){if(zr)return Xe;zr=1;var e=Object.defineProperty,r=h((i,n)=>e(i,"name",{value:n,configurable:!0}),"i");class t{static{h(this,"LRUCache")}static{r(this,"LRUCache")}constructor(){this.max=1e3,this.map=new Map}get(n){const a=this.map.get(n);if(a!==void 0)return this.map.delete(n),this.map.set(n,a),a}delete(n){return this.map.delete(n)}set(n,a){if(!this.delete(n)&&a!==void 0){if(this.map.size>=this.max){const o=this.map.keys().next().value;this.delete(o)}this.map.set(n,a)}return this}}return Xe=t,Xe}h(nn,"requireLrucache");var Ve,Jr;function V(){if(Jr)return Ve;Jr=1;var e=Object.defineProperty,r=h((E,d)=>e(E,"name",{value:d,configurable:!0}),"o");const t=/\s+/g;class i{static{h(this,"Range")}static{r(this,"Range")}constructor(d,$){if($=o($),d instanceof i)return d.loose===!!$.loose&&d.includePrerelease===!!$.includePrerelease?d:new i(d.raw,$);if(d instanceof m)return this.raw=d.value,this.set=[[d]],this.formatted=void 0,this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=d.trim().replace(t," "),this.set=this.raw.split("||").map(b=>this.parseRange(b.trim())).filter(b=>b.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const b=this.set[0];if(this.set=this.set.filter(O=>!v(O[0])),this.set.length===0)this.set=[b];else if(this.set.length>1){for(const O of this.set)if(O.length===1&&k(O[0])){this.set=[O];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let d=0;d<this.set.length;d++){d>0&&(this.formatted+="||");const $=this.set[d];for(let b=0;b<$.length;b++)b>0&&(this.formatted+=" "),this.formatted+=$[b].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(d){const $=((this.options.includePrerelease&&w)|(this.options.loose&&N))+":"+d,b=a.get($);if(b)return b;const O=this.options.loose,R=O?u[l.HYPHENRANGELOOSE]:u[l.HYPHENRANGE];d=d.replace(R,fe(this.options.includePrerelease)),p("hyphen replace",d),d=d.replace(u[l.COMPARATORTRIM],s),p("comparator trim",d),d=d.replace(u[l.TILDETRIM],c),p("tilde trim",d),d=d.replace(u[l.CARETTRIM],g),p("caret trim",d);let I=d.split(" ").map(q=>M(q,this.options)).join(" ").split(/\s+/).map(q=>pe(q,this.options));O&&(I=I.filter(q=>(p("loose invalid filter",q,this.options),!!q.match(u[l.COMPARATORLOOSE])))),p("range list",I);const P=new Map,S=I.map(q=>new m(q,this.options));for(const q of S){if(v(q))return[q];P.set(q.value,q)}P.size>1&&P.has("")&&P.delete("");const j=[...P.values()];return a.set($,j),j}intersects(d,$){if(!(d instanceof i))throw new TypeError("a Range is required");return this.set.some(b=>A(b,$)&&d.set.some(O=>A(O,$)&&b.every(R=>O.every(I=>R.intersects(I,$)))))}test(d){if(!d)return!1;if(typeof d=="string")try{d=new f(d,this.options)}catch{return!1}for(let $=0;$<this.set.length;$++)if(he(this.set[$],d,this.options))return!0;return!1}}Ve=i;const n=nn(),a=new n,o=pr(),m=ue(),p=ie(),f=G(),{safeRe:u,t:l,comparatorTrimReplace:s,tildeTrimReplace:c,caretTrimReplace:g}=te(),{FLAG_INCLUDE_PRERELEASE:w,FLAG_LOOSE:N}=re(),v=r(E=>E.value==="<0.0.0-0","isNullSet"),k=r(E=>E.value==="","isAny"),A=r((E,d)=>{let $=!0;const b=E.slice();let O=b.pop();for(;$&&b.length;)$=b.every(R=>O.intersects(R,d)),O=b.pop();return $},"isSatisfiable"),M=r((E,d)=>(E=E.replace(u[l.BUILD],""),p("comp",E,d),E=C(E,d),p("caret",E),E=_(E,d),p("tildes",E),E=y(E,d),p("xrange",E),E=ce(E,d),p("stars",E),E),"parseComparator"),T=r(E=>!E||E.toLowerCase()==="x"||E==="*","isX"),_=r((E,d)=>E.trim().split(/\s+/).map($=>F($,d)).join(" "),"replaceTildes"),F=r((E,d)=>{const $=d.loose?u[l.TILDELOOSE]:u[l.TILDE];return E.replace($,(b,O,R,I,P)=>{p("tilde",E,b,O,R,I,P);let S;return T(O)?S="":T(R)?S=`>=${O}.0.0 <${+O+1}.0.0-0`:T(I)?S=`>=${O}.${R}.0 <${O}.${+R+1}.0-0`:P?(p("replaceTilde pr",P),S=`>=${O}.${R}.${I}-${P} <${O}.${+R+1}.0-0`):S=`>=${O}.${R}.${I} <${O}.${+R+1}.0-0`,p("tilde return",S),S})},"replaceTilde"),C=r((E,d)=>E.trim().split(/\s+/).map($=>D($,d)).join(" "),"replaceCarets"),D=r((E,d)=>{p("caret",E,d);const $=d.loose?u[l.CARETLOOSE]:u[l.CARET],b=d.includePrerelease?"-0":"";return E.replace($,(O,R,I,P,S)=>{p("caret",E,O,R,I,P,S);let j;return T(R)?j="":T(I)?j=`>=${R}.0.0${b} <${+R+1}.0.0-0`:T(P)?R==="0"?j=`>=${R}.${I}.0${b} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.0${b} <${+R+1}.0.0-0`:S?(p("replaceCaret pr",S),R==="0"?I==="0"?j=`>=${R}.${I}.${P}-${S} <${R}.${I}.${+P+1}-0`:j=`>=${R}.${I}.${P}-${S} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.${P}-${S} <${+R+1}.0.0-0`):(p("no pr"),R==="0"?I==="0"?j=`>=${R}.${I}.${P}${b} <${R}.${I}.${+P+1}-0`:j=`>=${R}.${I}.${P}${b} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.${P} <${+R+1}.0.0-0`),p("caret return",j),j})},"replaceCaret"),y=r((E,d)=>(p("replaceXRanges",E,d),E.split(/\s+/).map($=>J($,d)).join(" ")),"replaceXRanges"),J=r((E,d)=>{E=E.trim();const $=d.loose?u[l.XRANGELOOSE]:u[l.XRANGE];return E.replace($,(b,O,R,I,P,S)=>{p("xRange",E,b,O,R,I,P,S);const j=T(R),q=j||T(I),z=q||T(P),Z=z;return O==="="&&Z&&(O=""),S=d.includePrerelease?"-0":"",j?O===">"||O==="<"?b="<0.0.0-0":b="*":O&&Z?(q&&(I=0),P=0,O===">"?(O=">=",q?(R=+R+1,I=0,P=0):(I=+I+1,P=0)):O==="<="&&(O="<",q?R=+R+1:I=+I+1),O==="<"&&(S="-0"),b=`${O+R}.${I}.${P}${S}`):q?b=`>=${R}.0.0${S} <${+R+1}.0.0-0`:z&&(b=`>=${R}.${I}.0${S} <${R}.${+I+1}.0-0`),p("xRange return",b),b})},"replaceXRange"),ce=r((E,d)=>(p("replaceStars",E,d),E.trim().replace(u[l.STAR],"")),"replaceStars"),pe=r((E,d)=>(p("replaceGTE0",E,d),E.trim().replace(u[d.includePrerelease?l.GTE0PRE:l.GTE0],"")),"replaceGTE0"),fe=r(E=>(d,$,b,O,R,I,P,S,j,q,z,Z)=>(T(b)?$="":T(O)?$=`>=${b}.0.0${E?"-0":""}`:T(R)?$=`>=${b}.${O}.0${E?"-0":""}`:I?$=`>=${$}`:$=`>=${$}${E?"-0":""}`,T(j)?S="":T(q)?S=`<${+j+1}.0.0-0`:T(z)?S=`<${j}.${+q+1}.0-0`:Z?S=`<=${j}.${q}.${z}-${Z}`:E?S=`<${j}.${q}.${+z+1}-0`:S=`<=${S}`,`${$} ${S}`.trim()),"hyphenReplace"),he=r((E,d,$)=>{for(let b=0;b<E.length;b++)if(!E[b].test(d))return!1;if(d.prerelease.length&&!$.includePrerelease){for(let b=0;b<E.length;b++)if(p(E[b].semver),E[b].semver!==m.ANY&&E[b].semver.prerelease.length>0){const O=E[b].semver;if(O.major===d.major&&O.minor===d.minor&&O.patch===d.patch)return!0}return!1}return!0},"testSet");return Ve}h(V,"requireRange");var Be,Zr;function ue(){if(Zr)return Be;Zr=1;var e=Object.defineProperty,r=h((l,s)=>e(l,"name",{value:s,configurable:!0}),"i");const t=Symbol("SemVer ANY");class i{static{h(this,"Comparator")}static{r(this,"Comparator")}static get ANY(){return t}constructor(s,c){if(c=n(c),s instanceof i){if(s.loose===!!c.loose)return s;s=s.value}s=s.trim().split(/\s+/).join(" "),p("comparator",s,c),this.options=c,this.loose=!!c.loose,this.parse(s),this.semver===t?this.value="":this.value=this.operator+this.semver.version,p("comp",this)}parse(s){const c=this.options.loose?a[o.COMPARATORLOOSE]:a[o.COMPARATOR],g=s.match(c);if(!g)throw new TypeError(`Invalid comparator: ${s}`);this.operator=g[1]!==void 0?g[1]:"",this.operator==="="&&(this.operator=""),g[2]?this.semver=new f(g[2],this.options.loose):this.semver=t}toString(){return this.value}test(s){if(p("Comparator.test",s,this.options.loose),this.semver===t||s===t)return!0;if(typeof s=="string")try{s=new f(s,this.options)}catch{return!1}return m(s,this.operator,this.semver,this.options)}intersects(s,c){if(!(s instanceof i))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new u(s.value,c).test(this.value):s.operator===""?s.value===""?!0:new u(this.value,c).test(s.semver):(c=n(c),c.includePrerelease&&(this.value==="<0.0.0-0"||s.value==="<0.0.0-0")||!c.includePrerelease&&(this.value.startsWith("<0.0.0")||s.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&s.operator.startsWith(">")||this.operator.startsWith("<")&&s.operator.startsWith("<")||this.semver.version===s.semver.version&&this.operator.includes("=")&&s.operator.includes("=")||m(this.semver,"<",s.semver,c)&&this.operator.startsWith(">")&&s.operator.startsWith("<")||m(this.semver,">",s.semver,c)&&this.operator.startsWith("<")&&s.operator.startsWith(">")))}}Be=i;const n=pr(),{safeRe:a,t:o}=te(),m=vt(),p=ie(),f=G(),u=V();return Be}h(ue,"requireComparator");var We,Kr;function le(){if(Kr)return We;Kr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=V();return We=r((n,a,o)=>{try{a=new t(a,o)}catch{return!1}return a.test(n)},"satisfies"),We}h(le,"requireSatisfies");var He,Qr;function an(){if(Qr)return He;Qr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=V();return He=r((n,a)=>new t(n,a).set.map(o=>o.map(m=>m.value).join(" ").trim().split(" ")),"toComparators"),He}h(an,"requireToComparators");var Ye,et;function sn(){if(et)return Ye;et=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"c");const t=G(),i=V();return Ye=r((a,o,m)=>{let p=null,f=null,u=null;try{u=new i(o,m)}catch{return null}return a.forEach(l=>{u.test(l)&&(!p||f.compare(l)===-1)&&(p=l,f=new t(p,m))}),p},"maxSatisfying"),Ye}h(sn,"requireMaxSatisfying");var ze,rt;function on(){if(rt)return ze;rt=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"u");const t=G(),i=V();return ze=r((a,o,m)=>{let p=null,f=null,u=null;try{u=new i(o,m)}catch{return null}return a.forEach(l=>{u.test(l)&&(!p||f.compare(l)===1)&&(p=l,f=new t(p,m))}),p},"minSatisfying"),ze}h(on,"requireMinSatisfying");var Je,tt;function un(){if(tt)return Je;tt=1;var e=Object.defineProperty,r=h((o,m)=>e(o,"name",{value:m,configurable:!0}),"i");const t=G(),i=V(),n=oe();return Je=r((o,m)=>{o=new i(o,m);let p=new t("0.0.0");if(o.test(p)||(p=new t("0.0.0-0"),o.test(p)))return p;p=null;for(let f=0;f<o.set.length;++f){const u=o.set[f];let l=null;u.forEach(s=>{const c=new t(s.semver.version);switch(s.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!l||n(c,l))&&(l=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),l&&(!p||n(p,l))&&(p=l)}return p&&o.test(p)?p:null},"minVersion"),Je}h(un,"requireMinVersion");var Ze,nt;function ln(){if(nt)return Ze;nt=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"n");const t=V();return Ze=r((n,a)=>{try{return new t(n,a).range||"*"}catch{return null}},"validRange"),Ze}h(ln,"requireValid");var Ke,at;function vr(){if(at)return Ke;at=1;var e=Object.defineProperty,r=h((s,c)=>e(s,"name",{value:c,configurable:!0}),"m");const t=G(),i=ue(),{ANY:n}=i,a=V(),o=le(),m=oe(),p=hr(),f=dr(),u=mr();return Ke=r((s,c,g,w)=>{s=new t(s,w),c=new a(c,w);let N,v,k,A,M;switch(g){case">":N=m,v=f,k=p,A=">",M=">=";break;case"<":N=p,v=u,k=m,A="<",M="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(o(s,c,w))return!1;for(let T=0;T<c.set.length;++T){const _=c.set[T];let F=null,C=null;if(_.forEach(D=>{D.semver===n&&(D=new i(">=0.0.0")),F=F||D,C=C||D,N(D.semver,F.semver,w)?F=D:k(D.semver,C.semver,w)&&(C=D)}),F.operator===A||F.operator===M||(!C.operator||C.operator===A)&&v(s,C.semver)||C.operator===M&&k(s,C.semver))return!1}return!0},"outside"),Ke}h(vr,"requireOutside");var Qe,st;function cn(){if(st)return Qe;st=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"s");const t=vr();return Qe=r((n,a,o)=>t(n,a,">",o),"gtr"),Qe}h(cn,"requireGtr");var er,it;function pn(){if(it)return er;it=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"s");const t=vr();return er=r((n,a,o)=>t(n,a,"<",o),"ltr"),er}h(pn,"requireLtr");var rr,ot;function fn(){if(ot)return rr;ot=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"n");const t=V();return rr=r((n,a,o)=>(n=new t(n,o),a=new t(a,o),n.intersects(a,o)),"intersects"),rr}h(fn,"requireIntersects");var tr,ut;function hn(){if(ut)return tr;ut=1;const e=le(),r=X();return tr=h((t,i,n)=>{const a=[];let o=null,m=null;const p=t.sort((s,c)=>r(s,c,n));for(const s of p)e(s,i,n)?(m=s,o||(o=s)):(m&&a.push([o,m]),m=null,o=null);o&&a.push([o,null]);const f=[];for(const[s,c]of a)s===c?f.push(s):!c&&s===p[0]?f.push("*"):c?s===p[0]?f.push(`<=${c}`):f.push(`${s} - ${c}`):f.push(`>=${s}`);const u=f.join(" || "),l=typeof i.raw=="string"?i.raw:String(i);return u.length<l.length?u:i},"simplify"),tr}h(hn,"requireSimplify");var nr,lt;function mn(){if(lt)return nr;lt=1;var e=Object.defineProperty,r=h((c,g)=>e(c,"name",{value:g,configurable:!0}),"u");const t=V(),i=ue(),{ANY:n}=i,a=le(),o=X(),m=r((c,g,w={})=>{if(c===g)return!0;c=new t(c,w),g=new t(g,w);let N=!1;e:for(const v of c.set){for(const k of g.set){const A=u(v,k,w);if(N=N||A!==null,A)continue e}if(N)return!1}return!0},"subset"),p=[new i(">=0.0.0-0")],f=[new i(">=0.0.0")],u=r((c,g,w)=>{if(c===g)return!0;if(c.length===1&&c[0].semver===n){if(g.length===1&&g[0].semver===n)return!0;w.includePrerelease?c=p:c=f}if(g.length===1&&g[0].semver===n){if(w.includePrerelease)return!0;g=f}const N=new Set;let v,k;for(const y of c)y.operator===">"||y.operator===">="?v=l(v,y,w):y.operator==="<"||y.operator==="<="?k=s(k,y,w):N.add(y.semver);if(N.size>1)return null;let A;if(v&&k&&(A=o(v.semver,k.semver,w),A>0||A===0&&(v.operator!==">="||k.operator!=="<=")))return null;for(const y of N){if(v&&!a(y,String(v),w)||k&&!a(y,String(k),w))return null;for(const J of g)if(!a(y,String(J),w))return!1;return!0}let M,T,_,F,C=k&&!w.includePrerelease&&k.semver.prerelease.length?k.semver:!1,D=v&&!w.includePrerelease&&v.semver.prerelease.length?v.semver:!1;C&&C.prerelease.length===1&&k.operator==="<"&&C.prerelease[0]===0&&(C=!1);for(const y of g){if(F=F||y.operator===">"||y.operator===">=",_=_||y.operator==="<"||y.operator==="<=",v){if(D&&y.semver.prerelease&&y.semver.prerelease.length&&y.semver.major===D.major&&y.semver.minor===D.minor&&y.semver.patch===D.patch&&(D=!1),y.operator===">"||y.operator===">="){if(M=l(v,y,w),M===y&&M!==v)return!1}else if(v.operator===">="&&!a(v.semver,String(y),w))return!1}if(k){if(C&&y.semver.prerelease&&y.semver.prerelease.length&&y.semver.major===C.major&&y.semver.minor===C.minor&&y.semver.patch===C.patch&&(C=!1),y.operator==="<"||y.operator==="<="){if(T=s(k,y,w),T===y&&T!==k)return!1}else if(k.operator==="<="&&!a(k.semver,String(y),w))return!1}if(!y.operator&&(k||v)&&A!==0)return!1}return!(v&&_&&!k&&A!==0||k&&F&&!v&&A!==0||D||C)},"simpleSubset"),l=r((c,g,w)=>{if(!c)return g;const N=o(c.semver,g.semver,w);return N>0?c:N<0||g.operator===">"&&c.operator===">="?g:c},"higherGT"),s=r((c,g,w)=>{if(!c)return g;const N=o(c.semver,g.semver,w);return N<0?c:N>0||g.operator==="<"&&c.operator==="<="?g:c},"lowerLT");return nr=m,nr}h(mn,"requireSubset");var ar,ct;function dn(){if(ct)return ar;ct=1;const e=te(),r=re(),t=G(),i=ht(),n=W(),a=Xt(),o=Vt(),m=Bt(),p=Wt(),f=Ht(),u=Yt(),l=zt(),s=Jt(),c=X(),g=Zt(),w=Kt(),N=fr(),v=Qt(),k=en(),A=oe(),M=hr(),T=mt(),_=dt(),F=mr(),C=dr(),D=vt(),y=rn(),J=tn(),ce=ue(),pe=V(),fe=le(),he=an(),E=sn(),d=on(),$=un(),b=ln(),O=vr(),R=cn(),I=pn(),P=fn(),S=hn(),j=mn();return ar={parse:n,valid:a,clean:o,inc:m,diff:p,major:f,minor:u,patch:l,prerelease:s,compare:c,rcompare:g,compareLoose:w,compareBuild:N,sort:v,rsort:k,gt:A,lt:M,eq:T,neq:_,gte:F,lte:C,cmp:D,coerce:y,truncate:J,Comparator:ce,Range:pe,satisfies:fe,toComparators:he,maxSatisfying:E,minSatisfying:d,minVersion:$,validRange:b,outside:O,gtr:R,ltr:I,intersects:P,simplifyRange:S,subset:j,SemVer:t,re:e.re,src:e.src,tokens:e.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:i.compareIdentifiers,rcompareIdentifiers:i.rcompareIdentifiers},ar}h(dn,"requireSemver");var ee=dn();const na=St(ee);var vn=Object.defineProperty,x=h((e,r)=>vn(e,"name",{value:r,configurable:!0}),"n");const H=x((e,r,t,i)=>{for(const n of r)e.push("--filter",n);t&&e.push("--recursive"),i&&e.push("--workspace-root")},"pushFilterGlobals"),gn=x(e=>{const r=[],t=[];return H(r,e.filter,e.recursive,e.workspaceRoot),e.silent&&r.push("--silent"),e.frozenLockfile&&r.push("--frozen-lockfile"),r.push("install"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.force&&r.push("--force"),e.ignoreScripts&&r.push("--ignore-scripts"),e.lockfileOnly&&r.push("--lockfile-only"),e.noOptional&&r.push("--no-optional"),e.offline&&r.push("--offline"),{args:r,bin:"aube",warnings:t}},"resolveAubeInstall"),En=x(e=>{const r=[],t=[];return H(r,e.filter,!1,!1),r.push("add"),e.saveDev&&r.push("--save-dev"),e.exact&&r.push("--save-exact"),e.global&&r.push("--global"),e.optional&&r.push("--save-optional"),e.peer&&r.push("--save-peer"),e.workspace&&t.push("aube has no flag for the `workspace:` protocol; it auto-detects local workspace members during add. Ignoring --workspace."),e.workspaceRoot&&r.push("--workspace"),r.push(...e.packages),{args:r,bin:"aube",warnings:t}},"resolveAubeAdd"),bn=x(e=>{const r=[];return H(r,e.filter,e.recursive,!1),r.push("remove"),e.saveDev&&r.push("--save-dev"),e.global&&r.push("--global"),e.workspaceRoot&&r.push("--workspace"),r.push(...e.packages),{args:r,bin:"aube",warnings:[]}},"resolveAubeRemove"),Rn=x(e=>{const r=["dedupe"];return e&&r.push("--check"),{args:r,bin:"aube",warnings:[]}},"resolveAubeDedupe"),wn=x(e=>{const r=[],t=[];H(r,e.filter,e.recursive,!1),r.push("why"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.json&&r.push("--json"),e.long&&r.push("--long"),e.parseable&&r.push("--parseable"),e.depth!==void 0&&t.push("aube why does not accept --depth; ignoring."),e.noOptional&&t.push("aube why does not accept --no-optional; ignoring."),e.global&&t.push("aube why does not accept --global; ignoring.");const[i,...n]=e.packages;return i===void 0?t.push("aube why requires a package name; none provided."):(n.length>0&&t.push("aube why takes a single package; using the first."),r.push(i)),{args:r,bin:"aube",warnings:t}},"resolveAubeWhy"),$n=x(e=>{const r=[],t=[];e.workspaceRoot&&t.push("aube outdated has no `--include-workspace-root` equivalent. Run `vis outdated` separately at the workspace root if you need its outdated list."),H(r,e.filter,e.recursive,!1),r.push("outdated"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.long&&r.push("--long"),e.format==="json"?r.push("--json"):e.format&&e.format!=="table"&&t.push(`aube outdated does not support format "${e.format}"; falling back to default table output.`),e.compatible&&t.push("aube outdated does not accept --compatible; ignoring."),e.noOptional&&t.push("aube outdated does not accept --no-optional; ignoring."),e.global&&t.push("aube outdated does not accept --global; ignoring.");const[i,...n]=e.packages;return i!==void 0&&(n.length>0&&t.push("aube outdated takes a single pattern argument; using the first."),r.push(i)),{args:r,bin:"aube",warnings:t}},"resolveAubeOutdated"),On=x(e=>{const r=[];e.silent&&r.push("--silent"),r.push("dlx");for(const t of e.additionalPackages)r.push("--package",t);return e.shellMode&&r.push("--shell-mode"),r.push(e.package),r.push(...e.args),{args:r,bin:"aube",warnings:[]}},"resolveAubeDlx"),In=x(e=>{const r=[];return H(r,e.filter,e.recursive,e.workspaceRoot),r.push("exec"),e.parallel&&r.push("--parallel"),e.reverse&&r.push("--reverse"),e.shellMode&&r.push("--shell-mode"),r.push(e.command),r.push(...e.args),{args:r,bin:"aube",warnings:[]}},"resolveAubeExec"),yn=x(e=>{const r=["link"];return e!==null&&r.push(e),{args:r,bin:"aube",warnings:[]}},"resolveAubeLink"),kn=x((e,r)=>{const t=[],i=[];return r&&t.push("--recursive"),t.push("unlink"),e.length>1&&i.push("aube unlink takes a single package; using the first."),e.length>0&&t.push(e[0]),{args:t,bin:"aube",warnings:i}},"resolveAubeUnlink"),Ln=x(e=>{const r=["view","--",e.package],t=[],[i,...n]=e.fields;return i!==void 0?(n.length>0&&t.push("aube view only supports a single field; using the first."),e.json&&t.push("aube view does not support --json with a field selector; printing the field without --json."),r.push(i)):e.json&&r.push("--json"),{args:r,bin:"aube",warnings:t}},"resolveAubeInfo"),aa=x(e=>{const r=[],t=[];return H(r,e.filters,e.recursive,e.workspaceRoot),r.push("update"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.global&&r.push("--global"),e.interactive&&r.push("--interactive"),e.latest&&r.push("--latest"),e.noOptional&&r.push("--no-optional"),e.noSave&&r.push("--no-save"),r.push(...e.packages),{args:r,bin:"aube",warnings:t}},"resolveAubeUpdate"),Sn=new Set(["fund","ping","search","token"]),Nn=x((e,r)=>Sn.has(e)?{args:[e,...r],bin:"npm",warnings:[`'${e}' is not natively supported by aube. Delegating to npm.`]}:{args:[e,...r],bin:"aube",warnings:[]},"resolveAubePmCommand");var An=Object.defineProperty,ir=h((e,r)=>An(e,"name",{value:r,configurable:!0}),"r");const pt=256*1024,Pn=ir(e=>{const r=e?{...process.env,...e}:{...process.env};return process.stderr.isTTY&&r.FORCE_COLOR===void 0&&r.NO_COLOR===void 0&&(r.FORCE_COLOR="1"),r},"buildChildEnv"),Tn=ir(async(e,r,t)=>new Promise((i,n)=>{const a=yt(e,[...r],{cwd:t.cwd,env:Pn(t.env),shell:process.platform==="win32",stdio:["inherit","pipe","pipe"],windowsHide:!0});let o="";const m=ir(p=>{const f=p.toString("utf8");if(o.length+f.length<=pt){o+=f;return}const u=o+f;o=u.slice(u.length-pt)},"append");a.stdout?.on("data",p=>{process.stdout.write(p),m(p)}),a.stderr?.on("data",p=>{process.stderr.write(p),m(p)}),a.on("error",n),a.on("close",p=>{i({code:p??1,output:o})})}),"spawnTee");var jn=Object.defineProperty,ne=h((e,r)=>jn(e,"name",{value:r,configurable:!0}),"a");const Q=ne(e=>{const r=ee.coerce(e);return r?ee.gte(r,"11.0.0"):!1},"isPnpm11Plus"),B=ne(e=>e.name==="yarn"&&!e.version.startsWith("1."),"isYarnBerry"),sr=ne(e=>e.name==="yarn"&&e.version.startsWith("1."),"isYarn1"),Cn=ne(e=>e[0]==="rm"?["remove",...e.slice(1)]:e,"rewriteRmToRemove"),qn=ne((e,r,t)=>{switch(r){case"audit":return B(e)?{args:["npm","audit",...t],bin:"yarn",kind:"rewrite"}:{kind:"passthrough"};case"config":{if(B(e)){const[i,...n]=t;return i==="delete"?{args:["config","unset",...n],bin:"yarn",kind:"rewrite",warning:"yarn berry uses `config unset`, not `config delete`."}:{kind:"passthrough"}}return e.name==="bun"?{kind:"skip",warning:"bun has no `config` CLI. Edit bunfig.toml or .npmrc directly."}:e.name==="deno"?{kind:"skip",warning:"deno has no registry-config CLI. Edit deno.json directly."}:{kind:"passthrough"}}case"dist-tag":return sr(e)?{args:["tag",...t],bin:"yarn",kind:"rewrite",warning:"yarn 1 has no `dist-tag`; using `yarn tag`."}:B(e)?{args:["npm","tag",...Cn(t)],bin:"yarn",kind:"rewrite"}:e.name==="bun"||e.name==="deno"?{kind:"skip",warning:`${e.name} has no \`dist-tag\`. Use \`npm dist-tag\` instead.`}:{kind:"passthrough"};case"login":case"logout":return B(e)?{args:["npm",r,...t],bin:"yarn",kind:"rewrite"}:e.name==="bun"?{args:[r,...t],bin:"npm",kind:"rewrite",warning:`bun has no \`${r}\`; falling back to \`npm ${r}\` (writes ~/.npmrc, which bun reads).`}:e.name==="deno"?{kind:"skip",warning:`deno has no \`${r}\`. JSR uses browser OAuth via \`deno publish\`.`}:{kind:"passthrough"};case"owner":return e.name==="pnpm"&&Q(e.version)?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `owner`; falling back to `npm owner`."}:B(e)?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"yarn berry has no `owner` (not in `yarn npm`); falling back to `npm owner`."}:e.name==="bun"?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"bun has no `owner`; falling back to `npm owner`."}:e.name==="deno"?{kind:"skip",warning:"deno has no `owner`. JSR uses scope-member roles via the web UI."}:{kind:"passthrough"};case"ping":return e.name==="pnpm"&&Q(e.version)?{args:["ping",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `ping`; falling back to `npm ping`."}:{kind:"passthrough"};case"plugin":return B(e)?{kind:"passthrough"}:{kind:"skip",warning:`${e.name} does not support yarn-style plugins. Skipping (no-op).`};case"prune":return sr(e)?{kind:"skip",warning:"yarn 1 has no `prune`. Use `yarn install --production` for a prod-only tree."}:B(e)?{kind:"skip",warning:"yarn berry has no `prune`. Use `yarn workspaces focus --production` instead."}:e.name==="bun"||e.name==="deno"?{kind:"skip",warning:`${e.name} has no \`prune\`. Pruning happens automatically on install.`}:{kind:"passthrough"};case"publish":return B(e)?{args:["npm","publish",...t],bin:"yarn",kind:"rewrite"}:{kind:"passthrough"};case"rebuild":return sr(e)?{kind:"skip",warning:"yarn 1 has no `rebuild`. Re-install instead."}:e.name==="bun"?{kind:"skip",warning:"bun has no `rebuild`. Use `bun install --force` instead."}:e.name==="deno"?{kind:"skip",warning:"deno has no `rebuild`."}:{kind:"passthrough"};case"search":return e.name==="pnpm"&&Q(e.version)?{args:["search",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `search`; falling back to `npm search`."}:{kind:"passthrough"};case"token":return e.name==="pnpm"&&Q(e.version)?{args:["token",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `token`; falling back to `npm token`."}:{kind:"passthrough"};case"whoami":return e.name==="pnpm"&&Q(e.version)?{args:["whoami",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `whoami`; falling back to `npm whoami`."}:B(e)?{args:["npm","whoami",...t],bin:"yarn",kind:"rewrite"}:e.name==="bun"?{args:["pm","whoami",...t],bin:"bun",kind:"rewrite"}:e.name==="deno"?{kind:"skip",warning:"deno has no `whoami`. JSR uses browser auth."}:{kind:"passthrough"};default:return{kind:"passthrough"}}},"dispatchSubcommand");var Dn=Object.defineProperty,L=h((e,r)=>Dn(e,"name",{value:r,configurable:!0}),"o");const or=L(e=>Nt(e)!==null,"hasBinaryOnPath"),Mn=L(e=>{const r=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["package-lock.json","npm"],["npm-shrinkwrap.json","npm"],["bun.lock","bun"],["bun.lockb","bun"],["deno.lock","deno"]];let t=e;for(;;){for(const[n,a]of r)if(ur(se(t,n)))return a;const i=lr(t);if(i===t||cr(t).root===t)return;t=i}},"findNonAubeLockfile"),sa=L((e,r)=>{if(r.name!=="aube")return;const t=Mn(e);if(t!==void 0)return`Resolved installer is aube but the workspace has a ${t} lockfile. Aube reads and writes ${t}'s lockfile format in place, but its byte output may differ subtly — expect a one-time churn diff on the first install, and ongoing drift if your team mixes tools on the same lockfile. To pin the choice across the team, set \`install.backend\` in vis.config; to bypass aube for this run, pass --no-aube.`},"detectLockfileDrift"),gr=L(e=>{if(ur(e))try{return JSON.parse(Lt(e,{buffer:!1}))}catch{return}},"readJson"),_n=L(e=>{let r=e;for(;;){const t=se(r,"package.json"),i=gr(t);if(i&&typeof i.packageManager=="string"&&i.packageManager.length>0)return i.packageManager;const n=lr(r);if(n===r||cr(r).root===r)return;r=n}},"readPackageManagerField"),gt=new Set(["npm","pnpm","yarn"]),ft=L((e,r,t)=>t===!1||!gt.has(r)||!or("corepack")?!1:t===!0?!0:_n(e)!==void 0,"shouldUseCorepack"),ia=L((e,r)=>{const t=r.backend,i=process.env.VIS_INSTALLER,n=t??i??r.configBackend,a=r.configCorepack??"auto";if(n&&n!=="auto"){if(n==="aube"&&!or("aube"))throw new Error('install.backend is set to "aube" but the `aube` binary is not on PATH. Install it via `npm i -g @endevco/aube`, `mise use -g aube`, or `brew install endevco/tap/aube`.');return{name:n,useCorepack:ft(e,n,a),version:"latest"}}if(or("aube"))return{name:"aube",useCorepack:!1,version:"latest"};const o=Gn(e);return{...o,useCorepack:ft(e,o.name,a)}},"resolveInstaller"),Gn=L(e=>{if(!ur(e))throw new Error(`Could not detect package manager in ${e}. Directory does not exist.`);const r=At(e);return{name:r.name,version:r.version||"latest"}},"detectPm"),Et=L((e,r)=>r.useCorepack!==!0||!gt.has(r.name)||e.bin==="corepack"||e.bin!==r.name?e:{...e,args:[r.name,...e.args],bin:"corepack"},"applyCorepack"),Fn=L((e,r,t)=>{if(t===void 0)return Pt(e.bin,e.args,r);const i=kt(e.bin,e.args,{cwd:r,env:{...process.env,...t},stdio:"inherit"});if(i.error)throw i.error;return i.status??1},"spawnResolved"),U=L((e,r,t,i,n={})=>{const a=Et(r,e);for(const o of a.warnings)i.warn(`warning: ${o}`);return n.dry?(i.log(`[dry-run] ${a.bin} ${a.args.join(" ")}`),0):Fn(a,t,n.env)},"runResolved"),Y=L((e,r,t,i,n={})=>U(e,r(),t,i,n),"resolveAndRun"),Un=L((e,r)=>r==="aube"||r==="deno"?e:{...e,args:[...e.args,"--prefer-offline"]},"applyPreferOffline"),xn=L((e,r,t)=>r!=="yarn"||t.startsWith("1.")||!e.args.includes("--immutable")||e.args.includes("--immutable-cache")?e:{...e,args:[...e.args,"--immutable-cache"]},"applyImmutableCache"),bt=L((e,r,t)=>{let i=e.name==="aube"?gn(r):Tt(e.name,e.version,{...r,silent:r.silent||t.silent===!0});return t.preferOffline&&(i=Un(i,e.name)),t.ciMode&&(i=xn(i,e.name,e.version)),i},"resolveInstallCommand"),oa=L((e,r,t,i,n={})=>{const a=bt(e,r,n);return Er(e,a,t,i,{dry:n.dry,env:n.env})},"runInstall"),ua=L(async(e,r,t,i,n={})=>{const a=Et(bt(e,r,n),e);for(const o of a.warnings)i.warn(`warning: ${o}`);return n.dry?(i.log(`[dry-run] ${a.bin} ${a.args.join(" ")}`),{code:0,output:""}):Tn(a.bin,a.args,{cwd:t,env:n.env?{...process.env,...n.env}:process.env})},"runInstallCaptured"),Rt=L((e,r)=>{const t=r==="deno"?"--quiet":"--silent";return{...e,args:[...e.args,t]}},"applySilent"),Xn=L((e,r)=>r==="yarn"||r==="aube"?null:{...e,args:[...e.args,"--dry-run"]},"applyDryRun"),Er=L((e,r,t,i,n)=>{if(n.dry!==!0)return U(e,r,t,i,n);const a=Xn(r,e.name);return a===null?U(e,r,t,i,n):U(e,a,t,i,{env:n.env})},"runWithNativeDryRun"),Vn=L((e,r)=>r==="aube"?{...e,args:[...e.args,"--ignore-scripts"]}:r==="deno"?e:{...e,args:[...e.args,"--ignore-scripts"]},"applyIgnoreScripts"),Bn=L((e,r,t,i,n={})=>{let a=e.name==="aube"?En(r):jt(e.name,e.version,r);n.ignoreScripts&&(a=Vn(a,e.name)),n.silent&&(a=Rt(a,e.name));const o=Er(e,a,t,i,{dry:n.dry,env:n.env});return o===0&&n.autoInstallPeers&&zn(e,r,t,i,n),o},"runAdd"),Wn=L(e=>{if(e.startsWith("@")){const t=e.indexOf("/");if(t===-1)return e;const i=e.indexOf("@",t);return i===-1?e:e.slice(0,i)}const r=e.indexOf("@");return r===-1?e:e.slice(0,r)},"stripVersionRange"),Hn=L((e,r)=>{let t=e;for(;;){const i=se(t,"node_modules",r,"package.json"),n=gr(i);if(n)return n;const a=lr(t);if(a===t||cr(t).root===t)return;t=a}},"findInstalledManifest"),Yn=L(e=>{const r=gr(se(e,"package.json")),t=new Set;if(!r)return t;for(const i of["dependencies","devDependencies","peerDependencies","optionalDependencies"]){const n=r[i];if(n)for(const a of Object.keys(n))t.add(a)}return t},"collectExistingDeps"),zn=L((e,r,t,i,n)=>{if(e.name==="deno")return;const a=Yn(t),o=new Map;for(const f of r.packages){const u=Wn(f),l=Hn(t,u);if(!l?.peerDependencies)continue;const s=l.peerDependenciesMeta??{};for(const[c,g]of Object.entries(l.peerDependencies))s[c]?.optional||a.has(c)||o.has(c)||o.set(c,g)}if(o.size===0)return;const m=[...o.entries()].map(([f,u])=>`${f}@${u}`);i.log(`auto-installing peer dependencies: ${m.join(", ")}`);const p={exact:!1,filter:r.filter,global:!1,optional:!1,packages:m,peer:!1,saveDev:r.saveDev,workspace:!1,workspaceRoot:r.workspaceRoot};Bn(e,p,t,i,{ignoreScripts:n.ignoreScripts})},"installMissingPeers"),la=L((e,r,t,i,n={})=>{let a=e.name==="aube"?bn(r):Ct(e.name,e.version,r);return n.silent&&(a=Rt(a,e.name)),Er(e,a,t,i,{dry:n.dry,env:n.env})},"runRemove"),ca=L((e,r,t,i,n={})=>e.name==="aube"?U(e,Rn(r),t,i,n):Y(e,()=>qt(e.name,e.version,r),t,i,n),"runDedupe"),pa=L((e,r,t,i,n={})=>e.name==="aube"?U(e,wn(r),t,i,n):Y(e,()=>Dt(e.name,e.version,r),t,i,n),"runWhy");L((e,r,t,i,n={})=>e.name==="aube"?U(e,$n(r),t,i,n):Y(e,()=>Mt(e.name,e.version,r),t,i,n),"runOutdated");const Jn=L((e,r)=>{if(e.name==="aube")return Ln(r);const t=[],i=[],n=e.name;switch(e.name){case"bun":{const a=ee.coerce(e.version);a&&ee.lt(a,"1.3.0")&&i.push(`bun ${e.version} does not support \`bun pm view\` (added in bun 1.3). Upgrade bun, or run \`npm view ${r.package}\` instead.`),t.push("pm","view","--",r.package,...r.fields),r.json&&t.push("--json");break}case"deno":{const a=r.package.startsWith("npm:")||r.package.startsWith("jsr:")||r.package.startsWith("https://")||r.package.startsWith("http://")||r.package.startsWith("file:")?r.package:`npm:${r.package}`;t.push("info","--",a),r.json&&t.push("--json"),r.fields.length>0&&i.push("deno info does not accept field selectors; ignoring.");break}case"npm":case"pnpm":{t.push("view","--",r.package,...r.fields),r.json&&t.push("--json");break}case"yarn":{if(e.version.startsWith("1.")){t.push("info","--",r.package);const[a,...o]=r.fields;a!==void 0&&(o.length>0&&i.push("yarn v1 only supports querying one field at a time; using the first."),t.push(a)),r.json&&t.push("--json")}else t.push("npm","info","--",r.package),r.fields.length>0&&i.push("yarn berry does not support field arguments to 'npm info'; ignoring."),r.json&&t.push("--json");break}default:{const a=e.name;throw new Error(`Unsupported package manager: ${a}`)}}return{args:t,bin:n,warnings:i}},"resolveInfo"),fa=L((e,r,t,i,n={})=>U(e,Jn(e,r),t,i,n),"runInfo"),ha=L((e,r,t,i,n={})=>e.name==="aube"?U(e,yn(r),t,i,n):Y(e,()=>_t(e.name,e.version,r),t,i,n),"runLink"),ma=L((e,r,t,i,n,a={})=>e.name==="aube"?U(e,kn(r,t),i,n,a):Y(e,()=>Gt(e.name,e.version,r,t),i,n,a),"runUnlink"),Zn=L((e,r,t)=>{if(e.args.includes("--offline")||e.args.includes("--cached-only"))return e;const i=L((n,a)=>{const o=[...e.args];return o.splice(a,0,n),{...e,args:o}},"insertAt");switch(r){case"aube":case"pnpm":return i("--offline",1);case"bun":return{...e,warnings:[...e.warnings,"bun x does not support --offline. Pre-install the package via `vis install` so bun x resolves from the local cache."]};case"deno":return i("--cached-only",1);case"npm":return i("--offline",1);case"yarn":return t.startsWith("1.")?i("--offline",0):{...e,warnings:[...e.warnings,"yarn berry has no --offline flag for dlx. Configure `enableNetwork: false` in .yarnrc.yml or set `enableMirror: true` for offline-first behavior."]};default:{const n=r;return{...e,warnings:[...e.warnings,`applyDlxOffline: unsupported pm ${String(n)}`]}}}},"applyDlxOffline"),da=L((e,r,t,i,n={})=>{let a=e.name==="aube"?On(r):Ft(e.name,e.version,r);return n.offline&&(a=Zn(a,e.name,e.version)),U(e,a,t,i,{dry:n.dry,env:n.env})},"runDlx"),va=L((e,r,t,i,n={})=>e.name==="aube"?U(e,In(r),t,i,n):Y(e,()=>Ut(e.name,e.version,r),t,i,n),"runExec"),ga=L((e,r,t,i,n,a={})=>{if(e.name==="aube")return U(e,Nn(r,t),i,n,a);const o=qn(e,r,t);return o.kind==="skip"?(n.warn(`warning: ${o.warning}`),0):o.kind==="rewrite"?U(e,{args:o.args,bin:o.bin,warnings:o.warning?[o.warning]:[]},i,n,a):Y(e,()=>xt(e.name,e.version,r,t),i,n,a)},"runPmSubcommand");export{ha as $,Gn as A,da as B,ua as C,la as E,sa as I,ga as L,ca as M,va as N,Bn as P,ia as R,fa as S,ma as W,pa as a,Tn as b,Vt as c,aa as k,Xt as r,ee as s,na as x,oa as y};
1
+ var wt=Object.defineProperty;var h=(e,r)=>wt(e,"name",{value:r,configurable:!0});import{createRequire as $t}from"node:module";import{i as ur,M as se,K as lr,O as cr,$ as Lt}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as St}from"./index-efSniSRN.js";import{whichBin as Nt,detectPackageManager as At,execPmCommandInteractive as Pt,resolveInstall as Tt,resolveAdd as jt,resolveRemove as Ct,resolveDedupe as qt,resolveWhy as Dt,resolveOutdated as Mt,resolveLink as _t,resolveUnlink as Gt,resolveDlx as Ft,resolveExec as Ut,resolvePmCommand as xt}from"#native";const Ot=$t(import.meta.url),K=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,It=h(e=>{if(typeof K<"u"&&K.versions&&K.versions.node){const[r,t]=K.versions.node.split(".").map(Number);if(r>22||r===22&&t>=3||r===20&&t>=16)return K.getBuiltinModule(e)}return Ot(e)},"__cjs_getBuiltinModule"),{spawn:yt,spawnSync:kt}=It("node:child_process");var me,br;function ie(){return br||(br=1,me=process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{}),me}h(ie,"requireDebug");var de,Rr;function re(){return Rr||(Rr=1,de={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER||9007199254740991,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}),de}h(re,"requireConstants");var ae={exports:{}},wr;function te(){return wr||(wr=1,(function(e,r){var t=Object.defineProperty,i=h((k,A)=>t(k,"name",{value:A,configurable:!0}),"O");const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:a,MAX_LENGTH:o}=re(),m=ie();r=e.exports={};const p=r.re=[],f=r.safeRe=[],u=r.src=[],l=r.safeSrc=[],s=r.t={};let c=0;const g="[a-zA-Z0-9-]",w=[["\\s",1],["\\d",o],[g,a]],N=i(k=>{for(const[A,M]of w)k=k.split(`${A}*`).join(`${A}{0,${M}}`).split(`${A}+`).join(`${A}{1,${M}}`);return k},"makeSafeRegex"),v=i((k,A,M)=>{const T=N(A),_=c++;m(k,_,A),s[k]=_,u[_]=A,l[_]=T,p[_]=new RegExp(A,M?"g":void 0),f[_]=new RegExp(T,M?"g":void 0)},"createToken");v("NUMERICIDENTIFIER","0|[1-9]\\d*"),v("NUMERICIDENTIFIERLOOSE","\\d+"),v("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${g}*`),v("MAINVERSION",`(${u[s.NUMERICIDENTIFIER]})\\.(${u[s.NUMERICIDENTIFIER]})\\.(${u[s.NUMERICIDENTIFIER]})`),v("MAINVERSIONLOOSE",`(${u[s.NUMERICIDENTIFIERLOOSE]})\\.(${u[s.NUMERICIDENTIFIERLOOSE]})\\.(${u[s.NUMERICIDENTIFIERLOOSE]})`),v("PRERELEASEIDENTIFIER",`(?:${u[s.NONNUMERICIDENTIFIER]}|${u[s.NUMERICIDENTIFIER]})`),v("PRERELEASEIDENTIFIERLOOSE",`(?:${u[s.NONNUMERICIDENTIFIER]}|${u[s.NUMERICIDENTIFIERLOOSE]})`),v("PRERELEASE",`(?:-(${u[s.PRERELEASEIDENTIFIER]}(?:\\.${u[s.PRERELEASEIDENTIFIER]})*))`),v("PRERELEASELOOSE",`(?:-?(${u[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${u[s.PRERELEASEIDENTIFIERLOOSE]})*))`),v("BUILDIDENTIFIER",`${g}+`),v("BUILD",`(?:\\+(${u[s.BUILDIDENTIFIER]}(?:\\.${u[s.BUILDIDENTIFIER]})*))`),v("FULLPLAIN",`v?${u[s.MAINVERSION]}${u[s.PRERELEASE]}?${u[s.BUILD]}?`),v("FULL",`^${u[s.FULLPLAIN]}$`),v("LOOSEPLAIN",`[v=\\s]*${u[s.MAINVERSIONLOOSE]}${u[s.PRERELEASELOOSE]}?${u[s.BUILD]}?`),v("LOOSE",`^${u[s.LOOSEPLAIN]}$`),v("GTLT","((?:<|>)?=?)"),v("XRANGEIDENTIFIERLOOSE",`${u[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),v("XRANGEIDENTIFIER",`${u[s.NUMERICIDENTIFIER]}|x|X|\\*`),v("XRANGEPLAIN",`[v=\\s]*(${u[s.XRANGEIDENTIFIER]})(?:\\.(${u[s.XRANGEIDENTIFIER]})(?:\\.(${u[s.XRANGEIDENTIFIER]})(?:${u[s.PRERELEASE]})?${u[s.BUILD]}?)?)?`),v("XRANGEPLAINLOOSE",`[v=\\s]*(${u[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${u[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${u[s.XRANGEIDENTIFIERLOOSE]})(?:${u[s.PRERELEASELOOSE]})?${u[s.BUILD]}?)?)?`),v("XRANGE",`^${u[s.GTLT]}\\s*${u[s.XRANGEPLAIN]}$`),v("XRANGELOOSE",`^${u[s.GTLT]}\\s*${u[s.XRANGEPLAINLOOSE]}$`),v("COERCEPLAIN",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?`),v("COERCE",`${u[s.COERCEPLAIN]}(?:$|[^\\d])`),v("COERCEFULL",u[s.COERCEPLAIN]+`(?:${u[s.PRERELEASE]})?(?:${u[s.BUILD]})?(?:$|[^\\d])`),v("COERCERTL",u[s.COERCE],!0),v("COERCERTLFULL",u[s.COERCEFULL],!0),v("LONETILDE","(?:~>?)"),v("TILDETRIM",`(\\s*)${u[s.LONETILDE]}\\s+`,!0),r.tildeTrimReplace="$1~",v("TILDE",`^${u[s.LONETILDE]}${u[s.XRANGEPLAIN]}$`),v("TILDELOOSE",`^${u[s.LONETILDE]}${u[s.XRANGEPLAINLOOSE]}$`),v("LONECARET","(?:\\^)"),v("CARETTRIM",`(\\s*)${u[s.LONECARET]}\\s+`,!0),r.caretTrimReplace="$1^",v("CARET",`^${u[s.LONECARET]}${u[s.XRANGEPLAIN]}$`),v("CARETLOOSE",`^${u[s.LONECARET]}${u[s.XRANGEPLAINLOOSE]}$`),v("COMPARATORLOOSE",`^${u[s.GTLT]}\\s*(${u[s.LOOSEPLAIN]})$|^$`),v("COMPARATOR",`^${u[s.GTLT]}\\s*(${u[s.FULLPLAIN]})$|^$`),v("COMPARATORTRIM",`(\\s*)${u[s.GTLT]}\\s*(${u[s.LOOSEPLAIN]}|${u[s.XRANGEPLAIN]})`,!0),r.comparatorTrimReplace="$1$2$3",v("HYPHENRANGE",`^\\s*(${u[s.XRANGEPLAIN]})\\s+-\\s+(${u[s.XRANGEPLAIN]})\\s*$`),v("HYPHENRANGELOOSE",`^\\s*(${u[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${u[s.XRANGEPLAINLOOSE]})\\s*$`),v("STAR","(<|>)?=?\\s*\\*"),v("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),v("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(ae,ae.exports)),ae.exports}h(te,"requireRe");var ve,$r;function pr(){if($r)return ve;$r=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"t");const t=Object.freeze({loose:!0}),i=Object.freeze({});return ve=r(a=>a?typeof a!="object"?t:a:i,"parseOptions"),ve}h(pr,"requireParseOptions");var ge,Or;function ht(){if(Or)return ge;Or=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"s");const t=/^[0-9]+$/,i=r((a,o)=>{if(typeof a=="number"&&typeof o=="number")return a===o?0:a<o?-1:1;const m=t.test(a),p=t.test(o);return m&&p&&(a=+a,o=+o),a===o?0:m&&!p?-1:p&&!m?1:a<o?-1:1},"compareIdentifiers"),n=r((a,o)=>i(o,a),"rcompareIdentifiers");return ge={compareIdentifiers:i,rcompareIdentifiers:n},ge}h(ht,"requireIdentifiers");var Ee,Ir;function G(){if(Ir)return Ee;Ir=1;var e=Object.defineProperty,r=h((u,l)=>e(u,"name",{value:l,configurable:!0}),"a");const t=ie(),{MAX_LENGTH:i,MAX_SAFE_INTEGER:n}=re(),{safeRe:a,t:o}=te(),m=pr(),{compareIdentifiers:p}=ht();class f{static{h(this,"SemVer")}static{r(this,"SemVer")}constructor(l,s){if(s=m(s),l instanceof f){if(l.loose===!!s.loose&&l.includePrerelease===!!s.includePrerelease)return l;l=l.version}else if(typeof l!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof l}".`);if(l.length>i)throw new TypeError(`version is longer than ${i} characters`);t("SemVer",l,s),this.options=s,this.loose=!!s.loose,this.includePrerelease=!!s.includePrerelease;const c=l.trim().match(s.loose?a[o.LOOSE]:a[o.FULL]);if(!c)throw new TypeError(`Invalid Version: ${l}`);if(this.raw=l,this.major=+c[1],this.minor=+c[2],this.patch=+c[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");c[4]?this.prerelease=c[4].split(".").map(g=>{if(/^[0-9]+$/.test(g)){const w=+g;if(w>=0&&w<n)return w}return g}):this.prerelease=[],this.build=c[5]?c[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(l){if(t("SemVer.compare",this.version,this.options,l),!(l instanceof f)){if(typeof l=="string"&&l===this.version)return 0;l=new f(l,this.options)}return l.version===this.version?0:this.compareMain(l)||this.comparePre(l)}compareMain(l){return l instanceof f||(l=new f(l,this.options)),this.major<l.major?-1:this.major>l.major?1:this.minor<l.minor?-1:this.minor>l.minor?1:this.patch<l.patch?-1:this.patch>l.patch?1:0}comparePre(l){if(l instanceof f||(l=new f(l,this.options)),this.prerelease.length&&!l.prerelease.length)return-1;if(!this.prerelease.length&&l.prerelease.length)return 1;if(!this.prerelease.length&&!l.prerelease.length)return 0;let s=0;do{const c=this.prerelease[s],g=l.prerelease[s];if(t("prerelease compare",s,c,g),c===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(c===void 0)return-1;if(c!==g)return p(c,g)}while(++s)}compareBuild(l){l instanceof f||(l=new f(l,this.options));let s=0;do{const c=this.build[s],g=l.build[s];if(t("build compare",s,c,g),c===void 0&&g===void 0)return 0;if(g===void 0)return 1;if(c===void 0)return-1;if(c!==g)return p(c,g)}while(++s)}inc(l,s,c){if(l.startsWith("pre")){if(!s&&c===!1)throw new Error("invalid increment argument: identifier is empty");if(s){const g=`-${s}`.match(this.options.loose?a[o.PRERELEASELOOSE]:a[o.PRERELEASE]);if(!g||g[1]!==s)throw new Error(`invalid identifier: ${s}`)}}switch(l){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",s,c);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",s,c);break;case"prepatch":this.prerelease.length=0,this.inc("patch",s,c),this.inc("pre",s,c);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",s,c),this.inc("pre",s,c);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{const g=Number(c)?1:0;if(this.prerelease.length===0)this.prerelease=[g];else{let w=this.prerelease.length;for(;--w>=0;)typeof this.prerelease[w]=="number"&&(this.prerelease[w]++,w=-2);if(w===-1){if(s===this.prerelease.join(".")&&c===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(g)}}if(s){let w=[s,g];c===!1&&(w=[s]),p(this.prerelease[0],s)===0?isNaN(this.prerelease[1])&&(this.prerelease=w):this.prerelease=w}break}default:throw new Error(`invalid increment argument: ${l}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}return Ee=f,Ee}h(G,"requireSemver$1");var be,yr;function W(){if(yr)return be;yr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=G();return be=r((n,a,o=!1)=>{if(n instanceof t)return n;try{return new t(n,a)}catch(m){if(!o)return null;throw m}},"parse"),be}h(W,"requireParse");var Re,kr;function Xt(){if(kr)return Re;kr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return Re=r((n,a)=>{const o=t(n,a);return o?o.version:null},"valid"),Re}h(Xt,"requireValid$1");var we,Lr;function Vt(){if(Lr)return we;Lr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return we=r((n,a)=>{const o=t(n.trim().replace(/^[=v]+/,""),a);return o?o.version:null},"clean"),we}h(Vt,"requireClean");var $e,Sr;function Bt(){if(Sr)return $e;Sr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"u");const t=G();return $e=r((n,a,o,m,p)=>{typeof o=="string"&&(p=m,m=o,o=void 0);try{return new t(n instanceof t?n.version:n,o).inc(a,m,p).version}catch{return null}},"inc"),$e}h(Bt,"requireInc");var Oe,Nr;function Wt(){if(Nr)return Oe;Nr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"u");const t=W();return Oe=r((n,a)=>{const o=t(n,null,!0),m=t(a,null,!0),p=o.compare(m);if(p===0)return null;const f=p>0,u=f?o:m,l=f?m:o,s=!!u.prerelease.length;if(l.prerelease.length&&!s){if(!l.patch&&!l.minor)return"major";if(l.compareMain(u)===0)return l.minor&&!l.patch?"minor":"patch"}const c=s?"pre":"";return o.major!==m.major?c+"major":o.minor!==m.minor?c+"minor":o.patch!==m.patch?c+"patch":"prerelease"},"diff"),Oe}h(Wt,"requireDiff");var Ie,Ar;function Ht(){if(Ar)return Ie;Ar=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=G();return Ie=r((n,a)=>new t(n,a).major,"major"),Ie}h(Ht,"requireMajor");var ye,Pr;function Yt(){if(Pr)return ye;Pr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=G();return ye=r((n,a)=>new t(n,a).minor,"minor"),ye}h(Yt,"requireMinor");var ke,Tr;function zt(){if(Tr)return ke;Tr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=G();return ke=r((n,a)=>new t(n,a).patch,"patch"),ke}h(zt,"requirePatch");var Le,jr;function Jt(){if(jr)return Le;jr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=W();return Le=r((n,a)=>{const o=t(n,a);return o&&o.prerelease.length?o.prerelease:null},"prerelease"),Le}h(Jt,"requirePrerelease");var Se,Cr;function X(){if(Cr)return Se;Cr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"c");const t=G();return Se=r((n,a,o)=>new t(n,o).compare(new t(a,o)),"compare"),Se}h(X,"requireCompare");var Ne,qr;function Zt(){if(qr)return Ne;qr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"o");const t=X();return Ne=r((n,a,o)=>t(a,n,o),"rcompare"),Ne}h(Zt,"requireRcompare");var Ae,Dr;function Kt(){if(Dr)return Ae;Dr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ae=r((n,a)=>t(n,a,!0),"compareLoose"),Ae}h(Kt,"requireCompareLoose");var Pe,Mr;function fr(){if(Mr)return Pe;Mr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"o");const t=G();return Pe=r((n,a,o)=>{const m=new t(n,o),p=new t(a,o);return m.compare(p)||m.compareBuild(p)},"compareBuild"),Pe}h(fr,"requireCompareBuild");var Te,_r;function Qt(){if(_r)return Te;_r=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"e");const t=fr();return Te=r((n,a)=>n.sort((o,m)=>t(o,m,a)),"sort"),Te}h(Qt,"requireSort");var je,Gr;function en(){if(Gr)return je;Gr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"e");const t=fr();return je=r((n,a)=>n.sort((o,m)=>t(m,o,a)),"rsort"),je}h(en,"requireRsort");var Ce,Fr;function oe(){if(Fr)return Ce;Fr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ce=r((n,a,o)=>t(n,a,o)>0,"gt"),Ce}h(oe,"requireGt");var qe,Ur;function hr(){if(Ur)return qe;Ur=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return qe=r((n,a,o)=>t(n,a,o)<0,"lt"),qe}h(hr,"requireLt");var De,xr;function mt(){if(xr)return De;xr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return De=r((n,a,o)=>t(n,a,o)===0,"eq"),De}h(mt,"requireEq");var Me,Xr;function dt(){if(Xr)return Me;Xr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Me=r((n,a,o)=>t(n,a,o)!==0,"neq"),Me}h(dt,"requireNeq");var _e,Vr;function mr(){if(Vr)return _e;Vr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return _e=r((n,a,o)=>t(n,a,o)>=0,"gte"),_e}h(mr,"requireGte");var Ge,Br;function dr(){if(Br)return Ge;Br=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"r");const t=X();return Ge=r((n,a,o)=>t(n,a,o)<=0,"lte"),Ge}h(dr,"requireLte");var Fe,Wr;function vt(){if(Wr)return Fe;Wr=1;var e=Object.defineProperty,r=h((f,u)=>e(f,"name",{value:u,configurable:!0}),"n");const t=mt(),i=dt(),n=oe(),a=mr(),o=hr(),m=dr();return Fe=r((f,u,l,s)=>{switch(u){case"===":return typeof f=="object"&&(f=f.version),typeof l=="object"&&(l=l.version),f===l;case"!==":return typeof f=="object"&&(f=f.version),typeof l=="object"&&(l=l.version),f!==l;case"":case"=":case"==":return t(f,l,s);case"!=":return i(f,l,s);case">":return n(f,l,s);case">=":return a(f,l,s);case"<":return o(f,l,s);case"<=":return m(f,l,s);default:throw new TypeError(`Invalid operator: ${u}`)}},"cmp"),Fe}h(vt,"requireCmp");var Ue,Hr;function rn(){if(Hr)return Ue;Hr=1;var e=Object.defineProperty,r=h((m,p)=>e(m,"name",{value:p,configurable:!0}),"u");const t=G(),i=W(),{safeRe:n,t:a}=te();return Ue=r((m,p)=>{if(m instanceof t)return m;if(typeof m=="number"&&(m=String(m)),typeof m!="string")return null;p=p||{};let f=null;if(!p.rtl)f=m.match(p.includePrerelease?n[a.COERCEFULL]:n[a.COERCE]);else{const w=p.includePrerelease?n[a.COERCERTLFULL]:n[a.COERCERTL];let N;for(;(N=w.exec(m))&&(!f||f.index+f[0].length!==m.length);)(!f||N.index+N[0].length!==f.index+f[0].length)&&(f=N),w.lastIndex=N.index+N[1].length+N[2].length;w.lastIndex=-1}if(f===null)return null;const u=f[2],l=f[3]||"0",s=f[4]||"0",c=p.includePrerelease&&f[5]?`-${f[5]}`:"",g=p.includePrerelease&&f[6]?`+${f[6]}`:"";return i(`${u}.${l}.${s}${c}${g}`,p)},"coerce"),Ue}h(rn,"requireCoerce");var xe,Yr;function tn(){if(Yr)return xe;Yr=1;var e=Object.defineProperty,r=h((f,u)=>e(f,"name",{value:u,configurable:!0}),"t");const t=W(),i=re(),n=G(),a=r((f,u,l)=>{if(!i.RELEASE_TYPES.includes(u))return null;const s=o(f,l);return s&&m(s,u)},"truncate"),o=r((f,u)=>{const l=f instanceof n?f.version:f;return t(l,u)},"cloneInputVersion"),m=r((f,u)=>{if(p(u))return f.version;switch(f.prerelease=[],u){case"major":f.minor=0,f.patch=0;break;case"minor":f.patch=0;break}return f.format()},"doTruncation"),p=r(f=>f.startsWith("pre"),"isPrerelease");return xe=a,xe}h(tn,"requireTruncate");var Xe,zr;function nn(){if(zr)return Xe;zr=1;var e=Object.defineProperty,r=h((i,n)=>e(i,"name",{value:n,configurable:!0}),"i");class t{static{h(this,"LRUCache")}static{r(this,"LRUCache")}constructor(){this.max=1e3,this.map=new Map}get(n){const a=this.map.get(n);if(a!==void 0)return this.map.delete(n),this.map.set(n,a),a}delete(n){return this.map.delete(n)}set(n,a){if(!this.delete(n)&&a!==void 0){if(this.map.size>=this.max){const o=this.map.keys().next().value;this.delete(o)}this.map.set(n,a)}return this}}return Xe=t,Xe}h(nn,"requireLrucache");var Ve,Jr;function V(){if(Jr)return Ve;Jr=1;var e=Object.defineProperty,r=h((E,d)=>e(E,"name",{value:d,configurable:!0}),"o");const t=/\s+/g;class i{static{h(this,"Range")}static{r(this,"Range")}constructor(d,$){if($=o($),d instanceof i)return d.loose===!!$.loose&&d.includePrerelease===!!$.includePrerelease?d:new i(d.raw,$);if(d instanceof m)return this.raw=d.value,this.set=[[d]],this.formatted=void 0,this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=d.trim().replace(t," "),this.set=this.raw.split("||").map(b=>this.parseRange(b.trim())).filter(b=>b.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const b=this.set[0];if(this.set=this.set.filter(O=>!v(O[0])),this.set.length===0)this.set=[b];else if(this.set.length>1){for(const O of this.set)if(O.length===1&&k(O[0])){this.set=[O];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let d=0;d<this.set.length;d++){d>0&&(this.formatted+="||");const $=this.set[d];for(let b=0;b<$.length;b++)b>0&&(this.formatted+=" "),this.formatted+=$[b].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(d){const $=((this.options.includePrerelease&&w)|(this.options.loose&&N))+":"+d,b=a.get($);if(b)return b;const O=this.options.loose,R=O?u[l.HYPHENRANGELOOSE]:u[l.HYPHENRANGE];d=d.replace(R,fe(this.options.includePrerelease)),p("hyphen replace",d),d=d.replace(u[l.COMPARATORTRIM],s),p("comparator trim",d),d=d.replace(u[l.TILDETRIM],c),p("tilde trim",d),d=d.replace(u[l.CARETTRIM],g),p("caret trim",d);let I=d.split(" ").map(q=>M(q,this.options)).join(" ").split(/\s+/).map(q=>pe(q,this.options));O&&(I=I.filter(q=>(p("loose invalid filter",q,this.options),!!q.match(u[l.COMPARATORLOOSE])))),p("range list",I);const P=new Map,S=I.map(q=>new m(q,this.options));for(const q of S){if(v(q))return[q];P.set(q.value,q)}P.size>1&&P.has("")&&P.delete("");const j=[...P.values()];return a.set($,j),j}intersects(d,$){if(!(d instanceof i))throw new TypeError("a Range is required");return this.set.some(b=>A(b,$)&&d.set.some(O=>A(O,$)&&b.every(R=>O.every(I=>R.intersects(I,$)))))}test(d){if(!d)return!1;if(typeof d=="string")try{d=new f(d,this.options)}catch{return!1}for(let $=0;$<this.set.length;$++)if(he(this.set[$],d,this.options))return!0;return!1}}Ve=i;const n=nn(),a=new n,o=pr(),m=ue(),p=ie(),f=G(),{safeRe:u,t:l,comparatorTrimReplace:s,tildeTrimReplace:c,caretTrimReplace:g}=te(),{FLAG_INCLUDE_PRERELEASE:w,FLAG_LOOSE:N}=re(),v=r(E=>E.value==="<0.0.0-0","isNullSet"),k=r(E=>E.value==="","isAny"),A=r((E,d)=>{let $=!0;const b=E.slice();let O=b.pop();for(;$&&b.length;)$=b.every(R=>O.intersects(R,d)),O=b.pop();return $},"isSatisfiable"),M=r((E,d)=>(E=E.replace(u[l.BUILD],""),p("comp",E,d),E=C(E,d),p("caret",E),E=_(E,d),p("tildes",E),E=y(E,d),p("xrange",E),E=ce(E,d),p("stars",E),E),"parseComparator"),T=r(E=>!E||E.toLowerCase()==="x"||E==="*","isX"),_=r((E,d)=>E.trim().split(/\s+/).map($=>F($,d)).join(" "),"replaceTildes"),F=r((E,d)=>{const $=d.loose?u[l.TILDELOOSE]:u[l.TILDE];return E.replace($,(b,O,R,I,P)=>{p("tilde",E,b,O,R,I,P);let S;return T(O)?S="":T(R)?S=`>=${O}.0.0 <${+O+1}.0.0-0`:T(I)?S=`>=${O}.${R}.0 <${O}.${+R+1}.0-0`:P?(p("replaceTilde pr",P),S=`>=${O}.${R}.${I}-${P} <${O}.${+R+1}.0-0`):S=`>=${O}.${R}.${I} <${O}.${+R+1}.0-0`,p("tilde return",S),S})},"replaceTilde"),C=r((E,d)=>E.trim().split(/\s+/).map($=>D($,d)).join(" "),"replaceCarets"),D=r((E,d)=>{p("caret",E,d);const $=d.loose?u[l.CARETLOOSE]:u[l.CARET],b=d.includePrerelease?"-0":"";return E.replace($,(O,R,I,P,S)=>{p("caret",E,O,R,I,P,S);let j;return T(R)?j="":T(I)?j=`>=${R}.0.0${b} <${+R+1}.0.0-0`:T(P)?R==="0"?j=`>=${R}.${I}.0${b} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.0${b} <${+R+1}.0.0-0`:S?(p("replaceCaret pr",S),R==="0"?I==="0"?j=`>=${R}.${I}.${P}-${S} <${R}.${I}.${+P+1}-0`:j=`>=${R}.${I}.${P}-${S} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.${P}-${S} <${+R+1}.0.0-0`):(p("no pr"),R==="0"?I==="0"?j=`>=${R}.${I}.${P}${b} <${R}.${I}.${+P+1}-0`:j=`>=${R}.${I}.${P}${b} <${R}.${+I+1}.0-0`:j=`>=${R}.${I}.${P} <${+R+1}.0.0-0`),p("caret return",j),j})},"replaceCaret"),y=r((E,d)=>(p("replaceXRanges",E,d),E.split(/\s+/).map($=>J($,d)).join(" ")),"replaceXRanges"),J=r((E,d)=>{E=E.trim();const $=d.loose?u[l.XRANGELOOSE]:u[l.XRANGE];return E.replace($,(b,O,R,I,P,S)=>{p("xRange",E,b,O,R,I,P,S);const j=T(R),q=j||T(I),z=q||T(P),Z=z;return O==="="&&Z&&(O=""),S=d.includePrerelease?"-0":"",j?O===">"||O==="<"?b="<0.0.0-0":b="*":O&&Z?(q&&(I=0),P=0,O===">"?(O=">=",q?(R=+R+1,I=0,P=0):(I=+I+1,P=0)):O==="<="&&(O="<",q?R=+R+1:I=+I+1),O==="<"&&(S="-0"),b=`${O+R}.${I}.${P}${S}`):q?b=`>=${R}.0.0${S} <${+R+1}.0.0-0`:z&&(b=`>=${R}.${I}.0${S} <${R}.${+I+1}.0-0`),p("xRange return",b),b})},"replaceXRange"),ce=r((E,d)=>(p("replaceStars",E,d),E.trim().replace(u[l.STAR],"")),"replaceStars"),pe=r((E,d)=>(p("replaceGTE0",E,d),E.trim().replace(u[d.includePrerelease?l.GTE0PRE:l.GTE0],"")),"replaceGTE0"),fe=r(E=>(d,$,b,O,R,I,P,S,j,q,z,Z)=>(T(b)?$="":T(O)?$=`>=${b}.0.0${E?"-0":""}`:T(R)?$=`>=${b}.${O}.0${E?"-0":""}`:I?$=`>=${$}`:$=`>=${$}${E?"-0":""}`,T(j)?S="":T(q)?S=`<${+j+1}.0.0-0`:T(z)?S=`<${j}.${+q+1}.0-0`:Z?S=`<=${j}.${q}.${z}-${Z}`:E?S=`<${j}.${q}.${+z+1}-0`:S=`<=${S}`,`${$} ${S}`.trim()),"hyphenReplace"),he=r((E,d,$)=>{for(let b=0;b<E.length;b++)if(!E[b].test(d))return!1;if(d.prerelease.length&&!$.includePrerelease){for(let b=0;b<E.length;b++)if(p(E[b].semver),E[b].semver!==m.ANY&&E[b].semver.prerelease.length>0){const O=E[b].semver;if(O.major===d.major&&O.minor===d.minor&&O.patch===d.patch)return!0}return!1}return!0},"testSet");return Ve}h(V,"requireRange");var Be,Zr;function ue(){if(Zr)return Be;Zr=1;var e=Object.defineProperty,r=h((l,s)=>e(l,"name",{value:s,configurable:!0}),"i");const t=Symbol("SemVer ANY");class i{static{h(this,"Comparator")}static{r(this,"Comparator")}static get ANY(){return t}constructor(s,c){if(c=n(c),s instanceof i){if(s.loose===!!c.loose)return s;s=s.value}s=s.trim().split(/\s+/).join(" "),p("comparator",s,c),this.options=c,this.loose=!!c.loose,this.parse(s),this.semver===t?this.value="":this.value=this.operator+this.semver.version,p("comp",this)}parse(s){const c=this.options.loose?a[o.COMPARATORLOOSE]:a[o.COMPARATOR],g=s.match(c);if(!g)throw new TypeError(`Invalid comparator: ${s}`);this.operator=g[1]!==void 0?g[1]:"",this.operator==="="&&(this.operator=""),g[2]?this.semver=new f(g[2],this.options.loose):this.semver=t}toString(){return this.value}test(s){if(p("Comparator.test",s,this.options.loose),this.semver===t||s===t)return!0;if(typeof s=="string")try{s=new f(s,this.options)}catch{return!1}return m(s,this.operator,this.semver,this.options)}intersects(s,c){if(!(s instanceof i))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new u(s.value,c).test(this.value):s.operator===""?s.value===""?!0:new u(this.value,c).test(s.semver):(c=n(c),c.includePrerelease&&(this.value==="<0.0.0-0"||s.value==="<0.0.0-0")||!c.includePrerelease&&(this.value.startsWith("<0.0.0")||s.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&s.operator.startsWith(">")||this.operator.startsWith("<")&&s.operator.startsWith("<")||this.semver.version===s.semver.version&&this.operator.includes("=")&&s.operator.includes("=")||m(this.semver,"<",s.semver,c)&&this.operator.startsWith(">")&&s.operator.startsWith("<")||m(this.semver,">",s.semver,c)&&this.operator.startsWith("<")&&s.operator.startsWith(">")))}}Be=i;const n=pr(),{safeRe:a,t:o}=te(),m=vt(),p=ie(),f=G(),u=V();return Be}h(ue,"requireComparator");var We,Kr;function le(){if(Kr)return We;Kr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=V();return We=r((n,a,o)=>{try{a=new t(a,o)}catch{return!1}return a.test(n)},"satisfies"),We}h(le,"requireSatisfies");var He,Qr;function an(){if(Qr)return He;Qr=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"t");const t=V();return He=r((n,a)=>new t(n,a).set.map(o=>o.map(m=>m.value).join(" ").trim().split(" ")),"toComparators"),He}h(an,"requireToComparators");var Ye,et;function sn(){if(et)return Ye;et=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"c");const t=G(),i=V();return Ye=r((a,o,m)=>{let p=null,f=null,u=null;try{u=new i(o,m)}catch{return null}return a.forEach(l=>{u.test(l)&&(!p||f.compare(l)===-1)&&(p=l,f=new t(p,m))}),p},"maxSatisfying"),Ye}h(sn,"requireMaxSatisfying");var ze,rt;function on(){if(rt)return ze;rt=1;var e=Object.defineProperty,r=h((a,o)=>e(a,"name",{value:o,configurable:!0}),"u");const t=G(),i=V();return ze=r((a,o,m)=>{let p=null,f=null,u=null;try{u=new i(o,m)}catch{return null}return a.forEach(l=>{u.test(l)&&(!p||f.compare(l)===1)&&(p=l,f=new t(p,m))}),p},"minSatisfying"),ze}h(on,"requireMinSatisfying");var Je,tt;function un(){if(tt)return Je;tt=1;var e=Object.defineProperty,r=h((o,m)=>e(o,"name",{value:m,configurable:!0}),"i");const t=G(),i=V(),n=oe();return Je=r((o,m)=>{o=new i(o,m);let p=new t("0.0.0");if(o.test(p)||(p=new t("0.0.0-0"),o.test(p)))return p;p=null;for(let f=0;f<o.set.length;++f){const u=o.set[f];let l=null;u.forEach(s=>{const c=new t(s.semver.version);switch(s.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!l||n(c,l))&&(l=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),l&&(!p||n(p,l))&&(p=l)}return p&&o.test(p)?p:null},"minVersion"),Je}h(un,"requireMinVersion");var Ze,nt;function ln(){if(nt)return Ze;nt=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"n");const t=V();return Ze=r((n,a)=>{try{return new t(n,a).range||"*"}catch{return null}},"validRange"),Ze}h(ln,"requireValid");var Ke,at;function vr(){if(at)return Ke;at=1;var e=Object.defineProperty,r=h((s,c)=>e(s,"name",{value:c,configurable:!0}),"m");const t=G(),i=ue(),{ANY:n}=i,a=V(),o=le(),m=oe(),p=hr(),f=dr(),u=mr();return Ke=r((s,c,g,w)=>{s=new t(s,w),c=new a(c,w);let N,v,k,A,M;switch(g){case">":N=m,v=f,k=p,A=">",M=">=";break;case"<":N=p,v=u,k=m,A="<",M="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(o(s,c,w))return!1;for(let T=0;T<c.set.length;++T){const _=c.set[T];let F=null,C=null;if(_.forEach(D=>{D.semver===n&&(D=new i(">=0.0.0")),F=F||D,C=C||D,N(D.semver,F.semver,w)?F=D:k(D.semver,C.semver,w)&&(C=D)}),F.operator===A||F.operator===M||(!C.operator||C.operator===A)&&v(s,C.semver)||C.operator===M&&k(s,C.semver))return!1}return!0},"outside"),Ke}h(vr,"requireOutside");var Qe,st;function cn(){if(st)return Qe;st=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"s");const t=vr();return Qe=r((n,a,o)=>t(n,a,">",o),"gtr"),Qe}h(cn,"requireGtr");var er,it;function pn(){if(it)return er;it=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"s");const t=vr();return er=r((n,a,o)=>t(n,a,"<",o),"ltr"),er}h(pn,"requireLtr");var rr,ot;function fn(){if(ot)return rr;ot=1;var e=Object.defineProperty,r=h((n,a)=>e(n,"name",{value:a,configurable:!0}),"n");const t=V();return rr=r((n,a,o)=>(n=new t(n,o),a=new t(a,o),n.intersects(a,o)),"intersects"),rr}h(fn,"requireIntersects");var tr,ut;function hn(){if(ut)return tr;ut=1;const e=le(),r=X();return tr=h((t,i,n)=>{const a=[];let o=null,m=null;const p=t.sort((s,c)=>r(s,c,n));for(const s of p)e(s,i,n)?(m=s,o||(o=s)):(m&&a.push([o,m]),m=null,o=null);o&&a.push([o,null]);const f=[];for(const[s,c]of a)s===c?f.push(s):!c&&s===p[0]?f.push("*"):c?s===p[0]?f.push(`<=${c}`):f.push(`${s} - ${c}`):f.push(`>=${s}`);const u=f.join(" || "),l=typeof i.raw=="string"?i.raw:String(i);return u.length<l.length?u:i},"simplify"),tr}h(hn,"requireSimplify");var nr,lt;function mn(){if(lt)return nr;lt=1;var e=Object.defineProperty,r=h((c,g)=>e(c,"name",{value:g,configurable:!0}),"u");const t=V(),i=ue(),{ANY:n}=i,a=le(),o=X(),m=r((c,g,w={})=>{if(c===g)return!0;c=new t(c,w),g=new t(g,w);let N=!1;e:for(const v of c.set){for(const k of g.set){const A=u(v,k,w);if(N=N||A!==null,A)continue e}if(N)return!1}return!0},"subset"),p=[new i(">=0.0.0-0")],f=[new i(">=0.0.0")],u=r((c,g,w)=>{if(c===g)return!0;if(c.length===1&&c[0].semver===n){if(g.length===1&&g[0].semver===n)return!0;w.includePrerelease?c=p:c=f}if(g.length===1&&g[0].semver===n){if(w.includePrerelease)return!0;g=f}const N=new Set;let v,k;for(const y of c)y.operator===">"||y.operator===">="?v=l(v,y,w):y.operator==="<"||y.operator==="<="?k=s(k,y,w):N.add(y.semver);if(N.size>1)return null;let A;if(v&&k&&(A=o(v.semver,k.semver,w),A>0||A===0&&(v.operator!==">="||k.operator!=="<=")))return null;for(const y of N){if(v&&!a(y,String(v),w)||k&&!a(y,String(k),w))return null;for(const J of g)if(!a(y,String(J),w))return!1;return!0}let M,T,_,F,C=k&&!w.includePrerelease&&k.semver.prerelease.length?k.semver:!1,D=v&&!w.includePrerelease&&v.semver.prerelease.length?v.semver:!1;C&&C.prerelease.length===1&&k.operator==="<"&&C.prerelease[0]===0&&(C=!1);for(const y of g){if(F=F||y.operator===">"||y.operator===">=",_=_||y.operator==="<"||y.operator==="<=",v){if(D&&y.semver.prerelease&&y.semver.prerelease.length&&y.semver.major===D.major&&y.semver.minor===D.minor&&y.semver.patch===D.patch&&(D=!1),y.operator===">"||y.operator===">="){if(M=l(v,y,w),M===y&&M!==v)return!1}else if(v.operator===">="&&!a(v.semver,String(y),w))return!1}if(k){if(C&&y.semver.prerelease&&y.semver.prerelease.length&&y.semver.major===C.major&&y.semver.minor===C.minor&&y.semver.patch===C.patch&&(C=!1),y.operator==="<"||y.operator==="<="){if(T=s(k,y,w),T===y&&T!==k)return!1}else if(k.operator==="<="&&!a(k.semver,String(y),w))return!1}if(!y.operator&&(k||v)&&A!==0)return!1}return!(v&&_&&!k&&A!==0||k&&F&&!v&&A!==0||D||C)},"simpleSubset"),l=r((c,g,w)=>{if(!c)return g;const N=o(c.semver,g.semver,w);return N>0?c:N<0||g.operator===">"&&c.operator===">="?g:c},"higherGT"),s=r((c,g,w)=>{if(!c)return g;const N=o(c.semver,g.semver,w);return N<0?c:N>0||g.operator==="<"&&c.operator==="<="?g:c},"lowerLT");return nr=m,nr}h(mn,"requireSubset");var ar,ct;function dn(){if(ct)return ar;ct=1;const e=te(),r=re(),t=G(),i=ht(),n=W(),a=Xt(),o=Vt(),m=Bt(),p=Wt(),f=Ht(),u=Yt(),l=zt(),s=Jt(),c=X(),g=Zt(),w=Kt(),N=fr(),v=Qt(),k=en(),A=oe(),M=hr(),T=mt(),_=dt(),F=mr(),C=dr(),D=vt(),y=rn(),J=tn(),ce=ue(),pe=V(),fe=le(),he=an(),E=sn(),d=on(),$=un(),b=ln(),O=vr(),R=cn(),I=pn(),P=fn(),S=hn(),j=mn();return ar={parse:n,valid:a,clean:o,inc:m,diff:p,major:f,minor:u,patch:l,prerelease:s,compare:c,rcompare:g,compareLoose:w,compareBuild:N,sort:v,rsort:k,gt:A,lt:M,eq:T,neq:_,gte:F,lte:C,cmp:D,coerce:y,truncate:J,Comparator:ce,Range:pe,satisfies:fe,toComparators:he,maxSatisfying:E,minSatisfying:d,minVersion:$,validRange:b,outside:O,gtr:R,ltr:I,intersects:P,simplifyRange:S,subset:j,SemVer:t,re:e.re,src:e.src,tokens:e.t,SEMVER_SPEC_VERSION:r.SEMVER_SPEC_VERSION,RELEASE_TYPES:r.RELEASE_TYPES,compareIdentifiers:i.compareIdentifiers,rcompareIdentifiers:i.rcompareIdentifiers},ar}h(dn,"requireSemver");var ee=dn();const na=St(ee);var vn=Object.defineProperty,x=h((e,r)=>vn(e,"name",{value:r,configurable:!0}),"n");const H=x((e,r,t,i)=>{for(const n of r)e.push("--filter",n);t&&e.push("--recursive"),i&&e.push("--workspace-root")},"pushFilterGlobals"),gn=x(e=>{const r=[],t=[];return H(r,e.filter,e.recursive,e.workspaceRoot),e.silent&&r.push("--silent"),e.frozenLockfile&&r.push("--frozen-lockfile"),r.push("install"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.force&&r.push("--force"),e.ignoreScripts&&r.push("--ignore-scripts"),e.lockfileOnly&&r.push("--lockfile-only"),e.noOptional&&r.push("--no-optional"),e.offline&&r.push("--offline"),{args:r,bin:"aube",warnings:t}},"resolveAubeInstall"),En=x(e=>{const r=[],t=[];return H(r,e.filter,!1,!1),r.push("add"),e.saveDev&&r.push("--save-dev"),e.exact&&r.push("--save-exact"),e.global&&r.push("--global"),e.optional&&r.push("--save-optional"),e.peer&&r.push("--save-peer"),e.workspace&&t.push("aube has no flag for the `workspace:` protocol; it auto-detects local workspace members during add. Ignoring --workspace."),e.workspaceRoot&&r.push("--workspace"),r.push(...e.packages),{args:r,bin:"aube",warnings:t}},"resolveAubeAdd"),bn=x(e=>{const r=[];return H(r,e.filter,e.recursive,!1),r.push("remove"),e.saveDev&&r.push("--save-dev"),e.global&&r.push("--global"),e.workspaceRoot&&r.push("--workspace"),r.push(...e.packages),{args:r,bin:"aube",warnings:[]}},"resolveAubeRemove"),Rn=x(e=>{const r=["dedupe"];return e&&r.push("--check"),{args:r,bin:"aube",warnings:[]}},"resolveAubeDedupe"),wn=x(e=>{const r=[],t=[];H(r,e.filter,e.recursive,!1),r.push("why"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.json&&r.push("--json"),e.long&&r.push("--long"),e.parseable&&r.push("--parseable"),e.depth!==void 0&&t.push("aube why does not accept --depth; ignoring."),e.noOptional&&t.push("aube why does not accept --no-optional; ignoring."),e.global&&t.push("aube why does not accept --global; ignoring.");const[i,...n]=e.packages;return i===void 0?t.push("aube why requires a package name; none provided."):(n.length>0&&t.push("aube why takes a single package; using the first."),r.push(i)),{args:r,bin:"aube",warnings:t}},"resolveAubeWhy"),$n=x(e=>{const r=[],t=[];e.workspaceRoot&&t.push("aube outdated has no `--include-workspace-root` equivalent. Run `vis outdated` separately at the workspace root if you need its outdated list."),H(r,e.filter,e.recursive,!1),r.push("outdated"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.long&&r.push("--long"),e.format==="json"?r.push("--json"):e.format&&e.format!=="table"&&t.push(`aube outdated does not support format "${e.format}"; falling back to default table output.`),e.compatible&&t.push("aube outdated does not accept --compatible; ignoring."),e.noOptional&&t.push("aube outdated does not accept --no-optional; ignoring."),e.global&&t.push("aube outdated does not accept --global; ignoring.");const[i,...n]=e.packages;return i!==void 0&&(n.length>0&&t.push("aube outdated takes a single pattern argument; using the first."),r.push(i)),{args:r,bin:"aube",warnings:t}},"resolveAubeOutdated"),On=x(e=>{const r=[];e.silent&&r.push("--silent"),r.push("dlx");for(const t of e.additionalPackages)r.push("--package",t);return e.shellMode&&r.push("--shell-mode"),r.push(e.package),r.push(...e.args),{args:r,bin:"aube",warnings:[]}},"resolveAubeDlx"),In=x(e=>{const r=[];return H(r,e.filter,e.recursive,e.workspaceRoot),r.push("exec"),e.parallel&&r.push("--parallel"),e.reverse&&r.push("--reverse"),e.shellMode&&r.push("--shell-mode"),r.push(e.command),r.push(...e.args),{args:r,bin:"aube",warnings:[]}},"resolveAubeExec"),yn=x(e=>{const r=["link"];return e!==null&&r.push(e),{args:r,bin:"aube",warnings:[]}},"resolveAubeLink"),kn=x((e,r)=>{const t=[],i=[];return r&&t.push("--recursive"),t.push("unlink"),e.length>1&&i.push("aube unlink takes a single package; using the first."),e.length>0&&t.push(e[0]),{args:t,bin:"aube",warnings:i}},"resolveAubeUnlink"),Ln=x(e=>{const r=["view","--",e.package],t=[],[i,...n]=e.fields;return i!==void 0?(n.length>0&&t.push("aube view only supports a single field; using the first."),e.json&&t.push("aube view does not support --json with a field selector; printing the field without --json."),r.push(i)):e.json&&r.push("--json"),{args:r,bin:"aube",warnings:t}},"resolveAubeInfo"),aa=x(e=>{const r=[],t=[];return H(r,e.filters,e.recursive,e.workspaceRoot),r.push("update"),e.dev&&r.push("--dev"),e.prod&&r.push("--prod"),e.global&&r.push("--global"),e.interactive&&r.push("--interactive"),e.latest&&r.push("--latest"),e.noOptional&&r.push("--no-optional"),e.noSave&&r.push("--no-save"),r.push(...e.packages),{args:r,bin:"aube",warnings:t}},"resolveAubeUpdate"),Sn=new Set(["fund","ping","search","token"]),Nn=x((e,r)=>Sn.has(e)?{args:[e,...r],bin:"npm",warnings:[`'${e}' is not natively supported by aube. Delegating to npm.`]}:{args:[e,...r],bin:"aube",warnings:[]},"resolveAubePmCommand");var An=Object.defineProperty,ir=h((e,r)=>An(e,"name",{value:r,configurable:!0}),"r");const pt=256*1024,Pn=ir(e=>{const r=e?{...process.env,...e}:{...process.env};return process.stderr.isTTY&&r.FORCE_COLOR===void 0&&r.NO_COLOR===void 0&&(r.FORCE_COLOR="1"),r},"buildChildEnv"),Tn=ir(async(e,r,t)=>new Promise((i,n)=>{const a=yt(e,[...r],{cwd:t.cwd,env:Pn(t.env),shell:process.platform==="win32",stdio:["inherit","pipe","pipe"],windowsHide:!0});let o="";const m=ir(p=>{const f=p.toString("utf8");if(o.length+f.length<=pt){o+=f;return}const u=o+f;o=u.slice(u.length-pt)},"append");a.stdout?.on("data",p=>{process.stdout.write(p),m(p)}),a.stderr?.on("data",p=>{process.stderr.write(p),m(p)}),a.on("error",n),a.on("close",p=>{i({code:p??1,output:o})})}),"spawnTee");var jn=Object.defineProperty,ne=h((e,r)=>jn(e,"name",{value:r,configurable:!0}),"a");const Q=ne(e=>{const r=ee.coerce(e);return r?ee.gte(r,"11.0.0"):!1},"isPnpm11Plus"),B=ne(e=>e.name==="yarn"&&!e.version.startsWith("1."),"isYarnBerry"),sr=ne(e=>e.name==="yarn"&&e.version.startsWith("1."),"isYarn1"),Cn=ne(e=>e[0]==="rm"?["remove",...e.slice(1)]:e,"rewriteRmToRemove"),qn=ne((e,r,t)=>{switch(r){case"audit":return B(e)?{args:["npm","audit",...t],bin:"yarn",kind:"rewrite"}:{kind:"passthrough"};case"config":{if(B(e)){const[i,...n]=t;return i==="delete"?{args:["config","unset",...n],bin:"yarn",kind:"rewrite",warning:"yarn berry uses `config unset`, not `config delete`."}:{kind:"passthrough"}}return e.name==="bun"?{kind:"skip",warning:"bun has no `config` CLI. Edit bunfig.toml or .npmrc directly."}:e.name==="deno"?{kind:"skip",warning:"deno has no registry-config CLI. Edit deno.json directly."}:{kind:"passthrough"}}case"dist-tag":return sr(e)?{args:["tag",...t],bin:"yarn",kind:"rewrite",warning:"yarn 1 has no `dist-tag`; using `yarn tag`."}:B(e)?{args:["npm","tag",...Cn(t)],bin:"yarn",kind:"rewrite"}:e.name==="bun"||e.name==="deno"?{kind:"skip",warning:`${e.name} has no \`dist-tag\`. Use \`npm dist-tag\` instead.`}:{kind:"passthrough"};case"login":case"logout":return B(e)?{args:["npm",r,...t],bin:"yarn",kind:"rewrite"}:e.name==="bun"?{args:[r,...t],bin:"npm",kind:"rewrite",warning:`bun has no \`${r}\`; falling back to \`npm ${r}\` (writes ~/.npmrc, which bun reads).`}:e.name==="deno"?{kind:"skip",warning:`deno has no \`${r}\`. JSR uses browser OAuth via \`deno publish\`.`}:{kind:"passthrough"};case"owner":return e.name==="pnpm"&&Q(e.version)?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `owner`; falling back to `npm owner`."}:B(e)?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"yarn berry has no `owner` (not in `yarn npm`); falling back to `npm owner`."}:e.name==="bun"?{args:["owner",...t],bin:"npm",kind:"rewrite",warning:"bun has no `owner`; falling back to `npm owner`."}:e.name==="deno"?{kind:"skip",warning:"deno has no `owner`. JSR uses scope-member roles via the web UI."}:{kind:"passthrough"};case"ping":return e.name==="pnpm"&&Q(e.version)?{args:["ping",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `ping`; falling back to `npm ping`."}:{kind:"passthrough"};case"plugin":return B(e)?{kind:"passthrough"}:{kind:"skip",warning:`${e.name} does not support yarn-style plugins. Skipping (no-op).`};case"prune":return sr(e)?{kind:"skip",warning:"yarn 1 has no `prune`. Use `yarn install --production` for a prod-only tree."}:B(e)?{kind:"skip",warning:"yarn berry has no `prune`. Use `yarn workspaces focus --production` instead."}:e.name==="bun"||e.name==="deno"?{kind:"skip",warning:`${e.name} has no \`prune\`. Pruning happens automatically on install.`}:{kind:"passthrough"};case"publish":return B(e)?{args:["npm","publish",...t],bin:"yarn",kind:"rewrite"}:{kind:"passthrough"};case"rebuild":return sr(e)?{kind:"skip",warning:"yarn 1 has no `rebuild`. Re-install instead."}:e.name==="bun"?{kind:"skip",warning:"bun has no `rebuild`. Use `bun install --force` instead."}:e.name==="deno"?{kind:"skip",warning:"deno has no `rebuild`."}:{kind:"passthrough"};case"search":return e.name==="pnpm"&&Q(e.version)?{args:["search",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `search`; falling back to `npm search`."}:{kind:"passthrough"};case"token":return e.name==="pnpm"&&Q(e.version)?{args:["token",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `token`; falling back to `npm token`."}:{kind:"passthrough"};case"whoami":return e.name==="pnpm"&&Q(e.version)?{args:["whoami",...t],bin:"npm",kind:"rewrite",warning:"pnpm 11 removed `whoami`; falling back to `npm whoami`."}:B(e)?{args:["npm","whoami",...t],bin:"yarn",kind:"rewrite"}:e.name==="bun"?{args:["pm","whoami",...t],bin:"bun",kind:"rewrite"}:e.name==="deno"?{kind:"skip",warning:"deno has no `whoami`. JSR uses browser auth."}:{kind:"passthrough"};default:return{kind:"passthrough"}}},"dispatchSubcommand");var Dn=Object.defineProperty,L=h((e,r)=>Dn(e,"name",{value:r,configurable:!0}),"o");const or=L(e=>Nt(e)!==null,"hasBinaryOnPath"),Mn=L(e=>{const r=[["pnpm-lock.yaml","pnpm"],["yarn.lock","yarn"],["package-lock.json","npm"],["npm-shrinkwrap.json","npm"],["bun.lock","bun"],["bun.lockb","bun"],["deno.lock","deno"]];let t=e;for(;;){for(const[n,a]of r)if(ur(se(t,n)))return a;const i=lr(t);if(i===t||cr(t).root===t)return;t=i}},"findNonAubeLockfile"),sa=L((e,r)=>{if(r.name!=="aube")return;const t=Mn(e);if(t!==void 0)return`Resolved installer is aube but the workspace has a ${t} lockfile. Aube reads and writes ${t}'s lockfile format in place, but its byte output may differ subtly — expect a one-time churn diff on the first install, and ongoing drift if your team mixes tools on the same lockfile. To pin the choice across the team, set \`install.backend\` in vis.config; to bypass aube for this run, pass --no-aube.`},"detectLockfileDrift"),gr=L(e=>{if(ur(e))try{return JSON.parse(Lt(e,{buffer:!1}))}catch{return}},"readJson"),_n=L(e=>{let r=e;for(;;){const t=se(r,"package.json"),i=gr(t);if(i&&typeof i.packageManager=="string"&&i.packageManager.length>0)return i.packageManager;const n=lr(r);if(n===r||cr(r).root===r)return;r=n}},"readPackageManagerField"),gt=new Set(["npm","pnpm","yarn"]),ft=L((e,r,t)=>t===!1||!gt.has(r)||!or("corepack")?!1:t===!0?!0:_n(e)!==void 0,"shouldUseCorepack"),ia=L((e,r)=>{const t=r.backend,i=process.env.VIS_INSTALLER,n=t??i??r.configBackend,a=r.configCorepack??"auto";if(n&&n!=="auto"){if(n==="aube"&&!or("aube"))throw new Error('install.backend is set to "aube" but the `aube` binary is not on PATH. Install it via `npm i -g @endevco/aube`, `mise use -g aube`, or `brew install endevco/tap/aube`.');return{name:n,useCorepack:ft(e,n,a),version:"latest"}}if(or("aube"))return{name:"aube",useCorepack:!1,version:"latest"};const o=Gn(e);return{...o,useCorepack:ft(e,o.name,a)}},"resolveInstaller"),Gn=L(e=>{if(!ur(e))throw new Error(`Could not detect package manager in ${e}. Directory does not exist.`);const r=At(e);return{name:r.name,version:r.version||"latest"}},"detectPm"),Et=L((e,r)=>r.useCorepack!==!0||!gt.has(r.name)||e.bin==="corepack"||e.bin!==r.name?e:{...e,args:[r.name,...e.args],bin:"corepack"},"applyCorepack"),Fn=L((e,r,t)=>{if(t===void 0)return Pt(e.bin,e.args,r);const i=kt(e.bin,e.args,{cwd:r,env:{...process.env,...t},stdio:"inherit"});if(i.error)throw i.error;return i.status??1},"spawnResolved"),U=L((e,r,t,i,n={})=>{const a=Et(r,e);for(const o of a.warnings)i.warn(`warning: ${o}`);return n.dry?(i.log(`[dry-run] ${a.bin} ${a.args.join(" ")}`),0):Fn(a,t,n.env)},"runResolved"),Y=L((e,r,t,i,n={})=>U(e,r(),t,i,n),"resolveAndRun"),Un=L((e,r)=>r==="aube"||r==="deno"?e:{...e,args:[...e.args,"--prefer-offline"]},"applyPreferOffline"),xn=L((e,r,t)=>r!=="yarn"||t.startsWith("1.")||!e.args.includes("--immutable")||e.args.includes("--immutable-cache")?e:{...e,args:[...e.args,"--immutable-cache"]},"applyImmutableCache"),bt=L((e,r,t)=>{let i=e.name==="aube"?gn(r):Tt(e.name,e.version,{...r,silent:r.silent||t.silent===!0});return t.preferOffline&&(i=Un(i,e.name)),t.ciMode&&(i=xn(i,e.name,e.version)),i},"resolveInstallCommand"),oa=L((e,r,t,i,n={})=>{const a=bt(e,r,n);return Er(e,a,t,i,{dry:n.dry,env:n.env})},"runInstall"),ua=L(async(e,r,t,i,n={})=>{const a=Et(bt(e,r,n),e);for(const o of a.warnings)i.warn(`warning: ${o}`);return n.dry?(i.log(`[dry-run] ${a.bin} ${a.args.join(" ")}`),{code:0,output:""}):Tn(a.bin,a.args,{cwd:t,env:n.env?{...process.env,...n.env}:process.env})},"runInstallCaptured"),Rt=L((e,r)=>{const t=r==="deno"?"--quiet":"--silent";return{...e,args:[...e.args,t]}},"applySilent"),Xn=L((e,r)=>r==="yarn"||r==="aube"?null:{...e,args:[...e.args,"--dry-run"]},"applyDryRun"),Er=L((e,r,t,i,n)=>{if(n.dry!==!0)return U(e,r,t,i,n);const a=Xn(r,e.name);return a===null?U(e,r,t,i,n):U(e,a,t,i,{env:n.env})},"runWithNativeDryRun"),Vn=L((e,r)=>r==="aube"?{...e,args:[...e.args,"--ignore-scripts"]}:r==="deno"?e:{...e,args:[...e.args,"--ignore-scripts"]},"applyIgnoreScripts"),Bn=L((e,r,t,i,n={})=>{let a=e.name==="aube"?En(r):jt(e.name,e.version,r);n.ignoreScripts&&(a=Vn(a,e.name)),n.silent&&(a=Rt(a,e.name));const o=Er(e,a,t,i,{dry:n.dry,env:n.env});return o===0&&n.autoInstallPeers&&zn(e,r,t,i,n),o},"runAdd"),Wn=L(e=>{if(e.startsWith("@")){const t=e.indexOf("/");if(t===-1)return e;const i=e.indexOf("@",t);return i===-1?e:e.slice(0,i)}const r=e.indexOf("@");return r===-1?e:e.slice(0,r)},"stripVersionRange"),Hn=L((e,r)=>{let t=e;for(;;){const i=se(t,"node_modules",r,"package.json"),n=gr(i);if(n)return n;const a=lr(t);if(a===t||cr(t).root===t)return;t=a}},"findInstalledManifest"),Yn=L(e=>{const r=gr(se(e,"package.json")),t=new Set;if(!r)return t;for(const i of["dependencies","devDependencies","peerDependencies","optionalDependencies"]){const n=r[i];if(n)for(const a of Object.keys(n))t.add(a)}return t},"collectExistingDeps"),zn=L((e,r,t,i,n)=>{if(e.name==="deno")return;const a=Yn(t),o=new Map;for(const f of r.packages){const u=Wn(f),l=Hn(t,u);if(!l?.peerDependencies)continue;const s=l.peerDependenciesMeta??{};for(const[c,g]of Object.entries(l.peerDependencies))s[c]?.optional||a.has(c)||o.has(c)||o.set(c,g)}if(o.size===0)return;const m=[...o.entries()].map(([f,u])=>`${f}@${u}`);i.log(`auto-installing peer dependencies: ${m.join(", ")}`);const p={exact:!1,filter:r.filter,global:!1,optional:!1,packages:m,peer:!1,saveDev:r.saveDev,workspace:!1,workspaceRoot:r.workspaceRoot};Bn(e,p,t,i,{ignoreScripts:n.ignoreScripts})},"installMissingPeers"),la=L((e,r,t,i,n={})=>{let a=e.name==="aube"?bn(r):Ct(e.name,e.version,r);return n.silent&&(a=Rt(a,e.name)),Er(e,a,t,i,{dry:n.dry,env:n.env})},"runRemove"),ca=L((e,r,t,i,n={})=>e.name==="aube"?U(e,Rn(r),t,i,n):Y(e,()=>qt(e.name,e.version,r),t,i,n),"runDedupe"),pa=L((e,r,t,i,n={})=>e.name==="aube"?U(e,wn(r),t,i,n):Y(e,()=>Dt(e.name,e.version,r),t,i,n),"runWhy");L((e,r,t,i,n={})=>e.name==="aube"?U(e,$n(r),t,i,n):Y(e,()=>Mt(e.name,e.version,r),t,i,n),"runOutdated");const Jn=L((e,r)=>{if(e.name==="aube")return Ln(r);const t=[],i=[],n=e.name;switch(e.name){case"bun":{const a=ee.coerce(e.version);a&&ee.lt(a,"1.3.0")&&i.push(`bun ${e.version} does not support \`bun pm view\` (added in bun 1.3). Upgrade bun, or run \`npm view ${r.package}\` instead.`),t.push("pm","view","--",r.package,...r.fields),r.json&&t.push("--json");break}case"deno":{const a=r.package.startsWith("npm:")||r.package.startsWith("jsr:")||r.package.startsWith("https://")||r.package.startsWith("http://")||r.package.startsWith("file:")?r.package:`npm:${r.package}`;t.push("info","--",a),r.json&&t.push("--json"),r.fields.length>0&&i.push("deno info does not accept field selectors; ignoring.");break}case"npm":case"pnpm":{t.push("view","--",r.package,...r.fields),r.json&&t.push("--json");break}case"yarn":{if(e.version.startsWith("1.")){t.push("info","--",r.package);const[a,...o]=r.fields;a!==void 0&&(o.length>0&&i.push("yarn v1 only supports querying one field at a time; using the first."),t.push(a)),r.json&&t.push("--json")}else t.push("npm","info","--",r.package),r.fields.length>0&&i.push("yarn berry does not support field arguments to 'npm info'; ignoring."),r.json&&t.push("--json");break}default:{const a=e.name;throw new Error(`Unsupported package manager: ${a}`)}}return{args:t,bin:n,warnings:i}},"resolveInfo"),fa=L((e,r,t,i,n={})=>U(e,Jn(e,r),t,i,n),"runInfo"),ha=L((e,r,t,i,n={})=>e.name==="aube"?U(e,yn(r),t,i,n):Y(e,()=>_t(e.name,e.version,r),t,i,n),"runLink"),ma=L((e,r,t,i,n,a={})=>e.name==="aube"?U(e,kn(r,t),i,n,a):Y(e,()=>Gt(e.name,e.version,r,t),i,n,a),"runUnlink"),Zn=L((e,r,t)=>{if(e.args.includes("--offline")||e.args.includes("--cached-only"))return e;const i=L((n,a)=>{const o=[...e.args];return o.splice(a,0,n),{...e,args:o}},"insertAt");switch(r){case"aube":case"pnpm":return i("--offline",1);case"bun":return{...e,warnings:[...e.warnings,"bun x does not support --offline. Pre-install the package via `vis install` so bun x resolves from the local cache."]};case"deno":return i("--cached-only",1);case"npm":return i("--offline",1);case"yarn":return t.startsWith("1.")?i("--offline",0):{...e,warnings:[...e.warnings,"yarn berry has no --offline flag for dlx. Configure `enableNetwork: false` in .yarnrc.yml or set `enableMirror: true` for offline-first behavior."]};default:{const n=r;return{...e,warnings:[...e.warnings,`applyDlxOffline: unsupported pm ${String(n)}`]}}}},"applyDlxOffline"),da=L((e,r,t,i,n={})=>{let a=e.name==="aube"?On(r):Ft(e.name,e.version,r);return n.offline&&(a=Zn(a,e.name,e.version)),U(e,a,t,i,{dry:n.dry,env:n.env})},"runDlx"),va=L((e,r,t,i,n={})=>e.name==="aube"?U(e,In(r),t,i,n):Y(e,()=>Ut(e.name,e.version,r),t,i,n),"runExec"),ga=L((e,r,t,i,n,a={})=>{if(e.name==="aube")return U(e,Nn(r,t),i,n,a);const o=qn(e,r,t);return o.kind==="skip"?(n.warn(`warning: ${o.warning}`),0):o.kind==="rewrite"?U(e,{args:o.args,bin:o.bin,warnings:o.warning?[o.warning]:[]},i,n,a):Y(e,()=>xt(e.name,e.version,r,t),i,n,a)},"runPmSubcommand");export{ha as $,Gn as A,da as B,ua as C,la as E,sa as I,ga as L,ca as M,va as N,Bn as P,ia as R,fa as S,ma as W,pa as a,Tn as b,Vt as c,aa as k,Xt as r,ee as s,na as x,oa as y};
@@ -1 +1 @@
1
- var R=Object.defineProperty;var d=(e,t)=>R(e,"name",{value:t,configurable:!0});import{createRequire as M}from"node:module";import{s as u}from"./pm-runner-Cj76BV8q.js";import{n as $,b as S}from"../packem_chunks/config.js";import{M as v,i as k}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as U,i as D}from"../packem_chunks/bin.js";const T=M(import.meta.url),f=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,A=d(e=>{if(typeof f<"u"&&f.versions&&f.versions.node){const[t,r]=f.versions.node.split(".").map(Number);if(t>22||t===22&&r>=3||t===20&&r>=16)return f.getBuiltinModule(e)}return T(e)},"__cjs_getBuiltinModule"),{rmSync:p,writeFileSync:C,readdirSync:O}=A("node:fs");var N=Object.defineProperty,b=d((e,t)=>N(e,"name",{value:t,configurable:!0}),"o$1");const F=8,V=b(async(e,t,r)=>{if(e.length===0)return[];const o=Math.max(1,Math.min(t,e.length)),a=Array.from({length:e.length});let n=0;const i=b(async()=>{for(;n<e.length;){const s=n;n+=1;const l=e[s];a[s]=await r(l,s)}},"worker");return await Promise.all(Array.from({length:o},()=>i())),a},"mapWithConcurrency");var W=Object.defineProperty,c=d((e,t)=>W(e,"name",{value:t,configurable:!0}),"o");const w=2,E=1800*1e3,L=15e3,g=c(()=>v(U(),"packuments"),"getPackumentCacheDir"),P=c(e=>v(g(),`${encodeURIComponent(e)}.json`),"cacheFilePath"),x=c(e=>{const t=P(e);if(k(t))try{const r=$(t);if(r.cacheVersion!==w){p(t,{force:!0});return}if(Date.now()-r.createdAt>r.ttlMs){p(t,{force:!0});return}return r.packument}catch{p(t,{force:!0});return}},"readCached"),q=c((e,t,r)=>{S(g());const o={cacheVersion:w,createdAt:Date.now(),packument:t,ttlMs:r};C(P(e),JSON.stringify(o),"utf8")},"writeCached"),B=c(e=>{const t={},r=e.versions??{};for(const[a,n]of Object.entries(r)){const i=n.dist,s={version:a};if(n._npmUser!==void 0&&(s._npmUser=n._npmUser),n.maintainers!==void 0&&(s.maintainers=n.maintainers),n.bin!==void 0&&(s.bin=n.bin),i!==void 0){const l={};i.signatures!==void 0&&(l.signatures=i.signatures),i.attestations!==void 0&&(l.attestations=i.attestations),typeof i.integrity=="string"&&(l.integrity=i.integrity),typeof i.tarball=="string"&&(l.tarball=i.tarball),s.dist=l}n.repository!==void 0&&(s.repository=n.repository),n.license!==void 0&&(s.license=n.license),typeof n.readme=="string"&&(s.readme=n.readme),typeof n.readmeFilename=="string"&&(s.readmeFilename=n.readmeFilename),typeof n.private=="boolean"&&(s.private=n.private),typeof n.deprecated=="string"&&(s.deprecated=n.deprecated),n.scripts!==void 0&&typeof n.scripts=="object"&&(s.scripts=n.scripts),t[a]=s}const o={name:typeof e.name=="string"?e.name:"",versions:t};return e["dist-tags"]!==void 0&&(o["dist-tags"]=e["dist-tags"]),e.time!==void 0&&(o.time=e.time),typeof e.readme=="string"&&(o.readme=e.readme),o},"stripPackument"),H=c(e=>{const t={Accept:"application/json"};return e!==void 0&&e!==""&&(t.Authorization=`Bearer ${e}`),t},"buildHeaders"),z=c(async(e,t)=>{if(t.registryUrl!==void 0)return{authToken:t.authToken,url:t.registryUrl};if(t.workspaceRoot!==void 0){const{getRegistryForPackage:r,loadNpmrc:o}=await import("../packem_chunks/bin.js").then(s=>s.bk),a=o(t.workspaceRoot),{token:n,url:i}=r(e,a);return{authToken:t.authToken??n,url:i}}return{authToken:t.authToken,url:"https://registry.npmjs.org"}},"resolveRegistry"),I=c(async(e,t={})=>{const r=t.cacheTtlMs??E,o=x(e);if(o!==void 0)return o;const a=await z(e,t),n=`${a.url.endsWith("/")?a.url.slice(0,-1):a.url}/${e.replace("/","%2f")}`,i=new AbortController,s=setTimeout(()=>{i.abort()},L),l=c(()=>{i.abort()},"abortListener");t.signal?.addEventListener("abort",l,{once:!0});try{const m=await fetch(n,{headers:H(a.authToken),signal:i.signal});if(m.status===404)return;if(!m.ok)throw new Error(`Registry returned ${String(m.status)} for ${e}`);const _=await m.json(),y=B(_);return q(e,y,r),y}finally{clearTimeout(s),t.signal?.removeEventListener("abort",l)}},"getPackument"),te=c((e,t)=>{const r=Object.keys(e.versions);if(r.length===0)return;if(t===void 0||t===""||t==="latest")return e["dist-tags"]?.latest??r.at(-1);const o=e["dist-tags"]?.[t];return o!==void 0?o:Object.hasOwn(e.versions,t)?t:u.maxSatisfying(r,t)??void 0},"resolveVersionRange");c(()=>{const e=g();if(!k(e))return 0;let t=0;for(const r of O(e))r.endsWith(".json")&&(p(v(e,r),{force:!0}),t+=1);return t},"clearPackumentCache");var J=Object.defineProperty,h=d((e,t)=>J(e,"name",{value:t,configurable:!0}),"i");const j=h((e,t)=>e.versions[t]?.dist?.attestations?.provenance!==void 0,"hasProvenance"),Y=h((e,t)=>u.valid(t)?Object.keys(e.versions).filter(r=>u.valid(r)!==null&&u.lt(r,t)).filter(r=>u.satisfies(r,"*",{includePrerelease:!1})).filter(r=>j(e,r)).sort((r,o)=>u.lt(r,o)?1:-1)[0]:void 0,"findNewestPriorWithAttestations"),re=h(async(e,t={})=>{if(D("provenance"))return[];const r=new Set(t.allowlist),o=t.concurrency??F;return(await V(e,o,async({name:a,version:n})=>{if(r.has(a))return;const i=await I(a,{workspaceRoot:t.workspaceRoot});if(i===void 0||j(i,n))return;const s=Y(i,n);if(s!==void 0)return{packageName:a,priorVersionWithProvenance:s,version:n}})).filter(a=>a!==void 0)},"runProvenanceMarshall");export{F as D,te as a,Y as f,I as g,V as m,re as r};
1
+ var R=Object.defineProperty;var d=(e,t)=>R(e,"name",{value:t,configurable:!0});import{createRequire as M}from"node:module";import{s as u}from"./pm-runner-BwX5AL3W.js";import{n as $,b as S}from"../packem_chunks/config.js";import{M as v,i as k}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as U,i as D}from"../packem_chunks/bin.js";const T=M(import.meta.url),f=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,A=d(e=>{if(typeof f<"u"&&f.versions&&f.versions.node){const[t,r]=f.versions.node.split(".").map(Number);if(t>22||t===22&&r>=3||t===20&&r>=16)return f.getBuiltinModule(e)}return T(e)},"__cjs_getBuiltinModule"),{rmSync:p,writeFileSync:C,readdirSync:O}=A("node:fs");var N=Object.defineProperty,b=d((e,t)=>N(e,"name",{value:t,configurable:!0}),"o$1");const F=8,V=b(async(e,t,r)=>{if(e.length===0)return[];const o=Math.max(1,Math.min(t,e.length)),a=Array.from({length:e.length});let n=0;const i=b(async()=>{for(;n<e.length;){const s=n;n+=1;const l=e[s];a[s]=await r(l,s)}},"worker");return await Promise.all(Array.from({length:o},()=>i())),a},"mapWithConcurrency");var W=Object.defineProperty,c=d((e,t)=>W(e,"name",{value:t,configurable:!0}),"o");const w=2,E=1800*1e3,L=15e3,g=c(()=>v(U(),"packuments"),"getPackumentCacheDir"),P=c(e=>v(g(),`${encodeURIComponent(e)}.json`),"cacheFilePath"),x=c(e=>{const t=P(e);if(k(t))try{const r=$(t);if(r.cacheVersion!==w){p(t,{force:!0});return}if(Date.now()-r.createdAt>r.ttlMs){p(t,{force:!0});return}return r.packument}catch{p(t,{force:!0});return}},"readCached"),q=c((e,t,r)=>{S(g());const o={cacheVersion:w,createdAt:Date.now(),packument:t,ttlMs:r};C(P(e),JSON.stringify(o),"utf8")},"writeCached"),B=c(e=>{const t={},r=e.versions??{};for(const[a,n]of Object.entries(r)){const i=n.dist,s={version:a};if(n._npmUser!==void 0&&(s._npmUser=n._npmUser),n.maintainers!==void 0&&(s.maintainers=n.maintainers),n.bin!==void 0&&(s.bin=n.bin),i!==void 0){const l={};i.signatures!==void 0&&(l.signatures=i.signatures),i.attestations!==void 0&&(l.attestations=i.attestations),typeof i.integrity=="string"&&(l.integrity=i.integrity),typeof i.tarball=="string"&&(l.tarball=i.tarball),s.dist=l}n.repository!==void 0&&(s.repository=n.repository),n.license!==void 0&&(s.license=n.license),typeof n.readme=="string"&&(s.readme=n.readme),typeof n.readmeFilename=="string"&&(s.readmeFilename=n.readmeFilename),typeof n.private=="boolean"&&(s.private=n.private),typeof n.deprecated=="string"&&(s.deprecated=n.deprecated),n.scripts!==void 0&&typeof n.scripts=="object"&&(s.scripts=n.scripts),t[a]=s}const o={name:typeof e.name=="string"?e.name:"",versions:t};return e["dist-tags"]!==void 0&&(o["dist-tags"]=e["dist-tags"]),e.time!==void 0&&(o.time=e.time),typeof e.readme=="string"&&(o.readme=e.readme),o},"stripPackument"),H=c(e=>{const t={Accept:"application/json"};return e!==void 0&&e!==""&&(t.Authorization=`Bearer ${e}`),t},"buildHeaders"),z=c(async(e,t)=>{if(t.registryUrl!==void 0)return{authToken:t.authToken,url:t.registryUrl};if(t.workspaceRoot!==void 0){const{getRegistryForPackage:r,loadNpmrc:o}=await import("../packem_chunks/bin.js").then(s=>s.bm),a=o(t.workspaceRoot),{token:n,url:i}=r(e,a);return{authToken:t.authToken??n,url:i}}return{authToken:t.authToken,url:"https://registry.npmjs.org"}},"resolveRegistry"),I=c(async(e,t={})=>{const r=t.cacheTtlMs??E,o=x(e);if(o!==void 0)return o;const a=await z(e,t),n=`${a.url.endsWith("/")?a.url.slice(0,-1):a.url}/${e.replace("/","%2f")}`,i=new AbortController,s=setTimeout(()=>{i.abort()},L),l=c(()=>{i.abort()},"abortListener");t.signal?.addEventListener("abort",l,{once:!0});try{const m=await fetch(n,{headers:H(a.authToken),signal:i.signal});if(m.status===404)return;if(!m.ok)throw new Error(`Registry returned ${String(m.status)} for ${e}`);const _=await m.json(),y=B(_);return q(e,y,r),y}finally{clearTimeout(s),t.signal?.removeEventListener("abort",l)}},"getPackument"),te=c((e,t)=>{const r=Object.keys(e.versions);if(r.length===0)return;if(t===void 0||t===""||t==="latest")return e["dist-tags"]?.latest??r.at(-1);const o=e["dist-tags"]?.[t];return o!==void 0?o:Object.hasOwn(e.versions,t)?t:u.maxSatisfying(r,t)??void 0},"resolveVersionRange");c(()=>{const e=g();if(!k(e))return 0;let t=0;for(const r of O(e))r.endsWith(".json")&&(p(v(e,r),{force:!0}),t+=1);return t},"clearPackumentCache");var J=Object.defineProperty,h=d((e,t)=>J(e,"name",{value:t,configurable:!0}),"i");const j=h((e,t)=>e.versions[t]?.dist?.attestations?.provenance!==void 0,"hasProvenance"),Y=h((e,t)=>u.valid(t)?Object.keys(e.versions).filter(r=>u.valid(r)!==null&&u.lt(r,t)).filter(r=>u.satisfies(r,"*",{includePrerelease:!1})).filter(r=>j(e,r)).sort((r,o)=>u.lt(r,o)?1:-1)[0]:void 0,"findNewestPriorWithAttestations"),re=h(async(e,t={})=>{if(D("provenance"))return[];const r=new Set(t.allowlist),o=t.concurrency??F;return(await V(e,o,async({name:a,version:n})=>{if(r.has(a))return;const i=await I(a,{workspaceRoot:t.workspaceRoot});if(i===void 0||j(i,n))return;const s=Y(i,n);if(s!==void 0)return{packageName:a,priorVersionWithProvenance:s,version:n}})).filter(a=>a!==void 0)},"runProvenanceMarshall");export{F as D,te as a,Y as f,I as g,V as m,re as r};
@@ -1,4 +1,4 @@
1
- var S=Object.defineProperty;var g=(e,a)=>S(e,"name",{value:a,configurable:!0});import{createRequire as C}from"node:module";import{s as _,i as P,p as y}from"../packem_chunks/bin.js";import{h as O,M as V,r as F,a as L,b as I,c as B,d as W,e as U,f as Y}from"./s1ngularity-CiZla5EP.js";import{m as f,D as v,g as k,r as q}from"./provenance-CdvMwB2R.js";import{r as H}from"./signatures-BsEDWhME.js";import{s as z}from"./pm-runner-Cj76BV8q.js";import{d as G}from"./utils-DrNg0XTR.js";const E=C(import.meta.url),w=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,j=g(e=>{if(typeof w<"u"&&w.versions&&w.versions.node){const[a,s]=w.versions.node.split(".").map(Number);if(a>22||a===22&&s>=3||a===20&&s>=16)return w.getBuiltinModule(e)}return E(e)},"__cjs_getBuiltinModule"),{createInterface:x}=j("node:readline");var J=Object.defineProperty,m=g((e,a)=>J(e,"name",{value:a,configurable:!0}),"s");const K=15,Q=m(e=>{if(e===void 0)return!1;const a=e.trim().toLowerCase();return a!==""&&a!=="0"&&a!=="false"&&a!=="no"},"isTruthyEnv"),X=m(e=>{const a=(e.TERM??"").toLowerCase();return a!=="dumb"&&a!=="unknown"&&a!==""},"shouldAnimateCountdown"),Z=m(async e=>{const a=x({input:process.stdin,output:process.stdout});try{return await new Promise(s=>{a.question(e,r=>{s(r.trim().toLowerCase())})})}finally{a.close()}},"defaultReadline"),N=m(async(e,a)=>{const s=await a(e);return s==="y"||s==="yes"},"promptYesNo"),ee=m(async(e,a,s,r)=>new Promise(c=>{if(r?.aborted){c(!1);return}const o=X(s)&&a.isTTY!==!1;let n=e;const i=m(()=>{o?a.write(`\rContinuing in ${String(n)}s... press Ctrl-C to abort. `):n===e&&a.write(`Warnings present; proceeding in ${String(e)}s.
1
+ var S=Object.defineProperty;var g=(e,a)=>S(e,"name",{value:a,configurable:!0});import{createRequire as C}from"node:module";import{s as _,i as P,p as y}from"../packem_chunks/bin.js";import{h as O,M as V,r as F,a as L,b as I,c as B,d as W,e as U,f as Y}from"./s1ngularity-Bs9fUf3q.js";import{m as f,D as v,g as k,r as q}from"./provenance-BuiEsWbI.js";import{r as H}from"./signatures-LYMy8OR5.js";import{s as z}from"./pm-runner-BwX5AL3W.js";import{d as G}from"./utils-DrNg0XTR.js";const E=C(import.meta.url),w=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,j=g(e=>{if(typeof w<"u"&&w.versions&&w.versions.node){const[a,s]=w.versions.node.split(".").map(Number);if(a>22||a===22&&s>=3||a===20&&s>=16)return w.getBuiltinModule(e)}return E(e)},"__cjs_getBuiltinModule"),{createInterface:x}=j("node:readline");var J=Object.defineProperty,m=g((e,a)=>J(e,"name",{value:a,configurable:!0}),"s");const K=15,Q=m(e=>{if(e===void 0)return!1;const a=e.trim().toLowerCase();return a!==""&&a!=="0"&&a!=="false"&&a!=="no"},"isTruthyEnv"),X=m(e=>{const a=(e.TERM??"").toLowerCase();return a!=="dumb"&&a!=="unknown"&&a!==""},"shouldAnimateCountdown"),Z=m(async e=>{const a=x({input:process.stdin,output:process.stdout});try{return await new Promise(s=>{a.question(e,r=>{s(r.trim().toLowerCase())})})}finally{a.close()}},"defaultReadline"),N=m(async(e,a)=>{const s=await a(e);return s==="y"||s==="yes"},"promptYesNo"),ee=m(async(e,a,s,r)=>new Promise(c=>{if(r?.aborted){c(!1);return}const o=X(s)&&a.isTTY!==!1;let n=e;const i=m(()=>{o?a.write(`\rContinuing in ${String(n)}s... press Ctrl-C to abort. `):n===e&&a.write(`Warnings present; proceeding in ${String(e)}s.
2
2
  `)},"render");i();const d=setInterval(()=>{if(n-=1,n<=0){clearInterval(d),r?.removeEventListener("abort",l),o&&a.write(`\rContinuing now.
3
3
  `),c(!0);return}i()},1e3),l=m(()=>{clearInterval(d),o&&a.write(`\rAborted.
4
4
  `),c(!1)},"onAbort");r?.addEventListener("abort",l,{once:!0})}),"runCountdown"),ae=m(async(e,a={})=>{if(e.length===0)return{proceed:!0};const s=a.env??process.env,r=a.isTty??!!process.stdin.isTTY,c=a.isCi??_,o=a.strict??!1,n=a.readline??Z,i=a.output??{isTTY:!!process.stdout.isTTY,write:m(u=>process.stdout.write(u),"write")},d=Q(s.VIS_DISABLE_AUTO_CONTINUE),l=Number.parseInt(s.VIS_AUTO_CONTINUE_SECONDS??"",10),t=a.countdownSeconds??(Number.isFinite(l)&&l>0?l:K);return e.some(u=>u.severity==="error")?o?{proceed:!1,reason:"errors-present"}:c?{proceed:!1,reason:"errors-present"}:r?await N("Proceed despite errors? [y/N] ",n)?{proceed:!0}:{proceed:!1,reason:"user-aborted"}:{proceed:!1,reason:"non-tty"}:o?{proceed:!1,reason:"ci-strict"}:r?d?await N("Proceed despite warnings? [y/N] ",n)?{proceed:!0}:{proceed:!1,reason:"user-aborted"}:await ee(t,i,s,a.signal)?{proceed:!0}:{proceed:!1,reason:"user-aborted"}:{proceed:!0}},"presentMarshallDecision"),Oe=m(async(e,a={})=>{if(e.isEmpty())return!0;const s=e.all(),r=a.output??{isTTY:!!process.stdout.isTTY,write:m(c=>process.stdout.write(c),"write")};for(const c of O(s))r.write(`${c}
@@ -1 +1 @@
1
- var ie=Object.defineProperty;var p=(r,e)=>ie(r,"name",{value:e,configurable:!0});import{createRequire as oe}from"node:module";import{T as Q,e as j}from"./index.server-B7ETiT4C.js";import{n as V,b as W}from"../packem_chunks/config.js";import{M as k,i as N}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as B,i as b}from"../packem_chunks/bin.js";import{m as D,D as M,g as S}from"./provenance-CdvMwB2R.js";import{s as g}from"./pm-runner-Cj76BV8q.js";const ae=oe(import.meta.url),E=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,F=p(r=>{if(typeof E<"u"&&E.versions&&E.versions.node){const[e,t]=E.versions.node.split(".").map(Number);if(e>22||e===22&&t>=3||e===20&&t>=16)return E.getBuiltinModule(r)}return ae(r)},"__cjs_getBuiltinModule"),{rmSync:y,writeFileSync:L,readdirSync:U}=F("node:fs"),{createHash:ce}=F("node:crypto"),{Resolver:de}=F("node:dns/promises");var le=Object.defineProperty,I=p((r,e)=>le(r,"name",{value:e,configurable:!0}),"t$2");class mr{static{p(this,"MarshallFindings")}static{I(this,"MarshallFindings")}entries=[];add(e){this.entries.push(e)}addMany(e){for(const t of e)this.entries.push(t)}all(){return this.entries}errors(){return this.entries.filter(e=>e.severity==="error")}warnings(){return this.entries.filter(e=>e.severity==="warning")}hasErrors(){return this.entries.some(e=>e.severity==="error")}hasWarnings(){return this.entries.some(e=>e.severity==="warning")}isEmpty(){return this.entries.length===0}size(){return this.entries.length}}const pr=I(r=>{if(r.length===0)return[];const e=[],t=r.filter(s=>s.severity==="error"),n=r.filter(s=>s.severity==="warning");if(t.length>0){e.push(Q(`${String(t.length)} error${t.length===1?"":"s"}:`));for(const s of t)e.push(` ${Q("✗")} [${s.marshall}] ${s.packageName}: ${s.message}`),s.suggestedAction!==void 0&&e.push(` ${j("→")} ${s.suggestedAction}`)}if(n.length>0){t.length>0&&e.push(""),e.push(j(`${String(n.length)} warning${n.length===1?"":"s"}:`));for(const s of n)e.push(` ${j("⚠")} [${s.marshall}] ${s.packageName}: ${s.message}`),s.suggestedAction!==void 0&&e.push(` ${j("→")} ${s.suggestedAction}`)}return e},"formatMarshallFindingsAsTable"),gr=I(r=>({errors:r.filter(e=>e.severity==="error"),findings:[...r],summary:{errorCount:r.filter(e=>e.severity==="error").length,warningCount:r.filter(e=>e.severity==="warning").length},warnings:r.filter(e=>e.severity==="warning")}),"formatMarshallFindingsAsJson");var ue=Object.defineProperty,w=p((r,e)=>ue(r,"name",{value:e,configurable:!0}),"o$1");const he=1440*60*1e3,fe=15e3,ve="https://api.github.com/repos",H=w(()=>k(B(),"archived-repo"),"getArchivedRepoCacheDir"),te=w((r,e)=>k(H(),`${encodeURIComponent(r)}__${encodeURIComponent(e)}.json`),"cacheFilePath"),me=w((r,e)=>{const t=te(r,e);if(N(t))try{const n=V(t);if(Date.now()-n.createdAt>n.ttlMs){y(t,{force:!0});return}return n}catch{y(t,{force:!0});return}},"readCachedRepo"),Z=w((r,e,t,n)=>{W(H());const s={createdAt:Date.now(),ttlMs:n,...t};L(te(r,e),JSON.stringify(s),"utf8")},"writeCachedRepo"),pe=w(r=>{if(typeof r!="string"||r.trim()==="")return;const e=r.trim().replace(/^git\+/,""),t=/^git@github\.com:([^/]+)\/(.+?)(?:\.git)?\/?$/i.exec(e);if(t)return{owner:t[1],repo:t[2]};const n=/^ssh:\/\/git@github\.com\/([^/]+)\/(.+?)(?:\.git)?\/?$/i.exec(e);if(n)return{owner:n[1],repo:n[2]};const s=/^https?:\/\/(?:www\.)?github\.com\/([^/]+)\/([^/?#]+?)(?:\.git)?\/?$/i.exec(e);if(s)return{owner:s[1],repo:s[2]}},"parseGitHubUrl"),ge=w(async(r,e,t,n)=>{const s=`${ve}/${encodeURIComponent(r)}/${encodeURIComponent(e)}`,c=new AbortController,o=setTimeout(()=>{c.abort()},fe),i=w(()=>{c.abort()},"abortListener");n?.addEventListener("abort",i,{once:!0});const a={Accept:"application/vnd.github+json","User-Agent":"visulima-vis-marshall"};t!==void 0&&t!==""&&(a.Authorization=`Bearer ${t}`);try{const d=await fetch(s,{headers:a,signal:c.signal});if(d.status===404)return{kind:"missing"};if(!d.ok)return{kind:"transient-error"};const l=await d.json(),u=l.archived===!0,h=typeof l.archived_at=="string"?l.archived_at:void 0;return{archived:u,archivedAt:h,kind:"ok"}}catch{return{kind:"transient-error"}}finally{clearTimeout(o),n?.removeEventListener("abort",i)}},"fetchGitHubRepo"),we=w((r,e)=>e!==void 0&&r.includes(e)?e:r.at(-1),"resolveLatestVersion"),wr=w(async(r,e={})=>{if(b("archivedRepo"))return[];const t=new Set(e.allowlist),n=e.cacheTtlMs??he,s=e.githubToken??process.env.GITHUB_TOKEN,c=e.concurrency??M,o=new Map,i=w(async(a,d)=>{const l=`${a}/${d}`;let u=o.get(l);return u===void 0&&(u=(async()=>{const h=me(a,d);if(h!==void 0)return h.missing===!0?{archived:!1,kind:"missing"}:{archived:h.archived,archivedAt:h.archivedAt,kind:"ok"};const f=await ge(a,d,s,e.signal);return f.kind==="missing"?Z(a,d,{archived:!1,missing:!0},n):f.kind==="ok"&&Z(a,d,{archived:f.archived===!0,archivedAt:f.archivedAt},n),f})(),o.set(l,u)),u},"fetchRepoOnce");return(await D(r,c,async({name:a,version:d})=>{if(t.has(a))return;const l=await S(a,{workspaceRoot:e.workspaceRoot});if(l===void 0)return;const u=l.versions[d]??l.versions[we(Object.keys(l.versions),l["dist-tags"]?.latest)??""];if(u===void 0)return;const h=pe(u.repository?.url);if(h===void 0)return;const f=await i(h.owner,h.repo);if(f.kind!=="transient-error"){if(f.kind==="missing")return{kind:"missing-repo",owner:h.owner,packageName:a,repo:h.repo};if(f.archived===!0)return{...f.archivedAt===void 0?{}:{archivedAt:f.archivedAt},kind:"archived",owner:h.owner,packageName:a,repo:h.repo}}})).filter(a=>a!==void 0)},"runArchivedRepoMarshall");w(()=>{const r=H();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearArchivedRepoCache");var ye=Object.defineProperty,O=p((r,e)=>ye(r,"name",{value:e,configurable:!0}),"h$1");const ke={dormantErrorDays:274,dormantWarnDays:183,newPublisherWindowDays:21,recentVersionErrorDays:7,recentVersionWarnDays:30},$e=1440*60*1e3,J=O((r,e)=>(r-e)/$e,"daysBetween"),C=O(r=>{if(r!==void 0)return r.email??r.name},"userIdentity"),be=O((r,e,t,n,s)=>{const c=r.time?.[t];if(c===void 0)return;const o=new Date(c).getTime();if(!Number.isFinite(o))return;const i=J(n,o);if(i<s.recentVersionErrorDays)return{kind:"recent-version",message:`published ${i.toFixed(1)} days ago (error threshold: ${String(s.recentVersionErrorDays)})`,packageName:e,severity:"error",version:t};if(i<s.recentVersionWarnDays)return{kind:"recent-version",message:`published ${i.toFixed(1)} days ago (warn threshold: ${String(s.recentVersionWarnDays)})`,packageName:e,severity:"warning",version:t}},"checkRecentVersion"),De=O((r,e,t,n,s)=>{const c=r.versions[t],o=C(c?._npmUser);if(o===void 0)return;const i=Object.keys(r.versions).filter(u=>g.valid(u)!==null).filter(u=>g.lt(u,t));if(i.length===0||i.some(u=>C(r.versions[u]?._npmUser)===o))return;const a=r.time?.[i[0]??""];if(a===void 0)return;const d=new Date(a).getTime();if(!Number.isFinite(d))return;const l=J(n,d);if(!(l<=s.newPublisherWindowDays))return{kind:"new-publisher",message:`first publish by ${o} on a ${l.toFixed(0)}-day-old package`,packageName:e,severity:"error",version:t}},"checkNewPublisher"),Me=O((r,e,t,n,s)=>{const c=r.versions[t],o=C(c?._npmUser);if(o===void 0)return;const i=[];for(const[l,u]of Object.entries(r.versions)){if(l===t||C(u._npmUser)!==o)continue;const h=r.time?.[l];if(h===void 0)continue;const f=new Date(h).getTime();Number.isFinite(f)&&i.push(f)}if(i.length===0)return;const a=Math.max(...i),d=J(n,a);if(d>=s.dormantErrorDays)return{kind:"dormant-maintainer",message:`previous release by ${o} was ${d.toFixed(0)} days ago (error threshold: ${String(s.dormantErrorDays)})`,packageName:e,severity:"error",version:t};if(d>=s.dormantWarnDays)return{kind:"dormant-maintainer",message:`previous release by ${o} was ${d.toFixed(0)} days ago (warn threshold: ${String(s.dormantWarnDays)})`,packageName:e,severity:"warning",version:t}},"checkDormantMaintainer"),yr=O(async(r,e={})=>{if(b("author"))return[];const t=new Set(e.allowlist),n={...ke,...e.thresholds},s=e.now??(()=>Date.now()),c=e.concurrency??M;return(await D(r,c,async({name:o,version:i})=>{if(t.has(o))return[];const a=await S(o,{cacheTtlMs:e.cacheTtlMs,signal:e.signal,workspaceRoot:e.workspaceRoot});if(a===void 0)return[];const d=s(),l=[],u=be(a,o,i,d,n);u!==void 0&&l.push(u);const h=De(a,o,i,d,n);h!==void 0&&l.push(h);const f=Me(a,o,i,d,n);return f!==void 0&&l.push(f),l})).flat()},"runAuthorMarshall");var Re=Object.defineProperty,$=p((r,e)=>Re(r,"name",{value:e,configurable:!0}),"t$1");const Ae=1440*60*1e3,Ne=15e3,Se=20,Oe=1e4,Ee="https://api.npmjs.org/downloads/point/last-month",z=$(()=>k(B(),"downloads"),"getDownloadsCacheDir"),ne=$(r=>k(z(),`${encodeURIComponent(r)}.json`),"cacheFilePath"),Te=$(r=>{const e=ne(r);if(N(e))try{const t=V(e);if(Date.now()-t.createdAt>t.ttlMs){y(e,{force:!0});return}return t.downloads}catch{y(e,{force:!0});return}},"readCachedDownloads"),je=$((r,e,t)=>{W(z());const n={createdAt:Date.now(),downloads:e,observedAt:new Date().toISOString(),ttlMs:t};L(ne(r),JSON.stringify(n),"utf8")},"writeCachedDownloads"),Ce=$(async(r,e)=>{const t=`${Ee}/${encodeURIComponent(r)}`,n=new AbortController,s=setTimeout(()=>{n.abort()},Ne),c=$(()=>{n.abort()},"abortListener");e?.addEventListener("abort",c,{once:!0});try{const o=await fetch(t,{signal:n.signal});if(o.status===404)return{kind:"no-data"};if(!o.ok)return{kind:"error"};const i=await o.json();return typeof i.downloads=="number"?{downloads:i.downloads,kind:"ok"}:{kind:"no-data"}}catch{return{kind:"error"}}finally{clearTimeout(s),e?.removeEventListener("abort",c)}},"fetchDownloads"),kr=$(async(r,e={})=>{if(b("downloads"))return[];const t=new Set(e.allowlist),n=e.errorThreshold??Se,s=e.warnThreshold??Oe,c=e.cacheTtlMs??Ae,o=e.concurrency??M;return(await D(r,o,async i=>{if(t.has(i))return;let a=Te(i);if(a===void 0){const d=await Ce(i,e.signal);if(d.kind==="no-data"||d.kind==="error")return{downloadsLastMonth:void 0,kind:"no-data",packageName:i,severity:"warning"};a=d.downloads??0,je(i,a,c)}if(a<n)return{downloadsLastMonth:a,kind:"below-error",packageName:i,severity:"error"};if(a<s)return{downloadsLastMonth:a,kind:"below-warning",packageName:i,severity:"warning"}})).filter(i=>i!==void 0)},"runDownloadsMarshall");$(()=>{const r=z();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearDownloadsCache");var xe=Object.defineProperty,m=p((r,e)=>xe(r,"name",{value:e,configurable:!0}),"t");const Pe=1440*60*1e3,_e=4e3,Fe=["1.1.1.1","8.8.8.8"],q=m(()=>k(B(),"expired-domains"),"getExpiredDomainsCacheDir"),se=m(r=>{const e=ce("sha256").update(r).digest("hex").slice(0,12);return k(q(),`${e}.json`)},"cacheFilePath"),Le=m(r=>{const e=se(r);if(N(e))try{const t=V(e);if(Date.now()-t.createdAt>t.ttlMs){y(e,{force:!0});return}return t}catch{y(e,{force:!0});return}},"readCachedDomain"),Ue=m((r,e,t)=>{W(q());const n={createdAt:Date.now(),outcome:e,ttlMs:t};L(se(r),JSON.stringify(n),"utf8")},"writeCachedDomain"),Ve=m(r=>{if(typeof r!="string")return;const e=r.lastIndexOf("@");if(e===-1||e===r.length-1)return;const t=r.slice(e+1).trim().toLowerCase();return t===""?void 0:t},"extractDomain"),We=m((r,e)=>{const t=[];e!==void 0&&t.push(e);for(const n of r??[])t.push(n);return t},"collectMaintainers"),Be=m(async(r,e)=>{let t;try{return await Promise.race([r,new Promise((n,s)=>{t=setTimeout(()=>{s(new Error("ETIMEDOUT"))},e)})])}finally{t!==void 0&&clearTimeout(t)}},"withTimeout"),Ie=m(r=>{if(r===null||typeof r!="object")return!1;const{code:e}=r;return e==="ENOTFOUND"||e==="ENODATA"||e==="NXDOMAIN"},"isExpiredError"),He=m(async(r,e,t)=>{try{const n=await Be(r.resolveNs(e),t);return Array.isArray(n)&&n.length>0?{kind:"ok"}:{kind:"expired"}}catch(n){return Ie(n)?{kind:"expired"}:{kind:"transient-error"}}},"resolveDomain"),Je=m((r,e)=>e!==void 0&&r.includes(e)?e:r.at(-1),"resolveLatestVersion"),$r=m(async(r,e={})=>{if(b("expiredDomains"))return[];const t=new Set(e.allowlist),n=new Set((e.allowDomains??[]).map(u=>u.toLowerCase())),s=e.cacheTtlMs??Pe,c=e.perDomainTimeoutMs??_e,o=e.dnsServers??Fe,i=e.concurrency??M,a=e.createResolver===void 0?new de:e.createResolver();typeof a.setServers=="function"&&a.setServers(o);const d=new Map,l=m(async u=>{let h=d.get(u);return h===void 0&&(h=(async()=>{const f=Le(u);if(f!==void 0)return{kind:f.outcome==="ok"?"ok":"expired"};const v=await He(a,u,c);return v.kind!=="transient-error"&&Ue(u,v.kind,s),v})(),d.set(u,h)),h},"resolveDomainOnce");return(await D(r,i,async({name:u,version:h})=>{if(t.has(u))return[];const f=await S(u,{workspaceRoot:e.workspaceRoot});if(f===void 0)return[];const v=f.versions[h]??f.versions[Je(Object.keys(f.versions),f["dist-tags"]?.latest)??""];if(v===void 0)return[];const P=We(v.maintainers,v._npmUser),K=new Set,_=[];for(const T of P){const A=Ve(T.email);if(A===void 0||n.has(A))continue;const X=`${A}:${T.email??""}`;if(K.has(X))continue;K.add(X);const Y=await l(A);Y.kind==="expired"?_.push({domain:A,kind:"expired",maintainer:T.email??"",packageName:u,severity:"error"}):Y.kind==="transient-error"&&_.push({domain:A,kind:"unresolved",maintainer:T.email??"",packageName:u,severity:"warning"})}return _})).flat()},"runExpiredDomainsMarshall");m(()=>{const r=q();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearExpiredDomainsCache");var ze=Object.defineProperty,R=p((r,e)=>ze(r,"name",{value:e,configurable:!0}),"s");const qe=["readme","license","repo"],Ge=["ERROR: No README data found!","# Security holding package"],Ke=R(r=>{const e=r.trim();return e===""?!0:Ge.some(t=>e.startsWith(t))},"isPlaceholderReadme"),Xe=R((r,e)=>{if(typeof e.readme=="string")return e.readme;if(typeof r.readme=="string")return r.readme},"getReadme"),Ye=R((r,e)=>{const t=Xe(r,e);if(t===void 0)return"missing-readme";if(Ke(t))return"placeholder-readme"},"checkReadme"),Qe=R(r=>{const{license:e}=r;return e===void 0?"missing-license":typeof e=="string"?e.trim()===""?"missing-license":void 0:typeof e.type=="string"&&e.type.trim()!==""?void 0:"missing-license"},"checkLicense"),Ze=R(r=>{const{repository:e}=r;if(e===void 0)return"missing-repo";const t=typeof e.url=="string"?e.url.trim():"";if(t==="")return"missing-repo";let n=t.replace(/^git\+/,"");const s=/^git@([^:]+):(.+?)(?:\.git)?$/.exec(n);return s&&(n=`https://${s[1]}/${s[2]}`),URL.canParse(n)?void 0:"invalid-repo-url"},"checkRepository"),er=R(r=>{const e=r["dist-tags"]?.latest;return e!==void 0&&Object.hasOwn(r.versions,e)?e:Object.keys(r.versions).at(-1)},"resolveLatestVersion"),br=R(async(r,e={})=>{if(b("metadata"))return[];const t=new Set(e.allowlist),n=new Set(e.checks??qe),s=e.concurrency??M;return(await D(r,s,async({name:c,version:o})=>{if(t.has(c))return;const i=await S(c,{workspaceRoot:e.workspaceRoot});if(i===void 0)return;const a=i.versions[o]??i.versions[er(i)??""];if(a===void 0||a.private===!0)return;const d=[];if(n.has("readme")){const l=Ye(i,a);l!==void 0&&d.push(l)}if(n.has("license")){const l=Qe(a);l!==void 0&&d.push(l)}if(n.has("repo")){const l=Ze(a);l!==void 0&&d.push(l)}if(d.length!==0)return{issues:d,packageName:c,version:o}})).filter(c=>c!==void 0)},"runMetadataMarshall");var rr=Object.defineProperty,G=p((r,e)=>rr(r,"name",{value:e,configurable:!0}),"o");const ee=G((r,e)=>r===void 0?{}:typeof r=="string"?{[e.startsWith("@")?e.split("/").at(1)??e:e]:r}:{...r},"normalizeBin"),tr=G((r,e)=>g.valid(e)?Object.keys(r.versions).filter(t=>g.valid(t)!==null&&g.lt(t,e)).sort((t,n)=>g.lt(t,n)?1:-1)[0]:void 0,"findImmediatelyPriorVersion"),Dr=G(async(r,e={})=>{if(b("newBin"))return[];const t=new Set(e.allowlist),n=new Set(e.allowBins),s=e.concurrency??M;return(await D(r,s,async({name:c,version:o})=>{if(t.has(c))return;const i=await S(c,{workspaceRoot:e.workspaceRoot});if(i===void 0)return;const a=i.versions[o];if(a===void 0)return;const d=tr(i,o);if(d===void 0)return;const l=i.versions[d];if(l===void 0)return;const u=ee(a.bin,c),h=ee(l.bin,c),f=Object.entries(u).filter(([v])=>!(v in h)).filter(([v])=>!n.has(v)).map(([v,P])=>({command:P,name:v}));if(f.length!==0)return{fromVersion:d,newBins:f,packageName:c,toVersion:o}})).filter(c=>c!==void 0)},"runNewBinMarshall");var nr=Object.defineProperty,x=p((r,e)=>nr(r,"name",{value:e,configurable:!0}),"a");const sr=["preinstall","install","postinstall"],re=x((r,e)=>r.versions[e]?.dist?.attestations?.provenance!==void 0,"hasProvenance"),ir=x((r,e)=>{if(g.valid(e)!==null)return Object.keys(r.versions).filter(t=>g.valid(t)!==null&&g.prerelease(t)===null&&g.lt(t,e)).sort((t,n)=>g.lt(t,n)?1:-1)[0]},"findNewestPriorStable"),or=x((r,e)=>{const t=r??{},n=e??{},s=[];for(const c of sr){const o=t[c];if(o===void 0||o==="")continue;const i=n[c];i===void 0||i===""?s.push({command:o,hook:c,kind:"introduced"}):i!==o&&s.push({command:o,hook:c,kind:"changed"})}return s},"installHookChanges"),Mr=x(async(r,e={})=>{if(b("s1ngularity"))return[];const t=new Set(e.allowlist),n=e.concurrency??M;return(await D(r,n,async({name:s,version:c})=>{if(t.has(s))return;const o=await S(s,{workspaceRoot:e.workspaceRoot});if(o?.versions[c]===void 0)return;const i=ir(o,c);if(i===void 0||!re(o,i)||re(o,c))return;const a=or(o.versions[c]?.scripts,o.versions[i]?.scripts);if(a.length!==0)return{hookChanges:a,packageName:s,priorVersion:i,trustSignal:"provenance-dropped",version:c}})).filter(s=>s!==void 0)},"runS1ngularityMarshall");export{mr as M,Mr as a,Dr as b,br as c,kr as d,$r as e,wr as f,gr as g,pr as h,yr as r};
1
+ var ie=Object.defineProperty;var p=(r,e)=>ie(r,"name",{value:e,configurable:!0});import{createRequire as oe}from"node:module";import{T as Q,e as j}from"./index.server-B7ETiT4C.js";import{n as V,b as W}from"../packem_chunks/config.js";import{M as k,i as N}from"./readFileSync-CGmzMUF2-D6rUjGDn.js";import{g as B,i as b}from"../packem_chunks/bin.js";import{m as D,D as M,g as S}from"./provenance-BuiEsWbI.js";import{s as g}from"./pm-runner-BwX5AL3W.js";const ae=oe(import.meta.url),E=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,F=p(r=>{if(typeof E<"u"&&E.versions&&E.versions.node){const[e,t]=E.versions.node.split(".").map(Number);if(e>22||e===22&&t>=3||e===20&&t>=16)return E.getBuiltinModule(r)}return ae(r)},"__cjs_getBuiltinModule"),{rmSync:y,writeFileSync:L,readdirSync:U}=F("node:fs"),{createHash:ce}=F("node:crypto"),{Resolver:de}=F("node:dns/promises");var le=Object.defineProperty,I=p((r,e)=>le(r,"name",{value:e,configurable:!0}),"t$2");class mr{static{p(this,"MarshallFindings")}static{I(this,"MarshallFindings")}entries=[];add(e){this.entries.push(e)}addMany(e){for(const t of e)this.entries.push(t)}all(){return this.entries}errors(){return this.entries.filter(e=>e.severity==="error")}warnings(){return this.entries.filter(e=>e.severity==="warning")}hasErrors(){return this.entries.some(e=>e.severity==="error")}hasWarnings(){return this.entries.some(e=>e.severity==="warning")}isEmpty(){return this.entries.length===0}size(){return this.entries.length}}const pr=I(r=>{if(r.length===0)return[];const e=[],t=r.filter(s=>s.severity==="error"),n=r.filter(s=>s.severity==="warning");if(t.length>0){e.push(Q(`${String(t.length)} error${t.length===1?"":"s"}:`));for(const s of t)e.push(` ${Q("✗")} [${s.marshall}] ${s.packageName}: ${s.message}`),s.suggestedAction!==void 0&&e.push(` ${j("→")} ${s.suggestedAction}`)}if(n.length>0){t.length>0&&e.push(""),e.push(j(`${String(n.length)} warning${n.length===1?"":"s"}:`));for(const s of n)e.push(` ${j("⚠")} [${s.marshall}] ${s.packageName}: ${s.message}`),s.suggestedAction!==void 0&&e.push(` ${j("→")} ${s.suggestedAction}`)}return e},"formatMarshallFindingsAsTable"),gr=I(r=>({errors:r.filter(e=>e.severity==="error"),findings:[...r],summary:{errorCount:r.filter(e=>e.severity==="error").length,warningCount:r.filter(e=>e.severity==="warning").length},warnings:r.filter(e=>e.severity==="warning")}),"formatMarshallFindingsAsJson");var ue=Object.defineProperty,w=p((r,e)=>ue(r,"name",{value:e,configurable:!0}),"o$1");const he=1440*60*1e3,fe=15e3,ve="https://api.github.com/repos",H=w(()=>k(B(),"archived-repo"),"getArchivedRepoCacheDir"),te=w((r,e)=>k(H(),`${encodeURIComponent(r)}__${encodeURIComponent(e)}.json`),"cacheFilePath"),me=w((r,e)=>{const t=te(r,e);if(N(t))try{const n=V(t);if(Date.now()-n.createdAt>n.ttlMs){y(t,{force:!0});return}return n}catch{y(t,{force:!0});return}},"readCachedRepo"),Z=w((r,e,t,n)=>{W(H());const s={createdAt:Date.now(),ttlMs:n,...t};L(te(r,e),JSON.stringify(s),"utf8")},"writeCachedRepo"),pe=w(r=>{if(typeof r!="string"||r.trim()==="")return;const e=r.trim().replace(/^git\+/,""),t=/^git@github\.com:([^/]+)\/(.+?)(?:\.git)?\/?$/i.exec(e);if(t)return{owner:t[1],repo:t[2]};const n=/^ssh:\/\/git@github\.com\/([^/]+)\/(.+?)(?:\.git)?\/?$/i.exec(e);if(n)return{owner:n[1],repo:n[2]};const s=/^https?:\/\/(?:www\.)?github\.com\/([^/]+)\/([^/?#]+?)(?:\.git)?\/?$/i.exec(e);if(s)return{owner:s[1],repo:s[2]}},"parseGitHubUrl"),ge=w(async(r,e,t,n)=>{const s=`${ve}/${encodeURIComponent(r)}/${encodeURIComponent(e)}`,c=new AbortController,o=setTimeout(()=>{c.abort()},fe),i=w(()=>{c.abort()},"abortListener");n?.addEventListener("abort",i,{once:!0});const a={Accept:"application/vnd.github+json","User-Agent":"visulima-vis-marshall"};t!==void 0&&t!==""&&(a.Authorization=`Bearer ${t}`);try{const d=await fetch(s,{headers:a,signal:c.signal});if(d.status===404)return{kind:"missing"};if(!d.ok)return{kind:"transient-error"};const l=await d.json(),u=l.archived===!0,h=typeof l.archived_at=="string"?l.archived_at:void 0;return{archived:u,archivedAt:h,kind:"ok"}}catch{return{kind:"transient-error"}}finally{clearTimeout(o),n?.removeEventListener("abort",i)}},"fetchGitHubRepo"),we=w((r,e)=>e!==void 0&&r.includes(e)?e:r.at(-1),"resolveLatestVersion"),wr=w(async(r,e={})=>{if(b("archivedRepo"))return[];const t=new Set(e.allowlist),n=e.cacheTtlMs??he,s=e.githubToken??process.env.GITHUB_TOKEN,c=e.concurrency??M,o=new Map,i=w(async(a,d)=>{const l=`${a}/${d}`;let u=o.get(l);return u===void 0&&(u=(async()=>{const h=me(a,d);if(h!==void 0)return h.missing===!0?{archived:!1,kind:"missing"}:{archived:h.archived,archivedAt:h.archivedAt,kind:"ok"};const f=await ge(a,d,s,e.signal);return f.kind==="missing"?Z(a,d,{archived:!1,missing:!0},n):f.kind==="ok"&&Z(a,d,{archived:f.archived===!0,archivedAt:f.archivedAt},n),f})(),o.set(l,u)),u},"fetchRepoOnce");return(await D(r,c,async({name:a,version:d})=>{if(t.has(a))return;const l=await S(a,{workspaceRoot:e.workspaceRoot});if(l===void 0)return;const u=l.versions[d]??l.versions[we(Object.keys(l.versions),l["dist-tags"]?.latest)??""];if(u===void 0)return;const h=pe(u.repository?.url);if(h===void 0)return;const f=await i(h.owner,h.repo);if(f.kind!=="transient-error"){if(f.kind==="missing")return{kind:"missing-repo",owner:h.owner,packageName:a,repo:h.repo};if(f.archived===!0)return{...f.archivedAt===void 0?{}:{archivedAt:f.archivedAt},kind:"archived",owner:h.owner,packageName:a,repo:h.repo}}})).filter(a=>a!==void 0)},"runArchivedRepoMarshall");w(()=>{const r=H();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearArchivedRepoCache");var ye=Object.defineProperty,O=p((r,e)=>ye(r,"name",{value:e,configurable:!0}),"h$1");const ke={dormantErrorDays:274,dormantWarnDays:183,newPublisherWindowDays:21,recentVersionErrorDays:7,recentVersionWarnDays:30},$e=1440*60*1e3,J=O((r,e)=>(r-e)/$e,"daysBetween"),C=O(r=>{if(r!==void 0)return r.email??r.name},"userIdentity"),be=O((r,e,t,n,s)=>{const c=r.time?.[t];if(c===void 0)return;const o=new Date(c).getTime();if(!Number.isFinite(o))return;const i=J(n,o);if(i<s.recentVersionErrorDays)return{kind:"recent-version",message:`published ${i.toFixed(1)} days ago (error threshold: ${String(s.recentVersionErrorDays)})`,packageName:e,severity:"error",version:t};if(i<s.recentVersionWarnDays)return{kind:"recent-version",message:`published ${i.toFixed(1)} days ago (warn threshold: ${String(s.recentVersionWarnDays)})`,packageName:e,severity:"warning",version:t}},"checkRecentVersion"),De=O((r,e,t,n,s)=>{const c=r.versions[t],o=C(c?._npmUser);if(o===void 0)return;const i=Object.keys(r.versions).filter(u=>g.valid(u)!==null).filter(u=>g.lt(u,t));if(i.length===0||i.some(u=>C(r.versions[u]?._npmUser)===o))return;const a=r.time?.[i[0]??""];if(a===void 0)return;const d=new Date(a).getTime();if(!Number.isFinite(d))return;const l=J(n,d);if(!(l<=s.newPublisherWindowDays))return{kind:"new-publisher",message:`first publish by ${o} on a ${l.toFixed(0)}-day-old package`,packageName:e,severity:"error",version:t}},"checkNewPublisher"),Me=O((r,e,t,n,s)=>{const c=r.versions[t],o=C(c?._npmUser);if(o===void 0)return;const i=[];for(const[l,u]of Object.entries(r.versions)){if(l===t||C(u._npmUser)!==o)continue;const h=r.time?.[l];if(h===void 0)continue;const f=new Date(h).getTime();Number.isFinite(f)&&i.push(f)}if(i.length===0)return;const a=Math.max(...i),d=J(n,a);if(d>=s.dormantErrorDays)return{kind:"dormant-maintainer",message:`previous release by ${o} was ${d.toFixed(0)} days ago (error threshold: ${String(s.dormantErrorDays)})`,packageName:e,severity:"error",version:t};if(d>=s.dormantWarnDays)return{kind:"dormant-maintainer",message:`previous release by ${o} was ${d.toFixed(0)} days ago (warn threshold: ${String(s.dormantWarnDays)})`,packageName:e,severity:"warning",version:t}},"checkDormantMaintainer"),yr=O(async(r,e={})=>{if(b("author"))return[];const t=new Set(e.allowlist),n={...ke,...e.thresholds},s=e.now??(()=>Date.now()),c=e.concurrency??M;return(await D(r,c,async({name:o,version:i})=>{if(t.has(o))return[];const a=await S(o,{cacheTtlMs:e.cacheTtlMs,signal:e.signal,workspaceRoot:e.workspaceRoot});if(a===void 0)return[];const d=s(),l=[],u=be(a,o,i,d,n);u!==void 0&&l.push(u);const h=De(a,o,i,d,n);h!==void 0&&l.push(h);const f=Me(a,o,i,d,n);return f!==void 0&&l.push(f),l})).flat()},"runAuthorMarshall");var Re=Object.defineProperty,$=p((r,e)=>Re(r,"name",{value:e,configurable:!0}),"t$1");const Ae=1440*60*1e3,Ne=15e3,Se=20,Oe=1e4,Ee="https://api.npmjs.org/downloads/point/last-month",z=$(()=>k(B(),"downloads"),"getDownloadsCacheDir"),ne=$(r=>k(z(),`${encodeURIComponent(r)}.json`),"cacheFilePath"),Te=$(r=>{const e=ne(r);if(N(e))try{const t=V(e);if(Date.now()-t.createdAt>t.ttlMs){y(e,{force:!0});return}return t.downloads}catch{y(e,{force:!0});return}},"readCachedDownloads"),je=$((r,e,t)=>{W(z());const n={createdAt:Date.now(),downloads:e,observedAt:new Date().toISOString(),ttlMs:t};L(ne(r),JSON.stringify(n),"utf8")},"writeCachedDownloads"),Ce=$(async(r,e)=>{const t=`${Ee}/${encodeURIComponent(r)}`,n=new AbortController,s=setTimeout(()=>{n.abort()},Ne),c=$(()=>{n.abort()},"abortListener");e?.addEventListener("abort",c,{once:!0});try{const o=await fetch(t,{signal:n.signal});if(o.status===404)return{kind:"no-data"};if(!o.ok)return{kind:"error"};const i=await o.json();return typeof i.downloads=="number"?{downloads:i.downloads,kind:"ok"}:{kind:"no-data"}}catch{return{kind:"error"}}finally{clearTimeout(s),e?.removeEventListener("abort",c)}},"fetchDownloads"),kr=$(async(r,e={})=>{if(b("downloads"))return[];const t=new Set(e.allowlist),n=e.errorThreshold??Se,s=e.warnThreshold??Oe,c=e.cacheTtlMs??Ae,o=e.concurrency??M;return(await D(r,o,async i=>{if(t.has(i))return;let a=Te(i);if(a===void 0){const d=await Ce(i,e.signal);if(d.kind==="no-data"||d.kind==="error")return{downloadsLastMonth:void 0,kind:"no-data",packageName:i,severity:"warning"};a=d.downloads??0,je(i,a,c)}if(a<n)return{downloadsLastMonth:a,kind:"below-error",packageName:i,severity:"error"};if(a<s)return{downloadsLastMonth:a,kind:"below-warning",packageName:i,severity:"warning"}})).filter(i=>i!==void 0)},"runDownloadsMarshall");$(()=>{const r=z();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearDownloadsCache");var xe=Object.defineProperty,m=p((r,e)=>xe(r,"name",{value:e,configurable:!0}),"t");const Pe=1440*60*1e3,_e=4e3,Fe=["1.1.1.1","8.8.8.8"],q=m(()=>k(B(),"expired-domains"),"getExpiredDomainsCacheDir"),se=m(r=>{const e=ce("sha256").update(r).digest("hex").slice(0,12);return k(q(),`${e}.json`)},"cacheFilePath"),Le=m(r=>{const e=se(r);if(N(e))try{const t=V(e);if(Date.now()-t.createdAt>t.ttlMs){y(e,{force:!0});return}return t}catch{y(e,{force:!0});return}},"readCachedDomain"),Ue=m((r,e,t)=>{W(q());const n={createdAt:Date.now(),outcome:e,ttlMs:t};L(se(r),JSON.stringify(n),"utf8")},"writeCachedDomain"),Ve=m(r=>{if(typeof r!="string")return;const e=r.lastIndexOf("@");if(e===-1||e===r.length-1)return;const t=r.slice(e+1).trim().toLowerCase();return t===""?void 0:t},"extractDomain"),We=m((r,e)=>{const t=[];e!==void 0&&t.push(e);for(const n of r??[])t.push(n);return t},"collectMaintainers"),Be=m(async(r,e)=>{let t;try{return await Promise.race([r,new Promise((n,s)=>{t=setTimeout(()=>{s(new Error("ETIMEDOUT"))},e)})])}finally{t!==void 0&&clearTimeout(t)}},"withTimeout"),Ie=m(r=>{if(r===null||typeof r!="object")return!1;const{code:e}=r;return e==="ENOTFOUND"||e==="ENODATA"||e==="NXDOMAIN"},"isExpiredError"),He=m(async(r,e,t)=>{try{const n=await Be(r.resolveNs(e),t);return Array.isArray(n)&&n.length>0?{kind:"ok"}:{kind:"expired"}}catch(n){return Ie(n)?{kind:"expired"}:{kind:"transient-error"}}},"resolveDomain"),Je=m((r,e)=>e!==void 0&&r.includes(e)?e:r.at(-1),"resolveLatestVersion"),$r=m(async(r,e={})=>{if(b("expiredDomains"))return[];const t=new Set(e.allowlist),n=new Set((e.allowDomains??[]).map(u=>u.toLowerCase())),s=e.cacheTtlMs??Pe,c=e.perDomainTimeoutMs??_e,o=e.dnsServers??Fe,i=e.concurrency??M,a=e.createResolver===void 0?new de:e.createResolver();typeof a.setServers=="function"&&a.setServers(o);const d=new Map,l=m(async u=>{let h=d.get(u);return h===void 0&&(h=(async()=>{const f=Le(u);if(f!==void 0)return{kind:f.outcome==="ok"?"ok":"expired"};const v=await He(a,u,c);return v.kind!=="transient-error"&&Ue(u,v.kind,s),v})(),d.set(u,h)),h},"resolveDomainOnce");return(await D(r,i,async({name:u,version:h})=>{if(t.has(u))return[];const f=await S(u,{workspaceRoot:e.workspaceRoot});if(f===void 0)return[];const v=f.versions[h]??f.versions[Je(Object.keys(f.versions),f["dist-tags"]?.latest)??""];if(v===void 0)return[];const P=We(v.maintainers,v._npmUser),K=new Set,_=[];for(const T of P){const A=Ve(T.email);if(A===void 0||n.has(A))continue;const X=`${A}:${T.email??""}`;if(K.has(X))continue;K.add(X);const Y=await l(A);Y.kind==="expired"?_.push({domain:A,kind:"expired",maintainer:T.email??"",packageName:u,severity:"error"}):Y.kind==="transient-error"&&_.push({domain:A,kind:"unresolved",maintainer:T.email??"",packageName:u,severity:"warning"})}return _})).flat()},"runExpiredDomainsMarshall");m(()=>{const r=q();if(!N(r))return 0;let e=0;for(const t of U(r))t.endsWith(".json")&&(y(k(r,t),{force:!0}),e+=1);return e},"clearExpiredDomainsCache");var ze=Object.defineProperty,R=p((r,e)=>ze(r,"name",{value:e,configurable:!0}),"s");const qe=["readme","license","repo"],Ge=["ERROR: No README data found!","# Security holding package"],Ke=R(r=>{const e=r.trim();return e===""?!0:Ge.some(t=>e.startsWith(t))},"isPlaceholderReadme"),Xe=R((r,e)=>{if(typeof e.readme=="string")return e.readme;if(typeof r.readme=="string")return r.readme},"getReadme"),Ye=R((r,e)=>{const t=Xe(r,e);if(t===void 0)return"missing-readme";if(Ke(t))return"placeholder-readme"},"checkReadme"),Qe=R(r=>{const{license:e}=r;return e===void 0?"missing-license":typeof e=="string"?e.trim()===""?"missing-license":void 0:typeof e.type=="string"&&e.type.trim()!==""?void 0:"missing-license"},"checkLicense"),Ze=R(r=>{const{repository:e}=r;if(e===void 0)return"missing-repo";const t=typeof e.url=="string"?e.url.trim():"";if(t==="")return"missing-repo";let n=t.replace(/^git\+/,"");const s=/^git@([^:]+):(.+?)(?:\.git)?$/.exec(n);return s&&(n=`https://${s[1]}/${s[2]}`),URL.canParse(n)?void 0:"invalid-repo-url"},"checkRepository"),er=R(r=>{const e=r["dist-tags"]?.latest;return e!==void 0&&Object.hasOwn(r.versions,e)?e:Object.keys(r.versions).at(-1)},"resolveLatestVersion"),br=R(async(r,e={})=>{if(b("metadata"))return[];const t=new Set(e.allowlist),n=new Set(e.checks??qe),s=e.concurrency??M;return(await D(r,s,async({name:c,version:o})=>{if(t.has(c))return;const i=await S(c,{workspaceRoot:e.workspaceRoot});if(i===void 0)return;const a=i.versions[o]??i.versions[er(i)??""];if(a===void 0||a.private===!0)return;const d=[];if(n.has("readme")){const l=Ye(i,a);l!==void 0&&d.push(l)}if(n.has("license")){const l=Qe(a);l!==void 0&&d.push(l)}if(n.has("repo")){const l=Ze(a);l!==void 0&&d.push(l)}if(d.length!==0)return{issues:d,packageName:c,version:o}})).filter(c=>c!==void 0)},"runMetadataMarshall");var rr=Object.defineProperty,G=p((r,e)=>rr(r,"name",{value:e,configurable:!0}),"o");const ee=G((r,e)=>r===void 0?{}:typeof r=="string"?{[e.startsWith("@")?e.split("/").at(1)??e:e]:r}:{...r},"normalizeBin"),tr=G((r,e)=>g.valid(e)?Object.keys(r.versions).filter(t=>g.valid(t)!==null&&g.lt(t,e)).sort((t,n)=>g.lt(t,n)?1:-1)[0]:void 0,"findImmediatelyPriorVersion"),Dr=G(async(r,e={})=>{if(b("newBin"))return[];const t=new Set(e.allowlist),n=new Set(e.allowBins),s=e.concurrency??M;return(await D(r,s,async({name:c,version:o})=>{if(t.has(c))return;const i=await S(c,{workspaceRoot:e.workspaceRoot});if(i===void 0)return;const a=i.versions[o];if(a===void 0)return;const d=tr(i,o);if(d===void 0)return;const l=i.versions[d];if(l===void 0)return;const u=ee(a.bin,c),h=ee(l.bin,c),f=Object.entries(u).filter(([v])=>!(v in h)).filter(([v])=>!n.has(v)).map(([v,P])=>({command:P,name:v}));if(f.length!==0)return{fromVersion:d,newBins:f,packageName:c,toVersion:o}})).filter(c=>c!==void 0)},"runNewBinMarshall");var nr=Object.defineProperty,x=p((r,e)=>nr(r,"name",{value:e,configurable:!0}),"a");const sr=["preinstall","install","postinstall"],re=x((r,e)=>r.versions[e]?.dist?.attestations?.provenance!==void 0,"hasProvenance"),ir=x((r,e)=>{if(g.valid(e)!==null)return Object.keys(r.versions).filter(t=>g.valid(t)!==null&&g.prerelease(t)===null&&g.lt(t,e)).sort((t,n)=>g.lt(t,n)?1:-1)[0]},"findNewestPriorStable"),or=x((r,e)=>{const t=r??{},n=e??{},s=[];for(const c of sr){const o=t[c];if(o===void 0||o==="")continue;const i=n[c];i===void 0||i===""?s.push({command:o,hook:c,kind:"introduced"}):i!==o&&s.push({command:o,hook:c,kind:"changed"})}return s},"installHookChanges"),Mr=x(async(r,e={})=>{if(b("s1ngularity"))return[];const t=new Set(e.allowlist),n=e.concurrency??M;return(await D(r,n,async({name:s,version:c})=>{if(t.has(s))return;const o=await S(s,{workspaceRoot:e.workspaceRoot});if(o?.versions[c]===void 0)return;const i=ir(o,c);if(i===void 0||!re(o,i)||re(o,c))return;const a=or(o.versions[c]?.scripts,o.versions[i]?.scripts);if(a.length!==0)return{hookChanges:a,packageName:s,priorVersion:i,trustSignal:"provenance-dropped",version:c}})).filter(s=>s!==void 0)},"runS1ngularityMarshall");export{mr as M,Mr as a,Dr as b,br as c,kr as d,$r as e,wr as f,gr as g,pr as h,yr as r};
@@ -1,2 +1,2 @@
1
- var x=Object.defineProperty;var g=(t,e)=>x(t,"name",{value:e,configurable:!0});import{e as C,E as b,I as $,T as E}from"./index.server-B7ETiT4C.js";import{render as P}from"@visulima/tui";import{Z as m,s as j}from"../packem_chunks/bin.js";import S from"react";import{jsx as o,jsxs as y}from"react/jsx-runtime";import{Box as d}from"@visulima/tui/components/box";import{Spinner as O}from"@visulima/tui/components/spinner";import{Text as l}from"@visulima/tui/components/text";import{D as T,W as R,T as A,C as D}from"./symbols-CQmER5MT.js";var I=Object.defineProperty,Y=g((t,e)=>I(t,"name",{value:e,configurable:!0}),"l");const v=Y(({rows:t})=>o(d,{flexDirection:"column",children:t.map(e=>{let s;switch(e.status){case"error":{s=o(l,{color:"red",children:D});break}case"ok":{s=o(l,{color:"green",children:A});break}case"running":{s=o(l,{color:"white",children:o(O,{type:"dots"})});break}case"warn":{s=o(l,{color:"yellow",children:R});break}default:{s=o(l,{dimColor:!0,children:T});break}}return y(d,{children:[o(d,{width:3,children:s}),o(d,{flexGrow:1,children:o(l,{children:e.label})}),e.summary?o(d,{children:y(l,{dimColor:!0,children:[T," ",e.summary]})}):null]},e.id)})}),"ScanProgressApp");var B=Object.defineProperty,i=g((t,e)=>B(t,"name",{value:e,configurable:!0}),"e");const G={error:E(m.failure),ok:$(m.success),pending:b(m.dash),skip:b(m.dash),warn:C(m.warning)},M=i((t,e,s)=>{const p=s?`${t} ${b(`— ${s}`)}`:t;return` ${G[e]} ${p}
2
- `},"formatStaticRow"),Q=i((t,e={})=>{const s=e.stream??process.stderr,p=typeof s.isTTY=="boolean"&&s.isTTY&&!j,k=e.live??p,n=new Map;for(const r of t)n.set(r.id,{id:r.id,label:r.label,status:"pending"});if(!k||t.length===0)return{finish:i((r,a,f)=>{const c=n.get(r);c&&(n.set(r,{...c,status:a,summary:f}),s.write(M(c.label,a,f)))},"finish"),start:i(r=>{const a=n.get(r);a&&n.set(r,{...a,status:"running"})},"start"),stop:i(()=>{},"stop")};const w=i(()=>t.map(r=>n.get(r.id)),"buildRows");let u=P(S.createElement(v,{rows:w()}),{interactive:!0,patchConsole:!1});const h=i(()=>{u?.rerender(S.createElement(v,{rows:w()}))},"rerender");return{finish:i((r,a,f)=>{const c=n.get(r);c&&(n.set(r,{...c,status:a,summary:f}),h())},"finish"),start:i(r=>{const a=n.get(r);a&&(n.set(r,{...a,status:"running"}),h())},"start"),stop:i(()=>{u&&(h(),u.unmount(),u=void 0)},"stop")}},"startScanProgress");export{Q as s};
1
+ var x=Object.defineProperty;var g=(t,e)=>x(t,"name",{value:e,configurable:!0});import{e as C,E as b,I as E,T as P}from"./index.server-B7ETiT4C.js";import{render as R}from"@visulima/tui";import{Z as m,s as $}from"../packem_chunks/bin.js";import S from"react";import{jsx as o,jsxs as y}from"react/jsx-runtime";import{Box as d}from"@visulima/tui/components/box";import{Spinner as j}from"@visulima/tui/components/spinner";import{Text as l}from"@visulima/tui/components/text";import{D as T,W as O,T as A,C as D}from"./symbols-CQmER5MT.js";var I=Object.defineProperty,Y=g((t,e)=>I(t,"name",{value:e,configurable:!0}),"l");const v=Y(({rows:t})=>o(d,{flexDirection:"column",children:t.map(e=>{let s;switch(e.status){case"error":{s=o(l,{color:"red",children:D});break}case"ok":{s=o(l,{color:"green",children:A});break}case"running":{s=o(l,{color:"white",children:o(j,{type:"dots"})});break}case"warn":{s=o(l,{color:"yellow",children:O});break}default:{s=o(l,{dimColor:!0,children:T});break}}return y(d,{children:[o(d,{width:3,children:s}),o(d,{flexGrow:1,children:o(l,{children:e.label})}),e.summary?o(d,{children:y(l,{dimColor:!0,children:[T," ",e.summary]})}):null]},e.id)})}),"ScanProgressApp");var B=Object.defineProperty,i=g((t,e)=>B(t,"name",{value:e,configurable:!0}),"e");const G={error:P(m.failure),ok:E(m.success),pending:b(m.dash),skip:b(m.dash),warn:C(m.warning)},M=i((t,e,s)=>{const p=s?`${t} ${b(`— ${s}`)}`:t;return` ${G[e]} ${p}
2
+ `},"formatStaticRow"),Q=i((t,e={})=>{const s=e.stream??process.stderr,p=typeof s.isTTY=="boolean"&&s.isTTY&&!$,k=e.live??p,n=new Map;for(const r of t)n.set(r.id,{id:r.id,label:r.label,status:"pending"});if(!k||t.length===0)return{finish:i((r,a,f)=>{const c=n.get(r);c&&(n.set(r,{...c,status:a,summary:f}),s.write(M(c.label,a,f)))},"finish"),start:i(r=>{const a=n.get(r);a&&n.set(r,{...a,status:"running"})},"start"),stop:i(()=>{},"stop")};const w=i(()=>t.map(r=>n.get(r.id)),"buildRows");let u=R(S.createElement(v,{rows:w()}),{interactive:!0,patchConsole:!1});const h=i(()=>{u?.rerender(S.createElement(v,{rows:w()}))},"rerender");return{finish:i((r,a,f)=>{const c=n.get(r);c&&(n.set(r,{...c,status:a,summary:f}),h())},"finish"),start:i(r=>{const a=n.get(r);a&&(n.set(r,{...a,status:"running"}),h())},"start"),stop:i(()=>{u&&(h(),u.unmount(),u=void 0)},"stop")}},"startScanProgress");export{Q as s};
@@ -1,2 +1,2 @@
1
- var b=Object.defineProperty;var y=(s,e)=>b(s,"name",{value:e,configurable:!0});import{createRequire as N}from"node:module";import{m as x,D as B,g as E}from"./provenance-CdvMwB2R.js";import{i as M}from"../packem_chunks/bin.js";import{f as j}from"./registry-keys-pemEkRM9.js";const P=N(import.meta.url),g=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,_=y(s=>{if(typeof g<"u"&&g.versions&&g.versions.node){const[e,i]=g.versions.node.split(".").map(Number);if(e>22||e===22&&i>=3||e===20&&i>=16)return g.getBuiltinModule(s)}return P(s)},"__cjs_getBuiltinModule"),{createPublicKey:S,createVerify:R}=_("node:crypto");var A=Object.defineProperty,h=y((s,e)=>A(s,"name",{value:e,configurable:!0}),"n");const C=h(s=>{const e=["-----BEGIN PUBLIC KEY-----"],i=s.replaceAll(/\s+/g,"");for(let t=0;t<i.length;t+=64)e.push(i.slice(t,t+64));return e.push("-----END PUBLIC KEY-----"),e.join(`
1
+ var b=Object.defineProperty;var y=(s,e)=>b(s,"name",{value:e,configurable:!0});import{createRequire as N}from"node:module";import{m as x,D as B,g as E}from"./provenance-BuiEsWbI.js";import{i as M}from"../packem_chunks/bin.js";import{f as j}from"./registry-keys-pemEkRM9.js";const P=N(import.meta.url),g=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,_=y(s=>{if(typeof g<"u"&&g.versions&&g.versions.node){const[e,i]=g.versions.node.split(".").map(Number);if(e>22||e===22&&i>=3||e===20&&i>=16)return g.getBuiltinModule(s)}return P(s)},"__cjs_getBuiltinModule"),{createPublicKey:S,createVerify:R}=_("node:crypto");var A=Object.defineProperty,h=y((s,e)=>A(s,"name",{value:e,configurable:!0}),"n");const C=h(s=>{const e=["-----BEGIN PUBLIC KEY-----"],i=s.replaceAll(/\s+/g,"");for(let t=0;t<i.length;t+=64)e.push(i.slice(t,t+64));return e.push("-----END PUBLIC KEY-----"),e.join(`
2
2
  `)},"wrapSpkiPem"),D=h(({keyBase64:s,message:e,signatureBase64:i})=>{try{const t=S({format:"pem",key:C(s)}),o=R("SHA256");return o.update(e),o.end(),o.verify(t,Buffer.from(i,"base64"))}catch{return!1}},"verifyEcdsaSignature");var L=Object.defineProperty,f=y((s,e)=>L(s,"name",{value:e,configurable:!0}),"g");const U=f((s,e)=>{if(s.expires===void 0||s.expires==="")return!1;const i=Date.parse(s.expires);return Number.isNaN(i)?!1:i<=e},"isKeyExpired"),K=f((s,e,i)=>`${s}@${e}:${i}`,"buildSignedMessage"),T=f((s,e)=>e!==void 0&&s.includes(e)?e:s.at(-1),"resolveLatestVersion"),V=f(async(s,e={})=>{if(M("signatures"))return[];const i=new Set(e.allowlist),t=e.treatExpiredAs??"warning",o=e.concurrency??B,k=await j({keysUrl:e.keysUrl,signal:e.signal,ttlMs:e.keysTtlMs});if(k===void 0)return s.filter(({name:r})=>!i.has(r)).map(({name:r,version:a})=>({code:"fetch-failed",message:"Could not fetch registry signing keys.",packageName:r,severity:"warning",version:a}));const v=new Map;for(const r of k.keys)v.set(r.keyid,r);const w=Date.now();return(await x(s,o,async({name:r,version:a})=>{if(i.has(r))return[];const c=await E(r,{workspaceRoot:e.workspaceRoot});if(c===void 0)return[];const l=c.versions[a]??c.versions[T(Object.keys(c.versions),c["dist-tags"]?.latest)??""];if(l===void 0)return[];const p=l.dist?.signatures,m=l.dist?.integrity;if(p===void 0||p.length===0)return[{code:"missing-signature",message:`Package ${r}@${a} has no dist.signatures from the registry.`,packageName:r,severity:"warning",version:a}];if(typeof m!="string"||m==="")return[{code:"missing-signature",message:`Package ${r}@${a} has signatures but no dist.integrity to verify against.`,packageName:r,severity:"warning",version:a}];const $=K(r,a,m),u=[];for(const n of p){const d=v.get(n.keyid);if(d===void 0){u.push({code:"unknown-keyid",keyid:n.keyid,message:`Package ${r}@${a} was signed with an unrecognized keyid (${n.keyid}).`,packageName:r,severity:"error",version:a});continue}if(U(d,w)){u.push({code:"expired-key",keyid:n.keyid,message:`Package ${r}@${a} was signed with an expired key (${n.keyid}, expired ${d.expires??"unknown"}).`,packageName:r,severity:t,version:a});continue}D({keyBase64:d.key,message:$,signatureBase64:n.sig})||u.push({code:"invalid-signature",keyid:n.keyid,message:`Package ${r}@${a} signature did not verify against ${n.keyid}.`,packageName:r,severity:"error",version:a})}return u})).flat()},"runSignatureMarshall");export{V as r};