Nice! Its work! Radius was still interesting for my task. Here are a few adapted lines that take this into account
const radius = effect(“Radius”)(“Slider”).value;
and
anim.valueAtTime((time – framesToTime(delay) * center / radius) % (anim.key(anim.numKeys).time));