Files
lexical/scripts/updateVersion.js
Acy Watson 5503ca6e64 Add clipboard package, remove lexical event helpers (#1361)
* add clipboard package, remove lexica event helpers

* bump version after rebase

* rename - wip

* rename things
2022-04-09 00:43:27 -07:00

66 lines
1.7 KiB
JavaScript

/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
'use strict';
const fs = require('fs-extra');
const packages = {
'@lexical/clipboard': 'lexical-clipboard',
'@lexical/file': 'lexical-file',
'@lexical/helpers': 'lexical-helpers',
'@lexical/list': 'lexical-list',
'@lexical/react': 'lexical-react',
'@lexical/table': 'lexical-table',
'@lexical/yjs': 'lexical-yjs',
lexical: 'lexical',
'lexical-playground': 'lexical-playground',
shared: 'shared',
};
function updateVersion() {
const version = getVersionFromFile();
Object.values(packages).forEach((pkg) => {
const packageJSON = fs.readJsonSync(`./packages/${pkg}/package.json`);
packageJSON.version = version;
updateDependencies(packageJSON, version);
fs.writeJsonSync(`./packages/${pkg}/package.json`, packageJSON, {
spaces: 2,
});
});
}
function updateDependencies(packageJSON, version) {
const {dependencies, peerDependencies} = packageJSON;
if (dependencies !== undefined) {
Object.keys(dependencies).forEach((dep) => {
if (packages[dep] !== undefined) {
dependencies[dep] = version;
}
});
}
if (peerDependencies !== undefined) {
Object.keys(peerDependencies).forEach((peerDep) => {
if (packages[peerDep] !== undefined) {
peerDependencies[peerDep] = version;
}
});
}
}
function getVersionFromFile() {
const fileContent = fs.readFileSync(
'./packages/lexical/src/LexicalVersion.js',
'utf8',
);
const regex = /VERSION = '(\d{1,3}\.\d{1,3}\.\d{1,3})'/;
const version = regex.exec(fileContent)[1];
return version;
}
updateVersion();