in src/visual.ts [1253:1282]
public playAnimation(delay: number = 0): void {
let flooredStart: number = this.animationHandler.flooredPosition.index;
this.onClearSelection();
const currentPosition: AnimationPosition = this.animationHandler.flooredPosition;
if (this.skipDoubleSelectionForCurrentPosition) {
this.skipDoubleSelectionForCurrentPosition = false;
} else if (this.checkTooltipForSelection(currentPosition)) {
this.skipDoubleSelectionForCurrentPosition = true;
this.handleSelection(currentPosition);
this.continueAnimation(currentPosition);
return;
}
this.showAnimationDot();
this.animationSelection
.transition()
.delay(delay)
.duration(this.animationDuration)
.ease(easeLinear)
.attrTween("d", (d: Series, index: number) => this.getInterpolation(d.data, flooredStart))
.on("end", () => {
let position: AnimationPosition = this.animationHandler.flooredPosition;
this.handleSelection(position);
this.continueAnimation(position);
});
}