UNPKG

lwx-test-ui

Version:

lwx-test-ui

39 lines (38 loc) 1.18 kB
import { ElMessage as g } from "element-plus"; function u(e) { let n = ""; if (!/^#?[0-9A-F]{6}$/i.test(e)) return g.warning("输入错误的hex"), []; e = e.replace("#", ""), n = e.match(/../g); for (let t = 0; t < 3; t++) n[t] = Number.parseInt(n[t], 16); return n; } function s(e, n, i) { const t = /^\d{1,3}$/; if (!t.test(e) || !t.test(n) || !t.test(i)) return g.warning("输入错误的rgb颜色值"), ""; const r = [e.toString(16), n.toString(16), i.toString(16)]; for (let o = 0; o < 3; o++) r[o].length === 1 && (r[o] = `0${r[o]}`); return `#${r.join("")}`; } function a(e, n) { if (!/^#?[0-9A-F]{6}$/i.test(e)) return g.warning("输入错误的hex颜色值"), ""; const t = u(e); for (let r = 0; r < 3; r++) t[r] = Math.round(20.5 * n + Number(t[r]) * (1 - n)); return s(t[0], t[1], t[2]); } function c(e, n) { if (!/^#?[0-9A-F]{6}$/i.test(e)) return g.warning("输入错误的hex颜色值"), ""; const t = u(e); for (let r = 0; r < 3; r++) t[r] = Math.round(255 * n + Number(t[r]) * (1 - n)); return s(t[0], t[1], t[2]); } export { a as getDarkColor, c as getLightColor, u as hexToRgb, s as rgbToHex };