Browse Source

refactor: perfonNetworkBuilder.ts - foreach to map

master
limina1 8 months ago
parent
commit
7e0e24066f
  1. 27
      src/lib/navigator/EventNetwork/utils/personNetworkBuilder.ts

27
src/lib/navigator/EventNetwork/utils/personNetworkBuilder.ts

@ -225,21 +225,27 @@ export function createPersonLinks(
const nodeMap = new Map(nodes.map((n) => [n.id, n])); const nodeMap = new Map(nodes.map((n) => [n.id, n]));
const links: PersonLink = personAnchors.map((anchor) => { const links: PersonLink[] = personAnchors.flatMap((anchor) => {
if (!anchor.connectedNodes || !anchor.pubkey) return; if (!anchor.connectedNodes || !anchor.pubkey) {
return [];
}
const connection = personMap.get(anchor.pubkey); const connection = personMap.get(anchor.pubkey);
if (!connection) return; if (!connection) {
return [];
}
return ...anchor.connectedNodes.map((nodeId) => { return anchor.connectedNodes.map((nodeId) => {
const node = nodeMap.get(nodeId); const node = nodeMap.get(nodeId);
if (node) { if (!node) {
// Determine connection type return undefined;
let connectionType: "signed-by" | "referenced" | undefined; }
let connectionType: 'signed-by' | 'referenced' | undefined;
if (connection.signedByEventIds.has(nodeId)) { if (connection.signedByEventIds.has(nodeId)) {
connectionType = "signed-by"; connectionType = 'signed-by';
} else if (connection.referencedInEventIds.has(nodeId)) { } else if (connection.referencedInEventIds.has(nodeId)) {
connectionType = "referenced"; connectionType = 'referenced';
} }
return { return {
@ -248,8 +254,7 @@ export function createPersonLinks(
isSequential: false, isSequential: false,
connectionType, connectionType,
}; };
} }).filter(Boolean); // Remove undefineds
});
}); });
debug("Created person links", { linkCount: links.length }); debug("Created person links", { linkCount: links.length });

Loading…
Cancel
Save