From b263bfecb3fb3b63fe747dad5d5f3c34da51bdc8 Mon Sep 17 00:00:00 2001 From: Coleman Kane Date: Thu, 5 Dec 2024 22:33:33 -0500 Subject: [PATCH] [graph] Include any cases, reports, and groupings in all correlation graphs --- opencti-platform/opencti-front/src/utils/Graph.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/opencti-platform/opencti-front/src/utils/Graph.js b/opencti-platform/opencti-front/src/utils/Graph.js index 57513a98d331..c64cb9246c44 100644 --- a/opencti-platform/opencti-front/src/utils/Graph.js +++ b/opencti-platform/opencti-front/src/utils/Graph.js @@ -442,6 +442,7 @@ export const buildCorrelationData = ( filterAdjust, key = 'reports', ) => { + const related_types = ['cases', 'groupings', 'reports']; const objects = R.map((n) => { let { objectMarking } = n; if (R.isNil(objectMarking) || R.isEmpty(objectMarking)) { @@ -468,7 +469,7 @@ export const buildCorrelationData = ( }; }, originalObjects); const thisReportOriginalNodes = R.filter( - (o) => o && o.id && o.entity_type && o[key], + (o) => o && o.id && o.entity_type && R.any((k) => o[k])(related_types), objects, ); const filteredNodesIds = computeFilteredNodesIds( @@ -479,11 +480,11 @@ export const buildCorrelationData = ( ); const thisReportNodes = thisReportOriginalNodes.map((n) => R.assoc('disabled', filteredNodesIds.includes(n.id), n)); const thisReportLinkNodes = R.filter( - (n) => n[key] && n.parent_types && n[key].edges.length > 1, + (n) => n.parent_types && R.any((k) => n[k] && ((key === k && n[k].edges.length > 1) || (key !== k && n[k].edges.length > 0)))(related_types), thisReportNodes, ); const relatedReportOriginalNodes = R.pipe( - R.map((n) => n[key].edges), + R.map((n) => R.map((k) => n[k].edges, related_types)), R.flatten, R.map((n) => { let { objectMarking } = n.node; @@ -545,7 +546,7 @@ export const buildCorrelationData = ( (m) => m && R.includes( m.id, - R.map((o) => o.node.id, n[key].edges), + R.map((o) => o.node.id, R.flatten(R.map((k) => n[k].edges, related_types))), ), )(relatedReportNodes), )),