ramda-cli
Version:
A command-line tool for processing JSON with Ramda and LiveScript
43 lines (42 loc) • 1.57 kB
JavaScript
// Generated by LiveScript 1.6.0
(function(){
var ref$, npmInstallAsync, getPkgsToBeInstalled, config, gray, camelize, debug, getAliasForInstalled, getUninstalled, npmInstall;
ref$ = require('runtime-npm-install'), npmInstallAsync = ref$.npmInstallAsync, getPkgsToBeInstalled = ref$.getPkgsToBeInstalled;
config = require('./config');
gray = require('term-color').gray;
camelize = require('camelize');
debug = require('debug')('ramda-cli:npm-install');
getAliasForInstalled = function(optsImport, installed){
var imported;
imported = optsImport.find(function(it){
return it.packageSpec === installed.spec;
});
return imported.alias || camelize(installed.name);
};
getUninstalled = async function(packages){
return getPkgsToBeInstalled(packages, config.BASE_PATH);
};
npmInstall = async function(packages, optsImport, stderr){
var npmInstallResult, imports;
npmInstallResult = (await npmInstallAsync(packages, config.BASE_PATH));
if (npmInstallResult.npmOutput) {
stderr.write(gray(npmInstallResult.npmOutput) + '\n');
}
imports = npmInstallResult.packages.map(function(it){
return {
name: it.name,
version: it.json.version,
alias: getAliasForInstalled(optsImport, it),
exports: require(it.path)
};
});
imports.forEach(function(it){
return debug(it.name + "@" + it.version + " installed as " + it.alias);
});
return imports;
};
module.exports = {
npmInstall: npmInstall,
getUninstalled: getUninstalled
};
}).call(this);