pkg-stats
Version:
Beautiful NPM package download stats
23 lines (22 loc) • 656 B
JavaScript
export function parseVersion(version) {
const [versionCore, preRelease] = version.split('-');
const [major, minor, patch] = versionCore.split('.');
return {
major: Number(major),
minor: Number(minor),
patch: Number(patch),
preRelease,
};
}
export function versionCompare(a, b) {
if (a.major !== b.major) {
return b.major - a.major;
}
if (a.minor !== undefined && b.minor !== undefined && a.minor !== b.minor) {
return b.minor - a.minor;
}
if (a.patch !== undefined && b.patch !== undefined && a.patch !== b.patch) {
return b.patch - a.patch;
}
return 0;
}