final polish 3

This commit is contained in:
IGNY8 VPS (Salman)
2025-12-27 15:55:54 +00:00
parent b9e4b6f7e2
commit 3ea7d4f933
22 changed files with 958 additions and 9 deletions

View File

@@ -13,6 +13,7 @@ import { Card } from '../../components/ui/card';
import Button from '../../components/ui/button/Button';
import Badge from '../../components/ui/badge/Badge';
import PageMeta from '../../components/common/PageMeta';
import { usePageContext } from '../../context/PageContext';
import { useToast } from '../../components/ui/toast/ToastContainer';
import { useAuthStore } from '../../store/authStore';
import {
@@ -40,6 +41,7 @@ export default function AccountSettingsPage() {
const toast = useToast();
const location = useLocation();
const { user, refreshUser } = useAuthStore();
const { setPageInfo } = usePageContext();
// Derive active tab from URL path
const activeTab = getTabFromPath(location.pathname);
const [loading, setLoading] = useState(true);
@@ -47,6 +49,16 @@ export default function AccountSettingsPage() {
const [error, setError] = useState<string>('');
const [success, setSuccess] = useState<string>('');
// Set page context for AppHeader - no selectors for account pages per audit Section 1
useEffect(() => {
setPageInfo({
title: 'Account Settings',
badge: { icon: <Settings className="w-4 h-4" />, color: 'indigo' },
selectorVisibility: 'none',
});
return () => setPageInfo(null);
}, [setPageInfo]);
// Account settings state
const [settings, setSettings] = useState<AccountSettings | null>(null);
const [accountForm, setAccountForm] = useState({