12 lines
447 B
JavaScript
12 lines
447 B
JavaScript
// Stable distinct color per year for the year badge
|
|
export function badgeColorForYear(y) {
|
|
const val = (y === undefined || y === null) ? '?' : y;
|
|
if (val === '?' || Number.isNaN(Number(val))) {
|
|
// Neutral slate for unknown years
|
|
return 'background-color: hsl(215 16% 34%);';
|
|
}
|
|
const n = Number(val);
|
|
const hue = ((n * 23) % 360 + 360) % 360; // spread hues deterministically
|
|
return `background-color: hsl(${hue} 70% 42%);`;
|
|
}
|