{ "id": "profile-menu", "name": "ProfileMenu", "kind": "component", "status": "stable-reference", "summary": "User profile popover opened from the top toolbar avatar. Uses ActionDropdown shell with custom menu content.", "sourceRefs": [ { "project": "nodedc_taskmanager", "file": "plane-src/apps/web/core/components/workspace/sidebar/user-menu-root.tsx", "exports": ["UserMenuRoot"] }, { "project": "nodedc_taskmanager", "file": "plane-src/packages/ui/src/dropdowns/action-dropdown.tsx", "exports": ["ActionDropdown"] }, { "project": "nodedc_launcher", "file": "src/shared/nodedc-ui/ProfileMenu.tsx", "exports": ["NodeDcProfileMenu"] }, { "project": "nodedc_launcher", "file": "src/widgets/top-bar/TopBar.tsx", "functions": ["TopBar profile trigger"] } ], "anatomy": [ "toolbar avatar trigger", "cover image header", "centered circular avatar", "user name and email", "action rows: settings, sign out", "optional admin-only action" ], "visualContract": { "menuWidth": "18rem", "menuPadding": "0.75rem", "coverHeight": "7.25rem", "coverRadius": "0.5rem in task manager reference; can be upgraded to token radius.control", "rowRadius": "0.9rem", "rowHover": "rgba(255,255,255,0.06)" }, "rules": [ "Profile popover is an ActionDropdown menuContent variant, not a separate dropdown engine.", "Avatar trigger stays circular and borderless.", "Menu uses DropdownSurface/ActionDropdown stacking rules.", "Launcher implementation must keep the profile trigger pill visually identical to Task Manager header." ] }