├── .babelrc.json ├── .eslintignore ├── .eslintrc.cjs ├── .github └── workflows │ ├── build.yml │ └── test-coverage.yml ├── .gitignore ├── .npmignore ├── .prettierrc ├── README.md ├── demo ├── .gitignore ├── .prettierrc ├── README.md ├── eslint.config.js ├── index.html ├── package-lock.json ├── package.json ├── public │ ├── click.mp3 │ ├── images │ │ ├── icons │ │ │ ├── dark │ │ │ │ ├── angle-left.svg │ │ │ │ ├── angle-right.svg │ │ │ │ └── angle-up.svg │ │ │ ├── light │ │ │ │ ├── angle-left.svg │ │ │ │ ├── angle-right.svg │ │ │ │ └── angle-up.svg │ │ │ ├── monokai │ │ │ │ ├── angle-left.svg │ │ │ │ ├── angle-right.svg │ │ │ │ └── angle-up.svg │ │ │ ├── retro │ │ │ │ ├── angle-left.svg │ │ │ │ ├── angle-right.svg │ │ │ │ └── angle-up.svg │ │ │ └── synthwave │ │ │ │ ├── angle-left.svg │ │ │ │ ├── angle-right.svg │ │ │ │ └── angle-up.svg │ │ └── logos │ │ │ └── logo.svg │ └── vite.svg ├── src │ ├── App.css │ ├── App.tsx │ ├── index.css │ ├── main.tsx │ ├── themes │ │ ├── dark.css │ │ ├── light.css │ │ ├── monokai.css │ │ ├── retro.css │ │ └── synthwave.css │ └── vite-env.d.ts ├── tsconfig.app.json ├── tsconfig.json ├── tsconfig.node.json └── vite.config.ts ├── jasonrundell-react-mega-menu-2.2.2.tgz ├── jest.config.cjs ├── jest.setup.js ├── next-demo ├── .eslintrc.json ├── .gitignore ├── README.md ├── jsconfig.json ├── next.config.mjs ├── package-lock.json ├── package.json ├── postcss.config.mjs ├── src │ └── app │ │ ├── favicon.ico │ │ ├── fonts │ │ ├── GeistMonoVF.woff │ │ └── GeistVF.woff │ │ ├── globals.css │ │ ├── layout.js │ │ └── page.js └── tailwind.config.js ├── package.json ├── src ├── Menu.jsx ├── Menu.test.js ├── components │ ├── Hamburger.jsx │ ├── Logo.jsx │ ├── MainList.jsx │ ├── MainNavItem.jsx │ ├── MainNavItemLink.jsx │ ├── MegaList.jsx │ ├── Nav.jsx │ ├── Nav.test.jsx │ ├── NavItem.jsx │ ├── NavItemDescription.jsx │ ├── NavItemLink.jsx │ ├── NavList.jsx │ ├── TopBar.jsx │ └── TopBarTitle.jsx ├── config │ ├── breakpoints.js │ └── menuItemTypes.js ├── context │ ├── MenuContext.jsx │ └── MenuContext.test.js ├── helpers │ ├── a11y.js │ ├── a11y.test.js │ ├── animationStyles.js │ ├── animationStyles.test.js │ ├── menu.jsx │ ├── menu.test.js │ └── responsive.js ├── index.jsx └── index.test.js ├── tsconfig.json └── vite.config.js /.babelrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.babelrc.json -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.eslintrc.cjs -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/test-coverage.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.github/workflows/test-coverage.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.gitignore -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.npmignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/.prettierrc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/README.md -------------------------------------------------------------------------------- /demo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/.gitignore -------------------------------------------------------------------------------- /demo/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/.prettierrc -------------------------------------------------------------------------------- /demo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/README.md -------------------------------------------------------------------------------- /demo/eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/eslint.config.js -------------------------------------------------------------------------------- /demo/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/index.html -------------------------------------------------------------------------------- /demo/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/package-lock.json -------------------------------------------------------------------------------- /demo/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/package.json -------------------------------------------------------------------------------- /demo/public/click.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/click.mp3 -------------------------------------------------------------------------------- /demo/public/images/icons/dark/angle-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/dark/angle-left.svg -------------------------------------------------------------------------------- /demo/public/images/icons/dark/angle-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/dark/angle-right.svg -------------------------------------------------------------------------------- /demo/public/images/icons/dark/angle-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/dark/angle-up.svg -------------------------------------------------------------------------------- /demo/public/images/icons/light/angle-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/light/angle-left.svg -------------------------------------------------------------------------------- /demo/public/images/icons/light/angle-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/light/angle-right.svg -------------------------------------------------------------------------------- /demo/public/images/icons/light/angle-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/light/angle-up.svg -------------------------------------------------------------------------------- /demo/public/images/icons/monokai/angle-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/monokai/angle-left.svg -------------------------------------------------------------------------------- /demo/public/images/icons/monokai/angle-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/monokai/angle-right.svg -------------------------------------------------------------------------------- /demo/public/images/icons/monokai/angle-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/monokai/angle-up.svg -------------------------------------------------------------------------------- /demo/public/images/icons/retro/angle-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/retro/angle-left.svg -------------------------------------------------------------------------------- /demo/public/images/icons/retro/angle-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/retro/angle-right.svg -------------------------------------------------------------------------------- /demo/public/images/icons/retro/angle-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/retro/angle-up.svg -------------------------------------------------------------------------------- /demo/public/images/icons/synthwave/angle-left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/synthwave/angle-left.svg -------------------------------------------------------------------------------- /demo/public/images/icons/synthwave/angle-right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/synthwave/angle-right.svg -------------------------------------------------------------------------------- /demo/public/images/icons/synthwave/angle-up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/icons/synthwave/angle-up.svg -------------------------------------------------------------------------------- /demo/public/images/logos/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/images/logos/logo.svg -------------------------------------------------------------------------------- /demo/public/vite.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/public/vite.svg -------------------------------------------------------------------------------- /demo/src/App.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/App.css -------------------------------------------------------------------------------- /demo/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/App.tsx -------------------------------------------------------------------------------- /demo/src/index.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /demo/src/main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/main.tsx -------------------------------------------------------------------------------- /demo/src/themes/dark.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/themes/dark.css -------------------------------------------------------------------------------- /demo/src/themes/light.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/themes/light.css -------------------------------------------------------------------------------- /demo/src/themes/monokai.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/themes/monokai.css -------------------------------------------------------------------------------- /demo/src/themes/retro.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/themes/retro.css -------------------------------------------------------------------------------- /demo/src/themes/synthwave.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/src/themes/synthwave.css -------------------------------------------------------------------------------- /demo/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /demo/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/tsconfig.app.json -------------------------------------------------------------------------------- /demo/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/tsconfig.json -------------------------------------------------------------------------------- /demo/tsconfig.node.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/tsconfig.node.json -------------------------------------------------------------------------------- /demo/vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/demo/vite.config.ts -------------------------------------------------------------------------------- /jasonrundell-react-mega-menu-2.2.2.tgz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/jasonrundell-react-mega-menu-2.2.2.tgz -------------------------------------------------------------------------------- /jest.config.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/jest.config.cjs -------------------------------------------------------------------------------- /jest.setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/jest.setup.js -------------------------------------------------------------------------------- /next-demo/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/.eslintrc.json -------------------------------------------------------------------------------- /next-demo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/.gitignore -------------------------------------------------------------------------------- /next-demo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/README.md -------------------------------------------------------------------------------- /next-demo/jsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/jsconfig.json -------------------------------------------------------------------------------- /next-demo/next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/next.config.mjs -------------------------------------------------------------------------------- /next-demo/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/package-lock.json -------------------------------------------------------------------------------- /next-demo/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/package.json -------------------------------------------------------------------------------- /next-demo/postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/postcss.config.mjs -------------------------------------------------------------------------------- /next-demo/src/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/favicon.ico -------------------------------------------------------------------------------- /next-demo/src/app/fonts/GeistMonoVF.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/fonts/GeistMonoVF.woff -------------------------------------------------------------------------------- /next-demo/src/app/fonts/GeistVF.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/fonts/GeistVF.woff -------------------------------------------------------------------------------- /next-demo/src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/globals.css -------------------------------------------------------------------------------- /next-demo/src/app/layout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/layout.js -------------------------------------------------------------------------------- /next-demo/src/app/page.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/src/app/page.js -------------------------------------------------------------------------------- /next-demo/tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/next-demo/tailwind.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/package.json -------------------------------------------------------------------------------- /src/Menu.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/Menu.jsx -------------------------------------------------------------------------------- /src/Menu.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/Menu.test.js -------------------------------------------------------------------------------- /src/components/Hamburger.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/Hamburger.jsx -------------------------------------------------------------------------------- /src/components/Logo.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/Logo.jsx -------------------------------------------------------------------------------- /src/components/MainList.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/MainList.jsx -------------------------------------------------------------------------------- /src/components/MainNavItem.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/MainNavItem.jsx -------------------------------------------------------------------------------- /src/components/MainNavItemLink.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/MainNavItemLink.jsx -------------------------------------------------------------------------------- /src/components/MegaList.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/MegaList.jsx -------------------------------------------------------------------------------- /src/components/Nav.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/Nav.jsx -------------------------------------------------------------------------------- /src/components/Nav.test.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/Nav.test.jsx -------------------------------------------------------------------------------- /src/components/NavItem.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/NavItem.jsx -------------------------------------------------------------------------------- /src/components/NavItemDescription.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/NavItemDescription.jsx -------------------------------------------------------------------------------- /src/components/NavItemLink.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/NavItemLink.jsx -------------------------------------------------------------------------------- /src/components/NavList.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/NavList.jsx -------------------------------------------------------------------------------- /src/components/TopBar.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/TopBar.jsx -------------------------------------------------------------------------------- /src/components/TopBarTitle.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/components/TopBarTitle.jsx -------------------------------------------------------------------------------- /src/config/breakpoints.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/config/breakpoints.js -------------------------------------------------------------------------------- /src/config/menuItemTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/config/menuItemTypes.js -------------------------------------------------------------------------------- /src/context/MenuContext.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/context/MenuContext.jsx -------------------------------------------------------------------------------- /src/context/MenuContext.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/context/MenuContext.test.js -------------------------------------------------------------------------------- /src/helpers/a11y.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/a11y.js -------------------------------------------------------------------------------- /src/helpers/a11y.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/a11y.test.js -------------------------------------------------------------------------------- /src/helpers/animationStyles.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/animationStyles.js -------------------------------------------------------------------------------- /src/helpers/animationStyles.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/animationStyles.test.js -------------------------------------------------------------------------------- /src/helpers/menu.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/menu.jsx -------------------------------------------------------------------------------- /src/helpers/menu.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/menu.test.js -------------------------------------------------------------------------------- /src/helpers/responsive.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/helpers/responsive.js -------------------------------------------------------------------------------- /src/index.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/index.jsx -------------------------------------------------------------------------------- /src/index.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/src/index.test.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jasonrundell/react-mega-menu/HEAD/vite.config.js --------------------------------------------------------------------------------