UNPKG

@storm-software/workspace-tools

Version:

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

94 lines (78 loc) 3.11 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _chunkHTGUYSQTjs = require('./chunk-HTGUYSQT.js'); var _chunkUHTWNVEZjs = require('./chunk-UHTWNVEZ.js'); var _chunkCQDBLKPFjs = require('./chunk-CQDBLKPF.js'); // src/utils/package-helpers.ts var _devkit = require('@nx/devkit'); var _child_process = require('child_process'); var _fs = require('fs'); var _promises = require('fs/promises'); var _path = require('path'); var _prettier = require('prettier'); var PackageManagerTypes = { PackageJson: "package.json", CargoToml: "Cargo.toml" }; var getPackageInfo = (project) => { if (_chunkUHTWNVEZjs.isEqualProjectTag.call(void 0, project, _chunkUHTWNVEZjs.ProjectTagConstants.Language.TAG_ID, _chunkUHTWNVEZjs.ProjectTagConstants.Language.RUST ) && _fs.existsSync.call(void 0, _devkit.joinPathFragments.call(void 0, project.root, "Cargo.toml"))) { return { type: "Cargo.toml", content: _chunkHTGUYSQTjs.parseCargoToml.call(void 0, _devkit.joinPathFragments.call(void 0, project.root, "Cargo.toml")) }; } else if (_chunkUHTWNVEZjs.isEqualProjectTag.call(void 0, project, _chunkUHTWNVEZjs.ProjectTagConstants.Language.TAG_ID, _chunkUHTWNVEZjs.ProjectTagConstants.Language.TYPESCRIPT ) && _fs.existsSync.call(void 0, _devkit.joinPathFragments.call(void 0, project.root, "package.json"))) { return { type: "package.json", content: _devkit.readJsonFile.call(void 0, _devkit.joinPathFragments.call(void 0, project.root, "package.json") ) }; } return null; }; async function addPackageJsonGitHead(packageRoot) { const packageJsonPath = _chunkCQDBLKPFjs.joinPaths.call(void 0, packageRoot, "package.json"); if (!packageJsonPath) { throw new Error( "No file path provided. Please provide a valid path to the package.json file." ); } const packageJsonValue = JSON.parse(await _promises.readFile.call(void 0, packageJsonPath, "utf8")); if (!packageJsonValue || typeof packageJsonValue !== "object") { throw new Error( `Invalid package.json file at ${packageJsonPath}. Please ensure it is a valid JSON file.` ); } const gitHead = _child_process.execFileSync.call(void 0, "git", ["rev-parse", "HEAD"], { cwd: _path.dirname.call(void 0, _path.resolve.call(void 0, packageJsonPath)), encoding: "utf8" }).trim(); packageJsonValue.gitHead = gitHead; return _promises.writeFile.call(void 0, packageJsonPath, await _prettier.format.call(void 0, JSON.stringify(packageJsonValue), { parser: "json", proseWrap: "preserve", trailingComma: "none", tabWidth: 2, semi: true, singleQuote: false, quoteProps: "as-needed", insertPragma: false, bracketSameLine: true, printWidth: 80, bracketSpacing: true, arrowParens: "avoid", endOfLine: "lf", plugins: ["prettier-plugin-packagejson"] }) ); } exports.PackageManagerTypes = PackageManagerTypes; exports.getPackageInfo = getPackageInfo; exports.addPackageJsonGitHead = addPackageJsonGitHead;