refactor(ui): centralize compact icon button sizing in EMCN - #7991
BillLeoutsakosvl346 wants to merge 5 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
|
@greptileai @cubic-dev-ai Please review the current head; the previous scored reviews cover earlier commits. |
@BillLeoutsakosvl346 I’ve started reviewing the changes since the last completed review. I’ll post the results here when it’s done. |
|
@greptileai @cubic-dev-ai Please review the latest commit. The import-order directive now uses TSDoc while retaining the documented import order and passing Biome. |
@BillLeoutsakosvl346 I’ve started reviewing the changes since the last completed review. I’ll post the results here when it’s done. |
|
@cubic-dev-ai Please run a full review of this PR against its base branch on the current head, rather than an incremental review of only the latest commit. The latest incremental review reported no issues; this is the final review of the complete change. |
@BillLeoutsakosvl346 I have started the AI code review. It will take a few minutes to complete. |
Co-authored-by: Bill Leoutsakos <billleoutsakos@Mac.localdomain>
Before / after visual comparisonRepresentative icon-button sizing combinations after replacing local size classes with shared sizes. Within each numbered tile: first control = before; second control = after. Rendered component fixtures with application CSS and local data, rather than authenticated product-page screenshots. These are representative visual examples, not end-to-end behavior coverage. The fixture uses a generic X icon to isolate button sizing; these are not screenshots of the actual caller icons. This comparison covers the sizing migration, not every message-action interaction. Current PR head checked at posting: |


Summary
Product icon buttons repeatedly set square dimensions and zero padding through consumer classes. Add
Button'siconSizeoption and migrate all 25 matching EMCN Button locations across 10 product files, including the shared workflow action-bar recipe.compactpreserves spacing-based sizing (size-6);compact-fixedpreserves fixed 24px sizing. Both own zero padding while retaining the selected size and variant's typography, corners, icon strokes and colors. This keeps the original behavior when the browser's font size changes. Consumers retain positioning, canvas width overrides, icons, labels, disabled conditions and handlers. Omitting the new option leaves existing buttons unchanged.BulkActionButton and ComposerActionButton exclude the inherited
iconSizeandiconPaddingprops because these specialized controls already own their geometry. Their rendering is unchanged. Landing pages, global CSS, dependencies and audit tooling are excluded.Validation