import React from 'react'; import { Card, CardHeader, CardTitle, CardBody, Dropdown, DropdownList, DropdownItem, MenuToggle, MenuToggleElement, Divider } from '@patternfly/react-core'; import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon'; export const CardLegacySelectable: React.FunctionComponent = () => { const [selected, setSelected] = React.useState(''); const [isKebabOpen, setIsKebabOpen] = React.useState(false); const onKeyDown = (event: React.KeyboardEvent) => { if (event.target !== event.currentTarget) { return; } if (['Enter', ' '].includes(event.key)) { event.preventDefault(); const newSelected = event.currentTarget.id === selected ? '' : event.currentTarget.id; setSelected(newSelected); } }; const onClick = (event: React.MouseEvent) => { const newSelected = event.currentTarget.id === selected ? '' : event.currentTarget.id; setSelected(newSelected); }; const onChange = (_event: React.FormEvent, labelledById: string) => { const newSelected = labelledById === selected ? '' : labelledById; setSelected(newSelected); }; const onToggle = (event: React.MouseEvent) => { event?.stopPropagation(); setIsKebabOpen(!isKebabOpen); }; const onSelect = (event: React.MouseEvent | undefined) => { event?.stopPropagation(); setIsKebabOpen(!isKebabOpen); }; const dropdownItems = ( <> Action {/* Prevent default onClick functionality for example purposes */} event.preventDefault()}> Link Disabled Action event.preventDefault()}> Disabled Link Separated Action event.preventDefault()}> Separated Link ); const headerActions = ( <> ) => ( )} isOpen={isKebabOpen} onOpenChange={(isOpen: boolean) => setIsKebabOpen(isOpen)} > {dropdownItems} ); return ( <> First legacy selectable card This is a selectable card. Click me to select me. Click again to deselect me.
Second legacy selectable card This is a selectable card. Click me to select me. Click again to deselect me. ); };