create-electron-foundation
Version:
An interactive CLI to bootstrap a modern, type-safe, and scalable Electron application.
23 lines (22 loc) • 859 B
JavaScript
import path from 'path';
import fs from 'fs-extra';
import sortPackageJson from 'sort-package-json';
// INSTALLERS
import { dependencyVersionMap, } from '../installers/dependencyVersionMap.js';
export const addPackageDependency = (opts) => {
const { dependencies, devMode, project_dir } = opts;
const pkgJson = fs.readJSONSync(path.join(project_dir, 'package.json'));
dependencies.forEach((pkgName) => {
const version = dependencyVersionMap[pkgName];
if (devMode && pkgJson.devDependencies) {
pkgJson.devDependencies[pkgName] = version;
}
else if (pkgJson.dependencies) {
pkgJson.dependencies[pkgName] = version;
}
});
const sortedPkgJson = sortPackageJson(pkgJson);
fs.writeJSONSync(path.join(project_dir, 'package.json'), sortedPkgJson, {
spaces: 2,
});
};