Use invariant for invalid electron version

This commit is contained in:
Brian Ng 2017-02-27 14:02:41 -06:00
parent 93b8b0735b
commit 2e0f64256f

View File

@ -1,4 +1,5 @@
import browserslist from "browserslist";
import invariant from "invariant";
import builtInsList from "../data/built-ins.json";
import defaultInclude from "./default-includes";
import { electronToChromium } from "electron-to-chromium";
@ -101,19 +102,18 @@ export const getTargets = (targets = {}) => {
targetOps.node = getCurrentNodeVersion();
}
// Rewrite Electron versions to their Chrome equivalents
// Replace Electron versions with their Chrome equivalent
if (targetOps.electron) {
const electronChromeVersion = parseInt(electronToChromium(targetOps.electron), 10);
if (!electronChromeVersion) {
throw new Error(`Electron version ${targetOps.electron} is either too old or too new`);
}
invariant(
!!electronChromeVersion,
`Electron version ${targetOps.electron} is either too old or too new`
);
if (targetOps.chrome) {
targetOps.chrome = Math.min(targetOps.chrome, electronChromeVersion);
} else {
targetOps.chrome = electronChromeVersion;
}
targetOps.chrome = targetOps.chrome
? Math.min(targetOps.chrome, electronChromeVersion)
: electronChromeVersion;
delete targetOps.electron;
}