mirror of
https://github.com/fleetdm/fleet
synced 2026-05-21 16:08:47 +00:00
## Addresses #16758 - Add Teams functionality to the Vulnerability details page - Premium only - All links from page include team_id query param - To hosts page - To OS details pages - To SW version details pages - API call includes `team_id` query param - Teams header - If user only has access to one team, just shows the teamname (no dropdown) - Otherwise, Dropdown with team options - Includes "All teams," but not "No teams" - Add empty state when ~both vulnerable OS versions and SW versions are empty~ affected hosts === 0 <img width="1657" alt="Screenshot 2024-02-12 at 4 47 36 PM" src="https://github.com/fleetdm/fleet/assets/61553566/4f0bb856-57c4-4905-b82b-b00dac6a8306"> <img width="1552" alt="Screenshot 2024-02-12 at 4 45 42 PM" src="https://github.com/fleetdm/fleet/assets/61553566/45d6bbb5-0b31-46df-a715-7fa176029a1d"> <img width="1552" alt="Screenshot 2024-02-12 at 4 45 47 PM" src="https://github.com/fleetdm/fleet/assets/61553566/de6c68a6-aaa4-4637-998c-569b4d189433"> --------- Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
40 lines
893 B
TypeScript
40 lines
893 B
TypeScript
import React from "react";
|
|
|
|
import { ITeamSummary } from "interfaces/team";
|
|
|
|
import TeamsDropdown from "components/TeamsDropdown";
|
|
|
|
interface ITeamsHeader {
|
|
isOnGlobalTeam?: boolean;
|
|
currentTeamId?: number;
|
|
userTeams?: ITeamSummary[];
|
|
isSandboxMode?: boolean;
|
|
onTeamChange: (teamId: number) => void;
|
|
}
|
|
|
|
const TeamsHeader = ({
|
|
isOnGlobalTeam,
|
|
currentTeamId,
|
|
userTeams = [],
|
|
isSandboxMode = false,
|
|
onTeamChange,
|
|
}: ITeamsHeader) => {
|
|
if (userTeams) {
|
|
if (userTeams.length > 1 || isOnGlobalTeam) {
|
|
return (
|
|
<TeamsDropdown
|
|
currentUserTeams={userTeams}
|
|
selectedTeamId={currentTeamId}
|
|
onChange={onTeamChange}
|
|
isSandboxMode={isSandboxMode}
|
|
/>
|
|
);
|
|
}
|
|
if (userTeams.length === 1 && !isOnGlobalTeam) {
|
|
return <h1>{userTeams[0].name}</h1>;
|
|
}
|
|
}
|
|
return <></>;
|
|
};
|
|
|
|
export default TeamsHeader;
|