Skip to content

[Due for payment 2026-09-09] MenuItem decomposition Phase 2 — MenuItemEntity preset (avatar rows) #99408

Closed

Description

@MelvinBot

Phase 2 — MenuItemEntity preset

Part of the MenuItem decomposition rollout plan. Phase 1 (MenuItemStandard preset) landed in #97339; this is the next phase.

Scope

Introduce the MenuItemEntity preset: a row whose leading element is an avatar rather than an icon, with a name as the title and (usually) an email or secondary line as the description. These sites are fewer but distinct — they use avatarID / iconAccountID / iconReportID rather than a static icon.

Work

  • Extend the composition API with any avatar-specific subcomponents needed — e.g. MenuItem.Avatar (type / size / fallback) — following the same context-driven pattern established in Phase 1.

  • Add the MenuItemEntity preset on top of the primitives so entity-row callers don't touch raw composition.

  • Migrate all applicable usages to the preset. Known avatar/entity call sites include:

    • ConfirmDelegatePage
    • DelegatorList
    • VacationDelegateMenuItem
    • InvoiceSenderField
    • TaskView
    • ScheduleCallConfirmationPage
    • DynamicNewTaskPage

    (Sweep for other avatarID / iconAccountID / iconReportID MenuItem sites and migrate those too.)

  • Add to the Storybook comparison gallery — old config API vs. new MenuItemEntity preset side by side, so visual parity is verifiable in review (the MenuItemComparison section from Phase 1).

Notes

  • Incremental, opt-in migration — the legacy <MenuItem … /> config API stays untouched.
  • Pure component refactor: verify each migrated row renders identically to its old output; no behavioral change.

Parent: #96202

Issue OwnerCurrent Issue Owner: @mallenexpensify

Activity

  1. war-in commented on Aug 25, 2026

    @war-in
    Contributor
  2. MelvinBot commented on Aug 25, 2026

    @MelvinBot
    ContributorAuthor

    🤖 Done — assigned Pujan92 to this issue.


    view run

  3. added and removed
    ReviewingHas a PR in review
    on Sep 2, 2026
  4. changed the title [-]MenuItem decomposition Phase 2 — MenuItemEntity preset (avatar rows)[/-] [+][Due for payment 2026-09-09] MenuItem decomposition Phase 2 — MenuItemEntity preset (avatar rows)[/+] on Sep 2, 2026
  5. melvin-bot commented on Sep 2, 2026

    @melvin-bot

    @Pujan92

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.4.68-1 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

    If no regressions arise, payment will be issued on 2026-09-09. 🎊

    The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the Contributor+ Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]. If no checklist is needed for this issue, you can click: [no checklist button]

  6. melvin-bot commented on Sep 7, 2026

    @melvin-bot

    @Pujan92 Eep! 4 days overdue now. Issues have feelings too...

  7. melvin-bot commented on Sep 8, 2026

    @melvin-bot

    Triggered auto assignment to @mallenexpensify (Awaiting Payment)

  8. melvin-bot commented on Sep 8, 2026

    @melvin-bot

    Payment Summary

    Resolving PRs:

    BugZero Checklist (@mallenexpensify)

    • I have confirmed assignees, roles, and Upwork contracts look correct
    • I have paid out Upwork contracts / manual NewDot requests
    • [BugZero Assignee] I have created a GH issue for creating/updating the regression test once above steps have been agreed upon
  9. war-in commented on Sep 9, 2026

    @war-in
    Contributor

    @roryabraham this one is finished and ready for payment

  10. roryabraham commented on Sep 9, 2026

    @roryabraham
    Contributor

    @mallenexpensify ready for payment

  11. mallenexpensify commented on Sep 10, 2026

    @mallenexpensify
    Contributor

    Payment Summary

    Contributor+: @Pujan92 due $250 via NewDot

    Guessing a test case isn't needed

  12. twisterdotcom commented on Sep 11, 2026

    @twisterdotcom
    Contributor

    $250 approved for @Pujan92 in Report ID: R00ETnEtoTkU.

    Zapier Logs Run ID: 00040eee-8b9c-a18d-ef85-337df46e92a4

    SO: https://stackoverflowteams.com/c/expensify/questions/7582

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionDailyKSv2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions