Page MenuHomePhabricator

Update all existing ProfileMenuItems for the more-structured API

Authored by epriestley on Mar 31 2019, 7:12 PM.



Depends on D20357. Ref T13275. Now that there's a stronger layer between "stuff in the database" and "stuff on the screen", these subclasses all need to emit intermediate objects instead of raw, HTML-producing view objects.

This update is mostly mechanical.

Test Plan
  • Viewed Home, Favorites, Portals, User Profiles, Project Profiles.
  • Clicked each item on each menu/profile type.
  • Added every (I think?) type of item to a menu and clicked them all.
  • Grepped for obsolete symbols (newNavigationMenuItems, willBuildNavigationItems).

Diff Detail

rP Phabricator
Lint Not Applicable
Tests Not Applicable

Event Timeline

  • Minor API completeness / correctness fixes.
  • Support image icons, used by "Project" menu items.

This also includes some changes aimed at T12871, which improve rendering of dashboards that aren't accessible. Instead of just failing into a confusing broken/empty state, we now show "Restricted" vs "Invalid" vs "Archived" more clearly.

This revision is now accepted and ready to land.Apr 1 2019, 10:11 PM
This revision was automatically updated to reflect the committed changes.