diff --git a/frontend/src/layouts/SecretScanningLayout/SecretScanningLayout.tsx b/frontend/src/layouts/SecretScanningLayout/SecretScanningLayout.tsx index c8340e48a..265fcc003 100644 --- a/frontend/src/layouts/SecretScanningLayout/SecretScanningLayout.tsx +++ b/frontend/src/layouts/SecretScanningLayout/SecretScanningLayout.tsx @@ -10,8 +10,15 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { Link, Outlet } from "@tanstack/react-router"; import { motion } from "framer-motion"; -import { Lottie, Menu, MenuGroup, MenuItem } from "@app/components/v2"; -import { useProjectPermission, useWorkspace } from "@app/context"; +import { Badge, Lottie, Menu, MenuGroup, MenuItem } from "@app/components/v2"; +import { + ProjectPermissionSub, + useProjectPermission, + useSubscription, + useWorkspace +} from "@app/context"; +import { ProjectPermissionSecretScanningFindingActions } from "@app/context/ProjectPermissionContext/types"; +import { useGetSecretScanningUnresolvedFindingCount } from "@app/hooks/api/secretScanningV2"; import { AssumePrivilegeModeBanner } from "../ProjectLayout/components/AssumePrivilegeModeBanner"; @@ -19,6 +26,22 @@ export const SecretScanningLayout = () => { const { currentWorkspace } = useWorkspace(); const { assumedPrivilegeDetails } = useProjectPermission(); + const { permission } = useProjectPermission(); + const { subscription } = useSubscription(); + + const { data: unresolvedFindings } = useGetSecretScanningUnresolvedFindingCount( + currentWorkspace.id, + { + enabled: + subscription.secretScanning && + permission.can( + ProjectPermissionSecretScanningFindingActions.Read, + ProjectPermissionSub.SecretScanningFindings + ), + refetchInterval: 30000 + } + ); + return (