@rollup-umd/ncu
Version:
npm-check-updates rollup-umd preconfiguration
103 lines (78 loc) • 3.71 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createConfig = createConfig;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _require = require('fs'),
existsSync = _require.existsSync;
var _require2 = require('path'),
join = _require2.join;
var i = 0;
function autoconfig(opts, pkg, thisPkg, base) {
var autoconf = {
reject: []
};
if (!opts.disableAutoConf) {
[pkg.dependencies || {}, pkg.devDependencies || {}].forEach(function (o) {
Object.keys(o).forEach(function (dep) {
if (!(dep.indexOf(thisPkg.name) !== -1)) {
var _require3 = require(join(base, 'node_modules', dep, 'package.json')),
keywords = _require3.keywords,
ncurc = _require3.ncurc;
var ncu = ncurc;
if (!ncu && dep.indexOf('ncu') !== -1 && keywords && keywords.indexOf(thisPkg.name) !== -1) {
if (existsSync(join(base, 'node_modules', dep))) {
try {
ncu = require(join(base, 'node_modules', dep));
} catch (e) {
console.log("[Warning]: ".concat(dep, " cannot find ncu configuration"));
}
}
}
if (ncu) {
i === 1 && console.log("Auto configuration with ".concat(dep));
var _ref = ncu || {},
autoconfReject = _ref.reject,
autoconfRest = _ref.autoconfRest;
autoconf.reject = (0, _toConsumableArray2.default)(new Set([].concat((0, _toConsumableArray2.default)(autoconf.reject || []), (0, _toConsumableArray2.default)(autoconfReject || []))));
Object.assign(autoconf, autoconfRest);
}
}
});
});
}
return autoconf;
}
var defaultOptions = {
disableAutoConf: false
};
function createConfig() {
var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
i += 1;
var userReject = config.reject,
restUserConfig = (0, _objectWithoutProperties2.default)(config, ["reject"]);
var opts = (0, _objectSpread2.default)({}, defaultOptions, options);
var cwd = process.cwd();
var base = existsSync(join(cwd, 'package.json')) ? join(cwd) : join(__dirname, '..');
var pkg = require(join(base, 'package.json'));
var _ref2 = pkg.ncurc || {},
userExtReject = _ref2.reject,
restUserExtConfig = (0, _objectWithoutProperties2.default)(_ref2, ["reject"]);
var thisPkgPath = join(__dirname, '../package.json');
var thisPkg = existsSync(thisPkgPath) ? require(thisPkgPath) : {};
var _autoconfig = autoconfig(opts, pkg, thisPkg, base),
autoConfigReject = _autoconfig.reject,
restAutoConfig = (0, _objectWithoutProperties2.default)(_autoconfig, ["reject"]);
var reject = (0, _toConsumableArray2.default)(new Set([].concat((0, _toConsumableArray2.default)(userReject || []), (0, _toConsumableArray2.default)(userExtReject || []), (0, _toConsumableArray2.default)(autoConfigReject || []))));
if (reject.length) {
i === 1 && console.log("Rejected: ".concat(reject.join(', '), " will be ignored by npm-check-updates."));
}
return (0, _objectSpread2.default)({
reject: reject
}, Object.assign({}, restUserConfig, restUserExtConfig, restAutoConfig));
}