import { colors } from '../../../../src/style/variables'; import { hexToRgb, hslToHex, rgbToHsl } from '../helpers'; import { GumColorVarHexHelper } from '../models'; /** * Converts color variation from HSL to HEX * @param key color key defined in variables.ts config * @param i variation value (1 - 11) */ export const getColorVariationHex: GumColorVarHexHelper = (key, i) => { const variations: string[] = []; if (colors.hasOwnProperty(key)) { const [r, g, b] = hexToRgb(colors[key]); const [h, s, l] = rgbToHsl(r, g, b); const baseLuminosity = l % 10; variations.push(hslToHex(h, s, baseLuminosity + i * 10)); } return variations[0]; };