xqq_ele
Version:
框架
23 lines (22 loc) • 871 B
JavaScript
const h = (t) => g(t) ? d(t) : t, d = (t) => {
const e = t.length === 9 ? 1966080 : 7680;
let r = parseInt(t.replace(/^#/, ""), 16);
r -= e, r = Math.max(0, Math.min(16777215, r));
let n = r.toString(16);
for (; n.length < 6; )
n = "0" + n;
return t.length === 9 ? n = "#" + n + t.substr(7) : n = "#" + n, n;
}, g = (t) => {
if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(t))
return t;
const e = t.match(
/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*([\d.]+))?\)$/
);
if (!e)
return null;
const r = parseInt(e[1], 10), n = parseInt(e[2], 10), a = parseInt(e[3], 10), s = e[4] !== void 0 ? Math.round(parseFloat(e[4]) * 255) : 255, o = r.toString(16).padStart(2, "0"), i = n.toString(16).padStart(2, "0"), c = a.toString(16).padStart(2, "0"), u = s.toString(16).padStart(2, "0");
return "#" + o + i + c + u;
};
export {
h as getLinerStartColor
};