"use client"; import { IconChevronLeft, IconSettings } from "@tabler/icons-react"; import { Box, Flex, Group, Stack, Text } from "@mantine/core"; import Boards from "@/app/deals/components/shared/Boards/Boards"; import { useBoardsContext } from "@/app/deals/contexts/BoardsContext"; import { useProjectsContext } from "@/app/deals/contexts/ProjectsContext"; import ProjectSelect from "@/components/selects/ProjectSelect/ProjectSelect"; import { useDrawersContext } from "@/drawers/DrawersContext"; import useIsMobile from "@/hooks/useIsMobile"; const Header = () => { const { projects, setSelectedProjectId, refetchProjects, selectedProject } = useProjectsContext(); const { refetchBoards } = useBoardsContext(); const { openDrawer } = useDrawersContext(); const isMobile = useIsMobile(); const getDesktopHeader = () => { return ( value && setSelectedProjectId(value.id) } style={{ minWidth: 200 }} /> ); }; const selectProjectId = async (projectId: number | null) => { await refetchProjects(); setSelectedProjectId(projectId); }; const openProjectsEditorDrawer = () => { openDrawer({ key: "projectsEditorDrawer", props: { setSelectedProjectId: selectProjectId, }, }); }; const openBoardsEditorDrawer = () => { if (!selectedProject) return; openDrawer({ key: "projectBoardsEditorDrawer", props: { project: selectedProject, }, onClose: refetchBoards, }); }; const getMobileHeader = () => { return ( <> {selectedProject?.name} ); }; return ( {isMobile ? getMobileHeader() : getDesktopHeader()} ); }; export default Header;