mirror of
https://github.com/muerwre/vault-frontend.git
synced 2025-04-25 04:46:40 +07:00
colors for cards
This commit is contained in:
parent
d1d1848e07
commit
861fd8d9e3
3 changed files with 71 additions and 6 deletions
|
@ -170,3 +170,48 @@ export function plural(n: number, one: string, two: string, five: string) {
|
|||
return `${n} ${five}`;
|
||||
}
|
||||
}
|
||||
|
||||
export const stringToColour = (str: string) => {
|
||||
let hash = 0;
|
||||
|
||||
for (let i = 0; i < str.length; i++) {
|
||||
hash = str.charCodeAt(i) + ((hash << 5) - hash);
|
||||
}
|
||||
|
||||
let colour = '#';
|
||||
|
||||
for (let i = 0; i < 3; i++) {
|
||||
let value = (hash >> (i * 8)) & 0xff;
|
||||
colour += ('00' + value.toString(16)).substr(-2);
|
||||
}
|
||||
|
||||
return colour;
|
||||
};
|
||||
|
||||
export const darken = (col: string, amt: number) => {
|
||||
var usePound = false;
|
||||
|
||||
if (col[0] == '#') {
|
||||
col = col.slice(1);
|
||||
usePound = true;
|
||||
}
|
||||
|
||||
var num = parseInt(col, 16);
|
||||
|
||||
var r = (num >> 16) + amt;
|
||||
|
||||
if (r > 255) r = 255;
|
||||
else if (r < 0) r = 0;
|
||||
|
||||
var b = ((num >> 8) & 0x00ff) + amt;
|
||||
|
||||
if (b > 255) b = 255;
|
||||
else if (b < 0) b = 0;
|
||||
|
||||
var g = (num & 0x0000ff) + amt;
|
||||
|
||||
if (g > 255) g = 255;
|
||||
else if (g < 0) g = 0;
|
||||
|
||||
return (usePound ? '#' : '') + (g | (b << 8) | (r << 16)).toString(16);
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue