versions = Object.entries(npmViewNext.time)
.map(([version, time]) => {
const [major, minor, patch, preRelease] = version.split(/[.-]/);
const change = !!preRelease
? "4 pre-release"
: patch !== "0"
? "3 patch"
: minor !== "0"
? "2 minor"
: "1 major";
return {
time: new Date(time),
version,
major: +major,
majorMinor: `${major}.${minor}`,
change,
canary: !!preRelease?.includes("canary")
};
})
.filter(({ version }) => version.match(/^\d/))