function input(min, max, stack = 10) {
if (!stack) return min;
const step = (max - min) / 10;
let slider;
const node = html`<div>
${min}
${(slider = html`<input
type="range"
min="${min}"
max="${max}"
step="${step}"
/>`)}
${max}
</div>`;
function update() {
const value = +slider.value;
node.value = input(value, value + step, stack - 1);
node.dispatchEvent(new CustomEvent("input"));
}
slider.oninput = update;
update();
return Object.assign(node, { raw: slider.value });
}