@patternfly/react-core 6.0.0-alpha.53 → 6.0.0-alpha.54

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.
Files changed (138) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  21. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  22. package/dist/dynamic/components/DataList/package.json +1 -1
  23. package/dist/dynamic/components/DatePicker/package.json +1 -1
  24. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  25. package/dist/dynamic/components/Divider/package.json +1 -1
  26. package/dist/dynamic/components/Drawer/package.json +1 -1
  27. package/dist/dynamic/components/Dropdown/package.json +1 -1
  28. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  29. package/dist/dynamic/components/EmptyState/package.json +1 -1
  30. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  31. package/dist/dynamic/components/FileUpload/package.json +1 -1
  32. package/dist/dynamic/components/Form/package.json +1 -1
  33. package/dist/dynamic/components/FormSelect/package.json +1 -1
  34. package/dist/dynamic/components/HelperText/package.json +1 -1
  35. package/dist/dynamic/components/Hint/package.json +1 -1
  36. package/dist/dynamic/components/Icon/package.json +1 -1
  37. package/dist/dynamic/components/InputGroup/package.json +1 -1
  38. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  39. package/dist/dynamic/components/Label/package.json +1 -1
  40. package/dist/dynamic/components/List/package.json +1 -1
  41. package/dist/dynamic/components/LoginPage/package.json +1 -1
  42. package/dist/dynamic/components/Masthead/package.json +1 -1
  43. package/dist/dynamic/components/Menu/package.json +1 -1
  44. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  45. package/dist/dynamic/components/Modal/package.json +1 -1
  46. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  47. package/dist/dynamic/components/Nav/package.json +1 -1
  48. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  49. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  50. package/dist/dynamic/components/NumberInput/package.json +1 -1
  51. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  52. package/dist/dynamic/components/Page/package.json +1 -1
  53. package/dist/dynamic/components/Pagination/package.json +1 -1
  54. package/dist/dynamic/components/Panel/package.json +1 -1
  55. package/dist/dynamic/components/Popover/package.json +1 -1
  56. package/dist/dynamic/components/Progress/package.json +1 -1
  57. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  58. package/dist/dynamic/components/Radio/package.json +1 -1
  59. package/dist/dynamic/components/SearchInput/package.json +1 -1
  60. package/dist/dynamic/components/Select/package.json +1 -1
  61. package/dist/dynamic/components/Sidebar/package.json +1 -1
  62. package/dist/dynamic/components/SimpleList/package.json +1 -1
  63. package/dist/dynamic/components/Skeleton/package.json +1 -1
  64. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  65. package/dist/dynamic/components/Slider/package.json +1 -1
  66. package/dist/dynamic/components/Spinner/package.json +1 -1
  67. package/dist/dynamic/components/Switch/package.json +1 -1
  68. package/dist/dynamic/components/Tabs/package.json +1 -1
  69. package/dist/dynamic/components/Text/package.json +1 -1
  70. package/dist/dynamic/components/TextArea/package.json +1 -1
  71. package/dist/dynamic/components/TextInput/package.json +1 -1
  72. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  73. package/dist/dynamic/components/Tile/package.json +1 -1
  74. package/dist/dynamic/components/TimePicker/package.json +1 -1
  75. package/dist/dynamic/components/Timestamp/package.json +1 -1
  76. package/dist/dynamic/components/Title/package.json +1 -1
  77. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  78. package/dist/dynamic/components/Toolbar/package.json +1 -1
  79. package/dist/dynamic/components/Tooltip/package.json +1 -1
  80. package/dist/dynamic/components/TreeView/package.json +1 -1
  81. package/dist/dynamic/components/Truncate/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  83. package/dist/dynamic/components/Wizard/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/Select/package.json +1 -1
  92. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  93. package/dist/dynamic/deprecated/components/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/favorites/package.json +1 -1
  102. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  104. package/dist/dynamic/helpers/package.json +1 -1
  105. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  106. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  107. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  108. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  109. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  110. package/dist/dynamic/helpers/util/package.json +1 -1
  111. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  112. package/dist/dynamic/layouts/Flex/package.json +1 -1
  113. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  114. package/dist/dynamic/layouts/Grid/package.json +1 -1
  115. package/dist/dynamic/layouts/Level/package.json +1 -1
  116. package/dist/dynamic/layouts/Split/package.json +1 -1
  117. package/dist/dynamic/layouts/Stack/package.json +1 -1
  118. package/dist/dynamic/next/components/DualListSelector/package.json +1 -1
  119. package/dist/dynamic/next/components/Modal/package.json +1 -1
  120. package/dist/dynamic/next/components/package.json +1 -1
  121. package/dist/dynamic/styles/package.json +1 -1
  122. package/dist/esm/components/Toolbar/Toolbar.d.ts +8 -0
  123. package/dist/esm/components/Toolbar/Toolbar.d.ts.map +1 -1
  124. package/dist/esm/components/Toolbar/Toolbar.js +9 -2
  125. package/dist/esm/components/Toolbar/Toolbar.js.map +1 -1
  126. package/dist/js/components/Toolbar/Toolbar.d.ts +8 -0
  127. package/dist/js/components/Toolbar/Toolbar.d.ts.map +1 -1
  128. package/dist/js/components/Toolbar/Toolbar.js +10 -3
  129. package/dist/js/components/Toolbar/Toolbar.js.map +1 -1
  130. package/dist/umd/react-core.min.js +1 -1
  131. package/helpers/package.json +1 -1
  132. package/layouts/package.json +1 -1
  133. package/next/package.json +1 -1
  134. package/package.json +2 -2
  135. package/src/components/Toolbar/Toolbar.tsx +13 -0
  136. package/src/components/Toolbar/__tests__/Toolbar.test.tsx +58 -0
  137. package/src/components/Toolbar/examples/Toolbar.md +8 -0
  138. package/src/components/Toolbar/examples/ToolbarColorVariant.tsx +52 -0
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.0.0-alpha.52","private":true}
1
+ {"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.0.0-alpha.53","private":true}
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.0.0-alpha.52","private":true}
1
+ {"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.0.0-alpha.53","private":true}
package/next/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.0.0-alpha.52","private":true}
1
+ {"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.0.0-alpha.53","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "6.0.0-alpha.53",
3
+ "version": "6.0.0-alpha.54",
4
4
  "description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
5
5
  "main": "dist/js/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -74,5 +74,5 @@
74
74
  "react": "^17 || ^18",
75
75
  "react-dom": "^17 || ^18"
76
76
  },
77
- "gitHead": "d7de43aefe0f8c0b5fe281aea7741c8dedb4ecf5"
77
+ "gitHead": "868041f09854b198a370bfbdb13755dc3710713c"
78
78
  }
@@ -8,6 +8,13 @@ import { formatBreakpointMods, canUseDOM } from '../../helpers/util';
8
8
  import { getDefaultOUIAId, getOUIAProps, OUIAProps } from '../../helpers';
9
9
  import { PageContext } from '../Page/PageContext';
10
10
 
11
+ export enum ToolbarColorVariant {
12
+ default = 'default',
13
+ primary = 'primary',
14
+ secondary = 'secondary',
15
+ noBackground = 'no-background'
16
+ }
17
+
11
18
  export interface ToolbarProps extends React.HTMLProps<HTMLDivElement>, OUIAProps {
12
19
  /** Optional callback for clearing all filters in the toolbar */
13
20
  clearAllFilters?: () => void;
@@ -50,6 +57,8 @@ export interface ToolbarProps extends React.HTMLProps<HTMLDivElement>, OUIAProps
50
57
  ouiaId?: number | string;
51
58
  /** 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
59
  ouiaSafe?: boolean;
60
+ /** Background color variant of the toolbar */
61
+ colorVariant?: ToolbarColorVariant | 'default' | 'no-background' | 'primary' | 'secondary';
53
62
  }
54
63
 
55
64
  export interface ToolbarState {
@@ -136,6 +145,7 @@ class Toolbar extends React.Component<ToolbarProps, ToolbarState> {
136
145
  ouiaId,
137
146
  numberOfFiltersText,
138
147
  customChipGroupContent,
148
+ colorVariant = ToolbarColorVariant.default,
139
149
  ...props
140
150
  } = this.props;
141
151
 
@@ -157,6 +167,9 @@ class Toolbar extends React.Component<ToolbarProps, ToolbarState> {
157
167
  usePageInsets && styles.modifiers.pageInsets,
158
168
  isSticky && styles.modifiers.sticky,
159
169
  formatBreakpointMods(inset, styles, '', getBreakpoint(width)),
170
+ colorVariant === 'primary' && styles.modifiers.primary,
171
+ colorVariant === 'secondary' && styles.modifiers.secondary,
172
+ colorVariant === 'no-background' && styles.modifiers.noBackground,
160
173
  className
161
174
  )}
162
175
  id={randomId}
@@ -9,6 +9,7 @@ import { ToolbarContent } from '../ToolbarContent';
9
9
  import { ToolbarFilter } from '../ToolbarFilter';
10
10
  import { ToolbarGroup } from '../ToolbarGroup';
11
11
  import { Button } from '../../Button/Button';
12
+ import styles from '@patternfly/react-styles/css/components/Toolbar/toolbar';
12
13
 
13
14
  jest.mock('../../../helpers/GenerateId/GenerateId');
14
15
 
@@ -107,4 +108,61 @@ describe('Toolbar', () => {
107
108
  expect(screen.getAllByRole('button', { name: 'Save filters' }).length).toBe(1);
108
109
  expect(screen.getAllByRole('button', { name: 'Clear all filters' }).length).toBe(1);
109
110
  });
111
+
112
+ it('Renders with class ${styles.modifiers.noBackground} when colorVariant="no-background"', () => {
113
+ const items = (
114
+ <React.Fragment>
115
+ <ToolbarItem>Test</ToolbarItem>
116
+ <ToolbarItem>Test 2</ToolbarItem>
117
+ <ToolbarItem variant="separator" />
118
+ <ToolbarItem>Test 3 </ToolbarItem>
119
+ </React.Fragment>
120
+ );
121
+
122
+ render(
123
+ <Toolbar id="toolbar" colorVariant="no-background" data-testid="Toolbar-test-no-background-id">
124
+ <ToolbarContent>{items}</ToolbarContent>
125
+ </Toolbar>
126
+ );
127
+
128
+ expect(screen.getByTestId('Toolbar-test-no-background-id')).toHaveClass(styles.modifiers.noBackground);
129
+ });
130
+
131
+ it('Renders with class ${styles.modifiers.primary} when colorVariant="primary"', () => {
132
+ const items = (
133
+ <React.Fragment>
134
+ <ToolbarItem>Test</ToolbarItem>
135
+ <ToolbarItem>Test 2</ToolbarItem>
136
+ <ToolbarItem variant="separator" />
137
+ <ToolbarItem>Test 3 </ToolbarItem>
138
+ </React.Fragment>
139
+ );
140
+
141
+ render(
142
+ <Toolbar id="toolbar" colorVariant="primary" data-testid="Toolbar-test-primary-id">
143
+ <ToolbarContent>{items}</ToolbarContent>
144
+ </Toolbar>
145
+ );
146
+
147
+ expect(screen.getByTestId('Toolbar-test-primary-id')).toHaveClass(styles.modifiers.primary);
148
+ });
149
+
150
+ it('Renders with class ${styles.modifiers.secondary} when colorVariant="secondary"', () => {
151
+ const items = (
152
+ <React.Fragment>
153
+ <ToolbarItem>Test</ToolbarItem>
154
+ <ToolbarItem>Test 2</ToolbarItem>
155
+ <ToolbarItem variant="separator" />
156
+ <ToolbarItem>Test 3 </ToolbarItem>
157
+ </React.Fragment>
158
+ );
159
+
160
+ render(
161
+ <Toolbar id="toolbar" colorVariant="secondary" data-testid="Toolbar-test-secondary-id">
162
+ <ToolbarContent>{items}</ToolbarContent>
163
+ </Toolbar>
164
+ );
165
+
166
+ expect(screen.getByTestId('Toolbar-test-secondary-id')).toHaveClass(styles.modifiers.secondary);
167
+ });
110
168
  });
@@ -112,3 +112,11 @@ When all of a toolbar's required elements cannot fit in a single line, you can s
112
112
  ```ts file="./ToolbarStacked.tsx"
113
113
 
114
114
  ```
115
+
116
+ ## Background color variants
117
+
118
+ To change the background color of a toolbar, use the `colorVariant` property on the `<Toolbar>`.
119
+
120
+ ```ts file="./ToolbarColorVariant.tsx"
121
+
122
+ ```
@@ -0,0 +1,52 @@
1
+ import React from 'react';
2
+ import { Toolbar, ToolbarItem, ToolbarContent, Button, SearchInput } from '@patternfly/react-core';
3
+
4
+ export const ToolbarColorVariant: React.FunctionComponent = () => (
5
+ <React.Fragment>
6
+ No background
7
+ <Toolbar id="toolbar-color-variant-no-background" colorVariant={'no-background'}>
8
+ <ToolbarContent>
9
+ <ToolbarItem>
10
+ <SearchInput aria-label="No backtround variant example search input" />
11
+ </ToolbarItem>
12
+ <ToolbarItem>
13
+ <Button variant="secondary">Action</Button>
14
+ </ToolbarItem>
15
+ <ToolbarItem variant="separator" />
16
+ <ToolbarItem>
17
+ <Button variant="primary">Action</Button>
18
+ </ToolbarItem>
19
+ </ToolbarContent>
20
+ </Toolbar>
21
+ Primary background
22
+ <Toolbar id="toolbar-color-variant-primary" colorVariant={'primary'}>
23
+ <ToolbarContent>
24
+ <ToolbarItem>
25
+ <SearchInput aria-label="Primary background variant example search input" />
26
+ </ToolbarItem>
27
+ <ToolbarItem>
28
+ <Button variant="secondary">Action</Button>
29
+ </ToolbarItem>
30
+ <ToolbarItem variant="separator" />
31
+ <ToolbarItem>
32
+ <Button variant="primary">Action</Button>
33
+ </ToolbarItem>
34
+ </ToolbarContent>
35
+ </Toolbar>
36
+ Secondary background
37
+ <Toolbar id="toolbar-color-variant-secondary" colorVariant={'secondary'}>
38
+ <ToolbarContent>
39
+ <ToolbarItem>
40
+ <SearchInput aria-label="Secondary background variant example search input" />
41
+ </ToolbarItem>
42
+ <ToolbarItem>
43
+ <Button variant="secondary">Action</Button>
44
+ </ToolbarItem>
45
+ <ToolbarItem variant="separator" />
46
+ <ToolbarItem>
47
+ <Button variant="primary">Action</Button>
48
+ </ToolbarItem>
49
+ </ToolbarContent>
50
+ </Toolbar>
51
+ </React.Fragment>
52
+ );