From 4d9fe6219ce8be1c817575c6f836ce2114cc3410 Mon Sep 17 00:00:00 2001 From: Manan Vaghasiya Date: Mon, 28 Aug 2023 05:10:13 +0000 Subject: [PATCH 1/2] fix prettier issue --- .../src/components/hosts-connector/K8ConnectorForm.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/deepfence_frontend/apps/dashboard/src/components/hosts-connector/K8ConnectorForm.tsx b/deepfence_frontend/apps/dashboard/src/components/hosts-connector/K8ConnectorForm.tsx index 85dca3217d..b73ccb2a6b 100644 --- a/deepfence_frontend/apps/dashboard/src/components/hosts-connector/K8ConnectorForm.tsx +++ b/deepfence_frontend/apps/dashboard/src/components/hosts-connector/K8ConnectorForm.tsx @@ -216,7 +216,8 @@ const FirstCommand = () => { return (
-        helm repo add deepfence https://deepfence-helm-charts.s3.amazonaws.com/threatmapper
+        helm repo add deepfence
+        https://deepfence-helm-charts.s3.amazonaws.com/threatmapper
       
{isCopied ? 'copied' : null} From 28b9a86e1bb692247f46623bbe6baf62be3ce6f1 Mon Sep 17 00:00:00 2001 From: Manan Vaghasiya Date: Mon, 28 Aug 2023 06:53:07 +0000 Subject: [PATCH 2/2] use lookup results to show counts on threatgraph side panel --- .../data-components/DetailsModal.tsx | 63 ++++++++++--------- 1 file changed, 35 insertions(+), 28 deletions(-) diff --git a/deepfence_frontend/apps/dashboard/src/features/threat-graph/data-components/DetailsModal.tsx b/deepfence_frontend/apps/dashboard/src/features/threat-graph/data-components/DetailsModal.tsx index 81bf63bd54..12bbfe889e 100644 --- a/deepfence_frontend/apps/dashboard/src/features/threat-graph/data-components/DetailsModal.tsx +++ b/deepfence_frontend/apps/dashboard/src/features/threat-graph/data-components/DetailsModal.tsx @@ -116,36 +116,43 @@ const ModalContent = ({ const nodesData = useMemo(() => { if (!data) return null; if (!data.length) return []; - return Object.keys(nodes ?? {}).map((nodeId) => { - const node = nodes![nodeId]; - const nodeData = data.find((item) => item.node_id === node.node_id); - if (nodeType === 'host') { + + return Object.keys(nodes ?? {}) + .map((nodeId) => { + const node = nodes![nodeId]; + const nodeData = data.find((item) => item.node_id === node.node_id); + if (!nodeData) return null; + if (nodeType === 'host') { + return { + ...node, + latest_vulnerability_scan_id: (nodeData as ModelHost) + ?.vulnerability_latest_scan_id, + vulnerability_count: (nodeData as ModelHost)?.vulnerabilities_count, + latest_secret_scan_id: (nodeData as ModelHost)?.secret_latest_scan_id, + secrets_count: (nodeData as ModelHost)?.secrets_count, + latest_compliance_scan_id: (nodeData as ModelHost)?.compliance_latest_scan_id, + compliance_count: (nodeData as ModelHost)?.compliances_count, + latest_cloud_compliance_scan_id: undefined, + }; + } + return { ...node, - latest_vulnerability_scan_id: (nodeData as ModelHost) - ?.vulnerability_latest_scan_id, - latest_secret_scan_id: (nodeData as ModelHost)?.secret_latest_scan_id, - latest_malware_scan_id: (nodeData as ModelHost)?.malware_latest_scan_id, - latest_compliance_scan_id: (nodeData as ModelHost)?.compliance_latest_scan_id, - latest_cloud_compliance_scan_id: undefined, + latest_cloud_compliance_scan_id: (nodeData as ModelCloudResource) + ?.cloud_compliance_latest_scan_id, + cloud_compliance_count: (nodeData as ModelCloudResource) + ?.cloud_compliances_count, + latest_vulnerability_scan_id: undefined, + latest_secret_scan_id: undefined, + latest_compliance_scan_id: undefined, }; - } - - return { - ...node, - latest_cloud_compliance_scan_id: (nodeData as ModelCloudResource) - ?.cloud_compliance_latest_scan_id, - latest_vulnerability_scan_id: undefined, - latest_secret_scan_id: undefined, - latest_malware_scan_id: undefined, - latest_compliance_scan_id: undefined, - }; - }); + }) + .filter((data) => !!data); }, [data]); return (
{nodesData?.map((item) => ( -
+
-
{item.node_id}
+
{item?.node_id}
- {item.vulnerability_count ? ( + {item?.vulnerability_count ? ( ) : null} - {item.secrets_count ? ( + {item?.secrets_count ? ( ) : null} - {item.compliance_count ? ( + {item?.compliance_count ? ( ) : null} - {item.cloud_compliance_count ? ( + {item?.cloud_compliance_count ? (