Partage de liens

Récupération des URLs partagées

Formatage des nodes pour les URLs partagées

Les triplets sont plutôt bruts et nécessitent une transformation afin de pouvoir être utilisés dans un graphique.

Récupération des tags

Les tags peuvent être récupérés à partir des triplets précédemment requêtés en appliquant des fonctions Javascript pour:

const tagNodes = shares.triples.map(triple => triple.linkedId)
                .filter((tag, idx, arr) => arr.findIndex(i => i === tag) === idx)
                .map(tag => {
                    const linkedIds = shares.triples.filter(triple => triple.linkedId === tag)
                                        .map(triple => triple.id);
                    return {
                        linkedIds,
                        id: tag,
                        label: tag,
                        weight: linkedIds.length * 3,
                        type: "Tag",
                        tooltipHTML: `${linkedIds.length} lien(s) associé(s)`,
                    }
                });

On obtient les nodes suivants:

Récupération des liens

À partir des linkedIds au niveau des nodes que l'on a récupéré, on peut constituer un tableau avec tous les liens à faire entre les nodes.

Affichage du graphe

Grâce à la bibliothèque D3.js, on affiche nos données dans un graphe de forces. On utilise le module d3-force pour créer un ensemble de noeuds et de liens qui vont se répartir en fonction de "forces" simulées.