// Metro module 688 (f689). import Module689 from "./Module689"; function $mk66864() { return (a0) => { const r1 = a0 / 255; return r1 <= 0.03928 ? r1 / 12.92 : Math.pow((r1 + 0.055) / 1.055, 2.4); }; } let c587_2; const int2hslRaw = function int2hslRaw(initialColor) { const r1 = initialColor >> 16; const r3 = initialColor >> 8; const r15 = 255 & initialColor; const r4 = (r1 & 255) / 255; const r5 = (r3 & 255) / 255; const r18 = r15 / 255; const r12 = Math.min(r4, r5, r18); const r22 = Math.max(r4, r5, r18); const r23 = r22 - r12; const r7 = r23 === 0; const r37 = Math.round(60 * (r7 ? 0 : r22 === r4 ? (r5 - r18) / r23 % 6 : r22 === r5 ? (r18 - r4) / r23 + 2 : (r4 - r5) / r23 + 4)); let r38 = r37; if (r38 < 0) { r38 = r37 + 360; } const r42 = (r22 + r12) / 2; return { h: r38, s: +(r7 ? 0 : r23 / (1 - Math.abs(2 * r42 - 1))).toFixed(3), l: +r42.toFixed(3) }; }; c587_2 = /rgba?\((\d{1,3}), ?(\d{1,3}), ?(\d{1,3})\)?(?:, ?(\d(?:\.\d*)?)\))?/; export function hex2int(a0) { return Module689(a0).num(); } export function int2hex(a0) { let r41; if (a0 <= 16777215) { const r47 = (a0 >> 16 & 255).toString(16); const r50 = r47.length === 1 ? `0${r47}` : r47; const r59 = (a0 >> 8 & 255).toString(16); const r61 = r59.length === 1 ? `0${r59}` : r59; const r68 = (255 & a0).toString(16); r41 = `#${r50}${r61}${r68.length === 1 ? `0${r68}` : r68}`; } else { const r7 = (a0 >> 24 & 255).toString(16); const r9 = r7.length === 1 ? `0${r7}` : r7; const r21 = (a0 >> 16 & 255).toString(16); const r8 = r21.length === 1 ? `0${r21}` : r21; const r10 = (a0 >> 8 & 255).toString(16); r41 = `#${r9}${r8}${r10.length === 1 ? `0${r10}` : r10}`; } return r41; } export { int2hslRaw }; export function int2hslValues(a0, r5 = false, r6 = null) { const r20 = int2hslRaw(a0); const { h: r11, s: r21, l: r22 } = r20; const r25 = +(100 * r21).toFixed(1); const r29 = +(100 * r22).toFixed(1); return r5 ? `${r11} calc(var(--saturation-factor, 1) * ${r25}%) ${r29}%` : r6 != null ? `${r11} ${r6 * r25}% ${r29}%` : `${r11} ${r25}% ${r29}%`; } export function int2hsl(a0, r5 = false, r6 = null, r13 = 1) { const r24 = int2hslRaw(a0); const { h: r12, s: r25, l: r26 } = r24; const r29 = +(100 * r25).toFixed(1); const r33 = +(100 * r26).toFixed(1); return r5 ? `hsla(${r12}, calc(var(--saturation-factor, 1) * ${r29}%), ${r33}%, ${r13})` : r6 != null ? `hsla(${r12}, ${r6 * r29}%, ${r33}%, ${r13})` : `hsla(${r12}, ${r29}%, ${r33}%, ${r13})`; } export function hex2rgb(a0, r4 = null) { if (Module689.valid(a0)) { const r13 = Module689(a0); if (r4 == null) { r4 = r13.alpha(); } return r13.alpha(r4).css(); } return null; } export function int2rgba(a0, a1) { return `rgba(${a0 >> 16 & 255}, ${a0 >> 8 & 255}, ${255 & a0}, ${a1 == null ? (a0 >> 24 & 255) / 255 : a1})`; } export function rgb2int(a0) { const r10 = a0.match(c587_2); const r11 = r10 != null ? { red: parseInt(r10[1]), green: parseInt(r10[2]), blue: parseInt(r10[3]) } : { red: 0, green: 0, blue: 0 }; return (r11.red << 16) + (r11.green << 8) + r11.blue; } export function int2hsv(a0) { let r25; const r2 = (a0 >> 16 & 255) / 255; const r4 = (a0 >> 8 & 255) / 255; const r5 = (255 & a0) / 255; const r18 = Math.max(r2, r4, r5); const r21 = Math.min(r2, r4, r5); const r10 = r18 - r21; const r23 = r18 !== 0 ? r10 / r18 : 0; let r24 = 0; if (r18 !== r21) { if (r2 === r18) { r25 = (r4 - r5) / r10 + (r4 < r5 ? 6 : 0); } else if (r4 === r18) { r25 = (r5 - r2) / r10 + 2; } else { r25 = r18; if (r5 === r25) { r25 = (r2 - r4) / r10 + 4; } } r24 = r25 * 60; } return { h: r24, s: r23, v: r18 }; } export function getDarkness(a0) { return 1 - (0.299 * (a0 >> 16 & 255) + 0.587 * (a0 >> 8 & 255) + 0.114 * (255 & a0)) / 255; } export function isValidHex(a0) { return Module689.valid(a0); } export function int2rgbArray(a0) { return [a0 >> 16 & 255, a0 >> 8 & 255, 255 & a0]; } export function getLuminance(a0, a1, a2) { const r10 = [a0, a1, a2].map($mk66864()); return 0.2126 * r10[0] + 0.7152 * r10[1] + 0.0722 * r10[2]; } export function getContrast(a0, a1) { const r8 = [a0 >> 16 & 255, a0 >> 8 & 255, 255 & a0]; const r21 = [a1 >> 16 & 255, a1 >> 8 & 255, 255 & a1]; const r26 = [r8[0], r8[1], r8[2]].map($mk66864()); const r35 = 0.2126 * r26[0] + 0.7152 * r26[1] + 0.0722 * r26[2]; const r42 = [r21[0], r21[1], r21[2]].map($mk66864()); const r50 = 0.2126 * r42[0] + 0.7152 * r42[1] + 0.0722 * r42[2]; return (Math.max(r35, r50) + 0.05) / (Math.min(r35, r50) + 0.05); } export function hsv2int(a0, a1, a2) { let r11, r29, r30; const r12 = a0 / 360; const r10 = Math; const r14 = 6 * r12; const r15 = r10.floor(r14); const r16 = r14 - r15; const r17 = a2 * (1 - a1); const r19 = a2 * (1 - r16 * a1); const r23 = a2 * (1 - (1 - r16) * a1); const r24 = r15 % 6; if (r24 === 0) { r29 = r17; r30 = r23; r11 = a2; } else if (r24 === 1) { r29 = r17; r30 = a2; r11 = r19; } else if (r24 === 2) { r29 = r23; r30 = a2; r11 = r17; } else if (r24 === 3) { r29 = a2; r30 = r19; r11 = r17; } else if (r24 === 4) { r29 = a2; r30 = r17; r11 = r23; } else { r29 = 0; r30 = 0; r11 = 0; if (r24 === 5) { r29 = r19; r30 = r17; r11 = a2; } } return (Math.round(255 * r11) << 16) + (Math.round(255 * r30) << 8) + Math.round(255 * r29); }