Format every phone number a signature prints

Fixkamo-internal
Shipped
August 27, 2026 at 8:50 PM UTC
Author
kamo
Commit
47d9fd6

The company lines went out as whatever the org record stored — "5555555555" — next to a member's line in the same block, so a signature could show a formatted number and a raw one under the same name. One helper now, **************** over app/lib/phone's formatPhoneDisplay. It covers all four numbers that reach a signature: the member's own line and mobile, their department's, and the organization's main and toll-free. Formatting happens BEFORE the extension is appended, and that ordering is load-bearing: formatPhoneDisplay hands back any string that is not a plain number untouched, an "x" suffix included, so formatting a number that already carried its extension is a silent no-op that yields raw digits. This also collapses the four hand-rolled "number + extension" copies — one in each content builder — into that single helper. Four copies is how the formatting came to be missing from all of them at once. The shared `company` block is formatted at its source rather than per branch, so the department and company signatures, which take it verbatim, print the same shape the individual one does. Test fixtures now hold the raw spellings the platform actually stores, so the assertions demonstrate the normalization instead of echoing it.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing