@patternfly/react-core 4.244.1 → 4.245.0
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 +24 -0
- package/dist/esm/components/Alert/Alert.d.ts +4 -0
- package/dist/esm/components/Alert/Alert.d.ts.map +1 -1
- package/dist/esm/components/Alert/Alert.js.map +1 -1
- package/dist/esm/components/Alert/AlertActionCloseButton.js +2 -4
- package/dist/esm/components/Alert/AlertActionCloseButton.js.map +1 -1
- package/dist/esm/components/Alert/AlertToggleExpandButton.js +1 -1
- package/dist/esm/components/Alert/AlertToggleExpandButton.js.map +1 -1
- package/dist/esm/components/Breadcrumb/Breadcrumb.d.ts +4 -0
- package/dist/esm/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/dist/esm/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/esm/components/Button/Button.d.ts +4 -0
- package/dist/esm/components/Button/Button.d.ts.map +1 -1
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Card/Card.d.ts +4 -0
- package/dist/esm/components/Card/Card.d.ts.map +1 -1
- package/dist/esm/components/Card/Card.js.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.d.ts +4 -0
- package/dist/esm/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/Chip/Chip.d.ts +2 -0
- package/dist/esm/components/Chip/Chip.d.ts.map +1 -1
- package/dist/esm/components/Chip/Chip.js.map +1 -1
- package/dist/esm/components/ChipGroup/ChipGroup.d.ts +2 -0
- package/dist/esm/components/ChipGroup/ChipGroup.d.ts.map +1 -1
- package/dist/esm/components/ChipGroup/ChipGroup.js.map +1 -1
- package/dist/esm/components/ContextSelector/ContextSelector.d.ts +4 -0
- package/dist/esm/components/ContextSelector/ContextSelector.d.ts.map +1 -1
- package/dist/esm/components/ContextSelector/ContextSelector.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.d.ts +4 -0
- package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/Dropdown/DropdownItem.d.ts +4 -0
- package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/DropdownItem.js.map +1 -1
- package/dist/esm/components/Dropdown/DropdownSeparator.d.ts +4 -0
- package/dist/esm/components/Dropdown/DropdownSeparator.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/DropdownSeparator.js.map +1 -1
- package/dist/esm/components/Dropdown/DropdownToggle.d.ts +4 -0
- package/dist/esm/components/Dropdown/DropdownToggle.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/DropdownToggle.js.map +1 -1
- package/dist/esm/components/Dropdown/DropdownToggleCheckbox.d.ts +4 -0
- package/dist/esm/components/Dropdown/DropdownToggleCheckbox.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/DropdownToggleCheckbox.js.map +1 -1
- package/dist/esm/components/Form/Form.d.ts +4 -2
- package/dist/esm/components/Form/Form.d.ts.map +1 -1
- package/dist/esm/components/Form/Form.js +4 -3
- package/dist/esm/components/Form/Form.js.map +1 -1
- package/dist/esm/components/FormSelect/FormSelect.d.ts +4 -0
- package/dist/esm/components/FormSelect/FormSelect.d.ts.map +1 -1
- package/dist/esm/components/FormSelect/FormSelect.js.map +1 -1
- package/dist/esm/components/LoginPage/LoginForm.d.ts +1 -1
- package/dist/esm/components/LoginPage/LoginForm.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.d.ts +4 -0
- package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggleCheckbox.d.ts +4 -0
- package/dist/esm/components/MenuToggle/MenuToggleCheckbox.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggleCheckbox.js.map +1 -1
- package/dist/esm/components/Modal/Modal.d.ts +4 -0
- package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
- package/dist/esm/components/Modal/Modal.js.map +1 -1
- package/dist/esm/components/Modal/ModalBoxCloseButton.d.ts +2 -0
- package/dist/esm/components/Modal/ModalBoxCloseButton.d.ts.map +1 -1
- package/dist/esm/components/Modal/ModalBoxCloseButton.js.map +1 -1
- package/dist/esm/components/Modal/ModalContent.d.ts +4 -0
- package/dist/esm/components/Modal/ModalContent.d.ts.map +1 -1
- package/dist/esm/components/Modal/ModalContent.js.map +1 -1
- package/dist/esm/components/Nav/Nav.d.ts +4 -0
- package/dist/esm/components/Nav/Nav.d.ts.map +1 -1
- package/dist/esm/components/Nav/Nav.js.map +1 -1
- package/dist/esm/components/Nav/NavExpandable.d.ts +2 -0
- package/dist/esm/components/Nav/NavExpandable.d.ts.map +1 -1
- package/dist/esm/components/Nav/NavExpandable.js.map +1 -1
- package/dist/esm/components/Nav/NavItem.d.ts +4 -0
- package/dist/esm/components/Nav/NavItem.d.ts.map +1 -1
- package/dist/esm/components/Nav/NavItem.js.map +1 -1
- package/dist/esm/components/OptionsMenu/OptionsMenu.d.ts +4 -0
- package/dist/esm/components/OptionsMenu/OptionsMenu.d.ts.map +1 -1
- package/dist/esm/components/OptionsMenu/OptionsMenu.js.map +1 -1
- package/dist/esm/components/OverflowMenu/OverflowMenu.d.ts +7 -1
- package/dist/esm/components/OverflowMenu/OverflowMenu.d.ts.map +1 -1
- package/dist/esm/components/OverflowMenu/OverflowMenu.js +36 -23
- package/dist/esm/components/OverflowMenu/OverflowMenu.js.map +1 -1
- package/dist/esm/components/Pagination/Pagination.d.ts +4 -0
- package/dist/esm/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/esm/components/Pagination/Pagination.js.map +1 -1
- package/dist/esm/components/Radio/Radio.d.ts +4 -0
- package/dist/esm/components/Radio/Radio.d.ts.map +1 -1
- package/dist/esm/components/Radio/Radio.js.map +1 -1
- package/dist/esm/components/Select/Select.d.ts +4 -0
- package/dist/esm/components/Select/Select.d.ts.map +1 -1
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Switch/Switch.d.ts +4 -0
- package/dist/esm/components/Switch/Switch.d.ts.map +1 -1
- package/dist/esm/components/Switch/Switch.js.map +1 -1
- package/dist/esm/components/Tabs/Tab.d.ts +2 -0
- package/dist/esm/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tab.js.map +1 -1
- package/dist/esm/components/Tabs/TabContent.d.ts +4 -0
- package/dist/esm/components/Tabs/TabContent.d.ts.map +1 -1
- package/dist/esm/components/Tabs/TabContent.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts +4 -0
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Text/Text.d.ts +4 -0
- package/dist/esm/components/Text/Text.d.ts.map +1 -1
- package/dist/esm/components/Text/Text.js.map +1 -1
- package/dist/esm/components/TextInput/TextInput.d.ts +4 -0
- package/dist/esm/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/esm/components/TextInput/TextInput.js.map +1 -1
- package/dist/esm/components/Title/Title.d.ts +4 -0
- package/dist/esm/components/Title/Title.d.ts.map +1 -1
- package/dist/esm/components/Title/Title.js.map +1 -1
- package/dist/esm/components/Toolbar/Toolbar.d.ts +4 -0
- package/dist/esm/components/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/Toolbar.js.map +1 -1
- package/dist/js/components/Alert/Alert.d.ts +4 -0
- package/dist/js/components/Alert/Alert.d.ts.map +1 -1
- package/dist/js/components/Alert/Alert.js.map +1 -1
- package/dist/js/components/Alert/AlertActionCloseButton.js +2 -4
- package/dist/js/components/Alert/AlertActionCloseButton.js.map +1 -1
- package/dist/js/components/Alert/AlertToggleExpandButton.js +1 -1
- package/dist/js/components/Alert/AlertToggleExpandButton.js.map +1 -1
- package/dist/js/components/Breadcrumb/Breadcrumb.d.ts +4 -0
- package/dist/js/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/dist/js/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/js/components/Button/Button.d.ts +4 -0
- package/dist/js/components/Button/Button.d.ts.map +1 -1
- package/dist/js/components/Button/Button.js.map +1 -1
- package/dist/js/components/Card/Card.d.ts +4 -0
- package/dist/js/components/Card/Card.d.ts.map +1 -1
- package/dist/js/components/Card/Card.js.map +1 -1
- package/dist/js/components/Checkbox/Checkbox.d.ts +4 -0
- package/dist/js/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/js/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/js/components/Chip/Chip.d.ts +2 -0
- package/dist/js/components/Chip/Chip.d.ts.map +1 -1
- package/dist/js/components/Chip/Chip.js.map +1 -1
- package/dist/js/components/ChipGroup/ChipGroup.d.ts +2 -0
- package/dist/js/components/ChipGroup/ChipGroup.d.ts.map +1 -1
- package/dist/js/components/ChipGroup/ChipGroup.js.map +1 -1
- package/dist/js/components/ContextSelector/ContextSelector.d.ts +4 -0
- package/dist/js/components/ContextSelector/ContextSelector.d.ts.map +1 -1
- package/dist/js/components/ContextSelector/ContextSelector.js.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.d.ts +4 -0
- package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/js/components/Dropdown/DropdownItem.d.ts +4 -0
- package/dist/js/components/Dropdown/DropdownItem.d.ts.map +1 -1
- package/dist/js/components/Dropdown/DropdownItem.js.map +1 -1
- package/dist/js/components/Dropdown/DropdownSeparator.d.ts +4 -0
- package/dist/js/components/Dropdown/DropdownSeparator.d.ts.map +1 -1
- package/dist/js/components/Dropdown/DropdownSeparator.js.map +1 -1
- package/dist/js/components/Dropdown/DropdownToggle.d.ts +4 -0
- package/dist/js/components/Dropdown/DropdownToggle.d.ts.map +1 -1
- package/dist/js/components/Dropdown/DropdownToggle.js.map +1 -1
- package/dist/js/components/Dropdown/DropdownToggleCheckbox.d.ts +4 -0
- package/dist/js/components/Dropdown/DropdownToggleCheckbox.d.ts.map +1 -1
- package/dist/js/components/Dropdown/DropdownToggleCheckbox.js.map +1 -1
- package/dist/js/components/Form/Form.d.ts +4 -2
- package/dist/js/components/Form/Form.d.ts.map +1 -1
- package/dist/js/components/Form/Form.js +4 -4
- package/dist/js/components/Form/Form.js.map +1 -1
- package/dist/js/components/FormSelect/FormSelect.d.ts +4 -0
- package/dist/js/components/FormSelect/FormSelect.d.ts.map +1 -1
- package/dist/js/components/FormSelect/FormSelect.js.map +1 -1
- package/dist/js/components/LoginPage/LoginForm.d.ts +1 -1
- package/dist/js/components/LoginPage/LoginForm.d.ts.map +1 -1
- package/dist/js/components/Menu/Menu.d.ts +4 -0
- package/dist/js/components/Menu/Menu.d.ts.map +1 -1
- package/dist/js/components/Menu/Menu.js.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggleCheckbox.d.ts +4 -0
- package/dist/js/components/MenuToggle/MenuToggleCheckbox.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggleCheckbox.js.map +1 -1
- package/dist/js/components/Modal/Modal.d.ts +4 -0
- package/dist/js/components/Modal/Modal.d.ts.map +1 -1
- package/dist/js/components/Modal/Modal.js.map +1 -1
- package/dist/js/components/Modal/ModalBoxCloseButton.d.ts +2 -0
- package/dist/js/components/Modal/ModalBoxCloseButton.d.ts.map +1 -1
- package/dist/js/components/Modal/ModalBoxCloseButton.js.map +1 -1
- package/dist/js/components/Modal/ModalContent.d.ts +4 -0
- package/dist/js/components/Modal/ModalContent.d.ts.map +1 -1
- package/dist/js/components/Modal/ModalContent.js.map +1 -1
- package/dist/js/components/Nav/Nav.d.ts +4 -0
- package/dist/js/components/Nav/Nav.d.ts.map +1 -1
- package/dist/js/components/Nav/Nav.js.map +1 -1
- package/dist/js/components/Nav/NavExpandable.d.ts +2 -0
- package/dist/js/components/Nav/NavExpandable.d.ts.map +1 -1
- package/dist/js/components/Nav/NavExpandable.js.map +1 -1
- package/dist/js/components/Nav/NavItem.d.ts +4 -0
- package/dist/js/components/Nav/NavItem.d.ts.map +1 -1
- package/dist/js/components/Nav/NavItem.js.map +1 -1
- package/dist/js/components/OptionsMenu/OptionsMenu.d.ts +4 -0
- package/dist/js/components/OptionsMenu/OptionsMenu.d.ts.map +1 -1
- package/dist/js/components/OptionsMenu/OptionsMenu.js.map +1 -1
- package/dist/js/components/OverflowMenu/OverflowMenu.d.ts +7 -1
- package/dist/js/components/OverflowMenu/OverflowMenu.d.ts.map +1 -1
- package/dist/js/components/OverflowMenu/OverflowMenu.js +35 -22
- package/dist/js/components/OverflowMenu/OverflowMenu.js.map +1 -1
- package/dist/js/components/Pagination/Pagination.d.ts +4 -0
- package/dist/js/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/js/components/Pagination/Pagination.js.map +1 -1
- package/dist/js/components/Radio/Radio.d.ts +4 -0
- package/dist/js/components/Radio/Radio.d.ts.map +1 -1
- package/dist/js/components/Radio/Radio.js.map +1 -1
- package/dist/js/components/Select/Select.d.ts +4 -0
- package/dist/js/components/Select/Select.d.ts.map +1 -1
- package/dist/js/components/Select/Select.js.map +1 -1
- package/dist/js/components/Switch/Switch.d.ts +4 -0
- package/dist/js/components/Switch/Switch.d.ts.map +1 -1
- package/dist/js/components/Switch/Switch.js.map +1 -1
- package/dist/js/components/Tabs/Tab.d.ts +2 -0
- package/dist/js/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tab.js.map +1 -1
- package/dist/js/components/Tabs/TabContent.d.ts +4 -0
- package/dist/js/components/Tabs/TabContent.d.ts.map +1 -1
- package/dist/js/components/Tabs/TabContent.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts +4 -0
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/components/Text/Text.d.ts +4 -0
- package/dist/js/components/Text/Text.d.ts.map +1 -1
- package/dist/js/components/Text/Text.js.map +1 -1
- package/dist/js/components/TextInput/TextInput.d.ts +4 -0
- package/dist/js/components/TextInput/TextInput.d.ts.map +1 -1
- package/dist/js/components/TextInput/TextInput.js.map +1 -1
- package/dist/js/components/Title/Title.d.ts +4 -0
- package/dist/js/components/Title/Title.d.ts.map +1 -1
- package/dist/js/components/Title/Title.js.map +1 -1
- package/dist/js/components/Toolbar/Toolbar.d.ts +4 -0
- package/dist/js/components/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/js/components/Toolbar/Toolbar.js.map +1 -1
- package/dist/umd/react-core.min.js +2 -2
- package/package.json +2 -2
- package/src/components/Alert/Alert.tsx +4 -0
- package/src/components/Alert/AlertActionCloseButton.tsx +2 -2
- package/src/components/Alert/AlertToggleExpandButton.tsx +2 -2
- package/src/components/Alert/__tests__/Alert.test.tsx +713 -199
- package/src/components/Alert/__tests__/AlertActionCloseButton.test.tsx +125 -0
- package/src/components/Alert/__tests__/AlertActionLink.test.tsx +59 -0
- package/src/components/Alert/__tests__/AlertIcon.test.tsx +83 -0
- package/src/components/Alert/__tests__/AlertToggleExpandButton.test.tsx +150 -0
- package/src/components/Alert/__tests__/__snapshots__/Alert.test.tsx.snap +12 -2569
- package/src/components/Alert/__tests__/__snapshots__/AlertActionCloseButton.test.tsx.snap +31 -0
- package/src/components/Alert/__tests__/__snapshots__/AlertActionLink.test.tsx.snap +17 -0
- package/src/components/Alert/__tests__/__snapshots__/AlertIcon.test.tsx.snap +11 -0
- package/src/components/Alert/__tests__/__snapshots__/AlertToggleExpandButton.test.tsx.snap +24 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +4 -0
- package/src/components/Button/Button.tsx +4 -0
- package/src/components/Card/Card.tsx +4 -0
- package/src/components/Checkbox/Checkbox.tsx +4 -0
- package/src/components/Chip/Chip.tsx +2 -0
- package/src/components/ChipGroup/ChipGroup.tsx +2 -0
- package/src/components/ContextSelector/ContextSelector.tsx +4 -0
- package/src/components/Dropdown/Dropdown.tsx +4 -0
- package/src/components/Dropdown/DropdownItem.tsx +4 -0
- package/src/components/Dropdown/DropdownSeparator.tsx +4 -0
- package/src/components/Dropdown/DropdownToggle.tsx +4 -0
- package/src/components/Dropdown/DropdownToggleCheckbox.tsx +4 -0
- package/src/components/Dropdown/examples/Dropdown.md +1 -1
- package/src/components/Form/Form.tsx +9 -2
- package/src/components/FormSelect/FormSelect.tsx +4 -0
- package/src/components/LoginPage/LoginForm.tsx +1 -1
- package/src/components/Menu/Menu.tsx +4 -0
- package/src/components/MenuToggle/MenuToggleCheckbox.tsx +4 -0
- package/src/components/Modal/Modal.tsx +4 -0
- package/src/components/Modal/ModalBoxCloseButton.tsx +2 -0
- package/src/components/Modal/ModalContent.tsx +4 -0
- package/src/components/Nav/Nav.tsx +4 -0
- package/src/components/Nav/NavExpandable.tsx +2 -0
- package/src/components/Nav/NavItem.tsx +4 -0
- package/src/components/OptionsMenu/OptionsMenu.tsx +4 -0
- package/src/components/OverflowMenu/OverflowMenu.tsx +46 -25
- package/src/components/OverflowMenu/__tests__/OverflowMenu.test.tsx +38 -0
- package/src/components/OverflowMenu/examples/OverflowMenu.md +127 -35
- package/src/components/OverflowMenu/examples/OverflowMenuBreakpointOnContainer.tsx +100 -0
- package/src/components/Pagination/Pagination.tsx +4 -0
- package/src/components/Radio/Radio.tsx +4 -0
- package/src/components/Select/Select.tsx +4 -0
- package/src/components/Switch/Switch.tsx +4 -0
- package/src/components/Tabs/Tab.tsx +2 -0
- package/src/components/Tabs/TabContent.tsx +4 -0
- package/src/components/Tabs/Tabs.tsx +4 -0
- package/src/components/Text/Text.tsx +4 -0
- package/src/components/TextInput/TextInput.tsx +4 -0
- package/src/components/Title/Title.tsx +4 -0
- package/src/components/Toolbar/Toolbar.tsx +4 -0
- package/src/demos/examples/DashboardHeader.js +35 -6
- package/src/helpers/OUIA/OUIA.md +1 -1
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
id: Overflow menu
|
|
3
3
|
section: components
|
|
4
4
|
cssPrefix: pf-c-overflow-menu
|
|
5
|
-
propComponents:
|
|
5
|
+
propComponents:
|
|
6
|
+
[
|
|
7
|
+
'OverflowMenu',
|
|
8
|
+
'OverflowMenuContent',
|
|
9
|
+
'OverflowMenuControl',
|
|
10
|
+
'OverflowMenuDropdownItem',
|
|
11
|
+
'OverflowMenuGroup',
|
|
12
|
+
'OverflowMenuItem',
|
|
13
|
+
]
|
|
6
14
|
---
|
|
7
15
|
|
|
8
16
|
import AlignLeftIcon from '@patternfly/react-icons/dist/esm/icons/align-left-icon';
|
|
@@ -10,10 +18,19 @@ import AlignCenterIcon from '@patternfly/react-icons/dist/esm/icons/align-center
|
|
|
10
18
|
import AlignRightIcon from '@patternfly/react-icons/dist/esm/icons/align-right-icon';
|
|
11
19
|
|
|
12
20
|
## Examples
|
|
21
|
+
|
|
13
22
|
### Simple (responsive)
|
|
23
|
+
|
|
14
24
|
```js
|
|
15
25
|
import React from 'react';
|
|
16
|
-
import {
|
|
26
|
+
import {
|
|
27
|
+
OverflowMenu,
|
|
28
|
+
OverflowMenuControl,
|
|
29
|
+
OverflowMenuContent,
|
|
30
|
+
OverflowMenuGroup,
|
|
31
|
+
OverflowMenuItem,
|
|
32
|
+
OverflowMenuDropdownItem
|
|
33
|
+
} from '@patternfly/react-core';
|
|
17
34
|
import { Dropdown, KebabToggle } from '@patternfly/react-core';
|
|
18
35
|
|
|
19
36
|
class SimpleOverflowMenu extends React.Component {
|
|
@@ -37,12 +54,22 @@ class SimpleOverflowMenu extends React.Component {
|
|
|
37
54
|
render() {
|
|
38
55
|
const { isOpen } = this.state;
|
|
39
56
|
const dropdownItems = [
|
|
40
|
-
<OverflowMenuDropdownItem key="item1" isShared>
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
<OverflowMenuDropdownItem key="
|
|
44
|
-
|
|
45
|
-
|
|
57
|
+
<OverflowMenuDropdownItem key="item1" isShared>
|
|
58
|
+
Item 1
|
|
59
|
+
</OverflowMenuDropdownItem>,
|
|
60
|
+
<OverflowMenuDropdownItem key="item2" isShared>
|
|
61
|
+
Item 2
|
|
62
|
+
</OverflowMenuDropdownItem>,
|
|
63
|
+
<OverflowMenuDropdownItem key="item3" isShared>
|
|
64
|
+
Item 3
|
|
65
|
+
</OverflowMenuDropdownItem>,
|
|
66
|
+
<OverflowMenuDropdownItem key="item4" isShared>
|
|
67
|
+
Item 4
|
|
68
|
+
</OverflowMenuDropdownItem>,
|
|
69
|
+
<OverflowMenuDropdownItem key="item5" isShared>
|
|
70
|
+
Item 5
|
|
71
|
+
</OverflowMenuDropdownItem>
|
|
72
|
+
];
|
|
46
73
|
return (
|
|
47
74
|
<OverflowMenu breakpoint="lg">
|
|
48
75
|
<OverflowMenuContent>
|
|
@@ -66,15 +93,23 @@ class SimpleOverflowMenu extends React.Component {
|
|
|
66
93
|
/>
|
|
67
94
|
</OverflowMenuControl>
|
|
68
95
|
</OverflowMenu>
|
|
69
|
-
)
|
|
96
|
+
);
|
|
70
97
|
}
|
|
71
98
|
}
|
|
72
99
|
```
|
|
73
100
|
|
|
74
101
|
### Group types
|
|
102
|
+
|
|
75
103
|
```js
|
|
76
104
|
import React from 'react';
|
|
77
|
-
import {
|
|
105
|
+
import {
|
|
106
|
+
OverflowMenu,
|
|
107
|
+
OverflowMenuControl,
|
|
108
|
+
OverflowMenuContent,
|
|
109
|
+
OverflowMenuGroup,
|
|
110
|
+
OverflowMenuItem,
|
|
111
|
+
OverflowMenuDropdownItem
|
|
112
|
+
} from '@patternfly/react-core';
|
|
78
113
|
import { Dropdown, KebabToggle, Button, ButtonVariant } from '@patternfly/react-core';
|
|
79
114
|
import AlignLeftIcon from '@patternfly/react-icons/dist/esm/icons/align-left-icon';
|
|
80
115
|
import AlignCenterIcon from '@patternfly/react-icons/dist/esm/icons/align-center-icon';
|
|
@@ -101,15 +136,33 @@ class OverflowMenuGroupTypes extends React.Component {
|
|
|
101
136
|
render() {
|
|
102
137
|
const { isOpen } = this.state;
|
|
103
138
|
const dropdownItems = [
|
|
104
|
-
<OverflowMenuDropdownItem key="item1" isShared>
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
<OverflowMenuDropdownItem key="
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
<OverflowMenuDropdownItem key="
|
|
111
|
-
|
|
112
|
-
|
|
139
|
+
<OverflowMenuDropdownItem key="item1" isShared>
|
|
140
|
+
Item 1
|
|
141
|
+
</OverflowMenuDropdownItem>,
|
|
142
|
+
<OverflowMenuDropdownItem key="item2" isShared>
|
|
143
|
+
Item 2
|
|
144
|
+
</OverflowMenuDropdownItem>,
|
|
145
|
+
<OverflowMenuDropdownItem key="item3" isShared>
|
|
146
|
+
Item 3
|
|
147
|
+
</OverflowMenuDropdownItem>,
|
|
148
|
+
<OverflowMenuDropdownItem key="primary" isShared>
|
|
149
|
+
Primary
|
|
150
|
+
</OverflowMenuDropdownItem>,
|
|
151
|
+
<OverflowMenuDropdownItem key="secondary" isShared>
|
|
152
|
+
Secondary
|
|
153
|
+
</OverflowMenuDropdownItem>,
|
|
154
|
+
<OverflowMenuDropdownItem key="tertiary" isShared>
|
|
155
|
+
Tertiary
|
|
156
|
+
</OverflowMenuDropdownItem>,
|
|
157
|
+
<OverflowMenuDropdownItem key="action1" isShared>
|
|
158
|
+
Action 1
|
|
159
|
+
</OverflowMenuDropdownItem>,
|
|
160
|
+
<OverflowMenuDropdownItem key="action2" isShared>
|
|
161
|
+
Action 2
|
|
162
|
+
</OverflowMenuDropdownItem>,
|
|
163
|
+
<OverflowMenuDropdownItem key="action3" isShared>
|
|
164
|
+
Action 3
|
|
165
|
+
</OverflowMenuDropdownItem>
|
|
113
166
|
];
|
|
114
167
|
return (
|
|
115
168
|
<OverflowMenu breakpoint="lg">
|
|
@@ -160,16 +213,23 @@ class OverflowMenuGroupTypes extends React.Component {
|
|
|
160
213
|
/>
|
|
161
214
|
</OverflowMenuControl>
|
|
162
215
|
</OverflowMenu>
|
|
163
|
-
)
|
|
216
|
+
);
|
|
164
217
|
}
|
|
165
218
|
}
|
|
166
219
|
```
|
|
167
220
|
|
|
168
|
-
|
|
169
221
|
### Multiple groups
|
|
222
|
+
|
|
170
223
|
```js
|
|
171
224
|
import React from 'react';
|
|
172
|
-
import {
|
|
225
|
+
import {
|
|
226
|
+
OverflowMenu,
|
|
227
|
+
OverflowMenuControl,
|
|
228
|
+
OverflowMenuContent,
|
|
229
|
+
OverflowMenuGroup,
|
|
230
|
+
OverflowMenuItem,
|
|
231
|
+
OverflowMenuDropdownItem
|
|
232
|
+
} from '@patternfly/react-core';
|
|
173
233
|
import { Dropdown, KebabToggle, Button, ButtonVariant } from '@patternfly/react-core';
|
|
174
234
|
import AlignLeftIcon from '@patternfly/react-icons/dist/esm/icons/align-left-icon';
|
|
175
235
|
import AlignCenterIcon from '@patternfly/react-icons/dist/esm/icons/align-center-icon';
|
|
@@ -196,13 +256,25 @@ class OverflowMenuAdditionalOptions extends React.Component {
|
|
|
196
256
|
render() {
|
|
197
257
|
const { isOpen } = this.state;
|
|
198
258
|
const dropdownItems = [
|
|
199
|
-
<OverflowMenuDropdownItem key="1" isShared>
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
<OverflowMenuDropdownItem key="
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
<OverflowMenuDropdownItem key="
|
|
259
|
+
<OverflowMenuDropdownItem key="1" isShared>
|
|
260
|
+
Primary
|
|
261
|
+
</OverflowMenuDropdownItem>,
|
|
262
|
+
<OverflowMenuDropdownItem key="2" isShared>
|
|
263
|
+
Secondary
|
|
264
|
+
</OverflowMenuDropdownItem>,
|
|
265
|
+
<OverflowMenuDropdownItem key="3" isShared>
|
|
266
|
+
Tertiary
|
|
267
|
+
</OverflowMenuDropdownItem>,
|
|
268
|
+
<OverflowMenuDropdownItem key="4" isShared>
|
|
269
|
+
Action 4
|
|
270
|
+
</OverflowMenuDropdownItem>,
|
|
271
|
+
<OverflowMenuDropdownItem key="5" isShared>
|
|
272
|
+
Action 5
|
|
273
|
+
</OverflowMenuDropdownItem>,
|
|
274
|
+
<OverflowMenuDropdownItem key="6" isShared>
|
|
275
|
+
Action 6
|
|
276
|
+
</OverflowMenuDropdownItem>,
|
|
277
|
+
<OverflowMenuDropdownItem key="7">Action 7</OverflowMenuDropdownItem>
|
|
206
278
|
];
|
|
207
279
|
return (
|
|
208
280
|
<OverflowMenu breakpoint="lg">
|
|
@@ -248,16 +320,23 @@ class OverflowMenuAdditionalOptions extends React.Component {
|
|
|
248
320
|
/>
|
|
249
321
|
</OverflowMenuControl>
|
|
250
322
|
</OverflowMenu>
|
|
251
|
-
)
|
|
323
|
+
);
|
|
252
324
|
}
|
|
253
325
|
}
|
|
254
326
|
```
|
|
255
327
|
|
|
256
|
-
|
|
257
328
|
### Persistent
|
|
329
|
+
|
|
258
330
|
```js
|
|
259
331
|
import React from 'react';
|
|
260
|
-
import {
|
|
332
|
+
import {
|
|
333
|
+
OverflowMenu,
|
|
334
|
+
OverflowMenuControl,
|
|
335
|
+
OverflowMenuContent,
|
|
336
|
+
OverflowMenuGroup,
|
|
337
|
+
OverflowMenuItem,
|
|
338
|
+
OverflowMenuDropdownItem
|
|
339
|
+
} from '@patternfly/react-core';
|
|
261
340
|
import { Dropdown, KebabToggle, Button, ButtonVariant } from '@patternfly/react-core';
|
|
262
341
|
|
|
263
342
|
class OverflowMenuPersist extends React.Component {
|
|
@@ -281,8 +360,12 @@ class OverflowMenuPersist extends React.Component {
|
|
|
281
360
|
render() {
|
|
282
361
|
const { isOpen } = this.state;
|
|
283
362
|
const dropdownItems = [
|
|
284
|
-
<OverflowMenuDropdownItem key="secondary" isShared>
|
|
285
|
-
|
|
363
|
+
<OverflowMenuDropdownItem key="secondary" isShared>
|
|
364
|
+
Secondary
|
|
365
|
+
</OverflowMenuDropdownItem>,
|
|
366
|
+
<OverflowMenuDropdownItem key="tertiary" isShared>
|
|
367
|
+
Tertiary
|
|
368
|
+
</OverflowMenuDropdownItem>,
|
|
286
369
|
<OverflowMenuDropdownItem key="action">Action 4</OverflowMenuDropdownItem>
|
|
287
370
|
];
|
|
288
371
|
return (
|
|
@@ -312,7 +395,16 @@ class OverflowMenuPersist extends React.Component {
|
|
|
312
395
|
/>
|
|
313
396
|
</OverflowMenuControl>
|
|
314
397
|
</OverflowMenu>
|
|
315
|
-
)
|
|
398
|
+
);
|
|
316
399
|
}
|
|
317
400
|
}
|
|
318
401
|
```
|
|
402
|
+
|
|
403
|
+
### Breakpoint on container
|
|
404
|
+
|
|
405
|
+
By passing in the `breakpointReference` property, the overflow menu's breakpoint will be relative to the width of the reference container rather than the viewport width.
|
|
406
|
+
|
|
407
|
+
You can change the container width in this example by adjusting the slider. As the container width changes, the overflow menu will change between a horizontal menu and a vertical dropdown despite the viewport width not changing.
|
|
408
|
+
|
|
409
|
+
```ts file="./OverflowMenuBreakpointOnContainer.tsx"
|
|
410
|
+
```
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import {
|
|
3
|
+
OverflowMenu,
|
|
4
|
+
OverflowMenuControl,
|
|
5
|
+
OverflowMenuContent,
|
|
6
|
+
OverflowMenuGroup,
|
|
7
|
+
OverflowMenuItem,
|
|
8
|
+
OverflowMenuDropdownItem,
|
|
9
|
+
Dropdown,
|
|
10
|
+
KebabToggle,
|
|
11
|
+
Slider
|
|
12
|
+
} from '@patternfly/react-core';
|
|
13
|
+
|
|
14
|
+
export const OverflowMenuBreakpointOnContainer: React.FunctionComponent = () => {
|
|
15
|
+
const [isOpen, setIsOpen] = React.useState(false);
|
|
16
|
+
const [containerWidth, setContainerWidth] = React.useState(100);
|
|
17
|
+
const containerRef = React.useRef<HTMLDivElement>(null);
|
|
18
|
+
|
|
19
|
+
const onToggle = (isOpen: boolean) => {
|
|
20
|
+
setIsOpen(isOpen);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const onSelect = () => {
|
|
24
|
+
setIsOpen(!isOpen);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const onChange = (value: number) => {
|
|
28
|
+
setContainerWidth(value);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
const containerStyles = {
|
|
32
|
+
width: `${containerWidth}%`,
|
|
33
|
+
padding: '1rem',
|
|
34
|
+
borderWidth: '2px',
|
|
35
|
+
borderStyle: 'dashed'
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const dropdownItems = [
|
|
39
|
+
<OverflowMenuDropdownItem key="item1" isShared>
|
|
40
|
+
Item 1
|
|
41
|
+
</OverflowMenuDropdownItem>,
|
|
42
|
+
<OverflowMenuDropdownItem key="item2" isShared>
|
|
43
|
+
Item 2
|
|
44
|
+
</OverflowMenuDropdownItem>,
|
|
45
|
+
<OverflowMenuDropdownItem key="item3" isShared>
|
|
46
|
+
Item 3
|
|
47
|
+
</OverflowMenuDropdownItem>,
|
|
48
|
+
<OverflowMenuDropdownItem key="item4" isShared>
|
|
49
|
+
Item 4
|
|
50
|
+
</OverflowMenuDropdownItem>,
|
|
51
|
+
<OverflowMenuDropdownItem key="item5" isShared>
|
|
52
|
+
Item 5
|
|
53
|
+
</OverflowMenuDropdownItem>
|
|
54
|
+
];
|
|
55
|
+
|
|
56
|
+
return (
|
|
57
|
+
<>
|
|
58
|
+
<div style={{ width: '100%', maxWidth: '400px' }}>
|
|
59
|
+
<div>
|
|
60
|
+
<span id="overflowMenu-hasBreakpointOnContainer-slider-label">Current container width</span>: {containerWidth}
|
|
61
|
+
%
|
|
62
|
+
</div>
|
|
63
|
+
<Slider
|
|
64
|
+
value={containerWidth}
|
|
65
|
+
onChange={onChange}
|
|
66
|
+
max={100}
|
|
67
|
+
min={20}
|
|
68
|
+
step={20}
|
|
69
|
+
showTicks
|
|
70
|
+
showBoundaries={false}
|
|
71
|
+
aria-labelledby="overflowMenu-hasBreakpointOnContainer-slider-label"
|
|
72
|
+
/>
|
|
73
|
+
</div>
|
|
74
|
+
<div ref={containerRef} id="breakpoint-reference-container" style={containerStyles}>
|
|
75
|
+
<OverflowMenu breakpointReference={containerRef} breakpoint="sm">
|
|
76
|
+
<OverflowMenuContent>
|
|
77
|
+
<OverflowMenuItem>Item 1</OverflowMenuItem>
|
|
78
|
+
<OverflowMenuItem>Item 2</OverflowMenuItem>
|
|
79
|
+
<OverflowMenuGroup>
|
|
80
|
+
<OverflowMenuItem>Item 3</OverflowMenuItem>
|
|
81
|
+
<OverflowMenuItem>Item 4</OverflowMenuItem>
|
|
82
|
+
<OverflowMenuItem>Item 5</OverflowMenuItem>
|
|
83
|
+
</OverflowMenuGroup>
|
|
84
|
+
</OverflowMenuContent>
|
|
85
|
+
<OverflowMenuControl>
|
|
86
|
+
<Dropdown
|
|
87
|
+
onSelect={onSelect}
|
|
88
|
+
toggle={<KebabToggle onToggle={onToggle} />}
|
|
89
|
+
isOpen={isOpen}
|
|
90
|
+
isPlain
|
|
91
|
+
dropdownItems={dropdownItems}
|
|
92
|
+
isFlipEnabled
|
|
93
|
+
menuAppendTo="parent"
|
|
94
|
+
/>
|
|
95
|
+
</OverflowMenuControl>
|
|
96
|
+
</OverflowMenu>
|
|
97
|
+
</div>
|
|
98
|
+
</>
|
|
99
|
+
);
|
|
100
|
+
};
|
|
@@ -159,6 +159,10 @@ export interface PaginationProps extends React.HTMLProps<HTMLDivElement>, OUIAPr
|
|
|
159
159
|
variant?: 'top' | 'bottom' | PaginationVariant;
|
|
160
160
|
/** Id to ideintify widget on page. */
|
|
161
161
|
widgetId?: string;
|
|
162
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
163
|
+
ouiaId?: number | string;
|
|
164
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
165
|
+
ouiaSafe?: boolean;
|
|
162
166
|
}
|
|
163
167
|
|
|
164
168
|
const handleInputWidth = (lastPage: number, node: HTMLDivElement) => {
|
|
@@ -35,6 +35,10 @@ export interface RadioProps
|
|
|
35
35
|
description?: React.ReactNode;
|
|
36
36
|
/** Body of the radio. */
|
|
37
37
|
body?: React.ReactNode;
|
|
38
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
39
|
+
ouiaId?: number | string;
|
|
40
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
41
|
+
ouiaSafe?: boolean;
|
|
38
42
|
}
|
|
39
43
|
|
|
40
44
|
export class Radio extends React.Component<RadioProps, { ouiaStateId: string }> {
|
|
@@ -184,6 +184,10 @@ export interface SelectProps
|
|
|
184
184
|
isFlipEnabled?: boolean;
|
|
185
185
|
/** @beta Opt-in for updated popper that does not use findDOMNode. */
|
|
186
186
|
removeFindDomNode?: boolean;
|
|
187
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
188
|
+
ouiaId?: number | string;
|
|
189
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
190
|
+
ouiaSafe?: boolean;
|
|
187
191
|
}
|
|
188
192
|
|
|
189
193
|
export interface SelectState {
|
|
@@ -34,6 +34,10 @@ export interface SwitchProps
|
|
|
34
34
|
'aria-label'?: string;
|
|
35
35
|
/** Flag to reverse the layout of toggle and label (toggle on right). */
|
|
36
36
|
isReversed?: boolean;
|
|
37
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
38
|
+
ouiaId?: number | string;
|
|
39
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
40
|
+
ouiaSafe?: boolean;
|
|
37
41
|
}
|
|
38
42
|
|
|
39
43
|
export class Switch extends React.Component<SwitchProps & OUIAProps, { ouiaStateId: string }> {
|
|
@@ -39,6 +39,8 @@ export interface TabProps extends Omit<React.HTMLProps<HTMLAnchorElement | HTMLB
|
|
|
39
39
|
closeButtonAriaLabel?: string;
|
|
40
40
|
/** @beta Flag indicating the close button should be disabled */
|
|
41
41
|
isCloseDisabled?: boolean;
|
|
42
|
+
/** Value to set the data-ouia-component-id for the tab button.*/
|
|
43
|
+
ouiaId?: number | string;
|
|
42
44
|
}
|
|
43
45
|
|
|
44
46
|
const TabBase: React.FunctionComponent<TabProps> = ({
|
|
@@ -21,6 +21,10 @@ export interface TabContentProps extends Omit<React.HTMLProps<HTMLElement>, 'ref
|
|
|
21
21
|
id: string;
|
|
22
22
|
/** title of controlling Tab if used outside Tabs component */
|
|
23
23
|
'aria-label'?: string;
|
|
24
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
25
|
+
ouiaId?: number | string;
|
|
26
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
27
|
+
ouiaSafe?: boolean;
|
|
24
28
|
}
|
|
25
29
|
|
|
26
30
|
const variantStyle = {
|
|
@@ -106,6 +106,10 @@ export interface TabsProps extends Omit<React.HTMLProps<HTMLElement | HTMLDivEle
|
|
|
106
106
|
onToggle?: (isExpanded: boolean) => void;
|
|
107
107
|
/** @beta Flag which places overflowing tabs into a menu triggered by the last tab. Additionally an object can be passed with custom settings for the overflow tab. */
|
|
108
108
|
isOverflowHorizontal?: boolean | HorizontalOverflowObject;
|
|
109
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
110
|
+
ouiaId?: number | string;
|
|
111
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
112
|
+
ouiaSafe?: boolean;
|
|
109
113
|
}
|
|
110
114
|
|
|
111
115
|
const variantStyle = {
|
|
@@ -26,6 +26,10 @@ export interface TextProps extends React.HTMLProps<HTMLElement>, OUIAProps {
|
|
|
26
26
|
className?: string;
|
|
27
27
|
/** Flag to indicate the link has visited styles applied if the browser determines the link has been visited */
|
|
28
28
|
isVisitedLink?: boolean;
|
|
29
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
30
|
+
ouiaId?: number | string;
|
|
31
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
32
|
+
ouiaSafe?: boolean;
|
|
29
33
|
}
|
|
30
34
|
|
|
31
35
|
export const Text: React.FunctionComponent<TextProps> = ({
|
|
@@ -77,6 +77,10 @@ export interface TextInputProps
|
|
|
77
77
|
customIconUrl?: string;
|
|
78
78
|
/** Dimensions for the custom icon set as the text input's background-size */
|
|
79
79
|
customIconDimensions?: string;
|
|
80
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
81
|
+
ouiaId?: number | string;
|
|
82
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
83
|
+
ouiaSafe?: boolean;
|
|
80
84
|
}
|
|
81
85
|
|
|
82
86
|
interface TextInputState {
|
|
@@ -32,6 +32,10 @@ export interface TitleProps extends Omit<React.HTMLProps<HTMLHeadingElement>, 's
|
|
|
32
32
|
className?: string;
|
|
33
33
|
/** The heading level to use */
|
|
34
34
|
headingLevel: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
|
35
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
36
|
+
ouiaId?: number | string;
|
|
37
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
38
|
+
ouiaSafe?: boolean;
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
export const Title: React.FunctionComponent<TitleProps> = ({
|
|
@@ -46,6 +46,10 @@ export interface ToolbarProps extends React.HTMLProps<HTMLDivElement>, OUIAProps
|
|
|
46
46
|
};
|
|
47
47
|
/** Text to display in the total number of applied filters ToolbarFilter */
|
|
48
48
|
numberOfFiltersText?: (numberOfFilters: number) => string;
|
|
49
|
+
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
50
|
+
ouiaId?: number | string;
|
|
51
|
+
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
52
|
+
ouiaSafe?: boolean;
|
|
49
53
|
}
|
|
50
54
|
|
|
51
55
|
export interface ToolbarState {
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
Brand,
|
|
7
7
|
Button,
|
|
8
8
|
ButtonVariant,
|
|
9
|
+
Divider,
|
|
9
10
|
Dropdown,
|
|
10
11
|
DropdownGroup,
|
|
11
12
|
DropdownToggle,
|
|
@@ -91,17 +92,35 @@ export default class DashboardHeader extends React.Component {
|
|
|
91
92
|
}
|
|
92
93
|
|
|
93
94
|
render() {
|
|
94
|
-
const { isDropdownOpen, isKebabDropdownOpen, isAppLauncherOpen } = this.state;
|
|
95
|
+
const { isDropdownOpen, isKebabDropdownOpen, isFullKebabDropdownOpen, isAppLauncherOpen } = this.state;
|
|
95
96
|
const { notificationBadge } = this.props;
|
|
96
97
|
|
|
97
98
|
const kebabDropdownItems = [
|
|
98
|
-
<DropdownItem key="
|
|
99
|
+
<DropdownItem key="settings">
|
|
99
100
|
<CogIcon /> Settings
|
|
100
101
|
</DropdownItem>,
|
|
101
|
-
<DropdownItem key="
|
|
102
|
+
<DropdownItem key="help">
|
|
102
103
|
<HelpIcon /> Help
|
|
103
104
|
</DropdownItem>
|
|
104
105
|
];
|
|
106
|
+
|
|
107
|
+
const fullKebabItems = [
|
|
108
|
+
<DropdownGroup key="group 2">
|
|
109
|
+
<DropdownItem key="group 2 profile">My profile</DropdownItem>
|
|
110
|
+
<DropdownItem key="group 2 user" component="button">
|
|
111
|
+
User management
|
|
112
|
+
</DropdownItem>
|
|
113
|
+
<DropdownItem key="group 2 logout">Logout</DropdownItem>
|
|
114
|
+
</DropdownGroup>,
|
|
115
|
+
<Divider key="divider" />,
|
|
116
|
+
<DropdownItem key="settings">
|
|
117
|
+
<CogIcon /> Settings
|
|
118
|
+
</DropdownItem>,
|
|
119
|
+
<DropdownItem key="help">
|
|
120
|
+
<HelpIcon /> Help
|
|
121
|
+
</DropdownItem>
|
|
122
|
+
];
|
|
123
|
+
|
|
105
124
|
const userDropdownItems = [
|
|
106
125
|
<DropdownGroup key="group 2">
|
|
107
126
|
<DropdownItem key="group 2 profile">My profile</DropdownItem>
|
|
@@ -142,7 +161,7 @@ export default class DashboardHeader extends React.Component {
|
|
|
142
161
|
</ToolbarItem>
|
|
143
162
|
)}
|
|
144
163
|
<ToolbarGroup variant="icon-button-group" visibility={{ default: 'hidden', lg: 'visible' }}>
|
|
145
|
-
<ToolbarItem
|
|
164
|
+
<ToolbarItem>
|
|
146
165
|
<ApplicationLauncher
|
|
147
166
|
onSelect={this.onAppLauncherSelect}
|
|
148
167
|
onToggle={this.onAppLauncherToggle}
|
|
@@ -157,7 +176,7 @@ export default class DashboardHeader extends React.Component {
|
|
|
157
176
|
<Button aria-label="Help" variant={ButtonVariant.plain} icon={<QuestionCircleIcon />} />
|
|
158
177
|
</ToolbarItem>
|
|
159
178
|
</ToolbarGroup>
|
|
160
|
-
<ToolbarItem visibility={{ lg: 'hidden' }}>
|
|
179
|
+
<ToolbarItem visibility={{ default: 'hidden', md: 'visible', lg: 'hidden' }}>
|
|
161
180
|
<Dropdown
|
|
162
181
|
isPlain
|
|
163
182
|
position="right"
|
|
@@ -167,8 +186,18 @@ export default class DashboardHeader extends React.Component {
|
|
|
167
186
|
dropdownItems={kebabDropdownItems}
|
|
168
187
|
/>
|
|
169
188
|
</ToolbarItem>
|
|
189
|
+
<ToolbarItem visibility={{ md: 'hidden' }}>
|
|
190
|
+
<Dropdown
|
|
191
|
+
isPlain
|
|
192
|
+
position="right"
|
|
193
|
+
onSelect={this.onFullKebabSelect}
|
|
194
|
+
toggle={<KebabToggle onToggle={this.onFullKebabToggle} />}
|
|
195
|
+
isOpen={isFullKebabDropdownOpen}
|
|
196
|
+
dropdownItems={fullKebabItems}
|
|
197
|
+
/>
|
|
198
|
+
</ToolbarItem>
|
|
170
199
|
</ToolbarGroup>
|
|
171
|
-
<ToolbarItem visibility={{ default: 'hidden',
|
|
200
|
+
<ToolbarItem visibility={{ default: 'hidden', md: 'visible' }}>
|
|
172
201
|
<Dropdown
|
|
173
202
|
isFullHeight
|
|
174
203
|
onSelect={this.onDropdownSelect}
|
package/src/helpers/OUIA/OUIA.md
CHANGED
|
@@ -71,6 +71,7 @@ import { Button } from '@patternfly/react-core';
|
|
|
71
71
|
* [FormSelect](/components/form-select)
|
|
72
72
|
* [Menu](/components/menu)
|
|
73
73
|
* [Modal](/components/modal)
|
|
74
|
+
* [ModalBoxCloseButton](/components/modal)
|
|
74
75
|
* [ModalContent](/components/modal)
|
|
75
76
|
* [Nav](/components/navigation)
|
|
76
77
|
* [NavExpandable](/components/navigation)
|
|
@@ -80,7 +81,6 @@ import { Button } from '@patternfly/react-core';
|
|
|
80
81
|
* [Radio](/components/radio)
|
|
81
82
|
* [Select](/components/select)
|
|
82
83
|
* [Switch](/components/switch)
|
|
83
|
-
* [TabButton](/components/tabs)
|
|
84
84
|
* [TabContent](/components/tabs)
|
|
85
85
|
* [Tabs](/components/tabs)
|
|
86
86
|
* [Text](/components/text)
|