From 02dabfcd01e372ada7d80a0501b708b171c8fbc6 Mon Sep 17 00:00:00 2001 From: Yossi Hillali Date: Tue, 21 Jan 2025 15:34:41 +0200 Subject: [PATCH] feat: add dropdown list for switching boards (#2042) --- .../boards/(content)/_header-actions.tsx | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/apps/nextjs/src/app/[locale]/boards/(content)/_header-actions.tsx b/apps/nextjs/src/app/[locale]/boards/(content)/_header-actions.tsx index b0657e1e1..74c617d09 100644 --- a/apps/nextjs/src/app/[locale]/boards/(content)/_header-actions.tsx +++ b/apps/nextjs/src/app/[locale]/boards/(content)/_header-actions.tsx @@ -2,6 +2,7 @@ import type { MouseEvent } from "react"; import { useCallback, useEffect } from "react"; +import Link from "next/link"; import { useRouter } from "next/navigation"; import { Group, Menu } from "@mantine/core"; import { useHotkeys } from "@mantine/hooks"; @@ -9,9 +10,11 @@ import { IconBox, IconBoxAlignTop, IconChevronDown, + IconLayoutBoard, IconPencil, IconPencilOff, IconPlus, + IconReplace, IconResize, IconSettings, } from "@tabler/icons-react"; @@ -49,6 +52,8 @@ export const BoardContentHeaderActions = () => { + + ); }; @@ -151,6 +156,32 @@ const EditModeMenu = () => { ); }; +const SelectBoardsMenu = () => { + const { data: boards = [] } = clientApi.board.getAllBoards.useQuery(); + + return ( + + + + + + + + {boards.map((board) => ( + } + > + {board.name} + + ))} + + + ); +}; + const usePreventLeaveWithDirty = (isDirty: boolean) => { const t = useI18n(); const { openConfirmModal } = useConfirmModal();