From fd313c1d7f94aa6c9edf24a6b185009b4cf2710d Mon Sep 17 00:00:00 2001 From: LordMathis Date: Tue, 22 Oct 2024 21:47:10 +0200 Subject: [PATCH] Add Workspace menu --- frontend/src/components/Header.js | 13 +--- frontend/src/components/WorkspaceMenu.js | 77 ++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 10 deletions(-) create mode 100644 frontend/src/components/WorkspaceMenu.js diff --git a/frontend/src/components/Header.js b/frontend/src/components/Header.js index f95b52a..0fbe38d 100644 --- a/frontend/src/components/Header.js +++ b/frontend/src/components/Header.js @@ -1,14 +1,9 @@ import React from 'react'; -import { Group, Text, ActionIcon, Avatar } from '@mantine/core'; -import { IconSettings } from '@tabler/icons-react'; +import { Group, Text, Avatar } from '@mantine/core'; +import WorkspaceMenu from './WorkspaceMenu'; import Settings from './Settings'; -import { useModalContext } from '../contexts/ModalContext'; const Header = () => { - const { setSettingsModalVisible } = useModalContext(); - - const openSettings = () => setSettingsModalVisible(true); - return ( @@ -16,9 +11,7 @@ const Header = () => { - - - + diff --git a/frontend/src/components/WorkspaceMenu.js b/frontend/src/components/WorkspaceMenu.js new file mode 100644 index 0000000..5beff44 --- /dev/null +++ b/frontend/src/components/WorkspaceMenu.js @@ -0,0 +1,77 @@ +import React from 'react'; +import { Menu, ActionIcon, Text } from '@mantine/core'; +import { + IconFolders, + IconFolderPlus, + IconSwitchHorizontal, + IconSettings, + IconTrash, + IconPencil, + IconFileExport, + IconFileImport, +} from '@tabler/icons-react'; +import { useModalContext } from '../contexts/ModalContext'; +import { useWorkspace } from '../contexts/WorkspaceContext'; + +const WorkspaceMenu = () => { + const { setSettingsModalVisible } = useModalContext(); + const { currentWorkspace } = useWorkspace(); + + const openSettings = () => setSettingsModalVisible(true); + + return ( + + + + + + + + + Current Workspace + + + {currentWorkspace?.name || 'No workspace selected'} + + + + + + Workspace Actions + }> + Create Workspace + + }> + Switch Workspace + + }> + Rename Workspace + + } color="red"> + Delete Workspace + + + + + Data Management + }> + Export Workspace + + }> + Import Workspace + + + + + } + onClick={openSettings} + > + Workspace Settings + + + + ); +}; + +export default WorkspaceMenu;