Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Menu component #517

Draft
wants to merge 10 commits into
base: main
Choose a base branch
from
Draft

Add Menu component #517

wants to merge 10 commits into from

Conversation

mkernohanbc
Copy link
Contributor

@mkernohanbc mkernohanbc commented Jan 20, 2025

This PR implements a new Menu component, using RAC Menu as a foundation. It also implements Popover, which is used internally by Menu and Select.

Menu provides a method to implement a dropdown navigation menu. It is composed of several subcomponents that can be used as needed:

  • MenuTrigger: a wrapper component that enables a trigger element (like a Button) to activate a menu
  • SubmenuTrigger: a secondary wrapper, which can be used internally within Menu to create submenus
  • Menu: the container component, which renders a Popover and expects some number of MenuItem components as children
  • MenuItem: used to create individual items within a dropdown menu
  • MenuSection and MenuSectionHeader: used to create sections within a menu

Docs and examples are provided in Storybook. Leaving this PR in draft pending design review.

@mkernohanbc mkernohanbc added the enhancement New feature or request label Jan 20, 2025
@mkernohanbc mkernohanbc added this to the Components v0.6.0 milestone Jan 20, 2025
@mkernohanbc mkernohanbc self-assigned this Jan 20, 2025
@mkernohanbc
Copy link
Contributor Author

@Philip-Cheung I'd like to walk you through the WIP on this component and get your thoughts — I'll find some time this week for us to connect.

@mkernohanbc mkernohanbc linked an issue Jan 20, 2025 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Menu/menu item
1 participant