@patternfly/react-core 5.4.0-prerelease.22 → 5.4.0-prerelease.24

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 (160) hide show
  1. package/CHANGELOG.md +12 -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/Chip/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/DragDrop/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/Text/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/Tile/package.json +1 -1
  76. package/dist/dynamic/components/TimePicker/package.json +1 -1
  77. package/dist/dynamic/components/Timestamp/package.json +1 -1
  78. package/dist/dynamic/components/Title/package.json +1 -1
  79. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  80. package/dist/dynamic/components/Toolbar/package.json +1 -1
  81. package/dist/dynamic/components/Tooltip/package.json +1 -1
  82. package/dist/dynamic/components/TreeView/package.json +1 -1
  83. package/dist/dynamic/components/Truncate/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  85. package/dist/dynamic/components/Wizard/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/ContextSelector/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/dynamic-modules.json +2 -0
  123. package/dist/esm/components/DataList/DataList.d.ts +6 -11
  124. package/dist/esm/components/DataList/DataList.d.ts.map +1 -1
  125. package/dist/esm/components/DataList/DataList.js +16 -30
  126. package/dist/esm/components/DataList/DataList.js.map +1 -1
  127. package/dist/esm/components/DualListSelector/DualListSelectorList.d.ts +4 -1
  128. package/dist/esm/components/DualListSelector/DualListSelectorList.d.ts.map +1 -1
  129. package/dist/esm/components/DualListSelector/DualListSelectorList.js +5 -3
  130. package/dist/esm/components/DualListSelector/DualListSelectorList.js.map +1 -1
  131. package/dist/esm/components/Wizard/Wizard.d.ts.map +1 -1
  132. package/dist/esm/components/Wizard/Wizard.js +4 -0
  133. package/dist/esm/components/Wizard/Wizard.js.map +1 -1
  134. package/dist/esm/components/Wizard/WizardContext.d.ts.map +1 -1
  135. package/dist/esm/components/Wizard/WizardContext.js +4 -0
  136. package/dist/esm/components/Wizard/WizardContext.js.map +1 -1
  137. package/dist/js/components/DataList/DataList.d.ts +6 -11
  138. package/dist/js/components/DataList/DataList.d.ts.map +1 -1
  139. package/dist/js/components/DataList/DataList.js +18 -31
  140. package/dist/js/components/DataList/DataList.js.map +1 -1
  141. package/dist/js/components/DualListSelector/DualListSelectorList.d.ts +4 -1
  142. package/dist/js/components/DualListSelector/DualListSelectorList.d.ts.map +1 -1
  143. package/dist/js/components/DualListSelector/DualListSelectorList.js +7 -5
  144. package/dist/js/components/DualListSelector/DualListSelectorList.js.map +1 -1
  145. package/dist/js/components/Wizard/Wizard.d.ts.map +1 -1
  146. package/dist/js/components/Wizard/Wizard.js +4 -0
  147. package/dist/js/components/Wizard/Wizard.js.map +1 -1
  148. package/dist/js/components/Wizard/WizardContext.d.ts.map +1 -1
  149. package/dist/js/components/Wizard/WizardContext.js +4 -0
  150. package/dist/js/components/Wizard/WizardContext.js.map +1 -1
  151. package/dist/umd/assets/{output-QR0coZbk.css → output-B0L3RBT7.css} +9804 -9804
  152. package/dist/umd/react-core.min.js +3 -3
  153. package/helpers/package.json +1 -1
  154. package/layouts/package.json +1 -1
  155. package/next/package.json +1 -1
  156. package/package.json +2 -2
  157. package/src/components/DataList/DataList.tsx +53 -65
  158. package/src/components/DualListSelector/DualListSelectorList.tsx +13 -1
  159. package/src/components/Wizard/Wizard.tsx +5 -0
  160. package/src/components/Wizard/WizardContext.tsx +5 -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":"5.4.0-prerelease.21","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":"5.4.0-prerelease.23","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":"5.4.0-prerelease.21","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":"5.4.0-prerelease.23","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":"5.4.0-prerelease.21","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":"5.4.0-prerelease.23","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "5.4.0-prerelease.22",
3
+ "version": "5.4.0-prerelease.24",
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",
@@ -62,5 +62,5 @@
62
62
  "react": "^17 || ^18",
63
63
  "react-dom": "^17 || ^18"
64
64
  },
65
- "gitHead": "f81bc585db3dc2a488630773722ff4ebe1105c86"
65
+ "gitHead": "7d2ad5ceaf08fcfda0a3a6eb0222f6f28013ef22"
66
66
  }
@@ -1,7 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { css } from '@patternfly/react-styles';
3
3
  import styles from '@patternfly/react-styles/css/components/DataList/data-list';
4
- import { PickOptional } from '../../helpers/typeUtils';
5
4
 
6
5
  const gridBreakpointClasses = {
7
6
  none: styles.modifiers.gridNone,
@@ -19,7 +18,7 @@ export enum DataListWrapModifier {
19
18
  breakWord = 'breakWord'
20
19
  }
21
20
 
22
- export interface DataListProps extends Omit<React.HTMLProps<HTMLUListElement>, 'ref'> {
21
+ export interface DataListProps extends React.HTMLProps<HTMLUListElement> {
23
22
  /** Content rendered inside the DataList list */
24
23
  children?: React.ReactNode;
25
24
  /** Additional classes added to the DataList list */
@@ -38,6 +37,8 @@ export interface DataListProps extends Omit<React.HTMLProps<HTMLUListElement>, '
38
37
  wrapModifier?: DataListWrapModifier | 'nowrap' | 'truncate' | 'breakWord';
39
38
  /** Object that causes the data list to render hidden inputs which improve selectable item a11y */
40
39
  onSelectableRowChange?: (event: React.FormEvent<HTMLInputElement>, id: string) => void;
40
+ /** @hide custom ref of the DataList */
41
+ innerRef?: React.RefObject<HTMLUListElement>;
41
42
  }
42
43
 
43
44
  interface DataListContextProps {
@@ -51,71 +52,58 @@ export const DataListContext = React.createContext<Partial<DataListContextProps>
51
52
  isSelectable: false
52
53
  });
53
54
 
54
- class DataList extends React.Component<DataListProps> {
55
- static displayName = 'DataList';
56
- static defaultProps: PickOptional<DataListProps> = {
57
- children: null,
58
- className: '',
59
- selectedDataListItemId: '',
60
- isCompact: false,
61
- gridBreakpoint: 'md',
62
- wrapModifier: null
63
- };
64
- ref = React.createRef<HTMLUListElement>();
65
-
66
- constructor(props: DataListProps) {
67
- super(props);
68
- }
55
+ export const DataListBase: React.FunctionComponent<DataListProps> = ({
56
+ children = null,
57
+ className = '',
58
+ 'aria-label': ariaLabel,
59
+ onSelectDataListItem,
60
+ selectedDataListItemId = '',
61
+ isCompact = false,
62
+ gridBreakpoint = 'md',
63
+ wrapModifier = null,
64
+ onSelectableRowChange,
65
+ innerRef,
66
+ ...props
67
+ }: DataListProps) => {
68
+ const isSelectable = onSelectDataListItem !== undefined;
69
69
 
70
- getIndex = (id: string) => Array.from(this.ref.current.children).findIndex((item) => item.id === id);
70
+ const updateSelectedDataListItem = (event: React.MouseEvent | React.KeyboardEvent, id: string) => {
71
+ onSelectDataListItem(event, id);
72
+ };
71
73
 
72
- render() {
73
- const {
74
- className,
75
- children,
76
- 'aria-label': ariaLabel,
77
- onSelectDataListItem,
78
- selectedDataListItemId,
79
- isCompact,
80
- wrapModifier,
81
- gridBreakpoint,
82
- onSelectableRowChange,
83
- ...props
84
- } = this.props;
85
- const isSelectable = onSelectDataListItem !== undefined;
74
+ return (
75
+ <DataListContext.Provider
76
+ value={{
77
+ isSelectable,
78
+ selectedDataListItemId,
79
+ updateSelectedDataListItem,
80
+ onSelectableRowChange
81
+ }}
82
+ >
83
+ <ul
84
+ className={css(
85
+ styles.dataList,
86
+ isCompact && styles.modifiers.compact,
87
+ gridBreakpointClasses[gridBreakpoint],
88
+ wrapModifier && styles.modifiers[wrapModifier],
89
+ className
90
+ )}
91
+ style={props.style}
92
+ role="list"
93
+ aria-label={ariaLabel}
94
+ ref={innerRef}
95
+ {...props}
96
+ >
97
+ {children}
98
+ </ul>
99
+ </DataListContext.Provider>
100
+ );
101
+ };
86
102
 
87
- const updateSelectedDataListItem = (event: React.MouseEvent | React.KeyboardEvent, id: string) => {
88
- onSelectDataListItem(event, id);
89
- };
103
+ DataListBase.displayName = 'DataListBase';
90
104
 
91
- return (
92
- <DataListContext.Provider
93
- value={{
94
- isSelectable,
95
- selectedDataListItemId,
96
- updateSelectedDataListItem,
97
- onSelectableRowChange
98
- }}
99
- >
100
- <ul
101
- className={css(
102
- styles.dataList,
103
- isCompact && styles.modifiers.compact,
104
- gridBreakpointClasses[gridBreakpoint],
105
- wrapModifier && styles.modifiers[wrapModifier],
106
- className
107
- )}
108
- style={props.style}
109
- role="list"
110
- aria-label={ariaLabel}
111
- {...props}
112
- ref={this.ref}
113
- >
114
- {children}
115
- </ul>
116
- </DataListContext.Provider>
117
- );
118
- }
119
- }
105
+ export const DataList = React.forwardRef((props: DataListProps, ref: React.Ref<HTMLUListElement>) => (
106
+ <DataListBase innerRef={ref as React.MutableRefObject<any>} {...props} />
107
+ ));
120
108
 
121
- export { DataList };
109
+ DataList.displayName = 'DataList';
@@ -9,10 +9,13 @@ import { DualListSelectorListContext } from './DualListSelectorContext';
9
9
  export interface DualListSelectorListProps extends React.HTMLProps<HTMLUListElement> {
10
10
  /** Content rendered inside the dual list selector list */
11
11
  children?: React.ReactNode;
12
+ /** @hide forwarded ref */
13
+ innerRef?: React.RefObject<HTMLUListElement>;
12
14
  }
13
15
 
14
- export const DualListSelectorList: React.FunctionComponent<DualListSelectorListProps> = ({
16
+ export const DualListSelectorListBase: React.FunctionComponent<DualListSelectorListProps> = ({
15
17
  children,
18
+ innerRef,
16
19
  ...props
17
20
  }: DualListSelectorListProps) => {
18
21
  const {
@@ -47,6 +50,7 @@ export const DualListSelectorList: React.FunctionComponent<DualListSelectorListP
47
50
  'aria-activedescendant': focusedOption
48
51
  })}
49
52
  aria-disabled={isDisabled ? 'true' : undefined}
53
+ ref={innerRef}
50
54
  {...props}
51
55
  >
52
56
  {options.length === 0
@@ -71,4 +75,12 @@ export const DualListSelectorList: React.FunctionComponent<DualListSelectorListP
71
75
  </ul>
72
76
  );
73
77
  };
78
+ DualListSelectorListBase.displayName = 'DualListSelectorListBase';
79
+
80
+ export const DualListSelectorList = React.forwardRef(
81
+ (props: DualListSelectorListProps, ref: React.Ref<HTMLUListElement>) => (
82
+ <DualListSelectorListBase innerRef={ref as React.MutableRefObject<any>} {...props} />
83
+ )
84
+ );
85
+
74
86
  DualListSelectorList.displayName = 'DualListSelectorList';
@@ -91,6 +91,11 @@ export const Wizard = ({
91
91
  }
92
92
  }, [startIndex]);
93
93
 
94
+ // When children change, active step index should reset
95
+ React.useEffect(() => {
96
+ setActiveStepIndex(startIndex);
97
+ }, [children, startIndex]);
98
+
94
99
  const focusMainContentElement = () =>
95
100
  setTimeout(() => {
96
101
  wrapperRef?.current?.focus && wrapperRef.current.focus();
@@ -74,6 +74,11 @@ export const WizardContextProvider: React.FunctionComponent<WizardContextProvide
74
74
  const [currentSteps, setCurrentSteps] = React.useState<WizardStepType[]>(initialSteps);
75
75
  const [currentFooter, setCurrentFooter] = React.useState<WizardFooterType>();
76
76
 
77
+ // Callback to update steps if they change after initial render
78
+ React.useEffect(() => {
79
+ setCurrentSteps(initialSteps);
80
+ }, [initialSteps]);
81
+
77
82
  // Combined initial and current state steps
78
83
  const steps = React.useMemo(
79
84
  () =>