All files / app/components/RatingsSlider getSliderColor.tsx

50% Statements 6/12
0% Branches 0/1
0% Functions 0/2
54.54% Lines 6/11

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 191x 1x 1x   1x 1x   1x                      
import { theme } from "theme";
import { colorStringToHsl } from "utils/color";
import { lerp } from "utils/math";
 
const goodHsl = colorStringToHsl(theme.palette.success.main);
const badHsl = colorStringToHsl(theme.palette.error.main);
 
export const getSliderColor = (value: number | undefined) => {
  Iif (value === undefined) {
    return theme.palette.grey[100];
  }
 
  const interpolatedHsl = badHsl.map((v, index) =>
    lerp(v, goodHsl[index], value),
  );
 
  return `hsl(${interpolatedHsl[0]}, ${interpolatedHsl[1]}%, ${interpolatedHsl[2]}%)`;
};