ContextMenu
Beim ContextMenu handelt es sich um ein Popover, das eine Liste von Aktionen oder Verlinkungen enthält.GitHubBeispiel
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu onAction={(id) => { alert(id); }} > <MenuItem id="1">Item 1</MenuItem> <MenuItem id="2">Item 2</MenuItem> <MenuItem id="3">Item 3</MenuItem> </ContextMenu> </ContextMenuTrigger>
Einfach-Auswahl
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu selectionMode="single" defaultSelectedKeys={["item2"]} > <MenuItem id="item1">Item 1</MenuItem> <MenuItem id="item2">Item 2</MenuItem> <MenuItem id="item3">Item 3</MenuItem> </ContextMenu> </ContextMenuTrigger>
Mehrfach-Auswahl
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu selectionMode="multiple" defaultSelectedKeys={["item2", "item3"]} > <MenuItem id="item1">Item 1</MenuItem> <MenuItem id="item2">Item 2</MenuItem> <MenuItem id="item3">Item 3</MenuItem> </ContextMenu> </ContextMenuTrigger>
Mit Icon
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; import { IconInfo } from "@mittwald/flow-react-components/Icons"; import Text from "@mittwald/flow-react-components/Text"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu onAction={(id) => { alert(id); }} > <MenuItem id="1"> <IconInfo /> <Text>Item 1</Text> </MenuItem> <MenuItem id="2"> <IconInfo /> <Text>Item 2</Text> </MenuItem> <MenuItem id="3"> <IconInfo /> <Text>Item 3</Text> </MenuItem> </ContextMenu> </ContextMenuTrigger>
Mit Separator
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; import Separator from "@mittwald/flow-react-components/Separator"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu> <MenuItem id="1">Item 1</MenuItem> <Separator /> <MenuItem id="2">Item 2</MenuItem> <MenuItem id="3">Item 3</MenuItem> </ContextMenu> </ContextMenuTrigger>
Mit Sections und Headings
import ContextMenu, { ContextMenuTrigger, } from "@mittwald/flow-react-components/ContextMenu"; import Button from "@mittwald/flow-react-components/Button"; import MenuItem from "@mittwald/flow-react-components/MenuItem"; import Heading from "@mittwald/flow-react-components/Heading"; import Separator from "@mittwald/flow-react-components/Separator"; import Section from "@mittwald/flow-react-components/Section"; <ContextMenuTrigger> <Button>Trigger</Button> <ContextMenu> <Section> <Heading>Section 1</Heading> <MenuItem id="1">Item 1</MenuItem> <MenuItem id="2">Item 2</MenuItem> <MenuItem id="3">Item 3</MenuItem> </Section> <Separator /> <Section> <Heading>Section 2</Heading> <MenuItem id="4">Item 4</MenuItem> <MenuItem id="5">Item 5</MenuItem> </Section> </ContextMenu> </ContextMenuTrigger>