function cleanup() { var spinner = startSpinner('Cleaning up', 'green'); if (argv.yarn) runCommand('yarn');else runCommand('npm install'); stopSpinner(spinner); }
...
} finally {
if (_didIteratorError2) {
throw _iteratorError2;
}
}
}
helpers.cleanup();
if (!watchersInitialized) initializeWatchers();
};
/* Turn the key */
main();
...
function diff(first, second) { var namesFromSecond = getNamesFromModules(second); return first.filter(function (module) { return !namesFromSecond.includes(module.name); }); }
...
var usedModules = helpers.getUsedModules();
usedModules = helpers.filterRegistryModules(usedModules);
// removeUnusedModules
if (uninstallMode) {
var unusedModules = helpers.diff(installedModules, usedModules);
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = unusedModules[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
_iteratorNormalCompletion = true) {
var module = _step.value;
...
function filterRegistryModules(modules) { return removeBuiltInModules(removeFilePaths(removeLocalFiles(modules))); }
...
return;
}
var installedModules = [];
installedModules = helpers.getInstalledModules();
var usedModules = helpers.getUsedModules();
usedModules = helpers.filterRegistryModules(usedModules);
// removeUnusedModules
if (uninstallMode) {
var unusedModules = helpers.diff(installedModules, usedModules);
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
...
function getInstalledModules() { var content = JSON.parse(readFile('package.json')); var installedModules = []; var dependencies = content.dependencies || {}; var devDependencies = content.devDependencies || {}; var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = Object.keys(dependencies)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator .next()).done); _iteratorNormalCompletion = true) { var key = _step.value; installedModules.push({ name: key, dev: false }); } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } var _iteratorNormalCompletion2 = true; var _didIteratorError2 = false; var _iteratorError2 = undefined; try { for (var _iterator2 = Object.keys(devDependencies)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { var _key = _step2.value; installedModules.push({ name: _key, dev: true }); } } catch (err) { _didIteratorError2 = true; _iteratorError2 = err; } finally { try { if (!_iteratorNormalCompletion2 && _iterator2.return) { _iterator2.return(); } } finally { if (_didIteratorError2) { throw _iteratorError2; } } } return installedModules; }
...
if (!helpers.packageJSONExists()) {
console.log(colors.red('package.json does not exist'));
console.log(colors.red('You can create one by using `npm init`'));
return;
}
var installedModules = [];
installedModules = helpers.getInstalledModules();
var usedModules = helpers.getUsedModules();
usedModules = helpers.filterRegistryModules(usedModules);
// removeUnusedModules
if (uninstallMode) {
...
function getUsedModules() { var files = getFiles(); var usedModules = []; var _iteratorNormalCompletion4 = true; var _didIteratorError4 = false; var _iteratorError4 = undefined; try { for (var _iterator4 = files[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done ); _iteratorNormalCompletion4 = true) { var fileName = _step4.value; var modulesFromFile = getModulesFromFile(fileName); var dev = isTestFile(fileName); var _iteratorNormalCompletion5 = true; var _didIteratorError5 = false; var _iteratorError5 = undefined; try { for (var _iterator5 = modulesFromFile[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5 .next()).done); _iteratorNormalCompletion5 = true) { var name = _step5.value; usedModules.push({ name: name, dev: dev }); } } catch (err) { _didIteratorError5 = true; _iteratorError5 = err; } finally { try { if (!_iteratorNormalCompletion5 && _iterator5.return) { _iterator5.return(); } } finally { if (_didIteratorError5) { throw _iteratorError5; } } } } } catch (err) { _didIteratorError4 = true; _iteratorError4 = err; } finally { try { if (!_iteratorNormalCompletion4 && _iterator4.return) { _iterator4.return(); } } finally { if (_didIteratorError4) { throw _iteratorError4; } } } usedModules = deduplicate(usedModules); return usedModules; }
...
console.log(colors.red('You can create one by using `npm init`'));
return;
}
var installedModules = [];
installedModules = helpers.getInstalledModules();
var usedModules = helpers.getUsedModules();
usedModules = helpers.filterRegistryModules(usedModules);
// removeUnusedModules
if (uninstallMode) {
var unusedModules = helpers.diff(installedModules, usedModules);
var _iteratorNormalCompletion = true;
...
function installModule(_ref2) { var name = _ref2.name; var dev = _ref2.dev; var spinner = startSpinner('Installing ' + name, 'green'); var command = getInstallCommand(name, dev); var message = name + ' installed'; if (dev) message += ' in devDependencies'; var success = runCommand(command); if (success) stopSpinner(spinner, message, 'green');else stopSpinner(spinner, name + ' installation failed', 'yellow'); }
...
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
try {
for (var _iterator2 = modulesNotInstalled[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next
()).done); _iteratorNormalCompletion2 = true) {
var _module = _step2.value;
if (secureMode) helpers.installModuleIfTrusted(_module);else helpers.installModule
span>(_module);
}
} catch (err) {
_didIteratorError2 = true;
_iteratorError2 = err;
} finally {
try {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
...
function installModuleIfTrusted(_ref4) { var name = _ref4.name; var dev = _ref4.dev; // Trust scoped modules if (isScopedModule(name)) installModule({ name: name, dev: dev });else { isModulePopular(name, function (popular) { // Popular as proxy for trusted if (popular) installModule({ name: name, dev: dev }); // Trusted Author else if (argv['trust-author']) installModuleIfTrustedAuthor({ name: name, dev: dev }); // Not trusted else console.log(colors.red(name + ' not trusted')); }); } }
...
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
try {
for (var _iterator2 = modulesNotInstalled[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next
()).done); _iteratorNormalCompletion2 = true) {
var _module = _step2.value;
if (secureMode) helpers.installModuleIfTrusted(_module);else helpers.installModule
(_module);
}
} catch (err) {
_didIteratorError2 = true;
_iteratorError2 = err;
} finally {
try {
if (!_iteratorNormalCompletion2 && _iterator2.return) {
...
function packageJSONExists() { return fs.existsSync('package.json'); }
...
* Get used modules from all files
* Install used modules that are not installed
* Remove installed modules that are not used
* After setup, initialize watchers
*/
main = function main() {
if (!helpers.packageJSONExists()) {
console.log(colors.red('package.json does not exist'));
console.log(colors.red('You can create one by using `npm init`'));
return;
}
var installedModules = [];
installedModules = helpers.getInstalledModules();
...
function uninstallModule(_ref5) { var name = _ref5.name; var dev = _ref5.dev; if (dev) return; var command = getUninstallCommand(name); var message = name + ' removed'; var spinner = startSpinner('Uninstalling ' + name, 'red'); runCommand(command); stopSpinner(spinner, message, 'red'); }
...
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = unusedModules[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
_iteratorNormalCompletion = true) {
var module = _step.value;
helpers.uninstallModule(module);
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return) {
...