Lines 1-8javascript
1import{createHash as e,randomUUID as t}from"node:crypto";import n from"node:process";import r from"cross-spawn";import{spawn as i}from"node:child_process";import{accessSync as a,constants as o,existsSync as s,mkdirSync as c,writeFileSync as l}from"node:fs";import{basename as u,delimiter as d,dirname as f,join as p,win32 as m}from"node:path";import{text as h}from"node:stream/consumers";import{chmod as ee,mkdir as g,mkdtemp as te,readFile as _,realpath as ne,rename as re,rm as v,stat as ie,writeFile as ae}from"node:fs/promises";import{homedir as oe}from"node:os";import{fileURLToPath as se}from"n ...
2`).some(e=>e.trim().split(/\s+/).at(-1)?.startsWith(n))}function It(e,t){let n=JSON.parse(e);if(typeof n!=`object`||!n||Array.isArray(n))return`unknown`;for(let e of[`dependencies`,`devDependencies`,`optionalDependencies`,`peerDependencies`]){if(!Object.hasOwn(n,e))continue;let r=n[e];if(typeof r!=`object`||!r||Array.isArray(r))return`unknown`;if(Object.hasOwn(r,t))return`present`}return`absent`}function Lt(e,t){let n=`${t}@`;for(let t of e.split(`
HighChild Process
Package source references child process execution.
dist/color-DRZEEJuf.mjsView on unpkg · L1 HighCommand Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
dist/color-DRZEEJuf.mjsView on unpkg · L1 3`)){let e=t.trim().split(/\s+/).at(-1);if(!e?.startsWith(n))continue;let r=e.slice(n.length);if(r)return r}}async function Rt(e,t,n){let r=await E(e,n,`bun mutation failed`);if(r.kind!==`success`)return r;let i=await Bt(t,n);return i.kind!==`success`&&e[1]===`add`&&await zt(t,n),i}async function zt(e,t){for(let n of new Set(e))await E([`bun`,`remove`,`-g`,n],t,`bun rollback failed`).catch(()=>void 0)}async function Bt(e,t){let n=[...new Set(e)];if(n.length===0)return{kind:`success`,value:void 0};let r=await Vt(t);if(r.kind!==`success`)return r;let i=Ht(r.value),a=n.filter(e=>i.has(e));return a ...
4`)){let e=n.replaceAll(`\\`,`/`).match(/^\.\/node_modules\/(.+?) @/);e?.[1]&&t.add(e[1])}return t}function Ut(){return[`ignore`,`pipe`,`pipe`]}const Wt=
5`)[0],r=n.match(mn);return r?r[1]:n||void 0}function gn(e,t){let n=Cn(e),r=Cn(t);if(!(!n||!r)){for(let e=0;e<3;e+=1){let t=n.core[e],i=r.core[e];if(t!==i)return t>i?1:-1}return wn(n.prerelease,r.prerelease)}}function _n(e,t){return gn(e,t)===1}async function vn(e,t,r){let i=t?.command??[e,`--version`];try{let e=C(i,{detached:r!==void 0&&n.platform!==`win32`}),{exitCode:a,stdout:o}=r?await T(e,r):await w(e);return a===0?hn(o,t?.parser):void 0}catch(e){if(S(e))throw e;return}}async function yn(e,t=`latest`,n={}){try{let r=P(n.registry)??`https://registry.npmjs.org`,i=await en(Tt(e,t,r),`npm:${r} ...
6`)[0]:void 0}catch(e){if(S(e))throw e;return}}async function xn(e,t){if(e){if(t?.signal.aborted)throw Sn(t.signal);try{let n=await ne(e);if(t?.signal.aborted)throw Sn(t.signal);return n}catch{if(t?.signal.aborted)throw Sn(t.signal);return e}}}function Sn(e){return new x({kind:`cancelled`,reason:typeof e.reason==`string`?e.reason:void 0})}function Cn(e){let t=e.trim().match(/^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9a-z.-]+))?$/i);if(t)return{core:[BigInt(t[1]),BigInt(t[2]),BigInt(t[3])],prerelease:t[4]?t[4].split(`.`):[]}}function wn(e,t){if(e.length===0&&t.length===0)return 0;if(e.length===0)return 1;if ...
7`).map(e=>e.trim());for(let e=t.length-1;e>=0;--e){let n=t[e];if(!n||n.startsWith(`#`)||n.startsWith(`;`))continue;let r=n.match(/^registry\s*=\s*
8`)[0];if(r)return r.match(/v?(\d+\.\d+\.\d+(?:-[a-z0-9.]+)?)/i)?.[1]??r}function Ps(e){if(e)return[n.execPath,p(e,`dist`,`cli.mjs`),`--version`]}async function Fs(e,t,r,i,a=zs(t),o){let s=o?.networkPort,c=s&&o?await Rs(e,{...o,networkPort:s}):await Ls(e);if(c.kind===`failure`)return c.result;let l=c.binary;Is(o);let d=await te(p(f(t),`.quantex-upgrade-`)),m=p(d,u(t)),h=`${t}.bak`,g=!1,_=!1;try{Is(o);let s=await Bs(t),c=qs(l);if(c!==Js(r))return $(`checksum`,`Checksum mismatch for ${e}. Expected ${Js(r)}, got ${c}.`);if(await ae(m,l),Is(o),n.platform===`win32`){let e=Vs(m,t,h,d,i,a);return _=e. ...
Long lines were clipped for display.