UNPKG

lib-colors

Version:

Simple node.js library for work with colors

38 lines (37 loc) 871 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.hslToRgb = hslToRgb; function hslToRgb(hsl) { const { h, s, l, a } = { ...hsl }; let r, g, b; if (s === 0) { r = g = b = l; } else { const q = l < 0.5 ? l * (1 + s) : l + s - l * s; const p = 2 * l - q; const hue = h / 360; r = hue2rgb(p, q, hue + 1 / 3); g = hue2rgb(p, q, hue); b = hue2rgb(p, q, hue - 1 / 3); } return { r: Math.round(r * 255), g: Math.round(g * 255), b: Math.round(b * 255), a, }; } function hue2rgb(p, q, t) { if (t < 0) t += 1; if (t > 1) t -= 1; if (t < 1 / 6) return p + (q - p) * 6 * t; if (t < 1 / 2) return q; if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6; return p; }