mirror of
https://github.com/fleetdm/fleet
synced 2026-05-24 09:28:54 +00:00
<!-- Add the related story/sub-task/bug number, like Resolves #123, or remove if NA --> **Related issue:** Resolves #44330, Resolves #44331 # Checklist for submitter - [x] Changes file added for user-visible changes in `changes/`, `orbit/changes/` or `ee/fleetd-chrome/changes`. See [Changes files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files) for more information. ## Testing - [x] Added/updated automated tests. (I'd defer integration tests to a separate PR since this one is pretty large already.) - [x] QA'd all new/changed functionality manually. I've tested this on both the setup flow and the organization settings page. I haven't had the time to test this on other places where we render the logo (macOS setup experience / MDM migration dialog). https://github.com/user-attachments/assets/95d4eae5-3da6-40f4-98a1-8575b97d96b3 ## New Fleet configuration settings - [x] Setting(s) is/are explicitly excluded from GitOps. Will handle GitOps in a separate PR. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Organizations can upload custom logos for light and dark modes. * Registration and Org Settings support logo file upload, preview, per-mode replace/delete, and validation (size & image formats). * Activity feed records logo changes/deletions; site nav displays uploaded logos per theme. * File uploader/preview adds a Fleet logo graphic option and improved logo validation. * Config/GitOps outputs now include separate dark/light logo fields. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
70 lines
2.4 KiB
TypeScript
70 lines
2.4 KiB
TypeScript
import EmptyQueries from "./EmptyQueries";
|
|
import EmptyIntegrations from "./EmptyIntegrations";
|
|
import EmptyUsers from "./EmptyUsers";
|
|
import EmptyPolicies from "./EmptyPolicies";
|
|
import EmptySoftware from "./EmptySoftware";
|
|
import FileConfigurationProfile from "./FileConfigurationProfile";
|
|
import FileSh from "./FileSh";
|
|
import FilePs1 from "./FilePs1";
|
|
import FilePy from "./FilePy";
|
|
import FileScript from "./FileScript";
|
|
import FilePdf from "./FilePdf";
|
|
import FilePkg from "./FilePkg";
|
|
import FilePng from "./FilePng";
|
|
import FileP7m from "./FileP7m";
|
|
import FilePem from "./FilePem";
|
|
import FileVpp from "./FileVpp";
|
|
import FileCertificate from "./FileCertificate";
|
|
import AppStore from "./AppStore";
|
|
import EmptyHosts from "./EmptyHosts";
|
|
import EmptyTeams from "./EmptyTeams";
|
|
import EmptyPacks from "./EmptyPacks";
|
|
import EmptySchedule from "./EmptySchedule";
|
|
import EmptySearchExclamation from "./EmptySearchExclamation";
|
|
import EmptySearchCheck from "./EmptySearchCheck";
|
|
import EmptySearchQuestion from "./EmptySearchQuestion";
|
|
import CollectingResults from "./CollectingResults";
|
|
import DataError from "./DataError";
|
|
import Calendar from "./Calendar";
|
|
import Lock from "./Lock";
|
|
import Settings from "./Settings";
|
|
import FleetLogo from "./FleetLogo";
|
|
|
|
export const GRAPHIC_MAP = {
|
|
// Empty state graphics
|
|
"empty-queries": EmptyQueries,
|
|
"empty-integrations": EmptyIntegrations,
|
|
"empty-users": EmptyUsers,
|
|
"empty-policies": EmptyPolicies,
|
|
"empty-software": EmptySoftware,
|
|
"empty-hosts": EmptyHosts,
|
|
"empty-teams": EmptyTeams,
|
|
"empty-packs": EmptyPacks,
|
|
"empty-schedule": EmptySchedule,
|
|
"empty-search-exclamation": EmptySearchExclamation,
|
|
"empty-search-check": EmptySearchCheck,
|
|
"empty-search-question": EmptySearchQuestion,
|
|
// File type graphics
|
|
"file-configuration-profile": FileConfigurationProfile,
|
|
"file-sh": FileSh,
|
|
"file-ps1": FilePs1,
|
|
"file-py": FilePy,
|
|
"file-script": FileScript,
|
|
"file-pdf": FilePdf,
|
|
"file-pkg": FilePkg,
|
|
"file-png": FilePng,
|
|
"file-p7m": FileP7m,
|
|
"file-pem": FilePem,
|
|
"file-vpp": FileVpp,
|
|
"file-certificate": FileCertificate,
|
|
"app-store": AppStore, // Used in non-editable file uploader for vpp apps edit modal
|
|
// Other graphics
|
|
"collecting-results": CollectingResults,
|
|
"data-error": DataError,
|
|
calendar: Calendar,
|
|
lock: Lock,
|
|
settings: Settings,
|
|
"fleet-logo": FleetLogo,
|
|
};
|
|
|
|
export type GraphicNames = keyof typeof GRAPHIC_MAP;
|