import React from 'react'; import { Button, Dropdown, DropdownItem, DropdownPosition, DropdownDirection, DropdownSeparator, EmptyState, EmptyStateBody, EmptyStateIcon, EmptyStatePrimary, KebabToggle, NotificationDrawer, NotificationDrawerBody, NotificationDrawerHeader, NotificationDrawerGroup, NotificationDrawerGroupList, NotificationDrawerList, NotificationDrawerListItem, NotificationDrawerListItemBody, NotificationDrawerListItemHeader, Title, EmptyStateVariant } from '@patternfly/react-core'; import SearchIcon from '@patternfly/react-icons/dist/esm/icons/search-icon'; export const NotificationDrawerGroups: React.FunctionComponent = () => { const [firstGroupExpanded, setFirstGroupExpanded] = React.useState(false); const [secondGroupExpanded, setSecondGroupExpanded] = React.useState(true); const [thirdGroupExpanded, setThirdGroupExpanded] = React.useState(false); const [isOpenMap, setIsOpenMap] = React.useState({}); const onToggle = (id: string, isOpen: boolean) => { setIsOpenMap({ [id]: isOpen }); }; const onSelect = () => { setIsOpenMap({}); }; const toggleFirstDrawer = (_event: any, value: boolean) => { setFirstGroupExpanded(value); setSecondGroupExpanded(false); setThirdGroupExpanded(false); }; const toggleSecondDrawer = (_event: any, value: boolean) => { setSecondGroupExpanded(value); setFirstGroupExpanded(false); setThirdGroupExpanded(false); }; const toggleThirdDrawer = (_event: any, value: boolean) => { setThirdGroupExpanded(value); setSecondGroupExpanded(false); setFirstGroupExpanded(false); }; const dropdownItems = [ Link, Action , , Disabled link ]; return ( onToggle('groups-kebab-toggle-1', isOpen)} id="groups-kebab-toggle-1" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-1']} isPlain dropdownItems={dropdownItems} id="grouped-notification-1" position={DropdownPosition.right} /> onToggle('groups-kebab-toggle-2', isOpen)} id="groups-kebab-toggle-2" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-2']} isPlain dropdownItems={dropdownItems} id="grouped-notification-2" /> This is an info notification description. onToggle('groups-kebab-toggle-3', isOpen)} id="groups-kebab-toggle-3" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-3']} isPlain dropdownItems={dropdownItems} id="grouped-notification-3" /> This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines. onToggle('groups-kebab-toggle-4', isOpen)} id="groups-kebab-toggle-4" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-4']} isPlain dropdownItems={dropdownItems} id="grouped-notification-7" /> This is a warning notification description. onToggle('groups-kebab-toggle-5', isOpen)} id="groups-kebab-toggle-5" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-5']} isPlain dropdownItems={dropdownItems} id="grouped-notification-5" /> This is a success notification description. onToggle('groups-kebab-toggle-6', isOpen)} id="groups-kebab-toggle-6" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-6']} isPlain dropdownItems={dropdownItems} id="grouped-notification-6" /> This is an info notification description. onToggle('groups-kebab-toggle-7', isOpen)} id="groups-kebab-toggle-7" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-7']} isPlain dropdownItems={dropdownItems} id="gropued-notification-7" /> This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines. onToggle('groups-kebab-toggle-8', isOpen)} id="groups-kebab-toggle-8" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-8']} isPlain dropdownItems={dropdownItems} id="grouped-notification-8" /> This is a warning notification description. onToggle('groups-kebab-toggle-9', isOpen)} id="groups-kebab-toggle-9" /> } isOpen={isOpenMap && isOpenMap['groups-kebab-toggle-9']} isPlain dropdownItems={dropdownItems} id="grouped-notification-9" /> This is a success notification description. No alerts found There are currently no critical alerts firing. There may be firing alerts of other severities or silenced critical alerts however. ); };