Skip to content

Conversation

@azizu06
Copy link
Contributor

@azizu06 azizu06 commented Feb 11, 2026

Why

Admin users on mobile could not access all dropdown menu items because the menu exceeded the viewport height and was not scrollable.

What

Issue(s): #334

  • Removed the email button from menu
  • Applied max height to dropdown menu for visibility on all devices
  • Made the dropdown menu scrollable when content overflows

Test Plan

  • Logged in as an admin and switched to mobile viewport
  • Opened the dropdown menu and made sure it was scrollable and all its items were accessible
  • Screenshot 2026-02-10 at 10 47 02 PM
  • Screenshot 2026-02-10 at 10 47 10 PM

Checklist

  • Database: No schema changes, OR I have contacted the Development Lead to run db:push before merging
  • Environment Variables: No environment variables changed, OR I have contacted the Development Lead to modify them on Coolify BEFORE merging.

Summary by CodeRabbit

  • Bug Fixes

    • Added vertical scrolling and max-height constraints to the user navigation dropdown to prevent content overflow on smaller screens.
  • Changes

    • Removed the Email/Email Portal option from user and admin system navigation.

Copilot AI review requested due to automatic review settings February 11, 2026 04:02
@coderabbitai
Copy link

coderabbitai bot commented Feb 11, 2026

📝 Walkthrough

Walkthrough

Removed the Email system item from navigation (menu and admin page) and constrained the dropdown menu container height with responsive max-height and vertical scrolling to prevent overflow on smaller viewports.

Changes

Cohort / File(s) Summary
System Navigation Removal
apps/blade/src/app/_components/navigation/reusable-user-dropdown.tsx, apps/blade/src/app/admin/page.tsx
Removed the Email system item: deleted the /admin/email menu entry, removed Mail icon import, and eliminated related permission checks (EMAIL_PORTAL, IS_OFFICER).
Dropdown Menu Container
apps/blade/src/app/_components/navigation/user-dropdown.tsx
Updated DropdownMenuContent classes to add responsive max-height (max-h-[75vh], sm:max-h-[80vh]) and overflow-y-auto so the dropdown scrolls on overflow and avoids viewport spillover.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Suggested labels

Blade, Bug, Minor

🚥 Pre-merge checks | ✅ 4 | ❌ 2
❌ Failed checks (2 warnings)
Check name Status Explanation Resolution
Title check ⚠️ Warning Title exceeds 72 character limit at 73 characters and accurately describes both main changes: fixing mobile menu overflow and removing the email button. Shorten the title to 72 characters or less. Consider: "[#334] Fix mobile admin menu overflow and remove email button" (61 chars).
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
No Hardcoded Secrets ✅ Passed No hardcoded API keys, passwords, tokens, or secrets found. All strings are route paths, labels, permission keys, or CSS classes.
Validated Env Access ✅ Passed All three modified files properly import configuration values from designated modules like ~/consts and @forge/consts, following codebase convention of validated environment access through proper imports rather than raw environment variable access.
No Typescript Escape Hatches ✅ Passed No TypeScript escape hatches detected across all three modified files. All nullable values handled using optional chaining, nullish coalescing, and conditional ternaries.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch blade/334-mobile-nav-scroll

No actionable comments were generated in the recent review. 🎉

Tip

Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses issue #334 where the admin user dropdown menu on mobile could overflow the viewport and become unusable, and it also removes the deprecated “Email” entry from the user dropdown menu.

Changes:

  • Constrained the user dropdown menu height using max-height and enabled vertical scrolling for overflow.
  • Removed the deprecated “Email” menu item from the systemItems dropdown list.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
apps/blade/src/app/_components/navigation/user-dropdown.tsx Adds max-height constraints and overflow-y-auto to make the dropdown scrollable on mobile.
apps/blade/src/app/_components/navigation/reusable-user-dropdown.tsx Removes the “Email” item and its icon import from the dropdown menu items definition.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

</button>
</DropdownMenuTrigger>
<DropdownMenuContent className="mr-4 w-screen sm:w-56">
<DropdownMenuContent className="mr-4 max-h-[75vh] w-screen overflow-y-auto sm:max-h-[80vh] sm:w-56">
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR/issue mention removing the deprecated Email button, but /admin/email is still referenced elsewhere (e.g., apps/blade/src/app/admin/page.tsx) and there’s no app/admin/email route directory, so this remains a dead navigation path. Consider removing the Email Portal entry (and related permission-gating text) from the admin landing page in this PR to fully address #334 / the deprecation.

Copilot uses AI. Check for mistakes.
@azizu06 azizu06 self-assigned this Feb 11, 2026
@azizu06 azizu06 added Bug Something isn't working Onboarding Good first issue for onboarding Developers Minor Small change - 1 reviewer required Blade Change modifies code in Blade app labels Feb 11, 2026
Copy link

@DVidal1205-Crest DVidal1205-Crest left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm. great work :)

Copy link
Contributor

@DVidal1205 DVidal1205 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lol

@DVidal1205 DVidal1205 added this pull request to the merge queue Feb 11, 2026
Merged via the queue into main with commit 421e505 Feb 11, 2026
8 checks passed
@DVidal1205 DVidal1205 deleted the blade/334-mobile-nav-scroll branch February 11, 2026 18:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Blade Change modifies code in Blade app Bug Something isn't working Minor Small change - 1 reviewer required Onboarding Good first issue for onboarding Developers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants