mirror of
https://github.com/FranP-code/create-better-t-stack.git
synced 2025-10-12 23:52:15 +00:00
Add dependency version constants and package management utility
This commit is contained in:
28
apps/cli/src/utils/add-package-deps.ts
Normal file
28
apps/cli/src/utils/add-package-deps.ts
Normal 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,
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user