import MenuBarItem from "../app/components/MenuBarItem"; export default { title: "Components/MenuBarItem", component: MenuBarItem, parameters: { layout: "centered", docs: { description: { component: "A navigation menu item component with multiple variants, sizes, and states. Can render as a link or disabled span with full accessibility support. Includes focus states with keyboard navigation - use Tab key to test focus indicators.", }, }, }, argTypes: { variant: { control: { type: "select" }, options: ["default", "home"], description: "The visual style variant of the menu item", }, size: { control: { type: "select" }, options: [ "xsmall", "xsmallUseCases", "homeMd", "homeUseCases", "large", "largeUseCases", "homeXlarge", "xlarge", ], description: "The size of the menu item", }, disabled: { control: { type: "boolean" }, description: "Whether the menu item is disabled", }, href: { control: { type: "text" }, description: "The link destination", }, onClick: { action: "clicked" }, }, tags: ["autodocs"], }; export const Default = { args: { children: "Menu Item", size: "large", }, }; export const Variants = { args: { children: "Menu Item", size: "large", }, render: (args) => (
Default Home
), parameters: { docs: { description: { story: "Different visual variants of the menu item component.", }, }, }, }; export const Sizes = { args: { children: "Menu Item", variant: "default", }, render: (args) => (
XSmall Large XLarge
), parameters: { docs: { description: { story: "Different sizes available for the menu item component.", }, }, }, }; export const States = { args: { children: "Menu Item", size: "large", variant: "default", }, render: (args) => (
Normal Disabled
), parameters: { docs: { description: { story: "Different states of the menu item component.", }, }, }, }; export const AllVariants = { args: {}, render: () => (

Default Variant

XSmall Large XLarge

Home Variant

XSmall Large XLarge

Disabled States

Default Disabled Home Disabled
), parameters: { docs: { description: { story: "Complete overview of all menu item variants, sizes, and states.", }, }, }, };