mirror of
https://github.com/GitbookIO/gitbook.git
synced 2026-09-16 15:45:13 +00:00
41 lines
935 B
JavaScript
Executable File
41 lines
935 B
JavaScript
Executable File
#! /usr/bin/env node
|
|
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
const lernaConfig = require('../lerna.json');
|
|
|
|
// List all the packages
|
|
const PACKAGES_DIR = path.resolve(__dirname, '../packages');
|
|
const packages = fs.readdirSync(PACKAGES_DIR);
|
|
|
|
function updateDependencies(dependencies) {
|
|
if (!dependencies) {
|
|
return;
|
|
}
|
|
|
|
Object.keys(dependencies).map((key) => {
|
|
if (!packages.includes(key)) {
|
|
return;
|
|
}
|
|
|
|
dependencies[key] = lernaConfig.version;
|
|
});
|
|
}
|
|
|
|
packages.forEach((name) => {
|
|
// Avoid .DS_Store
|
|
if (name[0] === '.') {
|
|
return;
|
|
}
|
|
|
|
const pkgPath = path.resolve(PACKAGES_DIR, name, 'package.json');
|
|
const pkg = require(pkgPath);
|
|
|
|
pkg.version = lernaConfig.version;
|
|
updateDependencies(pkg.dependencies);
|
|
updateDependencies(pkg.devDependencies);
|
|
|
|
fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2), 'utf-8');
|
|
});
|