Skip to content

[Due for payment 2026-07-29] [M4] Cleanup Icon legacy size boolean props #95601

Description

@mountiny

Problem

M1 added a size prop backed by CONST.ICON_SIZE and a resolveIconSize adapter for backward compatibility, but the deprecated extraSmall/small/medium/large boolean props remain on Icon. Reviewers flagged this as temporary — the adapter is "wonky" and should be ripped out once call sites migrate.

Solution

After M2 and M3 complete:

  • Remove deprecated boolean size props from Icon public API
  • Remove resolveIconSize adapter
  • Ensure all call sites use size={CONST.ICON_SIZE.*}
  • Slim Icon/index.tsx facade; BaseIcon becomes the canonical Icon per team agreement

Acceptance criteria

  • No remaining extraSmall/small/medium/large props on Icon
  • resolveIconSize deleted
  • ESLint/TypeScript clean on all migrated call sites

Origin

Dependencies

Blocked by:

Issue OwnerCurrent Issue Owner: @jmusial

Metadata

Metadata

Labels

DailyKSv2InternalRequires API changes or must be handled by Expensify staffOverdueTask

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions