Some code cleanup, add jest coverage and begin using it for utility functions
This commit is contained in:
parent
ca39830333
commit
1eb3ea2ee4
29 changed files with 2044 additions and 134 deletions
17
resources/scripts/lib/helpers.ts
Normal file
17
resources/scripts/lib/helpers.ts
Normal file
|
@ -0,0 +1,17 @@
|
|||
/**
|
||||
* Given a valid six character HEX color code, converts it into its associated
|
||||
* RGBA value with a user controllable alpha channel.
|
||||
*/
|
||||
function hexToRgba (hex: string, alpha = 1): string {
|
||||
// noinspection RegExpSimplifiable
|
||||
if (!/#?([a-fA-F0-9]{2}){3}/.test(hex)) {
|
||||
return hex;
|
||||
}
|
||||
|
||||
// noinspection RegExpSimplifiable
|
||||
const [ r, g, b ] = hex.match(/[a-fA-F0-9]{2}/g)!.map(v => parseInt(v, 16));
|
||||
|
||||
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
|
||||
}
|
||||
|
||||
export { hexToRgba };
|
Reference in a new issue