import * as React from "react"; import { StoryFn, Meta } from "@storybook/react"; import { DropdownMenu, DropdownSection, DropdownMenuItem, DropdownMenuItemIcon, DropdownMenuItemAvatar } from "../index"; import { PopoverListItemAppearances } from "../../shared/types/popoverListItemAppearances"; import { SystemIcons } from "../../icons/dist/system-icons-enum"; import { grafanaLogo, kibanaLogo, kubernetesLogo } from "./avatarImgs"; import PrimaryDropdownButton from "../../button/components/PrimaryDropdownButton"; import { DropdownMenuProps } from "../components/DropdownMenu"; import { Direction } from "../../dropdownable/components/Dropdownable"; import { ProductIcons } from "../../icons/dist/product-icons-enum"; export default { title: "Overlays/DropdownMenu", component: DropdownMenu, subcomponents: { DropdownSection, DropdownMenuItem, DropdownMenuItemIcon, DropdownMenuItemAvatar }, decorators: [Story =>
{Story()}
], argTypes: { preferredDirections: { options: [ Direction.BottomLeft, Direction.BottomRight, Direction.BottomCenter ] }, children: { control: { disable: true } }, overlayRoot: { control: { disable: true } }, trigger: { control: { disable: true } } } } as Meta; const Template: StoryFn = args => ( Menu} {...args} > Edit Scale Restart Stop ); export const Default = { render: Template }; export const WithDangerousAction = { render: args => ( Menu} {...args} > Edit Scale Restart Stop Delete ) }; export const WithDisabledAction = { render: args => ( Menu} {...args} > Edit Scale Restart Stop Delete ) }; export const InitialIsOpen = { render: Template, args: { initialIsOpen: true } }; export const MenuHasMaxHeight = { render: Template, args: { menuMaxHeight: 90 } }; export const MenuHasMaxWidth = { render: args => ( Menu} {...args} > Donaudampfschifffahrtselektrizitätenhauptbetriebswerkbauunterbeamtengesellschaft Edit Scale Restart Stop ) }; const onSelect = selectedItem => { alert(`onSelect called with: - selectedItem: "${selectedItem}" - stateAndHelpers: Downshift state and helper fns `); }; export const WithOnSelectCallback = { render: Template, args: { onSelect } }; export const WithSections = { render: args => ( Menu} {...args} > Edit Scale Restart Restart Delay Pause Stop ) }; export const WithIconsAndAvatarsPositionStart = { render: args => ( Menu} {...args} > Edit Scale Restart Stop Grafana Kibana Kubernetes ) }; export const WithIconsAndAvatarsPositionEnd = { render: args => ( Menu} {...args} > Edit Scale Restart Stop Grafana Kibana Kubernetes ) }; export const WithFooterSection = { render: args => ( Workspaces} {...args} > Global Default Workspace Management Cluster Workspace Workspace 1 Workspace 2 Workspace 3 Workspace 4 Workspace 5 Workspace 6 Workspace 7 Workspace 8 Workspace 9 Workspace 10 Workspace 11 Workspace 12 Workspace 13 Workspace 14 Workspace 15 Create Workspace Manage Workspaces ) };