fleet/frontend/pages/admin/OrgSettingsPage/OrgSettingsNavItems.tsx
Jacob Shandling a1f85f8b26
UI – refactor custom dropdown option logic, apply it to the global and team host status webhook settings (#17518)
## Addresses #17496
- Encapsulate logic for generating custom dropdown options
- Apply that logic to the team and global host status webhook settings
forms, as well as the edit query form
- Hide and show global host status webhook setting fields to match the
fresher UX of the team setting

![Screenshot 2024-03-08 at 5 56
39 PM](https://github.com/fleetdm/fleet/assets/61553566/59c618f1-e955-4ee8-abfe-ca9a3a7c7362)

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-03-11 11:27:34 -05:00

74 lines
1.9 KiB
TypeScript

import PATHS from "router/paths";
import { ISideNavItem } from "../components/SideNav/SideNav";
import { IAppConfigFormProps } from "./cards/constants";
import Info from "./cards/Info";
import WebAddress from "./cards/WebAddress";
import Sso from "./cards/Sso";
import Smtp from "./cards/Smtp";
import GlobalHostStatusWebhook from "./cards/GlobalHostStatusWebhook";
import Statistics from "./cards/Statistics";
import FleetDesktop from "./cards/FleetDesktop";
import Advanced from "./cards/Advanced";
import Agents from "./cards/Agents";
const ORG_SETTINGS_NAV_ITEMS: ISideNavItem<IAppConfigFormProps>[] = [
{
title: "Organization info",
urlSection: "organization",
path: PATHS.ADMIN_ORGANIZATION_INFO,
Card: Info,
},
{
title: "Fleet web address",
urlSection: "webaddress",
path: PATHS.ADMIN_ORGANIZATION_WEBADDRESS,
Card: WebAddress,
},
{
title: "Single sign-on options",
urlSection: "sso",
path: PATHS.ADMIN_ORGANIZATION_SSO,
Card: Sso,
},
{
title: "SMTP options",
urlSection: "smtp",
path: PATHS.ADMIN_ORGANIZATION_SMTP,
Card: Smtp,
},
{
title: "Agent options",
urlSection: "agents",
path: PATHS.ADMIN_ORGANIZATION_AGENTS,
Card: Agents,
},
{
title: "Host status webhook",
urlSection: "host-status-webhook",
path: PATHS.ADMIN_ORGANIZATION_HOST_STATUS_WEBHOOK,
Card: GlobalHostStatusWebhook,
},
{
title: "Usage statistics",
urlSection: "statistics",
path: PATHS.ADMIN_ORGANIZATION_STATISTICS,
Card: Statistics,
},
{
title: "Fleet Desktop",
urlSection: "fleet-desktop",
path: PATHS.ADMIN_ORGANIZATION_FLEET_DESKTOP,
// isPremium: true,
Card: FleetDesktop,
},
{
title: "Advanced options",
urlSection: "advanced",
path: PATHS.ADMIN_ORGANIZATION_ADVANCED,
Card: Advanced,
},
];
export default ORG_SETTINGS_NAV_ITEMS;