Skip to content

Commit ec0fd86

Browse files
committed
current
1 parent 7d649a3 commit ec0fd86

4 files changed

Lines changed: 48 additions & 2 deletions

File tree

src/powershell/assets/ReportTemplate.html

Lines changed: 2 additions & 2 deletions
Large diffs are not rendered by default.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { ZtResponsiveSankey } from "@/components/nivo/sankey";
2+
import { SankeyDataNode } from "@/config/report-data";
3+
import { ThemeProviderContext } from "@/contexts/ThemeContext";
4+
import { useContext } from "react";
5+
6+
export const M365ProtectionCircuitSankey = ({ data }: { data: SankeyDataNode[] }) => {
7+
const theme = useContext(ThemeProviderContext);
8+
const isDark = theme.theme === "dark" || theme.theme === "system" && window.matchMedia("(prefers-color-scheme: dark)").matches;
9+
10+
return (
11+
<ZtResponsiveSankey isDark={isDark} data={{
12+
nodes: [
13+
{ id: "Total M365 traffic", nodeColor: "hsl(215, 16%, 47%)" },
14+
{ id: "Unprotected - not acquired", nodeColor: "hsl(0, 84%, 60%)" },
15+
{ id: "Acquired via Global Secure Access", nodeColor: "hsl(142, 71%, 45%)" },
16+
{ id: "Enforced - compliant network", nodeColor: "hsl(142, 71%, 45%)" },
17+
{ id: "Acquired but not enforced", nodeColor: "hsl(0, 84%, 60%)" },
18+
{ id: "Acquired, enforcement needs review", nodeColor: "hsl(45, 93%, 47%)" },
19+
{ id: "Acquisition needs review", nodeColor: "hsl(45, 93%, 47%)" },
20+
{ id: "Acquisition not applicable", nodeColor: "hsl(215, 16%, 47%)" },
21+
{ id: "Enforcement not applicable", nodeColor: "hsl(215, 16%, 47%)" },
22+
],
23+
links: data,
24+
}} />
25+
);
26+
};

src/report/src-curent/config/report-data.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ export interface TenantInfo {
2121
OverviewCaDevicesAllUsers?: SankeyData | null;
2222
OverviewAuthMethodsPrivilegedUsers?: SankeyData | null;
2323
OverviewAuthMethodsAllUsers?: SankeyData | null;
24+
OverviewM365ProtectionCircuit?: SankeyData | null;
2425
OverviewPrivateAccess?: PrivateAccessSankeyData | null;
2526
ConfigWindowsEnrollment?: ConfigWindowsEnrollment[] | null;
2627
ConfigDeviceEnrollmentRestriction?: ConfigDeviceEnrollmentRestriction[] | null;

src/report/src-curent/pages/Dashboard.tsx

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import {
3636
// import { Separator } from "@/components/ui/separator"
3737
import { reportData } from "@/config/report-data";
3838
import { AuthMethodSankey } from "@/components/overview/authMethod-sankey";
39+
import { M365ProtectionCircuitSankey } from "@/components/overview/m365-protection-circuit-sankey";
3940
import { SwgDefenseLayers, hasSwgData } from "@/components/overview/swg-defense-layers";
4041
import { PrivateAccessSankey, hasPrivateAccessData } from "@/components/overview/private-access-sankey";
4142
import { AzureNetSecPlanes, hasAzureNetSecData } from "@/components/overview/azure-netsec-planes";
@@ -1348,6 +1349,24 @@ export default function Dashboard() {
13481349
</div>
13491350
)}
13501351

1352+
{reportData.TenantInfo?.OverviewM365ProtectionCircuit?.nodes && (
1353+
<Card className="mt-[26px]">
1354+
<CardHeader className="space-y-0 pt-3 pb-3 flex-row">
1355+
<ShieldCheck className="pr-2 size-8" />
1356+
<div>
1357+
<CardTitle className="text-2xl tabular-nums">Microsoft 365 protection circuit</CardTitle>
1358+
<CardDescription className="mt-1">Global Secure Access acquisition and compliant network enforcement</CardDescription>
1359+
</div>
1360+
</CardHeader>
1361+
<CardContent className="h-80">
1362+
<M365ProtectionCircuitSankey data={reportData.TenantInfo.OverviewM365ProtectionCircuit.nodes} />
1363+
</CardContent>
1364+
<CardFooter className="text-sm text-muted-foreground">
1365+
{reportData.TenantInfo.OverviewM365ProtectionCircuit.description}
1366+
</CardFooter>
1367+
</Card>
1368+
)}
1369+
13511370
{/* AI overview */}
13521371
{reportData.TenantInfo?.AgentOwnershipDistribution && (
13531372
<div className="mt-[26px] grid grid-cols-1 items-stretch gap-4 lg:grid-cols-2">

0 commit comments

Comments
 (0)