- Shipped
- October 14, 2026 at 2:50 AM UTC
- Author
- Kamo
- Commit
- 835e164
Email addresses, project wide. <EmailAddress> is the email twin of <PhoneNumber>; pressed, it opens one design of popup: - Write opens the email composer window addressed to them — nothing is sent until Send. - The second tile follows the records: Chat for a colleague, Call (number on the dialpad, never dialled) when a number is on file, Copy otherwise. - Who the address is in the org's own records (colleague, contact, lead — the mailbox's correspondent lookup, once, on open) with Open lead / Open contact / View profile; personal provider or company domain; the colleague's local time; a typo check ("gmial.com" → gmail.com, Write to that instead); send-only noreply@ boxes can't be written to; Copy, Use my mail app; E / C / Y keys. The lead view routes Write through its opt-out guard; a surface can pass a composeWarning (Write then takes a second press). Phone numbers, now truly everywhere — including the organization's own: Behavior & Labeling's main and toll-free numbers and contact email, member phone settings, text numbers, phone-system numbers and providers, voicemail callers, Contact Sales, the member card, the mail correspondent card, the hex head's extension, softphone CRM/contacts/history, report PHONE columns, AI calls console and consent history, quote preview (icon-less, so it prints as text), the media player's caller line, and no-name call titles on the lead timeline. Shared engine **************** ContactPopover (placement, arrow, focus trap, keys, outside press), ContactHeader and parts, ContactTrigger, and ContactPopupHost — mounted beside the tool dock, it draws the open popup away from its trigger, so one opened inside a hover card or popover survives the card closing as the pointer moves into it. One popup at a time across both kinds; a route change closes it. Triggers carry GRID_OWN_CLICK for AG Grid rows. Left plain on purpose: values inside a picker option, select, label or a row that is itself a button (selection UIs); inside a translated sentence; the live-call screen and quick-dial buttons; the SMS/mail clients' own conversation lists and address plates; email-template placeholders. The "Use my device" tel: link now carries the extension (;ext=). mailboxMemberCards counted every dialog trigger as a member card; it now skips the address triggers.
