@patternfly/react-core 6.0.0-alpha.102 → 6.0.0-alpha.104

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 (142) hide show
  1. package/CHANGELOG.md +11 -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/Content/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/Drawer/package.json +1 -1
  28. package/dist/dynamic/components/Dropdown/package.json +1 -1
  29. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  30. package/dist/dynamic/components/EmptyState/package.json +1 -1
  31. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  32. package/dist/dynamic/components/FileUpload/package.json +1 -1
  33. package/dist/dynamic/components/Form/package.json +1 -1
  34. package/dist/dynamic/components/FormSelect/package.json +1 -1
  35. package/dist/dynamic/components/HelperText/package.json +1 -1
  36. package/dist/dynamic/components/Hint/package.json +1 -1
  37. package/dist/dynamic/components/Icon/package.json +1 -1
  38. package/dist/dynamic/components/InputGroup/package.json +1 -1
  39. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  40. package/dist/dynamic/components/Label/package.json +1 -1
  41. package/dist/dynamic/components/List/package.json +1 -1
  42. package/dist/dynamic/components/LoginPage/package.json +1 -1
  43. package/dist/dynamic/components/Masthead/package.json +1 -1
  44. package/dist/dynamic/components/Menu/package.json +1 -1
  45. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  46. package/dist/dynamic/components/Modal/package.json +1 -1
  47. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  48. package/dist/dynamic/components/Nav/package.json +1 -1
  49. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  50. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  51. package/dist/dynamic/components/NumberInput/package.json +1 -1
  52. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  53. package/dist/dynamic/components/Page/package.json +1 -1
  54. package/dist/dynamic/components/Pagination/package.json +1 -1
  55. package/dist/dynamic/components/Panel/package.json +1 -1
  56. package/dist/dynamic/components/Popover/package.json +1 -1
  57. package/dist/dynamic/components/Progress/package.json +1 -1
  58. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  59. package/dist/dynamic/components/Radio/package.json +1 -1
  60. package/dist/dynamic/components/SearchInput/package.json +1 -1
  61. package/dist/dynamic/components/Select/package.json +1 -1
  62. package/dist/dynamic/components/Sidebar/package.json +1 -1
  63. package/dist/dynamic/components/SimpleList/package.json +1 -1
  64. package/dist/dynamic/components/Skeleton/package.json +1 -1
  65. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  66. package/dist/dynamic/components/Slider/package.json +1 -1
  67. package/dist/dynamic/components/Spinner/package.json +1 -1
  68. package/dist/dynamic/components/Switch/package.json +1 -1
  69. package/dist/dynamic/components/Tabs/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/Chip/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/package.json +1 -1
  90. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  91. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  92. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  93. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  94. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  95. package/dist/dynamic/helpers/constants/package.json +1 -1
  96. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  97. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  98. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  99. package/dist/dynamic/helpers/package.json +1 -1
  100. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  101. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  102. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  103. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  104. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  105. package/dist/dynamic/helpers/util/package.json +1 -1
  106. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  107. package/dist/dynamic/layouts/Flex/package.json +1 -1
  108. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  109. package/dist/dynamic/layouts/Grid/package.json +1 -1
  110. package/dist/dynamic/layouts/Level/package.json +1 -1
  111. package/dist/dynamic/layouts/Split/package.json +1 -1
  112. package/dist/dynamic/layouts/Stack/package.json +1 -1
  113. package/dist/dynamic/styles/package.json +1 -1
  114. package/dist/esm/components/Page/Page.d.ts +3 -0
  115. package/dist/esm/components/Page/Page.d.ts.map +1 -1
  116. package/dist/esm/components/Page/Page.js +4 -2
  117. package/dist/esm/components/Page/Page.js.map +1 -1
  118. package/dist/esm/demos/DashboardWrapper.d.ts.map +1 -1
  119. package/dist/esm/demos/DashboardWrapper.js +2 -2
  120. package/dist/esm/demos/DashboardWrapper.js.map +1 -1
  121. package/dist/js/components/Page/Page.d.ts +3 -0
  122. package/dist/js/components/Page/Page.d.ts.map +1 -1
  123. package/dist/js/components/Page/Page.js +4 -2
  124. package/dist/js/components/Page/Page.js.map +1 -1
  125. package/dist/js/demos/DashboardWrapper.d.ts.map +1 -1
  126. package/dist/js/demos/DashboardWrapper.js +2 -2
  127. package/dist/js/demos/DashboardWrapper.js.map +1 -1
  128. package/dist/umd/assets/{output-DDZmdp2b.css → output-Bb4V3iGz.css} +4819 -4819
  129. package/dist/umd/react-core.min.js +1 -1
  130. package/helpers/package.json +1 -1
  131. package/layouts/package.json +1 -1
  132. package/next/package.json +1 -1
  133. package/package.json +7 -8
  134. package/scripts/{copyStyles.js → copyStyles.mjs} +7 -4
  135. package/src/components/DualListSelector/examples/DualListSelector.md +0 -1
  136. package/src/components/Modal/examples/Modal.md +0 -1
  137. package/src/components/Page/Page.tsx +6 -0
  138. package/src/demos/Banner.md +18 -15
  139. package/src/demos/DashboardWrapper.tsx +2 -0
  140. package/src/demos/JumpLinks.md +28 -17
  141. package/scripts/cleanDistExports.js +0 -14
  142. package/src/helpers/safeHTMLElement.js +0 -4
@@ -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.101","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.103","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.101","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.103","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.101","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.103","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "6.0.0-alpha.102",
3
+ "version": "6.0.0-alpha.104",
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",
@@ -40,16 +40,15 @@
40
40
  "homepage": "https://github.com/patternfly/patternfly-react#readme",
41
41
  "scripts": {
42
42
  "build:umd": "rollup -c --environment IS_PRODUCTION",
43
- "build:single:packages": "node ../../scripts/build-single-packages.js --config single-packages.config.json",
43
+ "build:single:packages": "node ../../scripts/build-single-packages.mjs --config single-packages.config.json",
44
44
  "clean": "rimraf dist components layouts helpers next deprecated",
45
- "generate": "node scripts/copyStyles.js",
46
- "subpaths": "node ../../scripts/exportSubpaths.js --config subpaths.config.json",
47
- "clean:exports": "node scripts/cleanDistExports.js"
45
+ "generate": "node scripts/copyStyles.mjs",
46
+ "subpaths": "node ../../scripts/exportSubpaths.mjs --config subpaths.config.json"
48
47
  },
49
48
  "dependencies": {
50
- "@patternfly/react-icons": "^6.0.0-alpha.36",
49
+ "@patternfly/react-icons": "^6.0.0-alpha.37",
51
50
  "@patternfly/react-styles": "^6.0.0-alpha.35",
52
- "@patternfly/react-tokens": "^6.0.0-alpha.35",
51
+ "@patternfly/react-tokens": "^6.0.0-alpha.36",
53
52
  "focus-trap": "7.5.4",
54
53
  "react-dropzone": "^14.2.3",
55
54
  "tslib": "^2.6.2"
@@ -64,5 +63,5 @@
64
63
  "react": "^17 || ^18",
65
64
  "react-dom": "^17 || ^18"
66
65
  },
67
- "gitHead": "065953356048e1ee3036f266aaf16e479e94bc5e"
66
+ "gitHead": "5ae7154791840e7ca907b851aa591e6838acefc2"
68
67
  }
@@ -1,8 +1,11 @@
1
- const { copySync, readFileSync, writeFileSync } = require('fs-extra');
2
- const { resolve, dirname, join } = require('path');
3
- const { parse: parseCSS, stringify: stringifyCSS } = require('css');
1
+ import { copySync } from 'fs-extra/esm';
2
+ import { readFileSync, writeFileSync } from 'node:fs';
3
+ import { createRequire } from 'node:module';
4
+ import { resolve, dirname, join } from 'node:path';
5
+ import { parse as parseCSS, stringify as stringifyCSS } from 'css';
4
6
 
5
- const stylesDir = resolve(__dirname, '../dist/styles');
7
+ const require = createRequire(import.meta.url);
8
+ const stylesDir = resolve(import.meta.dirname, '../dist/styles');
6
9
  const pfDir = dirname(require.resolve('@patternfly/patternfly/patternfly.css'));
7
10
 
8
11
  const unusedSelectorRegEx = /(\.fas?|\.sr-only)/;
@@ -13,7 +13,6 @@ propComponents:
13
13
  'DualListSelectorTree',
14
14
  'DualListSelectorTreeItemData'
15
15
  ]
16
- beta: true
17
16
  ---
18
17
 
19
18
  import AngleDoubleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-double-left-icon';
@@ -4,7 +4,6 @@ section: components
4
4
  cssPrefix: pf-v5-c-modal-box
5
5
  propComponents: ['Modal', 'ModalBody', 'ModalHeader', 'ModalFooter']
6
6
  ouia: true
7
- beta: true
8
7
  ---
9
8
 
10
9
  import WarningTriangleIcon from '@patternfly/react-icons/dist/esm/icons/warning-triangle-icon';
@@ -76,6 +76,9 @@ export interface PageProps extends React.HTMLProps<HTMLDivElement> {
76
76
  * https://github.com/patternfly/patternfly-react/blob/main/packages/react-core/src/helpers/util.ts
77
77
  */
78
78
  getVerticalBreakpoint?: (height: number | null) => 'default' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
79
+ /** Banner component for the page. This will be rendered above a breadcrumb if one is also passed.
80
+ */
81
+ banner?: React.ReactNode;
79
82
  /** Breadcrumb component for the page */
80
83
  breadcrumb?: React.ReactNode;
81
84
  /** Horizontal sub navigation component for the page */
@@ -219,6 +222,7 @@ class Page extends React.Component<PageProps, PageState> {
219
222
 
220
223
  render() {
221
224
  const {
225
+ banner,
222
226
  breadcrumb,
223
227
  isBreadcrumbWidthLimited,
224
228
  className,
@@ -289,6 +293,7 @@ class Page extends React.Component<PageProps, PageState> {
289
293
  const group = isGrouped ? (
290
294
  <PageGroup {...groupProps}>
291
295
  {isHorizontalSubnavGrouped && nav}
296
+ {banner}
292
297
  {isBreadcrumbGrouped && crumb}
293
298
  {additionalGroupedContent}
294
299
  </PageGroup>
@@ -308,6 +313,7 @@ class Page extends React.Component<PageProps, PageState> {
308
313
  >
309
314
  {group}
310
315
  {!isHorizontalSubnavGrouped && nav}
316
+ {banner}
311
317
  {!isBreadcrumbGrouped && crumb}
312
318
  {children}
313
319
  </Component>
@@ -21,22 +21,24 @@ import display from '@patternfly/react-styles/css/utilities/Display/display';
21
21
 
22
22
  class BannerDemo extends React.Component {
23
23
  render() {
24
+ const banner = (
25
+ <Banner isSticky>
26
+ <Flex
27
+ justifyContent={{ default: 'justifyContentCenter', lg: 'justifyContentSpaceBetween' }}
28
+ flexWrap={{ default: 'nowrap' }}
29
+ >
30
+ <div className={css(display.displayNone, display.displayBlockOnLg)}>Localhost</div>
31
+ <div className={css(display.displayNone, display.displayBlockOnLg)}>
32
+ This message is sticky to the top of the page.
33
+ </div>
34
+ <div className={css(display.displayNoneOnLg)}>Drop some text on mobile, truncate if needed.</div>
35
+ <div className={css(display.displayNone, display.displayBlockOnLg)}>Ned Username</div>
36
+ </Flex>
37
+ </Banner>
38
+ );
24
39
  return (
25
40
  <React.Fragment>
26
- <DashboardWrapper breadcrumb={null}>
27
- <Banner isSticky>
28
- <Flex
29
- justifyContent={{ default: 'justifyContentCenter', lg: 'justifyContentSpaceBetween' }}
30
- flexWrap={{ default: 'nowrap' }}
31
- >
32
- <div className={css(display.displayNone, display.displayBlockOnLg)}>Localhost</div>
33
- <div className={css(display.displayNone, display.displayBlockOnLg)}>
34
- This message is sticky to the top of the page.
35
- </div>
36
- <div className={css(display.displayNoneOnLg)}>Drop some text on mobile, truncate if needed.</div>
37
- <div className={css(display.displayNone, display.displayBlockOnLg)}>Ned Username</div>
38
- </Flex>
39
- </Banner>
41
+ <DashboardWrapper banner={banner} breadcrumb={null}>
40
42
  <PageSection>
41
43
  <Content>
42
44
  <h1>Main title</h1>
@@ -114,7 +116,8 @@ class BannerDemo extends React.Component {
114
116
  <Content>
115
117
  <h1>Main title</h1>
116
118
  <p>
117
- Body text should be Red Hat Text at 1rem(16px). It should have leading of 1.5rem(24px) because <br />
119
+ Body text should be Red Hat Text at 1rem(16px). It should have leading of 1.5rem(24px) because{' '}
120
+ <br />
118
121
  of it’s relative line height of 1.5.
119
122
  </p>
120
123
  </Content>
@@ -47,6 +47,7 @@ const PageTemplateTitle = (
47
47
  export const DashboardWrapper: React.FC<DashboardWrapperProps> = ({
48
48
  children,
49
49
  mainContainerId,
50
+ banner,
50
51
  breadcrumb,
51
52
  masthead,
52
53
  sidebar,
@@ -109,6 +110,7 @@ export const DashboardWrapper: React.FC<DashboardWrapperProps> = ({
109
110
  sidebar={sidebar ?? _sidebar}
110
111
  isManagedSidebar
111
112
  skipToContent={PageSkipToContent}
113
+ banner={banner}
112
114
  breadcrumb={renderedBreadcrumb}
113
115
  mainContainerId={mainContainerId ?? 'main-content-page-layout-default-nav'}
114
116
  notificationDrawer={notificationDrawer}
@@ -43,27 +43,38 @@ ScrollspyH2 = () => {
43
43
 
44
44
  const [isVertical, setIsVertical] = React.useState(true);
45
45
  const [offsetHeight, setOffsetHeight] = React.useState(10);
46
+ const offsetForPadding = 10;
47
+ let masthead;
46
48
 
47
49
  // Update offset based on the masthead and jump links nav heights.
48
50
  React.useEffect(() => {
49
- const masthead = document.getElementsByClassName(mastheadStyles.masthead)[0];
50
- const offsetForPadding = 10;
51
-
52
- getResizeObserver(
53
- masthead,
54
- () => {
55
- if (isVertical) {
56
- setOffsetHeight(masthead.offsetHeight + offsetForPadding);
57
- } else {
58
- // Append jump links nav height to the masthead height when value exists.
59
- const jumpLinksHeaderHeight = document.getElementsByClassName('pf-m-sticky')[0].offsetHeight;
60
- jumpLinksHeaderHeight && setOffsetHeight(masthead.offsetHeight + jumpLinksHeaderHeight + offsetForPadding);
61
- }
62
- },
63
- true
64
- );
51
+ masthead = document.getElementsByClassName(mastheadStyles.masthead)[0];
52
+
53
+ if (isVertical) {
54
+ setOffsetHeight(masthead.offsetHeight + offsetForPadding);
55
+ } else {
56
+ // Append jump links nav height to the masthead height when value exists.
57
+ const jumpLinksHeaderHeight = document.getElementsByClassName('pf-m-sticky')[0].offsetHeight;
58
+ jumpLinksHeaderHeight && setOffsetHeight(masthead.offsetHeight + jumpLinksHeaderHeight + offsetForPadding);
59
+ }
60
+
61
+
65
62
  }, [isVertical]);
66
63
 
64
+ getResizeObserver(
65
+ document.getElementsByClassName(mastheadStyles.masthead)[0],
66
+ () => {
67
+ if (isVertical) {
68
+ setOffsetHeight(masthead.offsetHeight + offsetForPadding);
69
+ } else {
70
+ // Append jump links nav height to the masthead height when value exists.
71
+ const jumpLinksHeaderHeight = document.getElementsByClassName('pf-m-sticky')[0].offsetHeight;
72
+ jumpLinksHeaderHeight && setOffsetHeight(masthead.offsetHeight + jumpLinksHeaderHeight + offsetForPadding);
73
+ }
74
+ },
75
+ true
76
+ );
77
+
67
78
  return (
68
79
  <DashboardWrapper breadcrumb={null} mainContainerId="scrollable-element">
69
80
  <PageSection>
@@ -85,7 +96,7 @@ ScrollspyH2 = () => {
85
96
  isVertical={isVertical}
86
97
  isCentered={!isVertical}
87
98
  label="Jump to section"
88
- scrollableSelector="#scrollable-element"
99
+ scrollableSelector=".pf-v6-c-page__main-container"
89
100
  offset={offsetHeight}
90
101
  expandable={{ default: isVertical ? 'expandable' : 'nonExpandable', md: 'nonExpandable' }}
91
102
  isExpanded
@@ -1,14 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
-
4
- const distIndexFiles = ['esm', 'js'].map((dir) => path.join(process.cwd(), 'dist', dir, 'index.js'));
5
- const distIndexDeclarationFiles = ['esm', 'js'].map((dir) => path.join(process.cwd(), 'dist', dir, 'index.d.ts'));
6
-
7
- [...distIndexFiles, ...distIndexDeclarationFiles].forEach((file) => {
8
- const fileContents = fs.readFileSync(file, 'utf8');
9
- const newFileContents = fileContents
10
- .split('\n')
11
- .filter((line) => !line.includes('demos'))
12
- .join('\n');
13
- fs.writeFileSync(file, newFileContents);
14
- });
@@ -1,4 +0,0 @@
1
- // https://github.com/reactjs/react-modal/blob/master/src/helpers/safeHTMLElement.js
2
- import { canUseDOM } from './util';
3
-
4
- export default canUseDOM ? window.HTMLElement : {};