UNPKG

@jitesoft/audit-for-gitlab

Version:

Minimal application to convert npm audit report into gitlab-ci vulnerability report format.

48 lines (45 loc) 1.39 kB
"use strict"; var _Object$defineProperty = require("@babel/runtime-corejs3/core-js/object/define-property"); var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default; _Object$defineProperty(exports, "__esModule", { value: true }); exports.default = getDependencies; var _Util = require("../Util"); var _v = _interopRequireDefault(require("./v1")); var _v2 = _interopRequireDefault(require("./v2")); var _v3 = _interopRequireDefault(require("./v3")); /** * @typedef DependencyInterface * @param {{name: string}} package * @param {string} version */ /** * @param {object|{lockfileVersion: number|undefined}} lockFile * @returns number */ function getLockfileVersion(lockFile) { if (lockFile.lockfileVersion === undefined) { return 1; } return lockFile.lockfileVersion; } /** * * @param {object} lockFile Lockfile to process. * @returns {Promise<Array<DependencyInterface>>} List of dependencies. */ async function getDependencies(lockFile) { const version = getLockfileVersion(lockFile); await (0, _Util.logger)(_Util.LogLevels.info, `PackageLock version ${version}`); switch (version) { case 1: return (0, _v.default)(lockFile); case 2: return (0, _v2.default)(lockFile); case 3: return (0, _v3.default)(lockFile); default: throw new Error('Invalid lockfile version'); } }