fix: wizard grey screen, missing form fields, and implement settings page

- Fix Tailwind v4 modal overlay: bg-opacity-75 removed, use bg-gray-500/75
- Restructure AddMailAccountModal with flexbox + relative z-10
- Add missing required fields to form: forward_to, delivery_method,
  delete_after_forward; auto-sync email_address from username
- Fix DashboardLayout mobile overlay opacity (same Tailwind v4 issue)
- Make email_address/forward_to required in MailAccountCreate interface
- Add userApi.updateProfile() method
- Implement Settings page: profile, account info, security sections
- Update CHANGELOG.md and docs/TODO.md

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Agent-Logs-Url: https://github.com/christianlouis/pop_puller_to_gmail/sessions/d3a9e3bc-5637-45c5-b674-8ef436953614
This commit is contained in:
copilot-swe-agent[bot]
2026-03-25 09:32:56 +00:00
parent 94552a1ec7
commit 2e3b56098a
6 changed files with 323 additions and 56 deletions
+7 -2
View File
@@ -79,7 +79,7 @@ export interface MailAccount {
export interface MailAccountCreate {
name: string;
email_address?: string;
email_address: string;
protocol: string;
host: string;
port: number;
@@ -87,7 +87,7 @@ export interface MailAccountCreate {
use_tls?: boolean;
username: string;
password: string;
forward_to?: string;
forward_to: string;
delivery_method?: string;
is_enabled?: boolean;
check_interval_minutes?: number;
@@ -176,6 +176,11 @@ export const userApi = {
const response = await api.get<User>("/users/me");
return response.data;
},
async updateProfile(data: { full_name?: string; email?: string }): Promise<User> {
const response = await api.put<User>("/users/me", data);
return response.data;
},
};
// ── Mail Accounts API ───────────────────────────────────────────────────