Add dependency version constants and package management utility

This commit is contained in:
Aman Varshney
2025-03-18 15:47:22 +05:30
parent bda0d5ad09
commit b7ac81d496
10 changed files with 175 additions and 182 deletions

View File

@@ -0,0 +1,28 @@
import path from "node:path";
import fs from "fs-extra";
import { type AvailableDependencies, dependencyVersionMap } from "../constants";
export const addPackageDependency = (opts: {
dependencies: AvailableDependencies[];
devDependencies: boolean;
projectDir: string;
}) => {
const { dependencies, devDependencies, projectDir } = opts;
const pkgJson = fs.readJSONSync(path.join(projectDir, "package.json"));
for (const pkgName of dependencies) {
const version = dependencyVersionMap[pkgName];
if (devDependencies && pkgJson.devDependencies) {
pkgJson.devDependencies[pkgName] = version;
} else if (pkgJson.dependencies) {
pkgJson.dependencies[pkgName] = version;
}
}
fs.writeJSONSync(path.join(projectDir, "package.json"), pkgJson, {
spaces: 2,
});
};