UNPKG

@storm-software/workspace-tools

Version:

Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.

131 lines (114 loc) 4.8 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _chunk3GQAWCBQjs = require('./chunk-3GQAWCBQ.js'); // src/utils/lock-file.ts var _devkit = require('@nx/devkit'); var _fs = require('fs'); var _path = require('path'); var _npmparser = require('nx/src/plugins/js/lock-file/npm-parser'); var _pnpmparser = require('nx/src/plugins/js/lock-file/pnpm-parser'); var _yarnparser = require('nx/src/plugins/js/lock-file/yarn-parser'); var YARN_LOCK_FILE = "yarn.lock"; var NPM_LOCK_FILE = "package-lock.json"; var PNPM_LOCK_FILE = "pnpm-lock.yaml"; var LOCK_FILES = [ YARN_LOCK_FILE, NPM_LOCK_FILE, PNPM_LOCK_FILE ]; var YARN_LOCK_PATH = _path.join.call(void 0, _devkit.workspaceRoot, YARN_LOCK_FILE); var NPM_LOCK_PATH = _path.join.call(void 0, _devkit.workspaceRoot, NPM_LOCK_FILE); var PNPM_LOCK_PATH = _path.join.call(void 0, _devkit.workspaceRoot, PNPM_LOCK_FILE); function getLockFileNodes(packageManager, contents, lockFileHash, context) { try { if (packageManager === "yarn") { const packageJson = _devkit.readJsonFile.call(void 0, _path.join.call(void 0, context.workspaceRoot, "package.json")); return _yarnparser.getYarnLockfileNodes.call(void 0, contents, lockFileHash, packageJson); } if (packageManager === "pnpm") { return _pnpmparser.getPnpmLockfileNodes.call(void 0, contents, lockFileHash); } if (packageManager === "npm") { return _npmparser.getNpmLockfileNodes.call(void 0, contents, lockFileHash); } } catch (e) { if (!isPostInstallProcess()) { _devkit.output.error({ title: `Failed to parse ${packageManager} lockfile`, bodyLines: errorBodyLines(e) }); } throw e; } throw new Error(`Unknown package manager: ${packageManager}`); } _chunk3GQAWCBQjs.__name.call(void 0, getLockFileNodes, "getLockFileNodes"); function getLockFileDependencies(packageManager, contents, lockFileHash, context) { try { if (packageManager === "yarn") { return _yarnparser.getYarnLockfileDependencies.call(void 0, contents, lockFileHash, context); } if (packageManager === "pnpm") { return _pnpmparser.getPnpmLockfileDependencies.call(void 0, contents, lockFileHash, context); } if (packageManager === "npm") { return _npmparser.getNpmLockfileDependencies.call(void 0, contents, lockFileHash, context); } } catch (e) { if (!isPostInstallProcess()) { _devkit.output.error({ title: `Failed to parse ${packageManager} lockfile`, bodyLines: errorBodyLines(e) }); } throw e; } throw new Error(`Unknown package manager: ${packageManager}`); } _chunk3GQAWCBQjs.__name.call(void 0, getLockFileDependencies, "getLockFileDependencies"); function lockFileExists(packageManager) { if (packageManager === "yarn") { return _fs.existsSync.call(void 0, YARN_LOCK_PATH); } if (packageManager === "pnpm") { return _fs.existsSync.call(void 0, PNPM_LOCK_PATH); } if (packageManager === "npm") { return _fs.existsSync.call(void 0, NPM_LOCK_PATH); } throw new Error(`Unknown package manager ${packageManager} or lock file missing`); } _chunk3GQAWCBQjs.__name.call(void 0, lockFileExists, "lockFileExists"); function getLockFileName(packageManager) { if (packageManager === "yarn") { return YARN_LOCK_FILE; } if (packageManager === "pnpm") { return PNPM_LOCK_FILE; } if (packageManager === "npm") { return NPM_LOCK_FILE; } throw new Error(`Unknown package manager: ${packageManager}`); } _chunk3GQAWCBQjs.__name.call(void 0, getLockFileName, "getLockFileName"); function errorBodyLines(originalError, additionalInfo = []) { const result = [ "Please open an issue at `https://github.com/storm-software/storm-ops/issues/new?template=1-bug.yml` and provide a reproduction.", ...additionalInfo ]; if (originalError.message) { result.push(` Original error: ${originalError.message} `); } if (originalError.stack) { result.push(originalError.stack); } return result; } _chunk3GQAWCBQjs.__name.call(void 0, errorBodyLines, "errorBodyLines"); function isPostInstallProcess() { return process.env.npm_command === "install" && process.env.npm_lifecycle_event === "postinstall"; } _chunk3GQAWCBQjs.__name.call(void 0, isPostInstallProcess, "isPostInstallProcess"); exports.YARN_LOCK_FILE = YARN_LOCK_FILE; exports.NPM_LOCK_FILE = NPM_LOCK_FILE; exports.PNPM_LOCK_FILE = PNPM_LOCK_FILE; exports.LOCK_FILES = LOCK_FILES; exports.YARN_LOCK_PATH = YARN_LOCK_PATH; exports.NPM_LOCK_PATH = NPM_LOCK_PATH; exports.PNPM_LOCK_PATH = PNPM_LOCK_PATH; exports.getLockFileNodes = getLockFileNodes; exports.getLockFileDependencies = getLockFileDependencies; exports.lockFileExists = lockFileExists; exports.getLockFileName = getLockFileName;