{
const node = svg`<svg height=300 width="${width}">
<circle cx='${width/2-20}' cy=100 stroke="orange" fill="orange" r=5 />
</svg>`;
let circle = d3.select(node).select('circle');
pulse(circle);
function pulse(circle) {
(function repeat() {
circle
.transition()
.duration(500)
.attr("stroke-width", 0)
.attr('stroke-opacity', 0)
.transition()
.duration(500)
.attr("stroke-width", 0)
.attr('stroke-opacity', 0.5)
.transition()
.duration(1000)
.attr("stroke-width", 65)
.attr('stroke-opacity', 0)
.ease(d3.easeSin)
.on("end", repeat);
})();
}
return node;
}