This package provides components to let you nest menu items infinitely deep. The code is an adaption from this package to work with MUI version 5/6.
Check out the documentation here.
The code is open source, so you can use the library by copying the src/mui-nested-menu
directory to your project (if you'd like to adapt the components) or by installing it via NPM.
$ npm install mui-nested-menu
The following items and interfaces are exported from the package:
-
NestedDropdown
- To create menu bar dropdowns. -
ContextMenu
- For a right-click menu. -
IconMenuItem
- A menu item which can take start and end icons. -
NestedMenuItem
- The actual nested menu component. -
nestedMenuItemsFromObject({(items, isOpen, handleClose)})
- Utility function which returns a list of menu items from a given array of items in the object format you see in the samples. You can then manually put this inside a<Menu />
component. -
MenuItemData
- An interface for themenuItemsData
prop.
Pull requests for [the project](https://github.com/webzep /mui-nested-menu) are more than welcome. Please make sure to stick to the coding style used throughout the project.
- Clone the project from GitHub - it is a monorepo.
yarn && yarn start
and you should see the docs onlocalhost:1000
.- Create a new branch
- Make your changes
- Open a pull request
Version | Breaking | Changes |
---|---|---|
3.0.0 | no | Support for ESM and CJS modules. |
3.1.0 | yes | Make disabled ans SX props available. Fixes typo nesteMenuItemsFromObjectProps to nestedMenuItemsFromObjectProps . |
3.2.0 | no | Provide event and item in callback. |
3.2.1 | no | @mui/material/styles/styled 4 level import fixed |
3.2.2 | no | Documentation updates |
3.4.0 | no | Fixes disabled prop. Adds delay prop to NestedMenuItem. |
4.0.0 | probably not | Upgrade to mui 6.3.1. |
4.0.1 | probably not | Add React 19 to peer dependencies. |