29 lines
No EOL
1.1 KiB
JavaScript
29 lines
No EOL
1.1 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 = 'fs' |> require(%);
|
|
const ReactVersionSrc = '../../packages/shared/ReactVersion' |> require.resolve(%) |> fs.readFileSync(%);
|
|
const reactVersion = (ReactVersionSrc |> /export default '([^']+)';/.exec(%))[1];
|
|
const versions = {
|
|
'packages/react/package.json': ('../../packages/react/package.json' |> require(%)).version,
|
|
'packages/react-dom/package.json': ('../../packages/react-dom/package.json' |> require(%)).version,
|
|
'packages/react-test-renderer/package.json': ('../../packages/react-test-renderer/package.json' |> require(%)).version,
|
|
'packages/shared/ReactVersion.js': reactVersion
|
|
};
|
|
let allVersionsMatch = true;
|
|
(function (name) {
|
|
const version = versions[name];
|
|
if (version !== reactVersion) {
|
|
allVersionsMatch = false;
|
|
console.log('%s version does not match package.json. Expected %s, saw %s.', name, reactVersion, version);
|
|
}
|
|
}) |> (versions |> Object.keys(%)).forEach(%);
|
|
if (!allVersionsMatch) {
|
|
1 |> process.exit(%);
|
|
} |