fui-fancyui
Version:
FancyUI Libary
41 lines (40 loc) • 1.18 kB
JavaScript
import { getLinearGradientPosition as c } from "./getPositionToGradientPosition.js";
const $ = (t) => {
const { degree: l, colors: d, orientation: s, position: e } = t, r = d.map((i) => {
if (typeof i == "object") {
const o = i;
return `${o.color}${o.stop ? " " + o.stop : ""}`;
}
return i;
}).join(", ");
let a = "";
switch (s) {
case "linear": {
a = `linear-gradient(${e ? c(e) : `${l || 90}deg`}, ${r})`;
break;
}
case "repeatLinear": {
a = `repeating-linear-gradient(${e ? c(e) : `${l || 90}deg`}, ${r})`;
break;
}
case "radial":
a = `radial-gradient(circle at ${n(e)}, ${r})`;
break;
case "repeatRadial":
a = `repeating-radial-gradient(circle at ${n(e)}, ${r})`;
break;
case "elliptical":
a = `radial-gradient(ellipse at ${n(e)}, ${r})`;
break;
case "repeatElliptical":
a = `repeating-radial-gradient(ellipse at ${n(e)}, ${r})`;
break;
default:
a = `linear-gradient(${l || 90}deg, ${r})`;
break;
}
return a;
}, n = (t) => (t == null ? void 0 : t.replace("-", " ")) || "center";
export {
$ as generateGradient
};