Implements the full User Connections & Notification Centre feature: Phase 1 - Database: migrations 039-043 adding umbral_name to users, profile/social fields to settings, notifications table, connection request/user_connection tables, and linked_user_id to people. Phase 2 - Notifications: backend CRUD router + service + 90-day purge, frontend NotificationsPage with All/Unread filter, bell icon in sidebar with unread badge polling every 60s. Phase 3 - Settings: profile fields (phone, mobile, address, company, job_title), social card with accept_connections toggle and per-field sharing defaults, umbral name display with CopyableField. Phase 4 - Connections: timing-safe user search, send/accept/reject flow with atomic status updates, bidirectional UserConnection + Person records, in-app + ntfy notifications, per-receiver pending cap, nginx rate limiting. Phase 5 - People integration: batch-loaded shared profiles (N+1 prevention), Ghost icon for umbral contacts, Umbral filter pill, split Add Person button, shared field indicators (synced labels + Lock icons), disabled form inputs for synced fields on umbral contacts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
44 lines
1.2 KiB
Python
44 lines
1.2 KiB
Python
from app.models.settings import Settings
|
|
from app.models.todo import Todo
|
|
from app.models.calendar import Calendar
|
|
from app.models.calendar_event import CalendarEvent
|
|
from app.models.reminder import Reminder
|
|
from app.models.project import Project
|
|
from app.models.project_task import ProjectTask
|
|
from app.models.person import Person
|
|
from app.models.location import Location
|
|
from app.models.task_comment import TaskComment
|
|
from app.models.user import User
|
|
from app.models.session import UserSession
|
|
from app.models.ntfy_sent import NtfySent
|
|
from app.models.totp_usage import TOTPUsage
|
|
from app.models.backup_code import BackupCode
|
|
from app.models.system_config import SystemConfig
|
|
from app.models.audit_log import AuditLog
|
|
from app.models.notification import Notification
|
|
from app.models.connection_request import ConnectionRequest
|
|
from app.models.user_connection import UserConnection
|
|
|
|
__all__ = [
|
|
"Settings",
|
|
"Todo",
|
|
"Calendar",
|
|
"CalendarEvent",
|
|
"Reminder",
|
|
"Project",
|
|
"ProjectTask",
|
|
"Person",
|
|
"Location",
|
|
"TaskComment",
|
|
"User",
|
|
"UserSession",
|
|
"NtfySent",
|
|
"TOTPUsage",
|
|
"BackupCode",
|
|
"SystemConfig",
|
|
"AuditLog",
|
|
"Notification",
|
|
"ConnectionRequest",
|
|
"UserConnection",
|
|
]
|