import React from 'react'; import { Box, Stack, TextInput, Group, Text, Switch } from '@mantine/core'; import { useAuth } from '@/contexts/AuthContext'; import { Theme, type UserProfileSettings } from '@/types/models'; interface ProfileSettingsProps { settings: UserProfileSettings; onInputChange: (key: keyof UserProfileSettings, value: string) => void; onThemeChange?: (theme: Theme) => void; } const ProfileSettings: React.FC = ({ settings, onInputChange, onThemeChange, }) => { const { user } = useAuth(); const currentTheme = settings.theme || user?.theme || Theme.Dark; const handleThemeToggle = () => { const newTheme = currentTheme === Theme.Dark ? Theme.Light : Theme.Dark; if (onThemeChange) { onThemeChange(newTheme); } }; return ( onInputChange('displayName', e.currentTarget.value)} placeholder="Enter display name" data-testid="display-name-input" /> onInputChange('email', e.currentTarget.value)} placeholder="Enter email" data-testid="email-input" />
Default Dark Mode Sets the default theme for new workspaces
); }; export default ProfileSettings;