feat(phone): render stored phone numbers with separators (MAPPS-283) #303

Merged
YousifShkara merged 1 commit from feat/MAPPS-283-phone-format into main 2026-06-21 09:56:36 +02:00
Owner

The server stores phone numbers as the trimmed-formatting output of validate_phone_field (digits with an optional leading +). The QA report flagged that '(555) 123-4567' was being displayed back as '5551234567' on every read surface. Add a format_phone helper that re-applies NANP separators - 10 digits render as (555) 123-4567, 11 digits starting with 1 as +1 (555) 123-4567, and anything else passes through unchanged so non-NANP E.164 values keep their canonical form. Route every Phone / Mobile render on the contacts list, the company detail Phone line, the company-detail contacts preview, and the contact detail Phone / Mobile lines through it. Live input masking is heavier and would need editing-cursor coordination; tracked as a follow-up under MAPPS-283 - this captures the read-side win.

#MAPPS-283

The server stores phone numbers as the trimmed-formatting output of `validate_phone_field` (digits with an optional leading `+`). The QA report flagged that '(555) 123-4567' was being displayed back as '5551234567' on every read surface. Add a `format_phone` helper that re-applies NANP separators - 10 digits render as `(555) 123-4567`, 11 digits starting with `1` as `+1 (555) 123-4567`, and anything else passes through unchanged so non-NANP E.164 values keep their canonical form. Route every Phone / Mobile render on the contacts list, the company detail Phone line, the company-detail contacts preview, and the contact detail Phone / Mobile lines through it. Live input masking is heavier and would need editing-cursor coordination; tracked as a follow-up under MAPPS-283 - this captures the read-side win. #MAPPS-283
feat(phone): render stored phone numbers with separators (MAPPS-283)
All checks were successful
Check / clippy + fmt + tests (pull_request) Successful in 1m18s
Create release / Create release from merged PR (pull_request) Has been skipped
f80ea2459a
The server stores phone numbers as the trimmed-formatting output of `validate_phone_field` (digits with an optional leading `+`). The QA report flagged that '(555) 123-4567' was being displayed back as '5551234567' on every read surface. Add a `format_phone` helper that re-applies NANP separators - 10 digits render as `(555) 123-4567`, 11 digits starting with `1` as `+1 (555) 123-4567`, and anything else passes through unchanged so non-NANP E.164 values keep their canonical form. Route every Phone / Mobile render on the contacts list, the company detail Phone line, the company-detail contacts preview, and the contact detail Phone / Mobile lines through it. Live input masking is heavier and would need editing-cursor coordination; tracked as a follow-up under MAPPS-283 - this captures the read-side win.

#MAPPS-283
YousifShkara deleted branch feat/MAPPS-283-phone-format 2026-06-21 09:56:37 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/mokosh-apps!303
No description provided.