syncpack
Version:
Consistent dependency versions in large JavaScript Monorepos
21 lines (20 loc) • 541 B
JavaScript
import { RANGE } from '../../constants.js';
const scoresByRange = {
[ ]: 9,
[ ]: 8,
[ ]: 7,
[ ]: 6,
[ ]: 5,
[ ]: 4,
[ ]: 3,
[ ]: 2,
[ ]: 1,
[ ]: 0,
};
/** Rank a Semver Range according to its greediness */
export function getRangeScore(version) {
const range = version.indexOf('.x') !== -1
? RANGE.LOOSE
: version.slice(0, version.search(/[0-9]/));
return scoresByRange[range] || 0;
}