@patternfly/react-core 5.0.0-alpha.86 → 5.0.0-alpha.88
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/esm/components/AboutModal/package.json +1 -1
- package/dist/esm/components/Accordion/package.json +1 -1
- package/dist/esm/components/ActionList/package.json +1 -1
- package/dist/esm/components/Alert/package.json +1 -1
- package/dist/esm/components/Avatar/package.json +1 -1
- package/dist/esm/components/BackToTop/package.json +1 -1
- package/dist/esm/components/Backdrop/package.json +1 -1
- package/dist/esm/components/BackgroundImage/package.json +1 -1
- package/dist/esm/components/Badge/package.json +1 -1
- package/dist/esm/components/Banner/package.json +1 -1
- package/dist/esm/components/Brand/package.json +1 -1
- package/dist/esm/components/Breadcrumb/package.json +1 -1
- package/dist/esm/components/Button/package.json +1 -1
- package/dist/esm/components/CalendarMonth/package.json +1 -1
- package/dist/esm/components/Card/package.json +1 -1
- package/dist/esm/components/Checkbox/package.json +1 -1
- package/dist/esm/components/Chip/package.json +1 -1
- package/dist/esm/components/ClipboardCopy/package.json +1 -1
- package/dist/esm/components/CodeBlock/package.json +1 -1
- package/dist/esm/components/DataList/package.json +1 -1
- package/dist/esm/components/DatePicker/package.json +1 -1
- package/dist/esm/components/DescriptionList/package.json +1 -1
- package/dist/esm/components/Divider/package.json +1 -1
- package/dist/esm/components/DragDrop/package.json +1 -1
- package/dist/esm/components/Drawer/package.json +1 -1
- package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js +2 -4
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/Dropdown/package.json +1 -1
- package/dist/esm/components/DualListSelector/package.json +1 -1
- package/dist/esm/components/EmptyState/package.json +1 -1
- package/dist/esm/components/ExpandableSection/package.json +1 -1
- package/dist/esm/components/FileUpload/package.json +1 -1
- package/dist/esm/components/Form/package.json +1 -1
- package/dist/esm/components/FormSelect/package.json +1 -1
- package/dist/esm/components/HelperText/package.json +1 -1
- package/dist/esm/components/Hint/package.json +1 -1
- package/dist/esm/components/Icon/package.json +1 -1
- package/dist/esm/components/InputGroup/package.json +1 -1
- package/dist/esm/components/JumpLinks/package.json +1 -1
- package/dist/esm/components/Label/package.json +1 -1
- package/dist/esm/components/LabelGroup/package.json +1 -1
- package/dist/esm/components/List/package.json +1 -1
- package/dist/esm/components/LoginPage/package.json +1 -1
- package/dist/esm/components/Masthead/package.json +1 -1
- package/dist/esm/components/Menu/package.json +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts +3 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.js +1 -3
- package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/esm/components/MenuToggle/package.json +1 -1
- package/dist/esm/components/Modal/package.json +1 -1
- package/dist/esm/components/MultipleFileUpload/package.json +1 -1
- package/dist/esm/components/Nav/package.json +1 -1
- package/dist/esm/components/NotificationBadge/package.json +1 -1
- package/dist/esm/components/NotificationDrawer/package.json +1 -1
- package/dist/esm/components/NumberInput/package.json +1 -1
- package/dist/esm/components/OverflowMenu/package.json +1 -1
- package/dist/esm/components/Page/package.json +1 -1
- package/dist/esm/components/Pagination/package.json +1 -1
- package/dist/esm/components/Panel/package.json +1 -1
- package/dist/esm/components/Popover/package.json +1 -1
- package/dist/esm/components/Progress/package.json +1 -1
- package/dist/esm/components/ProgressStepper/package.json +1 -1
- package/dist/esm/components/Radio/package.json +1 -1
- package/dist/esm/components/SearchInput/package.json +1 -1
- package/dist/esm/components/Select/package.json +1 -1
- package/dist/esm/components/Sidebar/package.json +1 -1
- package/dist/esm/components/SimpleList/package.json +1 -1
- package/dist/esm/components/Skeleton/package.json +1 -1
- package/dist/esm/components/SkipToContent/package.json +1 -1
- package/dist/esm/components/Slider/package.json +1 -1
- package/dist/esm/components/Spinner/package.json +1 -1
- package/dist/esm/components/Switch/package.json +1 -1
- package/dist/esm/components/Tabs/package.json +1 -1
- package/dist/esm/components/Text/package.json +1 -1
- package/dist/esm/components/TextArea/package.json +1 -1
- package/dist/esm/components/TextInput/package.json +1 -1
- package/dist/esm/components/TextInputGroup/package.json +1 -1
- package/dist/esm/components/Tile/package.json +1 -1
- package/dist/esm/components/TimePicker/package.json +1 -1
- package/dist/esm/components/Timestamp/package.json +1 -1
- package/dist/esm/components/Title/package.json +1 -1
- package/dist/esm/components/ToggleGroup/package.json +1 -1
- package/dist/esm/components/Toolbar/package.json +1 -1
- package/dist/esm/components/Tooltip/package.json +1 -1
- package/dist/esm/components/TreeView/package.json +1 -1
- package/dist/esm/components/Truncate/package.json +1 -1
- package/dist/esm/components/Wizard/hooks/package.json +1 -1
- package/dist/esm/components/Wizard/package.json +1 -1
- package/dist/esm/components/package.json +1 -1
- package/dist/esm/deprecated/components/ApplicationLauncher/package.json +1 -1
- package/dist/esm/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/esm/deprecated/components/Dropdown/package.json +1 -1
- package/dist/esm/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/esm/deprecated/components/PageHeader/package.json +1 -1
- package/dist/esm/deprecated/components/Select/package.json +1 -1
- package/dist/esm/deprecated/components/Wizard/package.json +1 -1
- package/dist/esm/deprecated/components/package.json +1 -1
- package/dist/esm/deprecated/package.json +1 -1
- package/dist/esm/helpers/Popper/thirdparty/popper-core/package.json +1 -1
- package/dist/esm/helpers/package.json +1 -1
- package/dist/esm/layouts/Bullseye/package.json +1 -1
- package/dist/esm/layouts/Flex/package.json +1 -1
- package/dist/esm/layouts/Gallery/package.json +1 -1
- package/dist/esm/layouts/Grid/package.json +1 -1
- package/dist/esm/layouts/Level/package.json +1 -1
- package/dist/esm/layouts/Split/package.json +1 -1
- package/dist/esm/layouts/Stack/package.json +1 -1
- package/dist/esm/layouts/package.json +1 -1
- package/dist/esm/next/components/package.json +1 -1
- package/dist/esm/next/package.json +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/js/components/AboutModal/package.json +1 -1
- package/dist/js/components/Accordion/package.json +1 -1
- package/dist/js/components/ActionList/package.json +1 -1
- package/dist/js/components/Alert/package.json +1 -1
- package/dist/js/components/Avatar/package.json +1 -1
- package/dist/js/components/BackToTop/package.json +1 -1
- package/dist/js/components/Backdrop/package.json +1 -1
- package/dist/js/components/BackgroundImage/package.json +1 -1
- package/dist/js/components/Badge/package.json +1 -1
- package/dist/js/components/Banner/package.json +1 -1
- package/dist/js/components/Brand/package.json +1 -1
- package/dist/js/components/Breadcrumb/package.json +1 -1
- package/dist/js/components/Button/package.json +1 -1
- package/dist/js/components/CalendarMonth/package.json +1 -1
- package/dist/js/components/Card/package.json +1 -1
- package/dist/js/components/Checkbox/package.json +1 -1
- package/dist/js/components/Chip/package.json +1 -1
- package/dist/js/components/ClipboardCopy/package.json +1 -1
- package/dist/js/components/CodeBlock/package.json +1 -1
- package/dist/js/components/DataList/package.json +1 -1
- package/dist/js/components/DatePicker/package.json +1 -1
- package/dist/js/components/DescriptionList/package.json +1 -1
- package/dist/js/components/Divider/package.json +1 -1
- package/dist/js/components/DragDrop/package.json +1 -1
- package/dist/js/components/Drawer/package.json +1 -1
- package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.js +2 -4
- package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/js/components/Dropdown/package.json +1 -1
- package/dist/js/components/DualListSelector/package.json +1 -1
- package/dist/js/components/EmptyState/package.json +1 -1
- package/dist/js/components/ExpandableSection/package.json +1 -1
- package/dist/js/components/FileUpload/package.json +1 -1
- package/dist/js/components/Form/package.json +1 -1
- package/dist/js/components/FormSelect/package.json +1 -1
- package/dist/js/components/HelperText/package.json +1 -1
- package/dist/js/components/Hint/package.json +1 -1
- package/dist/js/components/Icon/package.json +1 -1
- package/dist/js/components/InputGroup/package.json +1 -1
- package/dist/js/components/JumpLinks/package.json +1 -1
- package/dist/js/components/Label/package.json +1 -1
- package/dist/js/components/LabelGroup/package.json +1 -1
- package/dist/js/components/List/package.json +1 -1
- package/dist/js/components/LoginPage/package.json +1 -1
- package/dist/js/components/Masthead/package.json +1 -1
- package/dist/js/components/Menu/package.json +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts +3 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.js +1 -3
- package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/js/components/MenuToggle/package.json +1 -1
- package/dist/js/components/Modal/package.json +1 -1
- package/dist/js/components/MultipleFileUpload/package.json +1 -1
- package/dist/js/components/Nav/package.json +1 -1
- package/dist/js/components/NotificationBadge/package.json +1 -1
- package/dist/js/components/NotificationDrawer/package.json +1 -1
- package/dist/js/components/NumberInput/package.json +1 -1
- package/dist/js/components/OverflowMenu/package.json +1 -1
- package/dist/js/components/Page/package.json +1 -1
- package/dist/js/components/Pagination/package.json +1 -1
- package/dist/js/components/Panel/package.json +1 -1
- package/dist/js/components/Popover/package.json +1 -1
- package/dist/js/components/Progress/package.json +1 -1
- package/dist/js/components/ProgressStepper/package.json +1 -1
- package/dist/js/components/Radio/package.json +1 -1
- package/dist/js/components/SearchInput/package.json +1 -1
- package/dist/js/components/Select/package.json +1 -1
- package/dist/js/components/Sidebar/package.json +1 -1
- package/dist/js/components/SimpleList/package.json +1 -1
- package/dist/js/components/Skeleton/package.json +1 -1
- package/dist/js/components/SkipToContent/package.json +1 -1
- package/dist/js/components/Slider/package.json +1 -1
- package/dist/js/components/Spinner/package.json +1 -1
- package/dist/js/components/Switch/package.json +1 -1
- package/dist/js/components/Tabs/package.json +1 -1
- package/dist/js/components/Text/package.json +1 -1
- package/dist/js/components/TextArea/package.json +1 -1
- package/dist/js/components/TextInput/package.json +1 -1
- package/dist/js/components/TextInputGroup/package.json +1 -1
- package/dist/js/components/Tile/package.json +1 -1
- package/dist/js/components/TimePicker/package.json +1 -1
- package/dist/js/components/Timestamp/package.json +1 -1
- package/dist/js/components/Title/package.json +1 -1
- package/dist/js/components/ToggleGroup/package.json +1 -1
- package/dist/js/components/Toolbar/package.json +1 -1
- package/dist/js/components/Tooltip/package.json +1 -1
- package/dist/js/components/TreeView/package.json +1 -1
- package/dist/js/components/Truncate/package.json +1 -1
- package/dist/js/components/Wizard/hooks/package.json +1 -1
- package/dist/js/components/Wizard/package.json +1 -1
- package/dist/js/components/package.json +1 -1
- package/dist/js/deprecated/components/ApplicationLauncher/package.json +1 -1
- package/dist/js/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/js/deprecated/components/Dropdown/package.json +1 -1
- package/dist/js/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/js/deprecated/components/PageHeader/package.json +1 -1
- package/dist/js/deprecated/components/Select/package.json +1 -1
- package/dist/js/deprecated/components/Wizard/package.json +1 -1
- package/dist/js/deprecated/components/package.json +1 -1
- package/dist/js/deprecated/package.json +1 -1
- package/dist/js/helpers/Popper/thirdparty/popper-core/package.json +1 -1
- package/dist/js/helpers/package.json +1 -1
- package/dist/js/layouts/Bullseye/package.json +1 -1
- package/dist/js/layouts/Flex/package.json +1 -1
- package/dist/js/layouts/Gallery/package.json +1 -1
- package/dist/js/layouts/Grid/package.json +1 -1
- package/dist/js/layouts/Level/package.json +1 -1
- package/dist/js/layouts/Split/package.json +1 -1
- package/dist/js/layouts/Stack/package.json +1 -1
- package/dist/js/layouts/package.json +1 -1
- package/dist/js/next/components/package.json +1 -1
- package/dist/js/next/package.json +1 -1
- package/dist/js/package.json +1 -1
- package/dist/umd/react-core.min.js +1 -1
- package/package.json +2 -2
- package/src/components/ActionList/examples/ActionList.md +1 -6
- package/src/components/ActionList/examples/ActionListSingleGroup.tsx +50 -38
- package/src/components/Breadcrumb/examples/Breadcrumb.md +1 -5
- package/src/components/Breadcrumb/examples/BreadcrumbDropdown.tsx +34 -21
- package/src/components/Card/examples/Card.md +9 -14
- package/src/components/Card/examples/CardExpandable.tsx +44 -31
- package/src/components/Card/examples/CardExpandableWithIcon.tsx +50 -29
- package/src/components/Card/examples/CardHeaderInCardHead.tsx +50 -29
- package/src/components/Card/examples/CardLegacySelectable.tsx +52 -33
- package/src/components/Card/examples/CardOnlyActionsInCardHead.tsx +48 -29
- package/src/components/Card/examples/CardSelectable.tsx +52 -36
- package/src/components/Card/examples/CardWithImageAndActions.tsx +51 -29
- package/src/components/DataList/__tests__/DataList.test.tsx +10 -11
- package/src/components/DataList/__tests__/__snapshots__/DataList.test.tsx.snap +86 -19
- package/src/components/DataList/examples/DataList.md +1 -6
- package/src/components/DataList/examples/DataListActions.tsx +39 -23
- package/src/components/DataList/examples/DataListCheckboxes.tsx +106 -61
- package/src/components/DataList/examples/DataListExpandable.tsx +103 -55
- package/src/components/DataList/examples/DataListMixedExpandable.tsx +105 -57
- package/src/components/DataList/examples/DataListSelectableRows.tsx +71 -39
- package/src/components/DataList/examples/DataListWidthModifiers.tsx +81 -39
- package/src/components/Dropdown/Dropdown.tsx +10 -13
- package/src/components/Dropdown/__tests__/__snapshots__/Dropdown.test.tsx.snap +29 -32
- package/src/components/Dropdown/examples/Dropdown.md +0 -1
- package/src/components/Dropdown/examples/DropdownBasic.tsx +22 -16
- package/src/components/Dropdown/examples/DropdownWithDescriptions.tsx +13 -18
- package/src/components/Dropdown/examples/DropdownWithGroups.tsx +30 -16
- package/src/components/Dropdown/examples/DropdownWithKebabToggle.tsx +22 -16
- package/src/components/DualListSelector/examples/DualListSelector.md +1 -5
- package/src/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +60 -36
- package/src/components/Hint/examples/Hint.md +1 -6
- package/src/components/Hint/examples/HintBasicWithTitle.tsx +58 -32
- package/src/components/Hint/examples/HintBasicWithoutTitle.tsx +57 -32
- package/src/components/InputGroup/examples/InputGroup.md +0 -5
- package/src/components/InputGroup/examples/InputGroupWithDropdown.tsx +32 -24
- package/src/components/Menu/examples/Menu.md +1 -5
- package/src/components/Menu/examples/MenuWithDrilldownBreadcrumbs.tsx +120 -89
- package/src/components/MenuToggle/MenuToggle.tsx +4 -3
- package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +10 -18
- package/src/components/MenuToggle/examples/MenuToggle.md +35 -5
- package/src/components/Modal/examples/Modal.md +0 -5
- package/src/components/Modal/examples/ModalWithDropdown.tsx +40 -34
- package/src/components/NotificationDrawer/examples/NotificationDrawer.md +1 -8
- package/src/components/NotificationDrawer/examples/NotificationDrawerBasic.tsx +145 -72
- package/src/components/NotificationDrawer/examples/NotificationDrawerGroups.tsx +187 -131
- package/src/components/Tabs/examples/Tabs.md +120 -44
- package/src/components/Toolbar/examples/Toolbar.md +41 -28
- package/src/components/Toolbar/examples/ToolbarItems.tsx +1 -1
- package/src/components/Toolbar/examples/ToolbarStacked.tsx +75 -58
- package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +57 -88
- package/src/components/TreeView/examples/TreeView.md +42 -30
- package/src/demos/AlertGroup.md +1 -6
- package/src/demos/Card/Card.md +75 -80
- package/src/demos/CardDemos.md +40 -34
- package/src/demos/DataListDemo.md +130 -70
- package/src/demos/DatePicker/DatePicker.md +1 -89
- package/src/demos/DateTimePicker.md +90 -5
- package/src/demos/Masthead.md +1 -7
- package/src/demos/Nav.md +213 -155
- package/src/demos/NotificationDrawer/NotificationDrawer.md +485 -355
- package/src/demos/Page.md +1 -7
- package/src/demos/PrimaryDetail.md +193 -211
- package/src/demos/Tabs.md +0 -1
- package/src/demos/Toolbar.md +169 -190
- package/src/demos/examples/AlertGroup/AlertGroupToastWithNotificationDrawer.tsx +61 -49
- package/src/demos/examples/DashboardHeader.js +96 -81
- package/src/demos/examples/DateTimePicker/DateTimePicker.tsx +29 -26
- package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +84 -69
- package/src/demos/examples/Page/PageStickySectionBreadcrumb.tsx +90 -74
- package/src/demos/examples/Page/PageStickySectionGroup.tsx +90 -74
- package/src/demos/examples/Page/PageStickySectionGroupAlternate.tsx +90 -74
- package/src/demos/examples/Tabs/TabsAndTable.tsx +12 -6
|
@@ -1,43 +1,51 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { Button, InputGroup, TextInput } from '@patternfly/react-core';
|
|
3
2
|
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
Button,
|
|
4
|
+
InputGroup,
|
|
5
|
+
TextInput,
|
|
6
|
+
Dropdown,
|
|
7
|
+
DropdownList,
|
|
8
|
+
DropdownItem,
|
|
9
|
+
MenuToggle,
|
|
10
|
+
MenuToggleElement
|
|
11
|
+
} from '@patternfly/react-core';
|
|
8
12
|
|
|
9
13
|
export const InputGroupWithDropdown: React.FunctionComponent = () => {
|
|
10
14
|
const [isOpen, setIsOpen] = React.useState<boolean>(false);
|
|
11
15
|
|
|
12
|
-
const onToggle = (
|
|
13
|
-
setIsOpen(isOpen);
|
|
16
|
+
const onToggle = () => {
|
|
17
|
+
setIsOpen(!isOpen);
|
|
14
18
|
};
|
|
15
19
|
|
|
16
20
|
const onSelect = () => {
|
|
17
21
|
setIsOpen(false);
|
|
18
22
|
};
|
|
19
23
|
|
|
20
|
-
const dropdownItems = [
|
|
21
|
-
<DropdownItemDeprecated key="opt-1" value="Option 1" component="button">
|
|
22
|
-
Option 1
|
|
23
|
-
</DropdownItemDeprecated>,
|
|
24
|
-
<DropdownItemDeprecated key="opt-2" value="Option 2" component="button">
|
|
25
|
-
Option 2
|
|
26
|
-
</DropdownItemDeprecated>,
|
|
27
|
-
<DropdownItemDeprecated key="opt-3" value="Option 3" component="button">
|
|
28
|
-
Option 3
|
|
29
|
-
</DropdownItemDeprecated>
|
|
30
|
-
];
|
|
31
|
-
|
|
32
24
|
return (
|
|
33
25
|
<React.Fragment>
|
|
34
26
|
<InputGroup>
|
|
35
|
-
<
|
|
36
|
-
onSelect={onSelect}
|
|
37
|
-
toggle={<DropdownToggle onToggle={onToggle}>Dropdown</DropdownToggle>}
|
|
27
|
+
<Dropdown
|
|
38
28
|
isOpen={isOpen}
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
onSelect={onSelect}
|
|
30
|
+
onOpenChange={(isOpen: boolean) => setIsOpen(isOpen)}
|
|
31
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
32
|
+
<MenuToggle ref={toggleRef} onClick={onToggle} isExpanded={isOpen}>
|
|
33
|
+
Dropdown
|
|
34
|
+
</MenuToggle>
|
|
35
|
+
)}
|
|
36
|
+
>
|
|
37
|
+
<DropdownList>
|
|
38
|
+
<DropdownItem itemId={0} key="option1">
|
|
39
|
+
Option 1
|
|
40
|
+
</DropdownItem>
|
|
41
|
+
<DropdownItem itemId={1} key="option2">
|
|
42
|
+
Option 2
|
|
43
|
+
</DropdownItem>
|
|
44
|
+
<DropdownItem itemId={2} key="option3">
|
|
45
|
+
Option 3
|
|
46
|
+
</DropdownItem>
|
|
47
|
+
</DropdownList>
|
|
48
|
+
</Dropdown>
|
|
41
49
|
<TextInput id="textInput-with-dropdown" aria-label="input with dropdown and button" />
|
|
42
50
|
<Button id="inputDropdownButton1" variant="control">
|
|
43
51
|
Button
|
|
@@ -7,11 +7,6 @@ propComponents: ['Menu', 'MenuList', 'MenuItem', 'MenuItemAction', 'MenuContent'
|
|
|
7
7
|
ouia: true
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
import {
|
|
11
|
-
Dropdown as DropdownDeprecated,
|
|
12
|
-
DropdownItem as DropdownItemDeprecated,
|
|
13
|
-
BadgeToggle
|
|
14
|
-
} from '@patternfly/react-core/deprecated';
|
|
15
10
|
import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
|
|
16
11
|
import ClipboardIcon from '@patternfly/react-icons/dist/esm/icons/clipboard-icon';
|
|
17
12
|
import CodeBranchIcon from '@patternfly/react-icons/dist/esm/icons/code-branch-icon';
|
|
@@ -21,6 +16,7 @@ import TableIcon from '@patternfly/react-icons/dist/esm/icons/table-icon';
|
|
|
21
16
|
import BellIcon from '@patternfly/react-icons/dist/esm/icons/bell-icon';
|
|
22
17
|
import StorageDomainIcon from '@patternfly/react-icons/dist/esm/icons/storage-domain-icon';
|
|
23
18
|
import AngleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-left-icon';
|
|
19
|
+
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
24
20
|
|
|
25
21
|
## Examples
|
|
26
22
|
|
|
@@ -10,18 +10,20 @@ import {
|
|
|
10
10
|
BreadcrumbItem,
|
|
11
11
|
BreadcrumbHeading,
|
|
12
12
|
MenuBreadcrumb,
|
|
13
|
-
Checkbox
|
|
13
|
+
Checkbox,
|
|
14
|
+
Dropdown,
|
|
15
|
+
DropdownList,
|
|
16
|
+
DropdownItem,
|
|
17
|
+
MenuToggle,
|
|
18
|
+
MenuToggleElement,
|
|
19
|
+
Badge
|
|
14
20
|
} from '@patternfly/react-core';
|
|
15
|
-
import {
|
|
16
|
-
Dropdown as DropdownDeprecated,
|
|
17
|
-
DropdownItem as DropdownItemDeprecated,
|
|
18
|
-
BadgeToggle
|
|
19
|
-
} from '@patternfly/react-core/deprecated';
|
|
20
21
|
import StorageDomainIcon from '@patternfly/react-icons/dist/esm/icons/storage-domain-icon';
|
|
21
22
|
import CodeBranchIcon from '@patternfly/react-icons/dist/esm/icons/code-branch-icon';
|
|
22
23
|
import LayerGroupIcon from '@patternfly/react-icons/dist/esm/icons/layer-group-icon';
|
|
23
24
|
import AngleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-left-icon';
|
|
24
25
|
import CubeIcon from '@patternfly/react-icons/dist/esm/icons/cube-icon';
|
|
26
|
+
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
25
27
|
|
|
26
28
|
export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
27
29
|
const [menuDrilledIn, setMenuDrilledIn] = React.useState<string[]>([]);
|
|
@@ -93,7 +95,7 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
93
95
|
<Breadcrumb>
|
|
94
96
|
<BreadcrumbItem
|
|
95
97
|
component="button"
|
|
96
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
98
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
97
99
|
>
|
|
98
100
|
Root
|
|
99
101
|
</BreadcrumbItem>
|
|
@@ -105,31 +107,37 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
105
107
|
<Breadcrumb>
|
|
106
108
|
<BreadcrumbItem
|
|
107
109
|
component="button"
|
|
108
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
110
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
109
111
|
>
|
|
110
112
|
Root
|
|
111
113
|
</BreadcrumbItem>
|
|
112
114
|
<BreadcrumbItem isDropdown>
|
|
113
|
-
<
|
|
114
|
-
toggle={
|
|
115
|
-
<BadgeToggle id="toggle-id" onToggle={(_event: any, open: boolean) => onToggle(open, 'app')}>
|
|
116
|
-
1
|
|
117
|
-
</BadgeToggle>
|
|
118
|
-
}
|
|
115
|
+
<Dropdown
|
|
119
116
|
isOpen={isOpen}
|
|
120
|
-
|
|
121
|
-
|
|
117
|
+
onOpenChange={(isOpen: boolean) => onToggle(isOpen, 'app')}
|
|
118
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
119
|
+
<MenuToggle ref={toggleRef} onClick={() => onToggle(true, 'app')} isExpanded={isOpen} variant="plain">
|
|
120
|
+
<Badge isRead screenReaderText="additional item">
|
|
121
|
+
1{' '}
|
|
122
|
+
<span>
|
|
123
|
+
<CaretDownIcon />
|
|
124
|
+
</span>
|
|
125
|
+
</Badge>
|
|
126
|
+
</MenuToggle>
|
|
127
|
+
)}
|
|
128
|
+
>
|
|
129
|
+
<DropdownList>
|
|
130
|
+
<DropdownItem
|
|
122
131
|
key="dropdown-start"
|
|
123
|
-
component="button"
|
|
124
132
|
icon={<AngleLeftIcon />}
|
|
125
|
-
onClick={(event) =>
|
|
133
|
+
onClick={(event: any) =>
|
|
126
134
|
drillOut(event, 'breadcrumbs-drilldownMenuStart', 'group:app_grouping_start', startRolloutBreadcrumb)
|
|
127
135
|
}
|
|
128
136
|
>
|
|
129
137
|
Start rollout
|
|
130
|
-
</
|
|
131
|
-
|
|
132
|
-
|
|
138
|
+
</DropdownItem>
|
|
139
|
+
</DropdownList>
|
|
140
|
+
</Dropdown>
|
|
133
141
|
</BreadcrumbItem>
|
|
134
142
|
<BreadcrumbHeading component="button">Application Grouping</BreadcrumbHeading>
|
|
135
143
|
</Breadcrumb>
|
|
@@ -139,31 +147,37 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
139
147
|
<Breadcrumb>
|
|
140
148
|
<BreadcrumbItem
|
|
141
149
|
component="button"
|
|
142
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
150
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:start_rollout', null)}
|
|
143
151
|
>
|
|
144
152
|
Root
|
|
145
153
|
</BreadcrumbItem>
|
|
146
154
|
<BreadcrumbItem isDropdown>
|
|
147
|
-
<
|
|
148
|
-
toggle={
|
|
149
|
-
<BadgeToggle id="toggle-id" onToggle={(_event: any, open: boolean) => onToggle(open, 'label')}>
|
|
150
|
-
1
|
|
151
|
-
</BadgeToggle>
|
|
152
|
-
}
|
|
155
|
+
<Dropdown
|
|
153
156
|
isOpen={isOpen}
|
|
154
|
-
|
|
155
|
-
|
|
157
|
+
onOpenChange={(isOpen: boolean) => onToggle(isOpen, 'label')}
|
|
158
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
159
|
+
<MenuToggle ref={toggleRef} onClick={() => onToggle(true, 'label')} isExpanded={isOpen} variant="plain">
|
|
160
|
+
<Badge isRead screenReaderText="additional item">
|
|
161
|
+
1{' '}
|
|
162
|
+
<span>
|
|
163
|
+
<CaretDownIcon />
|
|
164
|
+
</span>
|
|
165
|
+
</Badge>
|
|
166
|
+
</MenuToggle>
|
|
167
|
+
)}
|
|
168
|
+
>
|
|
169
|
+
<DropdownList>
|
|
170
|
+
<DropdownItem
|
|
156
171
|
key="dropdown-start"
|
|
157
|
-
component="button"
|
|
158
172
|
icon={<AngleLeftIcon />}
|
|
159
|
-
onClick={(event) =>
|
|
173
|
+
onClick={(event: any) =>
|
|
160
174
|
drillOut(event, 'breadcrumbs-drilldownMenuStart', 'group:labels_start', startRolloutBreadcrumb)
|
|
161
175
|
}
|
|
162
176
|
>
|
|
163
177
|
Start rollout
|
|
164
|
-
</
|
|
165
|
-
|
|
166
|
-
|
|
178
|
+
</DropdownItem>
|
|
179
|
+
</DropdownList>
|
|
180
|
+
</Dropdown>
|
|
167
181
|
</BreadcrumbItem>
|
|
168
182
|
<BreadcrumbHeading component="button">Labels</BreadcrumbHeading>
|
|
169
183
|
</Breadcrumb>
|
|
@@ -173,7 +187,7 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
173
187
|
<Breadcrumb>
|
|
174
188
|
<BreadcrumbItem
|
|
175
189
|
component="button"
|
|
176
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
190
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
177
191
|
>
|
|
178
192
|
Root
|
|
179
193
|
</BreadcrumbItem>
|
|
@@ -185,31 +199,37 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
185
199
|
<Breadcrumb>
|
|
186
200
|
<BreadcrumbItem
|
|
187
201
|
component="button"
|
|
188
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
202
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
189
203
|
>
|
|
190
204
|
Root
|
|
191
205
|
</BreadcrumbItem>
|
|
192
206
|
<BreadcrumbItem isDropdown>
|
|
193
|
-
<
|
|
194
|
-
toggle={
|
|
195
|
-
<BadgeToggle id="toggle-id" onToggle={(_event: any, open: boolean) => onToggle(open, 'pause-app')}>
|
|
196
|
-
1
|
|
197
|
-
</BadgeToggle>
|
|
198
|
-
}
|
|
207
|
+
<Dropdown
|
|
199
208
|
isOpen={isOpen}
|
|
200
|
-
|
|
201
|
-
|
|
209
|
+
onOpenChange={(isOpen: boolean) => onToggle(isOpen, 'pause-app')}
|
|
210
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
211
|
+
<MenuToggle ref={toggleRef} onClick={() => onToggle(true, 'pause-app')} isExpanded={isOpen} variant="plain">
|
|
212
|
+
<Badge isRead screenReaderText="additional item">
|
|
213
|
+
1{' '}
|
|
214
|
+
<span>
|
|
215
|
+
<CaretDownIcon />
|
|
216
|
+
</span>
|
|
217
|
+
</Badge>
|
|
218
|
+
</MenuToggle>
|
|
219
|
+
)}
|
|
220
|
+
>
|
|
221
|
+
<DropdownList>
|
|
222
|
+
<DropdownItem
|
|
202
223
|
key="dropdown-pause"
|
|
203
|
-
component="button"
|
|
204
224
|
icon={<AngleLeftIcon />}
|
|
205
|
-
onClick={(event) =>
|
|
225
|
+
onClick={(event: any) =>
|
|
206
226
|
drillOut(event, 'breadcrumbs-drilldownMenuPause', 'group:app_grouping', pauseRolloutsBreadcrumb)
|
|
207
227
|
}
|
|
208
228
|
>
|
|
209
229
|
Pause rollouts
|
|
210
|
-
</
|
|
211
|
-
|
|
212
|
-
|
|
230
|
+
</DropdownItem>
|
|
231
|
+
</DropdownList>
|
|
232
|
+
</Dropdown>
|
|
213
233
|
</BreadcrumbItem>
|
|
214
234
|
<BreadcrumbHeading component="button">Application Grouping</BreadcrumbHeading>
|
|
215
235
|
</Breadcrumb>
|
|
@@ -219,31 +239,42 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
219
239
|
<Breadcrumb>
|
|
220
240
|
<BreadcrumbItem
|
|
221
241
|
component="button"
|
|
222
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
242
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:pause_rollout', null)}
|
|
223
243
|
>
|
|
224
244
|
Root
|
|
225
245
|
</BreadcrumbItem>
|
|
226
246
|
<BreadcrumbItem isDropdown>
|
|
227
|
-
<
|
|
228
|
-
toggle={
|
|
229
|
-
<BadgeToggle id="toggle-id" onToggle={(_event: any, open: boolean) => onToggle(open, 'pause-label')}>
|
|
230
|
-
1
|
|
231
|
-
</BadgeToggle>
|
|
232
|
-
}
|
|
247
|
+
<Dropdown
|
|
233
248
|
isOpen={isOpen}
|
|
234
|
-
|
|
235
|
-
|
|
249
|
+
onOpenChange={(isOpen: boolean) => onToggle(isOpen, 'pause-label')}
|
|
250
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
251
|
+
<MenuToggle
|
|
252
|
+
ref={toggleRef}
|
|
253
|
+
onClick={() => onToggle(true, 'pause-label')}
|
|
254
|
+
isExpanded={isOpen}
|
|
255
|
+
variant="plain"
|
|
256
|
+
>
|
|
257
|
+
<Badge isRead screenReaderText="additional item">
|
|
258
|
+
1{' '}
|
|
259
|
+
<span>
|
|
260
|
+
<CaretDownIcon />
|
|
261
|
+
</span>
|
|
262
|
+
</Badge>
|
|
263
|
+
</MenuToggle>
|
|
264
|
+
)}
|
|
265
|
+
>
|
|
266
|
+
<DropdownList>
|
|
267
|
+
<DropdownItem
|
|
236
268
|
key="dropdown-pause"
|
|
237
|
-
component="button"
|
|
238
269
|
icon={<AngleLeftIcon />}
|
|
239
|
-
onClick={(event) =>
|
|
270
|
+
onClick={(event: any) =>
|
|
240
271
|
drillOut(event, 'breadcrumbs-drilldownMenuPause', 'group:labels', pauseRolloutsBreadcrumb)
|
|
241
272
|
}
|
|
242
273
|
>
|
|
243
274
|
Pause rollouts
|
|
244
|
-
</
|
|
245
|
-
|
|
246
|
-
|
|
275
|
+
</DropdownItem>
|
|
276
|
+
</DropdownList>
|
|
277
|
+
</Dropdown>
|
|
247
278
|
</BreadcrumbItem>
|
|
248
279
|
<BreadcrumbHeading component="button">Labels</BreadcrumbHeading>
|
|
249
280
|
</Breadcrumb>
|
|
@@ -253,7 +284,7 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
253
284
|
<Breadcrumb>
|
|
254
285
|
<BreadcrumbItem
|
|
255
286
|
component="button"
|
|
256
|
-
onClick={(event) => drillOut(event, 'breadcrumbs-rootMenu', 'group:storage', null)}
|
|
287
|
+
onClick={(event: any) => drillOut(event, 'breadcrumbs-rootMenu', 'group:storage', null)}
|
|
257
288
|
>
|
|
258
289
|
Root
|
|
259
290
|
</BreadcrumbItem>
|
|
@@ -304,34 +335,34 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
304
335
|
onClick={() => setBreadcrumb(appGroupingBreadcrumb(false))}
|
|
305
336
|
drilldownMenu={
|
|
306
337
|
<DrilldownMenu id="breadcrumbs-drilldownMenuStartGrouping">
|
|
307
|
-
<MenuItem itemId="group_a">Group A</MenuItem>
|
|
308
|
-
<MenuItem itemId="group_b">Group B</MenuItem>
|
|
309
|
-
<MenuItem itemId="group_c">Group C</MenuItem>
|
|
310
|
-
<MenuItem itemId="group_d">Group D</MenuItem>
|
|
311
|
-
<MenuItem itemId="group_e">Group E</MenuItem>
|
|
312
|
-
<MenuItem itemId="group_f">Group F</MenuItem>
|
|
313
|
-
<MenuItem itemId="group_g">Group G</MenuItem>
|
|
338
|
+
<MenuItem itemId="group_a">Group A (start rollout)</MenuItem>
|
|
339
|
+
<MenuItem itemId="group_b">Group B (start rollout)</MenuItem>
|
|
340
|
+
<MenuItem itemId="group_c">Group C (start rollout)</MenuItem>
|
|
341
|
+
<MenuItem itemId="group_d">Group D (start rollout)</MenuItem>
|
|
342
|
+
<MenuItem itemId="group_e">Group E (start rollout)</MenuItem>
|
|
343
|
+
<MenuItem itemId="group_f">Group F (start rollout)</MenuItem>
|
|
344
|
+
<MenuItem itemId="group_g">Group G (start rollout)</MenuItem>
|
|
314
345
|
</DrilldownMenu>
|
|
315
346
|
}
|
|
316
347
|
>
|
|
317
|
-
Application grouping
|
|
348
|
+
Application grouping (start rollout)
|
|
318
349
|
</MenuItem>
|
|
319
|
-
<MenuItem itemId="count">Count</MenuItem>
|
|
350
|
+
<MenuItem itemId="count">Count (start rollout)</MenuItem>
|
|
320
351
|
<MenuItem
|
|
321
352
|
itemId="group:labels_start"
|
|
322
353
|
direction="down"
|
|
323
354
|
onClick={() => setBreadcrumb(labelsBreadcrumb(false))}
|
|
324
355
|
drilldownMenu={
|
|
325
356
|
<DrilldownMenu id="breadcrumbs-drilldownMenuStartLabels">
|
|
326
|
-
<MenuItem itemId="label_1">Label 1</MenuItem>
|
|
327
|
-
<MenuItem itemId="label_2">Label 2</MenuItem>
|
|
328
|
-
<MenuItem itemId="label_3">Label 3</MenuItem>
|
|
357
|
+
<MenuItem itemId="label_1">Label 1 (start rollout)</MenuItem>
|
|
358
|
+
<MenuItem itemId="label_2">Label 2 (start rollout)</MenuItem>
|
|
359
|
+
<MenuItem itemId="label_3">Label 3 (start rollout)</MenuItem>
|
|
329
360
|
</DrilldownMenu>
|
|
330
361
|
}
|
|
331
362
|
>
|
|
332
|
-
Labels
|
|
363
|
+
Labels (start rollout)
|
|
333
364
|
</MenuItem>
|
|
334
|
-
<MenuItem itemId="annotations">Annotations</MenuItem>
|
|
365
|
+
<MenuItem itemId="annotations">Annotations (start rollout)</MenuItem>
|
|
335
366
|
</DrilldownMenu>
|
|
336
367
|
}
|
|
337
368
|
>
|
|
@@ -350,30 +381,30 @@ export const MenuWithDrilldownBreadcrumbs: React.FunctionComponent = () => {
|
|
|
350
381
|
onClick={() => setBreadcrumb(pauseRolloutsAppGrpBreadcrumb(false))}
|
|
351
382
|
drilldownMenu={
|
|
352
383
|
<DrilldownMenu id="breadcrumbs-drilldownMenuGrouping">
|
|
353
|
-
<MenuItem itemId="group_a">Group A</MenuItem>
|
|
354
|
-
<MenuItem itemId="group_b">Group B</MenuItem>
|
|
355
|
-
<MenuItem itemId="group_c">Group C</MenuItem>
|
|
384
|
+
<MenuItem itemId="group_a">Group A (pause rollouts)</MenuItem>
|
|
385
|
+
<MenuItem itemId="group_b">Group B (pause rollouts)</MenuItem>
|
|
386
|
+
<MenuItem itemId="group_c">Group C (pause rollouts)</MenuItem>
|
|
356
387
|
</DrilldownMenu>
|
|
357
388
|
}
|
|
358
389
|
>
|
|
359
|
-
Application grouping
|
|
390
|
+
Application grouping (pause rollouts)
|
|
360
391
|
</MenuItem>
|
|
361
|
-
<MenuItem itemId="count">Count</MenuItem>
|
|
392
|
+
<MenuItem itemId="count">Count (pause rollouts)</MenuItem>
|
|
362
393
|
<MenuItem
|
|
363
394
|
itemId="group:labels"
|
|
364
395
|
direction="down"
|
|
365
396
|
onClick={() => setBreadcrumb(pauseRolloutsLabelsBreadcrumb(false))}
|
|
366
397
|
drilldownMenu={
|
|
367
398
|
<DrilldownMenu id="breadcrumbs-drilldownMenuLabels">
|
|
368
|
-
<MenuItem itemId="label_1">Label 1</MenuItem>
|
|
369
|
-
<MenuItem itemId="label_2">Label 2</MenuItem>
|
|
370
|
-
<MenuItem itemId="label_3">Label 3</MenuItem>
|
|
399
|
+
<MenuItem itemId="label_1">Label 1 (pause rollouts)</MenuItem>
|
|
400
|
+
<MenuItem itemId="label_2">Label 2 (pause rollouts)</MenuItem>
|
|
401
|
+
<MenuItem itemId="label_3">Label 3 (pause rollouts)</MenuItem>
|
|
371
402
|
</DrilldownMenu>
|
|
372
403
|
}
|
|
373
404
|
>
|
|
374
|
-
Labels
|
|
405
|
+
Labels (pause rollouts)
|
|
375
406
|
</MenuItem>
|
|
376
|
-
<MenuItem itemId="annotations">Annotations</MenuItem>
|
|
407
|
+
<MenuItem itemId="annotations">Annotations (pause rollouts)</MenuItem>
|
|
377
408
|
</DrilldownMenu>
|
|
378
409
|
}
|
|
379
410
|
>
|
|
@@ -3,7 +3,6 @@ import styles from '@patternfly/react-styles/css/components/MenuToggle/menu-togg
|
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
4
|
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
5
5
|
import { BadgeProps } from '../Badge';
|
|
6
|
-
import { Icon } from '../Icon';
|
|
7
6
|
|
|
8
7
|
export type MenuToggleElement = HTMLDivElement | HTMLButtonElement;
|
|
9
8
|
|
|
@@ -38,7 +37,9 @@ export interface MenuToggleProps
|
|
|
38
37
|
splitButtonOptions?: SplitButtonOptions;
|
|
39
38
|
/** Variant styles of the menu toggle */
|
|
40
39
|
variant?: 'default' | 'plain' | 'primary' | 'plainText' | 'secondary' | 'typeahead';
|
|
41
|
-
/** Optional icon rendered inside the toggle, before the children content
|
|
40
|
+
/** Optional icon or image rendered inside the toggle, before the children content. It is
|
|
41
|
+
* recommended to wrap most basic icons in our icon component.
|
|
42
|
+
*/
|
|
42
43
|
icon?: React.ReactNode;
|
|
43
44
|
/** Optional badge rendered inside the toggle, after the children content */
|
|
44
45
|
badge?: BadgeProps | React.ReactNode;
|
|
@@ -86,7 +87,7 @@ export class MenuToggleBase extends React.Component<MenuToggleProps> {
|
|
|
86
87
|
|
|
87
88
|
const content = (
|
|
88
89
|
<>
|
|
89
|
-
{icon && <span className={css(styles.menuToggleIcon)}
|
|
90
|
+
{icon && <span className={css(styles.menuToggleIcon)}>{icon}</span>}
|
|
90
91
|
{isTypeahead ? children : <span className={css(styles.menuToggleText)}>{children}</span>}
|
|
91
92
|
{React.isValidElement(badge) && <span className={css(styles.menuToggleCount)}>{badge}</span>}
|
|
92
93
|
{isTypeahead ? (
|
|
@@ -124,25 +124,17 @@ exports[`menu toggle shows icon 1`] = `
|
|
|
124
124
|
<span
|
|
125
125
|
class="pf-c-menu-toggle__icon"
|
|
126
126
|
>
|
|
127
|
-
<
|
|
128
|
-
|
|
127
|
+
<svg
|
|
128
|
+
aria-hidden="true"
|
|
129
|
+
class="pf-svg"
|
|
130
|
+
fill="currentColor"
|
|
131
|
+
role="img"
|
|
132
|
+
viewBox="0 0 512 512"
|
|
129
133
|
>
|
|
130
|
-
<
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
aria-hidden="true"
|
|
135
|
-
class="pf-svg"
|
|
136
|
-
fill="currentColor"
|
|
137
|
-
role="img"
|
|
138
|
-
viewBox="0 0 512 512"
|
|
139
|
-
>
|
|
140
|
-
<path
|
|
141
|
-
d="M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"
|
|
142
|
-
/>
|
|
143
|
-
</svg>
|
|
144
|
-
</span>
|
|
145
|
-
</span>
|
|
134
|
+
<path
|
|
135
|
+
d="M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"
|
|
136
|
+
/>
|
|
137
|
+
</svg>
|
|
146
138
|
</span>
|
|
147
139
|
<span
|
|
148
140
|
class="pf-c-menu-toggle__text"
|
|
@@ -67,16 +67,46 @@ import { MenuToggle, Badge } from '@patternfly/react-core';
|
|
|
67
67
|
|
|
68
68
|
To add a recognizable icon to a menu toggle, use the `icon` property. The following example adds a `CogIcon` to the toggle.
|
|
69
69
|
|
|
70
|
+
For most basic icons, it is recommended to wrap it inside our [icon component](/components/icon).
|
|
71
|
+
|
|
70
72
|
```ts
|
|
71
73
|
import React from 'react';
|
|
72
|
-
import { MenuToggle } from '@patternfly/react-core';
|
|
74
|
+
import { MenuToggle, Icon } from '@patternfly/react-core';
|
|
73
75
|
import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
|
|
74
76
|
|
|
75
77
|
<React.Fragment>
|
|
76
|
-
<MenuToggle
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
<MenuToggle
|
|
79
|
+
icon={
|
|
80
|
+
<Icon>
|
|
81
|
+
<CogIcon />
|
|
82
|
+
</Icon>
|
|
83
|
+
}
|
|
84
|
+
variant="primary"
|
|
85
|
+
>
|
|
86
|
+
Icon
|
|
87
|
+
</MenuToggle>{' '}
|
|
88
|
+
<MenuToggle
|
|
89
|
+
icon={
|
|
90
|
+
<Icon>
|
|
91
|
+
<CogIcon />
|
|
92
|
+
</Icon>
|
|
93
|
+
}
|
|
94
|
+
variant="secondary"
|
|
95
|
+
>
|
|
96
|
+
Icon
|
|
97
|
+
</MenuToggle>{' '}
|
|
98
|
+
<MenuToggle
|
|
99
|
+
icon={
|
|
100
|
+
<Icon>
|
|
101
|
+
<CogIcon />
|
|
102
|
+
</Icon>
|
|
103
|
+
}
|
|
104
|
+
variant="secondary"
|
|
105
|
+
isDisabled
|
|
106
|
+
>
|
|
107
|
+
Icon
|
|
108
|
+
</MenuToggle>
|
|
109
|
+
</React.Fragment>;
|
|
80
110
|
```
|
|
81
111
|
|
|
82
112
|
### With avatar and text
|
|
@@ -6,11 +6,6 @@ propComponents: ['Modal']
|
|
|
6
6
|
ouia: true
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
import {
|
|
10
|
-
Dropdown as DropdownDeprecated,
|
|
11
|
-
DropdownToggle,
|
|
12
|
-
DropdownItem as DropdownItemDeprecated
|
|
13
|
-
} from '@patternfly/react-core/deprecated';
|
|
14
9
|
import WarningTriangleIcon from '@patternfly/react-icons/dist/esm/icons/warning-triangle-icon';
|
|
15
10
|
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
16
11
|
import BullhornIcon from '@patternfly/react-icons/dist/esm/icons/bullhorn-icon';
|