diff --git a/.changeset/FN-7198-compound-engineering-icon-match.md b/.changeset/FN-7198-compound-engineering-icon-match.md new file mode 100644 index 0000000000..3f1b692327 --- /dev/null +++ b/.changeset/FN-7198-compound-engineering-icon-match.md @@ -0,0 +1,7 @@ +--- +"@runfusion/fusion": patch +--- + +summary: Compound Engineering sidebar navigation now matches its Boxes header icon. +category: fix +dev: Pins Compound Engineering plugin nav entries to Boxes by plugin id so stale dashboard view metadata cannot render Sparkles/Grid3X3 in desktop or mobile navigation. diff --git a/packages/dashboard/app/components/LeftSidebarNav.tsx b/packages/dashboard/app/components/LeftSidebarNav.tsx index 38b8e34059..b3c726adc3 100644 --- a/packages/dashboard/app/components/LeftSidebarNav.tsx +++ b/packages/dashboard/app/components/LeftSidebarNav.tsx @@ -31,7 +31,7 @@ import { import type { ProjectInfo, PluginDashboardViewEntry } from "../api"; import type { TaskView } from "../hooks/useViewState"; import { buildPluginTaskViewId } from "../plugins/pluginViewRegistry"; -import { getPluginNavIcon } from "./pluginNavIcon"; +import { getPluginDashboardViewNavIcon } from "./pluginNavIcon"; import { GithubIcon } from "./GithubIcon"; export interface LeftSidebarExperimentalFeatures { @@ -241,7 +241,7 @@ export function LeftSidebarNav({ const mapPluginEntry = useCallback( (entry: PluginDashboardViewEntry): SidebarNavEntry => { - const PluginIcon = getPluginNavIcon(entry.view.icon); + const PluginIcon = getPluginDashboardViewNavIcon(entry); const targetView = getPluginEntryView(entry); return { id: `plugin-${entry.pluginId}-${entry.view.viewId}`, diff --git a/packages/dashboard/app/components/MobileNavBar.tsx b/packages/dashboard/app/components/MobileNavBar.tsx index 8959a4f412..9b8556a84d 100644 --- a/packages/dashboard/app/components/MobileNavBar.tsx +++ b/packages/dashboard/app/components/MobileNavBar.tsx @@ -36,7 +36,7 @@ import type { PluginDashboardViewEntry } from "../api"; import { useViewportMode } from "./Header"; import type { TaskView } from "../hooks/useViewState"; import { buildPluginTaskViewId, isPluginViewId } from "../plugins/pluginViewRegistry"; -import { getPluginNavIcon } from "./pluginNavIcon"; +import { getPluginDashboardViewNavIcon } from "./pluginNavIcon"; export interface PublishedMobileNavHeightInput { navOffsetHeight: number; @@ -440,7 +440,7 @@ export function MobileNavBar({ {topLevelPrimaryPluginViews.map((entry) => { const pluginTaskView = buildPluginTaskViewId(entry.pluginId, entry.view.viewId); - const PluginIcon = getPluginNavIcon(entry.view.icon); + const PluginIcon = getPluginDashboardViewNavIcon(entry); return (