d3 Sankey: resalta todas las rutas conectadas de principio a fin

Estoy tratando de resaltar todos los enlaces conectados y los enlaces de sus nodos de destino hasta el final del diseño.

El primer nivel de resaltado se puede lograr fácilmente de la siguiente manera:

Al hacer clic en el nodo, llamehighlight_paths(1);

function highlight_paths(stroke_opacity) {
    return function(d,i){
        d.sourceLinks.forEach(function(srcLnk){
            d3.select("#link"+srcLnk.id).style("stroke-opacity", stroke_opacity);
        });
        d.targetLinks.forEach(function(srcLnk){
            d3.select("#link"+srcLnk.id).style("stroke-opacity", stroke_opacity);
        });
    }
}

Pero todavía no puedo escribir correctamente un algoritmo recursivo para obtener todos los enlaces de origen y enlaces de destino de cada uno de los nodos de origen y destino conectados.

Todos los pensamientos son apreciados!

Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta