Phase 1C: Frontend unified contact UI

This commit is contained in:
Agent Zero
2026-07-23 17:17:32 +02:00
parent a8331fbc2b
commit 879106c4eb
62 changed files with 552 additions and 1276 deletions
+6 -18
View File
@@ -13,9 +13,6 @@ logger = logging.getLogger(__name__)
# ── Core system permissions ──
CORE_PERMISSIONS: list[dict[str, str]] = [
{"key": "companies:read", "label": "Companies: Read", "category": "core", "module": "companies"},
{"key": "companies:write", "label": "Companies: Write", "category": "core", "module": "companies"},
{"key": "companies:delete", "label": "Companies: Delete", "category": "core", "module": "companies"},
{"key": "contacts:read", "label": "Contacts: Read", "category": "core", "module": "contacts"},
{"key": "contacts:write", "label": "Contacts: Write", "category": "core", "module": "contacts"},
{"key": "contacts:delete", "label": "Contacts: Delete", "category": "core", "module": "contacts"},
@@ -61,21 +58,12 @@ CORE_PERMISSIONS: list[dict[str, str]] = [
# ── Core field definitions for field-level permissions ──
CORE_FIELD_DEFINITIONS: list[dict[str, str]] = [
{"module": "companies", "field": "name", "label": "Name", "sensitivity": "normal"},
{"module": "companies", "field": "account_number", "label": "Account Number", "sensitivity": "normal"},
{"module": "companies", "field": "industry", "label": "Industry", "sensitivity": "normal"},
{"module": "companies", "field": "phone", "label": "Phone", "sensitivity": "normal"},
{"module": "companies", "field": "email", "label": "Email", "sensitivity": "normal"},
{"module": "companies", "field": "website", "label": "Website", "sensitivity": "normal"},
{"module": "companies", "field": "description", "label": "Description", "sensitivity": "normal"},
{"module": "contacts", "field": "first_name", "label": "First Name", "sensitivity": "normal"},
{"module": "contacts", "field": "last_name", "label": "Last Name", "sensitivity": "normal"},
{"module": "contacts", "field": "email", "label": "Email", "sensitivity": "normal"},
{"module": "contacts", "field": "phone", "label": "Phone", "sensitivity": "normal"},
{"module": "contacts", "field": "mobile", "label": "Mobile", "sensitivity": "sensitive"},
{"module": "contacts", "field": "position", "label": "Position", "sensitivity": "normal"},
{"module": "contacts", "field": "department", "label": "Department", "sensitivity": "normal"},
{"module": "contacts", "field": "linkedin_url", "label": "LinkedIn URL", "sensitivity": "sensitive"},
{"module": "contacts", "field": "firstname", "label": "First Name", "sensitivity": "normal"},
{"module": "contacts", "field": "surname", "label": "Last Name", "sensitivity": "normal"},
{"module": "contacts", "field": "email_1", "label": "Email", "sensitivity": "normal"},
{"module": "contacts", "field": "phone_1", "label": "Phone", "sensitivity": "normal"},
{"module": "contacts", "field": "mobilephone", "label": "Mobile", "sensitivity": "sensitive"},
{"module": "contacts", "field": "function", "label": "Position", "sensitivity": "normal"},
{"module": "contacts", "field": "notes", "label": "Notes", "sensitivity": "sensitive"},
{"module": "users", "field": "email", "label": "Email", "sensitivity": "normal"},
{"module": "users", "field": "name", "label": "Name", "sensitivity": "normal"},