@patternfly/react-core 4.227.1 → 4.227.4
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/DataList/DataList.d.ts +0 -2
- package/dist/esm/components/DataList/DataList.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataList.js.map +1 -1
- package/dist/esm/components/DataList/DataListItem.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataListItem.js +1 -2
- package/dist/esm/components/DataList/DataListItem.js.map +1 -1
- package/dist/js/components/DataList/DataList.d.ts +0 -2
- package/dist/js/components/DataList/DataList.d.ts.map +1 -1
- package/dist/js/components/DataList/DataList.js.map +1 -1
- package/dist/js/components/DataList/DataListItem.d.ts.map +1 -1
- package/dist/js/components/DataList/DataListItem.js +1 -2
- package/dist/js/components/DataList/DataListItem.js.map +1 -1
- package/dist/umd/react-core.js +1 -2
- package/dist/umd/react-core.min.js +1 -1
- package/package.json +5 -5
- package/src/components/DataList/DataList.tsx +0 -2
- package/src/components/DataList/DataListItem.tsx +1 -3
- package/src/components/DataList/__tests__/DataList.test.tsx +14 -32
- package/src/components/DataList/examples/DataListSelectableRows.tsx +1 -1
- package/src/components/Menu/examples/Menu.md +19 -1290
- package/src/components/Menu/examples/MenuBasic.tsx +51 -0
- package/src/components/Menu/examples/MenuFilteringWithTextInput.tsx +52 -0
- package/src/components/Menu/examples/MenuOptionMultiSelect.tsx +30 -0
- package/src/components/Menu/examples/MenuOptionSingleSelect.tsx +27 -0
- package/src/components/Menu/examples/MenuScrollable.tsx +48 -0
- package/src/components/Menu/examples/MenuScrollableCustomMenuHeight.tsx +48 -0
- package/src/components/Menu/examples/MenuWithActions.tsx +75 -0
- package/src/components/Menu/examples/MenuWithCheckbox.tsx +2 -2
- package/src/components/Menu/examples/MenuWithDescription.tsx +35 -0
- package/src/components/Menu/examples/{MenuDrilldown.tsx → MenuWithDrilldown.tsx} +1 -1
- package/src/components/Menu/examples/MenuWithDrilldownBreadcrumbs.tsx +331 -0
- package/src/components/Menu/examples/{MenuDrilldownInitialState.tsx → MenuWithDrilldownInitialState.tsx} +0 -0
- package/src/components/Menu/examples/{MenuDrilldownSubmenuFunctions.tsx → MenuWithDrilldownSubmenuFunctions.tsx} +1 -1
- package/src/components/Menu/examples/MenuWithFavorites.tsx +104 -0
- package/src/components/Menu/examples/MenuWithFooter.tsx +40 -0
- package/src/components/Menu/examples/MenuWithIcons.tsx +33 -0
- package/src/components/Menu/examples/MenuWithLinks.tsx +30 -0
- package/src/components/Menu/examples/MenuWithSeparators.tsx +26 -0
- package/src/components/Menu/examples/MenuWithTitledGroups.tsx +46 -0
- package/src/components/Menu/examples/MenuWithViewMore.tsx +118 -0
- package/src/components/ProgressStepper/examples/ProgressStepper.md +13 -356
- package/src/components/ProgressStepper/examples/ProgressStepperBasic.tsx +21 -0
- package/src/components/ProgressStepper/examples/ProgressStepperBasicFailure.tsx +48 -0
- package/src/components/ProgressStepper/examples/ProgressStepperBasicIssue.tsx +48 -0
- package/src/components/ProgressStepper/examples/ProgressStepperBasicWithAlignment.tsx +59 -0
- package/src/components/ProgressStepper/examples/ProgressStepperBasicWithDescription.tsx +35 -0
- package/src/components/ProgressStepper/examples/ProgressStepperCompact.tsx +51 -0
- package/src/components/ProgressStepper/examples/ProgressStepperCustomIcons.tsx +35 -0
- package/src/components/ProgressStepper/examples/ProgressStepperHelpPopover.tsx +62 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-core",
|
|
3
|
-
"version": "4.227.
|
|
3
|
+
"version": "4.227.4",
|
|
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",
|
|
@@ -34,9 +34,9 @@
|
|
|
34
34
|
"generate": "node scripts/copyStyles.js"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@patternfly/react-icons": "^4.78.
|
|
38
|
-
"@patternfly/react-styles": "^4.77.
|
|
39
|
-
"@patternfly/react-tokens": "^4.79.
|
|
37
|
+
"@patternfly/react-icons": "^4.78.4",
|
|
38
|
+
"@patternfly/react-styles": "^4.77.4",
|
|
39
|
+
"@patternfly/react-tokens": "^4.79.4",
|
|
40
40
|
"focus-trap": "6.9.2",
|
|
41
41
|
"react-dropzone": "9.0.0",
|
|
42
42
|
"tippy.js": "5.1.2",
|
|
@@ -60,5 +60,5 @@
|
|
|
60
60
|
"react": "^16.8.0 || ^17.0.0",
|
|
61
61
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
62
62
|
},
|
|
63
|
-
"gitHead": "
|
|
63
|
+
"gitHead": "bf9f5697021d8b85cd20ce4c5c8899dbcf922cdd"
|
|
64
64
|
}
|
|
@@ -21,8 +21,6 @@ export enum DataListWrapModifier {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
export interface SelectableRowObject {
|
|
24
|
-
/** Determines if only one of the selectable rows should be selectable at a time */
|
|
25
|
-
type: 'multiple' | 'single';
|
|
26
24
|
/** Callback that executes when the screen reader accessible element receives a change event */
|
|
27
25
|
onChange: (id: string, event: React.FormEvent<HTMLInputElement>) => void;
|
|
28
26
|
}
|
|
@@ -115,8 +115,6 @@ export class DataListItem extends React.Component<DataListItemProps> {
|
|
|
115
115
|
? { 'aria-label': selectableInputAriaLabel }
|
|
116
116
|
: { 'aria-labelledby': ariaLabelledBy };
|
|
117
117
|
|
|
118
|
-
const selectableInputType = selectableRow?.type === 'multiple' ? 'checkbox' : 'radio';
|
|
119
|
-
|
|
120
118
|
return (
|
|
121
119
|
<li
|
|
122
120
|
id={id}
|
|
@@ -136,7 +134,7 @@ export class DataListItem extends React.Component<DataListItemProps> {
|
|
|
136
134
|
{selectableRow && (
|
|
137
135
|
<input
|
|
138
136
|
className="pf-screen-reader"
|
|
139
|
-
type=
|
|
137
|
+
type="radio"
|
|
140
138
|
checked={isSelected}
|
|
141
139
|
onChange={event => selectableRow.onChange(id, event)}
|
|
142
140
|
tabIndex={-1}
|
|
@@ -50,7 +50,7 @@ describe('DataList', () => {
|
|
|
50
50
|
|
|
51
51
|
test('List renders with a hidden input to improve a11y when selectableRow is passed', () => {
|
|
52
52
|
render(
|
|
53
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
53
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: () => {} }}>
|
|
54
54
|
<DataListItem>
|
|
55
55
|
<DataListItemRow aria-labelledby="test-id">
|
|
56
56
|
<p id="test-id">Test</p>
|
|
@@ -59,7 +59,7 @@ describe('DataList', () => {
|
|
|
59
59
|
</DataList>
|
|
60
60
|
);
|
|
61
61
|
|
|
62
|
-
const selectableInput = screen.getByRole('
|
|
62
|
+
const selectableInput = screen.getByRole('radio', { hidden: true });
|
|
63
63
|
|
|
64
64
|
expect(selectableInput).toBeInTheDocument();
|
|
65
65
|
});
|
|
@@ -75,35 +75,17 @@ describe('DataList', () => {
|
|
|
75
75
|
</DataList>
|
|
76
76
|
);
|
|
77
77
|
|
|
78
|
-
const selectableInput = screen.queryByRole('
|
|
78
|
+
const selectableInput = screen.queryByRole('radio', { hidden: true });
|
|
79
79
|
|
|
80
80
|
expect(selectableInput).not.toBeInTheDocument();
|
|
81
81
|
});
|
|
82
82
|
|
|
83
|
-
test('List hidden input renders as a radio when selectableRow.type is radio', () => {
|
|
84
|
-
render(
|
|
85
|
-
<DataList aria-label="this is a simple list" selectableRow={{ type: 'single', onChange: () => {} }}>
|
|
86
|
-
<DataListItem>
|
|
87
|
-
<DataListItemRow aria-labelledby="test-id">
|
|
88
|
-
<p id="test-id">Test</p>
|
|
89
|
-
</DataListItemRow>
|
|
90
|
-
</DataListItem>
|
|
91
|
-
</DataList>
|
|
92
|
-
);
|
|
93
|
-
|
|
94
|
-
const selectableRadioInput = screen.getByRole('radio', { hidden: true });
|
|
95
|
-
const selectableCheckboxInput = screen.queryByRole('checkbox', { hidden: true });
|
|
96
|
-
|
|
97
|
-
expect(selectableRadioInput).toBeInTheDocument();
|
|
98
|
-
expect(selectableCheckboxInput).not.toBeInTheDocument();
|
|
99
|
-
});
|
|
100
|
-
|
|
101
83
|
test('List calls selectableRow.onChange when the selectable input changes', () => {
|
|
102
84
|
const mock = jest.fn();
|
|
103
85
|
|
|
104
86
|
render(
|
|
105
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
106
|
-
<DataListItem>
|
|
87
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: mock }} selectedDataListItemId=''>
|
|
88
|
+
<DataListItem id='item-test-id'>
|
|
107
89
|
<DataListItemRow aria-labelledby="test-id">
|
|
108
90
|
<p id="test-id">Test</p>
|
|
109
91
|
</DataListItemRow>
|
|
@@ -111,7 +93,7 @@ describe('DataList', () => {
|
|
|
111
93
|
</DataList>
|
|
112
94
|
);
|
|
113
95
|
|
|
114
|
-
const selectableInput = screen.getByRole('
|
|
96
|
+
const selectableInput = screen.getByRole('radio', { hidden: true });
|
|
115
97
|
userEvent.click(selectableInput);
|
|
116
98
|
|
|
117
99
|
expect(mock).toHaveBeenCalled();
|
|
@@ -121,8 +103,8 @@ describe('DataList', () => {
|
|
|
121
103
|
const mock = jest.fn();
|
|
122
104
|
|
|
123
105
|
render(
|
|
124
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
125
|
-
<DataListItem>
|
|
106
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: mock }} selectedDataListItemId=''>
|
|
107
|
+
<DataListItem id='item-test-id'>
|
|
126
108
|
<DataListItemRow aria-labelledby="test-id">
|
|
127
109
|
<p id="test-id">Test</p>
|
|
128
110
|
</DataListItemRow>
|
|
@@ -135,7 +117,7 @@ describe('DataList', () => {
|
|
|
135
117
|
|
|
136
118
|
test('Item applies selectableInputAriaLabel to the hidden input', () => {
|
|
137
119
|
render(
|
|
138
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
120
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: () => {} }}>
|
|
139
121
|
<DataListItem selectableInputAriaLabel="Data list item label test">
|
|
140
122
|
<DataListItemRow aria-labelledby="test-id">
|
|
141
123
|
<p id="test-id">Test</p>
|
|
@@ -144,35 +126,35 @@ describe('DataList', () => {
|
|
|
144
126
|
</DataList>
|
|
145
127
|
);
|
|
146
128
|
|
|
147
|
-
const selectableInput = screen.getByRole('
|
|
129
|
+
const selectableInput = screen.getByRole('radio', { hidden: true });
|
|
148
130
|
|
|
149
131
|
expect(selectableInput).toHaveAccessibleName('Data list item label test');
|
|
150
132
|
});
|
|
151
133
|
|
|
152
134
|
test('Item defaults to labelling its input using its aria-labelledby prop', () => {
|
|
153
135
|
render(
|
|
154
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
136
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: () => {} }}>
|
|
155
137
|
<DataListItem aria-labelledby="test-id">
|
|
156
138
|
<p id="test-id">Test cell content</p>
|
|
157
139
|
</DataListItem>
|
|
158
140
|
</DataList>
|
|
159
141
|
);
|
|
160
142
|
|
|
161
|
-
const selectableInput = screen.getByRole('
|
|
143
|
+
const selectableInput = screen.getByRole('radio', { hidden: true });
|
|
162
144
|
|
|
163
145
|
expect(selectableInput).toHaveAccessibleName('Test cell content');
|
|
164
146
|
});
|
|
165
147
|
|
|
166
148
|
test('Item prioritizes selectableInputAriaLabel over aria-labelledby prop', () => {
|
|
167
149
|
render(
|
|
168
|
-
<DataList aria-label="this is a simple list" selectableRow={{
|
|
150
|
+
<DataList aria-label="this is a simple list" selectableRow={{ onChange: () => {} }}>
|
|
169
151
|
<DataListItem aria-labelledby="test-id" selectableInputAriaLabel="Data list item label test">
|
|
170
152
|
<p id="test-id">Test cell content</p>
|
|
171
153
|
</DataListItem>
|
|
172
154
|
</DataList>
|
|
173
155
|
);
|
|
174
156
|
|
|
175
|
-
const selectableInput = screen.getByRole('
|
|
157
|
+
const selectableInput = screen.getByRole('radio', { hidden: true });
|
|
176
158
|
|
|
177
159
|
expect(selectableInput).toHaveAccessibleName('Data list item label test');
|
|
178
160
|
});
|
|
@@ -47,7 +47,7 @@ export const DataListSelectableRows: React.FunctionComponent = () => {
|
|
|
47
47
|
aria-label="selectable data list example"
|
|
48
48
|
selectedDataListItemId={selectedDataListItemId}
|
|
49
49
|
onSelectDataListItem={onSelectDataListItem}
|
|
50
|
-
selectableRow={{
|
|
50
|
+
selectableRow={{ onChange: handleInputChange }}
|
|
51
51
|
>
|
|
52
52
|
<DataListItem aria-labelledby="selectable-action-item1" id="item1">
|
|
53
53
|
<DataListItemRow>
|