@the-goat/core
Version:
    || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
// @ts-ignore
var semver_1 = require("semver");
var fs_1 = require("fs");
var path_1 = require("path");
var notifier_1 = __importDefault(require("../notifier"));
var projectConfig = JSON.parse(fs_1.readFileSync(path_1.resolve(__dirname, '../../package.json'), 'utf-8'));
/**
* Check if the current Goat version matches the local project settings
*/
function checkVersion(version) {
if (!semver_1.validRange(version)) {
notifier_1.default.error("the configured " + projectConfig.name + " version: " + notifier_1.default.script(version) + " is not a valid semver version or semver range, please check the configured version");
return false;
}
var isValid = semver_1.satisfies(projectConfig.version, version);
if (!isValid) {
notifier_1.default.error("The current installed version of " + projectConfig.name + " does not satisfy the configs needs. \nCurrently: " + projectConfig.version + "\nNeeds: " + version + "\nPlease update " + projectConfig.name + " by running " + notifier_1.default.script("npm install " + projectConfig.name + " -g"));
return false;
}
return isValid;
}
exports.default = checkVersion;
//# sourceMappingURL=version.js.map