UNPKG

fui-fancyui

Version:
29 lines (28 loc) 675 B
const l = (r) => { const a = parseInt(r.slice(1, 3), 16) / 255, t = parseInt(r.slice(3, 5), 16) / 255, s = parseInt(r.slice(5, 7), 16) / 255, n = Math.max(a, t, s), c = Math.min(a, t, s); let e = 0, h = 0; const i = (n + c) / 2; if (n !== c) { const o = n - c; switch (h = i > 0.5 ? o / (2 - n - c) : o / (n + c), n) { case a: e = (t - s) / o + (t < s ? 6 : 0); break; case t: e = (s - a) / o + 2; break; case s: e = (a - t) / o + 4; break; } e /= 6; } return { h: Math.round(e * 360), s: Math.round(h * 100), l: Math.round(i * 100) }; }; export { l as hexToHSL };