diff --git a/frontend/src/components/Settings.js b/frontend/src/components/Settings.js index b64f51c..a4ee4aa 100644 --- a/frontend/src/components/Settings.js +++ b/frontend/src/components/Settings.js @@ -6,7 +6,7 @@ import { Group, Title, Stack, - Divider, + Accordion, } from '@mantine/core'; import { notifications } from '@mantine/notifications'; import { useWorkspace } from '../contexts/WorkspaceContext'; @@ -53,6 +53,12 @@ function settingsReducer(state, action) { } } +const AccordionControl = ({ children }) => ( + + {children} + +); + const Settings = () => { const { currentWorkspace, updateSettings } = useWorkspace(); const { settingsModalVisible, setSettingsModalVisible } = useModalContext(); @@ -126,35 +132,90 @@ const Settings = () => { )} - - + ({ + control: { + paddingTop: theme.spacing.md, + paddingBottom: theme.spacing.md, + }, + item: { + borderBottom: `1px solid ${ + theme.colorScheme === 'dark' + ? theme.colors.dark[4] + : theme.colors.gray[3] + }`, + '&[data-active]': { + backgroundColor: + theme.colorScheme === 'dark' + ? theme.colors.dark[7] + : theme.colors.gray[0], + }, + }, + chevron: { + '&[data-rotate]': { + transform: 'rotate(180deg)', + }, + }, + })} + > + + General + + + + - handleInputChange('theme', newTheme)} - /> - + + Appearance + + + handleInputChange('theme', newTheme) + } + /> + + - handleInputChange('autoSave', value)} - /> - + + Editor + + + handleInputChange('autoSave', value) + } + /> + + - + + Git Integration + + + + - + + Danger Zone + + + + +