install-module-linked
Version:
Installs and symlinks a module into node_modules
1 lines • 2.36 kB
Source Map (JSON)
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node/install-module-linked/src/lib/install.cjs"],"sourcesContent":["const path = require('path');\nconst spawn = require('cross-spawn-cb');\nconst { spawnOptions } = require('node-version-utils');\n\nconst isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);\nconst major = +process.versions.node.split('.')[0];\n\nlet execPath = null;\nmodule.exports = function install(specifier, dest, callback) {\n if (major > 0) return spawn('npm', ['install', specifier], { cwd: dest }, callback);\n\n if (!execPath) {\n const satisfiesSemverSync = require('node-exec-path').satisfiesSemverSync;\n execPath = satisfiesSemverSync('>0.12'); // must be more than node 0.12\n if (!execPath) return callback(new Error('install-module-linked a version of node >0.12 to use npm install'));\n }\n\n try {\n const installPath = isWindows ? path.join(execPath, '..') : path.join(execPath, '..', '..');\n const options = spawnOptions(installPath, { execPath, callbacks: true });\n const res = require('function-exec-sync')(options, __filename, specifier, dest);\n callback(null, res);\n } catch (err) {\n callback(err);\n }\n};\n"],"names":["path","require","spawn","spawnOptions","isWindows","process","platform","test","env","OSTYPE","major","versions","node","split","execPath","module","exports","install","specifier","dest","callback","cwd","satisfiesSemverSync","Error","installPath","join","options","callbacks","res","__filename","err"],"mappings":"AAAA,MAAMA,OAAOC,QAAQ;AACrB,MAAMC,QAAQD,QAAQ;AACtB,MAAM,EAAEE,YAAY,EAAE,GAAGF,QAAQ;AAEjC,MAAMG,YAAYC,QAAQC,QAAQ,KAAK,WAAW,kBAAkBC,IAAI,CAACF,QAAQG,GAAG,CAACC,MAAM;AAC3F,MAAMC,QAAQ,CAACL,QAAQM,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAElD,IAAIC,WAAW;AACfC,OAAOC,OAAO,GAAG,SAASC,QAAQC,SAAS,EAAEC,IAAI,EAAEC,QAAQ;IACzD,IAAIV,QAAQ,GAAG,OAAOR,MAAM,OAAO;QAAC;QAAWgB;KAAU,EAAE;QAAEG,KAAKF;IAAK,GAAGC;IAE1E,IAAI,CAACN,UAAU;QACb,MAAMQ,sBAAsBrB,QAAQ,kBAAkBqB,mBAAmB;QACzER,WAAWQ,oBAAoB,UAAU,8BAA8B;QACvE,IAAI,CAACR,UAAU,OAAOM,SAAS,IAAIG,MAAM;IAC3C;IAEA,IAAI;QACF,MAAMC,cAAcpB,YAAYJ,KAAKyB,IAAI,CAACX,UAAU,QAAQd,KAAKyB,IAAI,CAACX,UAAU,MAAM;QACtF,MAAMY,UAAUvB,aAAaqB,aAAa;YAAEV;YAAUa,WAAW;QAAK;QACtE,MAAMC,MAAM3B,QAAQ,sBAAsByB,SAASG,YAAYX,WAAWC;QAC1EC,SAAS,MAAMQ;IACjB,EAAE,OAAOE,KAAK;QACZV,SAASU;IACX;AACF"}