UNPKG

linked-deps

Version:
54 lines (39 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isLinked = isLinked; exports.getLinked = getLinked; exports.getLinkedPaths = getLinkedPaths; exports.default = void 0; var _path = _interopRequireDefault(require("path")); var _fsExtra = _interopRequireDefault(require("fs-extra")); var _lodash = _interopRequireDefault(require("lodash")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function getPath(dependency) { return _path.default.join(process.cwd(), 'node_modules', dependency); } function isLinked(dependency) { var dependencyPath = getPath(dependency); var stats = _fsExtra.default.lstatSync(dependencyPath); return stats.isSymbolicLink(); } function getLinked() { var pkgPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _path.default.resolve(process.cwd(), 'package.json'); var pkg = require(pkgPath); var dependencies = _lodash.default.concat(_lodash.default.keys(pkg.devDependencies || {}), _lodash.default.keys(pkg.dependencies || {})); return _lodash.default.filter(dependencies, function (dependency) { return isLinked(dependency); }); } function getLinkedPaths(pkgPath) { return _lodash.default.map(getLinked(pkgPath), function (dependency) { return _fsExtra.default.realpathSync(getPath(dependency)); }); } var _default = { isLinked, getLinked, getLinkedPaths }; exports.default = _default;