File size: 1,093 Bytes
199f033 d2934ab 199f033 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | const SPECIAL_NAME_COLOR_RULES = Object.freeze([
['kamya', 'rainbow'],
['purvi', 'golden'],
['samarth', 'diamond'],
['paras', 'blue'],
['pragya', 'military'],
['riddhiman', 'glitch'],
]);
const DISPLAY_COLOR_MAP = Object.freeze({
rainbow: '#ff6bc2',
golden: '#ffd700',
diamond: '#aee9ff',
blue: '#3d74ff',
military: '#556b2f',
glitch: '#2de37a',
});
const ANIMATED_CAR_COLORS = new Set(Object.keys(DISPLAY_COLOR_MAP));
export function getSpecialCarColorForName(name, defaultColor) {
const lowerName = String(name || '').trim().toLowerCase();
const matchedRule = SPECIAL_NAME_COLOR_RULES.find(([prefix]) => lowerName.startsWith(prefix));
return matchedRule ? matchedRule[1] : defaultColor;
}
export function normalizeDisplayCarColor(color) {
const normalized = String(color || '').trim().toLowerCase();
return DISPLAY_COLOR_MAP[normalized] ?? color;
}
export function isAnimatedCarColor(color) {
return ANIMATED_CAR_COLORS.has(String(color || '').trim().toLowerCase());
}
export function isSpecialCarColor(color) {
return isAnimatedCarColor(color);
} |