@itwin/itwinui-react
Version:
A react component library for iTwinUI
26 lines (25 loc) • 1.04 kB
JavaScript
export const SoftBackgrounds = {
skyblue: 'var(--iui-color-background-skyblue)',
celery: 'var(--iui-color-background-celery)',
froly: 'var(--iui-color-background-froly)',
steelblue: 'var(--iui-color-background-steelblue)',
sunglow: 'var(--iui-color-background-sunglow)',
seabuckthorn: 'var(--iui-color-background-seabuckthorn)',
montecarlo: 'var(--iui-color-background-montecarlo)',
poloblue: 'var(--iui-color-background-poloblue)',
bouquet: 'var(--iui-color-background-bouquet)',
ash: 'var(--iui-color-background-ash)',
oak: 'var(--iui-color-background-oak)',
};
export const isSoftBackground = (value) =>
Object.keys(SoftBackgrounds).includes(value);
let USER_COLORS = Object.values(SoftBackgrounds);
export const getUserColor = (emailOrName) => {
let normalizedString = emailOrName.trim().toLowerCase();
let hash = 0;
for (let i = 0; i < normalizedString.length; i++) {
let charCode = normalizedString.charCodeAt(i);
hash = (hash + charCode) % USER_COLORS.length;
}
return USER_COLORS[hash];
};