import { FC } from "react"; import useSWR from "swr"; import { useRouter } from "next/router"; import { observer } from "mobx-react-lite"; // hooks import { useApplication, useProject } from "hooks/store"; // ui import { Breadcrumbs, LayersIcon } from "@plane/ui"; // helpers import { renderEmoji } from "helpers/emoji.helper"; // services import { IssueService } from "services/issue"; // constants import { ISSUE_DETAILS } from "constants/fetch-keys"; // components import { SidebarHamburgerToggle } from "components/core/sidebar/sidebar-menu-hamburger-toggle"; import { BreadcrumbLink } from "components/common"; import { PanelRight } from "lucide-react"; import { cn } from "helpers/common.helper"; // services const issueService = new IssueService(); export const ProjectIssueDetailsHeader: FC = observer(() => { // router const router = useRouter(); const { workspaceSlug, projectId, issueId } = router.query; // store hooks const { currentProjectDetails, getProjectById } = useProject(); const { theme: themeStore } = useApplication(); const { data: issueDetails } = useSWR( workspaceSlug && projectId && issueId ? ISSUE_DETAILS(issueId as string) : null, workspaceSlug && projectId && issueId ? () => issueService.retrieve(workspaceSlug as string, projectId as string, issueId as string) : null ); const isSidebarCollapsed = themeStore.issueDetailSidebarCollapsed; return (
{currentProjectDetails?.name.charAt(0)} ) } /> } /> } /> } /> } />
); });