viewof magnetConfigLargeBanner = Inputs.form(
Object.entries({
width: ["range", 2400, 2400, 1],
height: ["range", 2400, 2400, 1],
columns: ["range", 44, 100, 1],
backgroundColor: ["color", "#341A0F"],
a: md`---`,
pointerWidth: ["range", 2, 10, 0.1],
pointerLength: ["range", 20, 100, 0.1],
attractionPointerBaseColor: ["color", "#661e32"],
attractionPointerTipColor: ["color", "#C2B6DA"],
repulsionPointerBaseColor: ["color", "#F26968"],
repulsionPointerTipColor: ["color", "#C5D92D"],
c: md`---`,
anchorRadius: ["range", 0, 20, 0.1],
anchorColor: ["color", "#341A0F"],
d: md`---`,
magnetInfluenceRadius: ["range", 1500, 1500, 1],
magnetProximityFadeDistance: ["range", 50, 1000, 1],
positiveColor: ["color", "#341a0f"],
negativeColor: ["color", "#0000ff"],
drawMagnets: ["toggle", false]
}).reduce((a, v) => {
if (v[1][0] == "range") {
a[v[0]] = Inputs.range([0, v[1][2]], {
value: v[1][1],
label: v[0],
step: v[1][3]
});
} else if (v[1][0] == "color") {
a[v[0]] = Inputs.color({
value: v[1][1],
label: v[0]
});
} else if (v[1][0] == "toggle") {
a[v[0]] = Inputs.toggle({
value: v[1][1],
label: v[0]
});
} else {
a[v[0]] = v[1];
}
return a;
}, {})
)