ngitflow
Version:
Node Git Flow
36 lines (28 loc) • 856 B
JavaScript
;
const semver = require('semver');
const replace = require('replace');
class Version {
static increment(version, level, preId) {
return semver.inc(version, level, preId);
}
static validate(version) {
return semver.valid(version);
}
static getPreId(version) {
const prerelease = semver.prerelease(version);
return prerelease.length >= 1 && prerelease[0];
}
static updateInFile(descriptor, version) {
return new Promise((resolve) => {
replace({
regex: descriptor.regex,
replacement: descriptor.replacement.replace('$VERSION', version),
paths: [descriptor.file],
recursive: false,
silent: true
});
resolve();
});
}
}
module.exports = Version;