1
1
// This code was written by Claude <3
2
2
3
+ // Mixes two hsl colors using a ratio
3
4
export function mixHsl (
4
5
hsl1 : [ number , number , number ] ,
5
6
hsl2 : [ number , number , number ] ,
@@ -12,6 +13,7 @@ export function mixHsl(
12
13
] ;
13
14
}
14
15
16
+ // Mixes two rgb colors using a ratio
15
17
export function mixRgb (
16
18
rgb1 : [ number , number , number ] ,
17
19
rgb2 : [ number , number , number ] ,
@@ -23,6 +25,7 @@ export function mixRgb(
23
25
return hslToRgb ( hsl [ 0 ] , hsl [ 1 ] , hsl [ 2 ] ) ;
24
26
}
25
27
28
+ // Mixes two hex colors using a ratio
26
29
export function mixHex ( color1 : string , color2 : string , ratio : number ) : string {
27
30
const rgb1 = hexToHsl ( color1 ) ;
28
31
const rgb2 = hexToHsl ( color2 ) ;
@@ -123,12 +126,7 @@ export function hslToHex(h: number, s: number, l: number): string {
123
126
return rgbToHex ( r , g , b ) ;
124
127
}
125
128
126
- export function lighten ( color : string , background : string , amount : number ) {
127
- const [ h , s ] = hexToHsl ( color ) ;
128
- const [ , , l ] = hexToHsl ( background ) ;
129
- return hslToHex ( h , s , l > 0.5 ? l - amount : l + amount ) ;
130
- }
131
-
129
+ // Changes the opacity of a hex color code, returns rgba() format
132
130
export function opacify ( color : string , opacity : number ) {
133
131
const [ r , g , b ] = hexToRgb ( color ) ;
134
132
return `rgba(${ r } ,${ g } ,${ b } ,${ opacity } )` ;
0 commit comments