'use strict'; const hueToRgb = (t1, t2, hue) => { if (hue < 0) hue += 6; if (hue >= 6) hue -= 6; if (hue < 1) return (t2 - t1) * hue + t1; else if (hue < 3) return t2; else if (hue < 4) return (t2 - t1) * (4 - hue) + t1; else return t1; }; // https://www.w3.org/TR/css-color-4/#hsl-to-rgb exports.hslToRgb = (hue, sat, light) => { const t2 = light <= 0.5 ? light * (sat + 1) : light + sat - light * sat; const t1 = light * 2 - t2; const r = hueToRgb(t1, t2, hue + 2); const g = hueToRgb(t1, t2, hue); const b = hueToRgb(t1, t2, hue - 2); return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)]; };