mirror of
				https://github.com/pelican-dev/panel.git
				synced 2025-11-04 09:26:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			18 lines
		
	
	
		
			499 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			499 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
/**
 | 
						|
 * 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 };
 |