diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx index 3ff62390b..848e0bfdb 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx @@ -38,6 +38,7 @@ import { LayoutSelection, MobileLayoutSelection, } from "@/components/issues/issue-layouts/filters"; +import { WorkItemFiltersToggle } from "@/components/work-item-filters/filters-toggle"; // hooks import { useCommandPalette } from "@/hooks/store/use-command-palette"; import { useCycle } from "@/hooks/store/use-cycle"; @@ -209,6 +210,7 @@ export const CycleIssuesHeader: React.FC = observer(() => { activeLayout={activeLayout} /> + { const [analyticsModal, setAnalyticsModal] = useState(false); // router const router = useAppRouter(); - const { workspaceSlug, projectId, moduleId } = useParams(); + const { workspaceSlug, projectId, moduleId: routerModuleId } = useParams(); + const moduleId = routerModuleId ? routerModuleId.toString() : undefined; // hooks const { isMobile } = usePlatformOS(); // store hooks @@ -75,7 +76,7 @@ export const ModuleIssuesHeader: React.FC = observer(() => { // derived values const isSidebarCollapsed = storedValue ? (storedValue === "true" ? true : false) : false; const activeLayout = issueFilters?.displayFilters?.layout; - const moduleDetails = moduleId ? getModuleById(moduleId.toString()) : undefined; + const moduleDetails = moduleId ? getModuleById(moduleId) : undefined; const canUserCreateIssue = allowPermissions( [EUserPermissions.ADMIN, EUserPermissions.MEMBER], EUserPermissionsLevel.PROJECT @@ -197,6 +198,7 @@ export const ModuleIssuesHeader: React.FC = observer(() => { activeLayout={activeLayout} /> + {moduleId && } { > - + {moduleId && ( + + )} diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx index 83d94e5dc..355aadd76 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx @@ -31,6 +31,7 @@ import { SwitcherIcon, SwitcherLabel } from "@/components/common/switcher-label" import { DisplayFiltersSelection, FiltersDropdown, LayoutSelection } from "@/components/issues/issue-layouts/filters"; // constants import { ViewQuickActions } from "@/components/views/quick-actions"; +import { WorkItemFiltersToggle } from "@/components/work-item-filters/filters-toggle"; // hooks import { useCommandPalette } from "@/hooks/store/use-command-palette"; import { useIssues } from "@/hooks/store/use-issues"; @@ -45,8 +46,9 @@ export const ProjectViewIssuesHeader: React.FC = observer(() => { // refs const parentRef = useRef(null); // router - const { workspaceSlug, projectId, viewId } = useParams(); const router = useAppRouter(); + const { workspaceSlug, projectId, viewId: routerViewId } = useParams(); + const viewId = routerViewId ? routerViewId.toString() : undefined; // store hooks const { issuesFilter: { issueFilters, updateFilters }, @@ -163,8 +165,8 @@ export const ProjectViewIssuesHeader: React.FC = observer(() => { )} - {!viewDetails?.is_locked ? ( - <> + <> + {!viewDetails.is_locked && ( { onChange={(layout) => handleLayoutChange(layout)} selectedLayout={activeLayout} /> + )} + {viewId && } + {!viewDetails.is_locked && ( { moduleViewDisabled={!currentProjectDetails?.module_view} /> - - ) : ( - <> - )} + )} + {canUserCreateIssue ? (