@patternfly/react-core 4.225.6 → 4.225.9
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 +27 -0
- package/dist/esm/components/CalendarMonth/CalendarMonth.d.ts.map +1 -1
- package/dist/esm/components/CalendarMonth/CalendarMonth.js +3 -0
- package/dist/esm/components/CalendarMonth/CalendarMonth.js.map +1 -1
- package/dist/esm/components/Switch/Switch.d.ts.map +1 -1
- package/dist/esm/components/Switch/Switch.js +1 -1
- package/dist/esm/components/Switch/Switch.js.map +1 -1
- package/dist/esm/components/TreeView/TreeView.d.ts +1 -1
- package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.js +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/js/components/CalendarMonth/CalendarMonth.d.ts.map +1 -1
- package/dist/js/components/CalendarMonth/CalendarMonth.js +3 -0
- package/dist/js/components/CalendarMonth/CalendarMonth.js.map +1 -1
- package/dist/js/components/Switch/Switch.d.ts.map +1 -1
- package/dist/js/components/Switch/Switch.js +1 -1
- package/dist/js/components/Switch/Switch.js.map +1 -1
- package/dist/js/components/TreeView/TreeView.d.ts +1 -1
- package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.d.ts +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.js +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/styles/base-no-reset.css +1 -0
- package/dist/styles/base.css +1 -0
- package/dist/umd/react-core.css +26 -7
- package/dist/umd/react-core.js +8 -2
- package/dist/umd/react-core.min.css +26 -7
- package/dist/umd/react-core.min.js +2 -2
- package/package.json +6 -6
- package/src/components/CalendarMonth/CalendarMonth.tsx +7 -0
- package/src/components/CalendarMonth/__tests__/CalendarMonth.test.tsx +29 -0
- package/src/components/Switch/Switch.tsx +2 -3
- package/src/components/Switch/__tests__/__snapshots__/Switch.test.tsx.snap +1 -1
- package/src/components/Switch/examples/Switch.md +10 -2
- package/src/components/TreeView/TreeView.tsx +1 -1
- package/src/components/TreeView/TreeViewListItem.tsx +3 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-core",
|
|
3
|
-
"version": "4.225.
|
|
3
|
+
"version": "4.225.9",
|
|
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,16 +34,16 @@
|
|
|
34
34
|
"generate": "node scripts/copyStyles.js"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@patternfly/react-icons": "^4.76.
|
|
38
|
-
"@patternfly/react-styles": "^4.75.
|
|
39
|
-
"@patternfly/react-tokens": "^4.77.
|
|
37
|
+
"@patternfly/react-icons": "^4.76.9",
|
|
38
|
+
"@patternfly/react-styles": "^4.75.9",
|
|
39
|
+
"@patternfly/react-tokens": "^4.77.9",
|
|
40
40
|
"focus-trap": "6.9.2",
|
|
41
41
|
"react-dropzone": "9.0.0",
|
|
42
42
|
"tippy.js": "5.1.2",
|
|
43
43
|
"tslib": "^2.0.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@patternfly/patternfly": "4.
|
|
46
|
+
"@patternfly/patternfly": "4.204.1",
|
|
47
47
|
"@rollup/plugin-commonjs": "^21.0.0",
|
|
48
48
|
"@rollup/plugin-node-resolve": "^13.0.0",
|
|
49
49
|
"@rollup/plugin-replace": "^3.0.0",
|
|
@@ -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": "7a3e116e4af4a97fc5a05d0c05307e75af6d97f5"
|
|
64
64
|
}
|
|
@@ -64,13 +64,20 @@ const yearFormat = (date: Date) => date.getFullYear();
|
|
|
64
64
|
|
|
65
65
|
const buildCalendar = (year: number, month: number, weekStart: number, validators: ((date: Date) => boolean)[]) => {
|
|
66
66
|
const defaultDate = new Date(year, month);
|
|
67
|
+
|
|
67
68
|
const firstDayOfWeek = new Date(defaultDate);
|
|
68
69
|
firstDayOfWeek.setDate(firstDayOfWeek.getDate() - firstDayOfWeek.getDay() + weekStart);
|
|
70
|
+
|
|
69
71
|
// We will show a maximum of 6 weeks like Google calendar
|
|
70
72
|
// Assume we just want the numbers for now...
|
|
71
73
|
const calendarWeeks = [];
|
|
74
|
+
|
|
75
|
+
if (firstDayOfWeek.getMonth() === defaultDate.getMonth() && firstDayOfWeek.getDate() !== 1) {
|
|
76
|
+
firstDayOfWeek.setDate(firstDayOfWeek.getDate() - 7);
|
|
77
|
+
}
|
|
72
78
|
for (let i = 0; i < 6; i++) {
|
|
73
79
|
const week = [];
|
|
80
|
+
|
|
74
81
|
for (let j = 0; j < 7; j++) {
|
|
75
82
|
const date = new Date(firstDayOfWeek);
|
|
76
83
|
week.push({
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { render, screen } from '@testing-library/react';
|
|
4
|
+
|
|
5
|
+
import { CalendarMonth } from '../CalendarMonth';
|
|
6
|
+
|
|
7
|
+
test('Renders the first date in a month when a custom weekStart is passed', () => {
|
|
8
|
+
// custom aria label generation function because of bug with default aria label generation
|
|
9
|
+
// can be removed once the bug is fixed
|
|
10
|
+
const formatAria = (date: Date) =>
|
|
11
|
+
`${date.getDate()} ${date.toLocaleDateString(undefined, { month: 'long' })} ${date.getFullYear()}`;
|
|
12
|
+
|
|
13
|
+
render(<CalendarMonth cellAriaLabel={formatAria} weekStart={1} date={new Date(2023, 0)} />);
|
|
14
|
+
|
|
15
|
+
const firstDate = screen.queryByRole('button', { name: '1 January 2023' });
|
|
16
|
+
expect(firstDate).toBeVisible();
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
test('Renders the last date in a month when a custom weekStart is passed', () => {
|
|
20
|
+
// custom aria label generation function because of bug with default aria labels
|
|
21
|
+
// can be removed once the bug is fixed
|
|
22
|
+
const formatAria = (date: Date) =>
|
|
23
|
+
`${date.getDate()} ${date.toLocaleDateString(undefined, { month: 'long' })} ${date.getFullYear()}`;
|
|
24
|
+
|
|
25
|
+
render(<CalendarMonth cellAriaLabel={formatAria} weekStart={1} date={new Date(2023, 0)} />);
|
|
26
|
+
|
|
27
|
+
const lastDate = screen.queryByRole('button', { name: '31 January 2023' });
|
|
28
|
+
expect(lastDate).toBeVisible();
|
|
29
|
+
});
|
|
@@ -91,10 +91,9 @@ export class Switch extends React.Component<SwitchProps & OUIAProps, { ouiaState
|
|
|
91
91
|
className={css(styles.switchInput)}
|
|
92
92
|
type="checkbox"
|
|
93
93
|
onChange={event => onChange(event.target.checked, event)}
|
|
94
|
-
{...(
|
|
95
|
-
{...(![true, false].includes(defaultChecked) && { checked: isChecked })}
|
|
94
|
+
{...(defaultChecked !== undefined ? { defaultChecked } : { checked: isChecked })}
|
|
96
95
|
disabled={isDisabled}
|
|
97
|
-
aria-labelledby={isAriaLabelledBy ? `${this.id}
|
|
96
|
+
aria-labelledby={!isAriaLabelledBy ? null : `${this.id}-${isChecked !== true ? 'off' : 'on'}`}
|
|
98
97
|
{...props}
|
|
99
98
|
/>
|
|
100
99
|
{label !== undefined ? (
|
|
@@ -282,7 +282,7 @@ exports[`Switch switch with only label is not checked 1`] = `
|
|
|
282
282
|
>
|
|
283
283
|
<input
|
|
284
284
|
aria-label=""
|
|
285
|
-
aria-labelledby="switch-is-not-checked-
|
|
285
|
+
aria-labelledby="switch-is-not-checked-off"
|
|
286
286
|
class="pf-c-switch__input"
|
|
287
287
|
id="switch-is-not-checked"
|
|
288
288
|
type="checkbox"
|
|
@@ -171,8 +171,16 @@ import React from 'react';
|
|
|
171
171
|
import { Switch } from '@patternfly/react-core';
|
|
172
172
|
|
|
173
173
|
<React.Fragment>
|
|
174
|
-
<Switch
|
|
174
|
+
<Switch
|
|
175
|
+
id="uncontrolled-switch-no-label"
|
|
176
|
+
aria-label="An uncontrolled switch with no label"
|
|
177
|
+
defaultChecked={false}
|
|
178
|
+
/>
|
|
175
179
|
<br />
|
|
176
|
-
<Switch
|
|
180
|
+
<Switch
|
|
181
|
+
id="uncontrolled-switch-with-label"
|
|
182
|
+
label="An uncontrolled switch"
|
|
183
|
+
defaultChecked={false}
|
|
184
|
+
/>
|
|
177
185
|
</React.Fragment>;
|
|
178
186
|
```
|
|
@@ -58,7 +58,7 @@ export interface TreeViewProps {
|
|
|
58
58
|
/** Callback for item selection */
|
|
59
59
|
onSelect?: (event: React.MouseEvent, item: TreeViewDataItem, parentItem: TreeViewDataItem) => void;
|
|
60
60
|
/** Callback for item checkbox selection */
|
|
61
|
-
onCheck?: (event: React.ChangeEvent
|
|
61
|
+
onCheck?: (event: React.ChangeEvent<HTMLInputElement>, item: TreeViewDataItem, parentItem: TreeViewDataItem) => void;
|
|
62
62
|
/** Active items of tree view */
|
|
63
63
|
activeItems?: TreeViewDataItem[];
|
|
64
64
|
/** Internal. Parent item of a TreeViewListItem */
|
|
@@ -26,7 +26,7 @@ export interface TreeViewListItemProps {
|
|
|
26
26
|
/** Callback for item selection. Note: calling event.preventDefault() will prevent the node from toggling. */
|
|
27
27
|
onSelect?: (event: React.MouseEvent, item: TreeViewDataItem, parent: TreeViewDataItem) => void;
|
|
28
28
|
/** Callback for item checkbox selection */
|
|
29
|
-
onCheck?: (event: React.ChangeEvent
|
|
29
|
+
onCheck?: (event: React.ChangeEvent<HTMLInputElement>, item: TreeViewDataItem, parent: TreeViewDataItem) => void;
|
|
30
30
|
/** Flag indicating if a tree view item has a checkbox */
|
|
31
31
|
hasCheck?: boolean;
|
|
32
32
|
/** Additional properties of the tree view item checkbox */
|
|
@@ -115,8 +115,8 @@ const TreeViewListItemBase: React.FunctionComponent<TreeViewListItemProps> = ({
|
|
|
115
115
|
<span className={css(styles.treeViewNodeCheck)}>
|
|
116
116
|
<input
|
|
117
117
|
type="checkbox"
|
|
118
|
-
onChange={
|
|
119
|
-
onClick={
|
|
118
|
+
onChange={evt => onCheck && onCheck(evt, itemData, parentItem)}
|
|
119
|
+
onClick={evt => evt.stopPropagation()}
|
|
120
120
|
ref={elem => elem && (elem.indeterminate = checkProps.checked === null)}
|
|
121
121
|
{...checkProps}
|
|
122
122
|
checked={checkProps.checked === null ? false : checkProps.checked}
|