UNPKG

node-version-alias

Version:

Resolve Node.js version aliases like 'latest', 'lts' or 'erbium'

40 lines (25 loc) 674 B
import{execFile}from"node:child_process"; import{join}from"node:path"; import{env}from"node:process"; import{promisify}from"node:util"; import{pathExists}from"path-exists"; const pExecFile=promisify(execFile); export const getNvmCustomAlias=(alias)=>runNvmCommand(`nvm_alias ${alias}`); export const getNvmSystemVersion=()=> runNvmCommand("nvm deactivate >/dev/null && node --version"); const runNvmCommand=async(command)=>{ if(!env.NVM_DIR){ return } const nvmPath=join(env.NVM_DIR,"nvm.sh"); if(!(await pathExists(nvmPath))){ return } try{ const{stdout}=await pExecFile("bash",[ "-c", `source "${nvmPath}" && ${command}`] ); return stdout.trim() }catch{} };