@patternfly/react-core 6.3.0-prerelease.5 → 6.3.0-prerelease.7

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 (155) hide show
  1. package/CHANGELOG.md +10 -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/TimePicker/package.json +1 -1
  74. package/dist/dynamic/components/Timestamp/package.json +1 -1
  75. package/dist/dynamic/components/Title/package.json +1 -1
  76. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  77. package/dist/dynamic/components/Toolbar/package.json +1 -1
  78. package/dist/dynamic/components/Tooltip/package.json +1 -1
  79. package/dist/dynamic/components/TreeView/package.json +1 -1
  80. package/dist/dynamic/components/Truncate/package.json +1 -1
  81. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/package.json +1 -1
  83. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/Tile/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/umd/assets/{output-ZXgRs2js.css → output-XVlyxAO_.css} +19349 -19349
  115. package/helpers/package.json +1 -1
  116. package/layouts/package.json +1 -1
  117. package/next/package.json +1 -1
  118. package/package.json +2 -2
  119. package/src/components/Page/examples/PageCenteredSection.tsx +1 -1
  120. package/src/components/Page/examples/PageGroupSection.tsx +9 -3
  121. package/src/components/Page/examples/PageHorizontalNav.tsx +9 -3
  122. package/src/components/Page/examples/PageMainSectionPadding.tsx +12 -4
  123. package/src/components/Page/examples/PageMainSectionVariations.tsx +6 -6
  124. package/src/components/Page/examples/PageMultipleSidebarBody.tsx +9 -3
  125. package/src/components/Page/examples/PageUncontrolledNav.tsx +9 -3
  126. package/src/components/Page/examples/PageVerticalNav.tsx +9 -3
  127. package/src/components/Page/examples/PageWithOrWithoutFill.tsx +8 -4
  128. package/src/components/Select/examples/Select.md +3 -26
  129. package/src/demos/Banner.md +6 -6
  130. package/src/demos/CardView/examples/CardView.tsx +9 -4
  131. package/src/demos/DataList/examples/DataListActionable.tsx +5 -3
  132. package/src/demos/DataList/examples/DataListBasic.tsx +2 -2
  133. package/src/demos/DataList/examples/DataListExpandableControlInToolbar.tsx +2 -2
  134. package/src/demos/DataList/examples/DataListStaticBottomPagination.tsx +4 -2
  135. package/src/demos/DescriptionList/examples/DescriptionListBasic.tsx +4 -4
  136. package/src/demos/DescriptionList/examples/DescriptionListInDrawer.tsx +5 -3
  137. package/src/demos/JumpLinks.md +5 -5
  138. package/src/demos/Tabs.md +6 -6
  139. package/src/demos/examples/AlertGroup/AlertGroupToastWithNotificationDrawer.tsx +6 -6
  140. package/src/demos/examples/BackToTop/BackToTopNameDemo.tsx +2 -2
  141. package/src/demos/examples/Masthead/MastheadWithHorizontalNav.tsx +5 -3
  142. package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +3 -3
  143. package/src/demos/examples/Nav/NavDefault.tsx +3 -3
  144. package/src/demos/examples/Nav/NavDrilldown.tsx +1 -1
  145. package/src/demos/examples/Nav/NavExpandable.tsx +3 -3
  146. package/src/demos/examples/Nav/NavFlyout.tsx +9 -3
  147. package/src/demos/examples/Nav/NavGrouped.tsx +14 -6
  148. package/src/demos/examples/Nav/NavHorizontal.tsx +3 -3
  149. package/src/demos/examples/Nav/NavHorizontalWithSubnav.tsx +5 -5
  150. package/src/demos/examples/Nav/NavManual.tsx +3 -3
  151. package/src/demos/examples/Nav/NavWithSubnav.tsx +5 -5
  152. package/src/demos/examples/Tabs/ModalTabs.tsx +3 -3
  153. package/src/demos/examples/Tabs/NestedTabs.tsx +2 -2
  154. package/src/demos/examples/Tabs/NestedUnindentedTabs.tsx +2 -2
  155. package/src/demos/examples/Tabs/TabsAndTable.tsx +3 -3
@@ -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.3.0-prerelease.4","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.3.0-prerelease.6","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.3.0-prerelease.4","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.3.0-prerelease.6","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.3.0-prerelease.4","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.3.0-prerelease.6","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "6.3.0-prerelease.5",
3
+ "version": "6.3.0-prerelease.7",
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",
@@ -63,5 +63,5 @@
63
63
  "react": "^17 || ^18 || ^19",
64
64
  "react-dom": "^17 || ^18 || ^19"
65
65
  },
66
- "gitHead": "6da1d9da3d709c882a03ee3e2f1de677e2438fcd"
66
+ "gitHead": "f8b21b594c90960305e3b58b723c1cff7a9decbb"
67
67
  }
@@ -68,7 +68,7 @@ export const PageCenteredSection: React.FunctionComponent = () => {
68
68
 
69
69
  return (
70
70
  <Page masthead={masthead} sidebar={sidebar}>
71
- <PageSection isWidthLimited isCenterAligned>
71
+ <PageSection isWidthLimited isCenterAligned aria-label="width limited page section">
72
72
  <Card>
73
73
  <CardBody>
74
74
  When a width limited page section is wider than the value of
@@ -101,10 +101,16 @@ export const PageGroupSection: React.FunctionComponent = () => {
101
101
  </BreadcrumbItem>
102
102
  </Breadcrumb>
103
103
  </PageBreadcrumb>
104
- <PageSection>Grouped section</PageSection>
104
+ <PageSection aria-labelledby="grouped-section">
105
+ <h2 id="grouped-section">Grouped section</h2>
106
+ </PageSection>
105
107
  </PageGroup>
106
- <PageSection>Section 1</PageSection>
107
- <PageSection>Section 2</PageSection>
108
+ <PageSection aria-labelledby="section-1">
109
+ <h2 id="section-1">Grouped example section 1</h2>
110
+ </PageSection>
111
+ <PageSection aria-labelledby="section-2">
112
+ <h2 id="section-2">Grouped example section 2</h2>
113
+ </PageSection>
108
114
  </Page>
109
115
  );
110
116
  };
@@ -36,9 +36,15 @@ export const PageHorizontalNav: React.FunctionComponent = () => {
36
36
 
37
37
  return (
38
38
  <Page masthead={masthead}>
39
- <PageSection>Section 1</PageSection>
40
- <PageSection variant="secondary">Section 2 with secondary variant styling</PageSection>
41
- <PageSection>Section 3</PageSection>
39
+ <PageSection aria-labelledby="section-1">
40
+ <h2 id="section-1">Horizontal nav example section 1</h2>
41
+ </PageSection>
42
+ <PageSection variant="secondary" aria-labelledby="section-2">
43
+ <h2 id="section-2">Horizontal nav example section 2 with secondary variant styling</h2>
44
+ </PageSection>
45
+ <PageSection aria-labelledby="section-3">
46
+ <h2 id="section-3">Horizontal nav example section 3</h2>
47
+ </PageSection>
42
48
  </Page>
43
49
  );
44
50
  };
@@ -64,10 +64,18 @@ export const PageMainSectionPadding: React.FunctionComponent = () => {
64
64
 
65
65
  return (
66
66
  <Page masthead={masthead} sidebar={sidebar}>
67
- <PageSection>Section with default padding</PageSection>
68
- <PageSection padding={{ default: 'noPadding' }}>Section with no padding</PageSection>
69
- <PageSection padding={{ default: 'noPadding', md: 'padding' }}>Section with padding on medium</PageSection>
70
- <PageSection padding={{ md: 'noPadding' }}>Section with no padding on medium</PageSection>
67
+ <PageSection aria-labelledby="section-1">
68
+ <h2 id="section-1">Section with default padding</h2>
69
+ </PageSection>
70
+ <PageSection padding={{ default: 'noPadding' }} aria-labelledby="section-2">
71
+ <h2 id="section-2">Section with no padding</h2>
72
+ </PageSection>
73
+ <PageSection padding={{ default: 'noPadding', md: 'padding' }} aria-labelledby="section-3">
74
+ <h2 id="section-3">Section with padding on medium</h2>
75
+ </PageSection>
76
+ <PageSection padding={{ md: 'noPadding' }} aria-labelledby="section-4">
77
+ <h2 id="section-4">Section with no padding on medium</h2>
78
+ </PageSection>
71
79
  </Page>
72
80
  );
73
81
  };
@@ -64,22 +64,22 @@ export const PageMainSectionPadding: React.FunctionComponent = () => {
64
64
 
65
65
  return (
66
66
  <Page header={header} sidebar={sidebar}>
67
- <PageSection type="subnav">
67
+ <PageSection type="subnav" aria-label="With subnav type">
68
68
  Section with <code>type="subnav"</code> for horizontal subnav navigation
69
69
  </PageSection>
70
- <PageSection type="nav">
70
+ <PageSection type="nav" aria-label="With nav type">
71
71
  Section with <code>type="nav"</code> for tertiary navigation
72
72
  </PageSection>
73
- <PageSection type="tabs">
73
+ <PageSection type="tabs" aria-label="With tabs type">
74
74
  Section with <code>type="tabs"</code> for tabs
75
75
  </PageSection>
76
- <PageSection type="breadcrumb">
76
+ <PageSection type="breadcrumb" aria-label="With breadcrumb type">
77
77
  Section with <code>type="breadcrumb"</code> for breadcrumbs
78
78
  </PageSection>
79
- <PageSection>
79
+ <PageSection aria-label="With default type">
80
80
  Section without <code>type</code> prop or <code>type="default"</code> for main sections
81
81
  </PageSection>
82
- <PageSection type="wizard">
82
+ <PageSection type="wizard" aria-label="With wizard type">
83
83
  Section with <code>type="wizard"</code> for wizards
84
84
  </PageSection>
85
85
  </Page>
@@ -71,9 +71,15 @@ export const PageMultipleSidebarBody: React.FunctionComponent = () => {
71
71
 
72
72
  return (
73
73
  <Page masthead={masthead} sidebar={sidebar}>
74
- <PageSection>Section 1</PageSection>
75
- <PageSection>Section 2</PageSection>
76
- <PageSection>Section 3</PageSection>
74
+ <PageSection aria-labelledby="section-1">
75
+ <h2 id="section-1">Multiple sidebar body example section 1</h2>
76
+ </PageSection>
77
+ <PageSection aria-labelledby="section-2">
78
+ <h2 id="section-2">Multiple sidebar body example section 2</h2>
79
+ </PageSection>
80
+ <PageSection aria-labelledby="section-3">
81
+ <h2 id="section-3">Multiple sidebar body example section 3</h2>
82
+ </PageSection>
77
83
  </Page>
78
84
  );
79
85
  };
@@ -51,9 +51,15 @@ export const PageUncontrolledNav: React.FunctionComponent = () => {
51
51
 
52
52
  return (
53
53
  <Page isManagedSidebar masthead={masthead} sidebar={sidebar}>
54
- <PageSection>Section 1</PageSection>
55
- <PageSection>Section 2</PageSection>
56
- <PageSection>Section 3</PageSection>
54
+ <PageSection aria-labelledby="section-1">
55
+ <h2 id="section-1">Uncontrolled nav example section 1</h2>
56
+ </PageSection>
57
+ <PageSection aria-labelledby="section-2">
58
+ <h2 id="section-2">Uncontrolled nav example section 2</h2>
59
+ </PageSection>
60
+ <PageSection aria-labelledby="section-3">
61
+ <h2 id="section-3">Uncontrolled nav example section 3</h2>
62
+ </PageSection>
57
63
  </Page>
58
64
  );
59
65
  };
@@ -64,9 +64,15 @@ export const PageVerticalNav: React.FunctionComponent = () => {
64
64
 
65
65
  return (
66
66
  <Page masthead={masthead} sidebar={sidebar}>
67
- <PageSection>Section 1</PageSection>
68
- <PageSection variant="secondary">Section 2 with secondary variant styling</PageSection>
69
- <PageSection>Section 3</PageSection>
67
+ <PageSection aria-labelledby="section-1">
68
+ <h2 id="section-1">Vertical nav example section 1</h2>
69
+ </PageSection>
70
+ <PageSection variant="secondary" aria-labelledby="section-2">
71
+ <h2 id="section-2">Vertical nav example section 2 with secondary variant styling</h2>
72
+ </PageSection>
73
+ <PageSection aria-labelledby="section-3">
74
+ <h2 id="section-3">Vertical nav example section 3</h2>
75
+ </PageSection>
70
76
  </Page>
71
77
  );
72
78
  };
@@ -64,11 +64,15 @@ export const PageWithOrWithoutFill: React.FunctionComponent = () => {
64
64
 
65
65
  return (
66
66
  <Page isContentFilled masthead={masthead} sidebar={sidebar}>
67
- <PageSection>A default page section</PageSection>
68
- <PageSection isFilled={true} variant="secondary">
69
- This section fills the available space.
67
+ <PageSection aria-labelledby="section-1">
68
+ <h2 id="section-1">Section without fill</h2>
69
+ </PageSection>
70
+ <PageSection isFilled={true} variant="secondary" aria-labelledby="section-2">
71
+ <h2 id="section-2">Section with fill</h2>
72
+ </PageSection>
73
+ <PageSection aria-labelledby="section-3">
74
+ <h2 id="section-3">Another section without fill</h2>
70
75
  </PageSection>
71
- <PageSection>A default page section</PageSection>
72
76
  </Page>
73
77
  );
74
78
  };
@@ -78,11 +78,6 @@ By default, the menu toggle will display a badge to indicate the number of items
78
78
  ```
79
79
 
80
80
  ### Typeahead
81
- Typeahead is a select variant that replaces the typical button toggle for opening the select menu with a text input and button toggle combo. As a user enters characters into the text input, the menu options will be filtered to match.
82
-
83
- Typeahead is a select variant that replaces the typical button toggle for opening the select menu with a text input and button toggle combo. As a user enters characters into the text input, the menu options will be filtered to match.
84
-
85
- To make a typeahead, pass `variant=typeahead` into the `<MenuToggle>` component and link an `onClick` function to the `<TextInputGroupMain>` component.
86
81
 
87
82
  Typeahead is a select variant that replaces the typical button toggle for opening the select menu with a text input and button toggle combo. As a user enters characters into the text input, the menu options will be filtered to match.
88
83
 
@@ -93,13 +88,6 @@ To make a typeahead, pass `variant=typeahead` into the `<MenuToggle>` component
93
88
  ```
94
89
 
95
90
  ### Typeahead with create option
96
- If a user enters a value into a typeahead select menu that does not exist, you can allow them to create an option of that value.
97
-
98
- If a user enters a value into a typeahead select menu that does not exist, you can allow them to create an option of that value.
99
-
100
- To enable the creation ability, pass a predetermined `value` into a `<SelectOption>` component. You can use the `placeholder` property to change the default text shown in the text input.
101
-
102
- The following example outlines the code implementation required to create a working typeahead menu that allows for creation.
103
91
 
104
92
  If a user enters a value into a typeahead select menu that does not exist, you can allow them to create an option of that value.
105
93
 
@@ -111,14 +99,9 @@ The following example outlines the code implementation required to create a work
111
99
 
112
100
  ```
113
101
 
114
- ### Multiple typeahead with chips
115
- A multiple typeahead can be used to allow users to select multiple options from a list. Additionally, you can render a chip group to be placed in the select toggle.
116
-
117
- A multiple typeahead can be used to allow users to select multiple options from a list. Additionally, you can render a chip group to be placed in the select toggle.
118
-
119
- When more items than the allowed limit are selected, overflowing items will be hidden under a "more" button. The following example hides items after more than 3 are selected. To show hidden items, select the “more” button. Select "show less" to hide extra items again.
102
+ ### Multiple typeahead with labels
120
103
 
121
- A multiple typeahead can be used to allow users to select multiple options from a list. Additionally, you can render a chip group to be placed in the select toggle.
104
+ A multiple typeahead can be used to allow users to select multiple options from a list. Additionally, you can render a label group to be placed in the select toggle.
122
105
 
123
106
  When more items than the allowed limit are selected, overflowing items will be hidden under a "more" button. The following example hides items after more than 3 are selected. To show hidden items, select the “more” button. Select "show less" to hide extra items again.
124
107
 
@@ -127,20 +110,14 @@ When more items than the allowed limit are selected, overflowing items will be h
127
110
  ```
128
111
 
129
112
  ### Multiple typeahead with create option
130
- If the text that is entered into a typeahead doesn't match a menu item, users can choose to create a new option that matches the text input. You can also combine this create functionality with a chip group to display created items as chips."
131
113
 
132
- If the text that is entered into a typeahead doesn't match a menu item, users can choose to create a new option that matches the text input. You can also combine this create functionality with a chip group to display created items as chips."
133
-
134
- If the text that is entered into a typeahead doesn't match a menu item, users can choose to create a new option that matches the text input. You can also combine this create functionality with a chip group to display created items as chips."
114
+ If the text that is entered into a typeahead doesn't match a menu item, users can choose to create a new option that matches the text input. You can also combine this create functionality with a label group to display created items as labels.
135
115
 
136
116
  ```ts file="./SelectMultiTypeaheadCreatable.tsx"
137
117
 
138
118
  ```
139
119
 
140
120
  ### Multiple typeahead with checkboxes
141
- By default, a multiple typeahead select allows you to select multiple menu items, placing a checkmark beside selected items. Like basic checkbox select menus, you can add checkboxes to your menu items. This approach may be more accurate and comprehensive for more complex menu scenarios like filtering.
142
-
143
- By default, a multiple typeahead select allows you to select multiple menu items, placing a checkmark beside selected items. Like basic checkbox select menus, you can add checkboxes to your menu items. This approach may be more accurate and comprehensive for more complex menu scenarios like filtering.
144
121
 
145
122
  By default, a multiple typeahead select allows you to select multiple menu items, placing a checkmark beside selected items. Like basic checkbox select menus, you can add checkboxes to your menu items. This approach may be more accurate and comprehensive for more complex menu scenarios like filtering.
146
123
 
@@ -39,16 +39,16 @@ class BannerDemo extends React.Component {
39
39
  return (
40
40
  <Fragment>
41
41
  <DashboardWrapper banner={banner} breadcrumb={null}>
42
- <PageSection>
42
+ <PageSection aria-labelledby="main-title">
43
43
  <Content>
44
- <h1>Main title</h1>
44
+ <h1 id="main-title">Main title</h1>
45
45
  <p>
46
46
  Body text should be Red Hat Text at 1rem(16px). It should have leading of 1.5rem(24px) because <br />
47
47
  of it’s relative line height of 1.5.
48
48
  </p>
49
49
  </Content>
50
50
  </PageSection>
51
- <PageSection>
51
+ <PageSection aria-label='Cards gallery'>
52
52
  <Gallery hasGutter>
53
53
  {Array.from({ length: 30 }).map((_value, index) => (
54
54
  <GalleryItem key={index}>
@@ -112,9 +112,9 @@ class BannerDemo extends React.Component {
112
112
  </FlexItem>
113
113
  <FlexItem grow={{ default: 'grow' }} style={{ minHeight: 0 }}>
114
114
  <DashboardWrapper breadcrumb={null}>
115
- <PageSection>
115
+ <PageSection aria-labelledby="main-title">
116
116
  <Content>
117
- <h1>Main title</h1>
117
+ <h1 id='main-title'>Main title</h1>
118
118
  <p>
119
119
  Body text should be Red Hat Text at 1rem(16px). It should have leading of 1.5rem(24px) because{' '}
120
120
  <br />
@@ -122,7 +122,7 @@ class BannerDemo extends React.Component {
122
122
  </p>
123
123
  </Content>
124
124
  </PageSection>
125
- <PageSection>
125
+ <PageSection aria-label='Cards gallery'>
126
126
  <Gallery hasGutter>
127
127
  {Array.from({ length: 30 }).map((_value, index) => (
128
128
  <GalleryItem key={index}>
@@ -465,16 +465,16 @@ export const CardViewBasic: React.FunctionComponent = () => {
465
465
  return (
466
466
  <Fragment>
467
467
  <DashboardWrapper mainContainerId="main-content-card-view-default-nav" breadcrumb={null}>
468
- <PageSection>
468
+ <PageSection aria-labelledby="projects">
469
469
  <Content>
470
- <h1>Projects</h1>
470
+ <h1 id="projects">Projects</h1>
471
471
  <p>This is a demo that showcases PatternFly cards.</p>
472
472
  </Content>
473
473
  <Toolbar id="toolbar-group-types" clearAllFilters={onDelete}>
474
474
  <ToolbarContent>{toolbarItems}</ToolbarContent>
475
475
  </Toolbar>
476
476
  </PageSection>
477
- <PageSection isFilled>
477
+ <PageSection isFilled aria-label="Selectable card gallery">
478
478
  <Gallery hasGutter aria-label="Selectable card container">
479
479
  <Card isCompact>
480
480
  <Bullseye>
@@ -546,7 +546,12 @@ export const CardViewBasic: React.FunctionComponent = () => {
546
546
  ))}
547
547
  </Gallery>
548
548
  </PageSection>
549
- <PageSection isFilled={false} stickyOnBreakpoint={{ default: 'bottom' }} padding={{ default: 'noPadding' }}>
549
+ <PageSection
550
+ isFilled={false}
551
+ stickyOnBreakpoint={{ default: 'bottom' }}
552
+ padding={{ default: 'noPadding' }}
553
+ aria-label="Pagination controls"
554
+ >
550
555
  <Pagination
551
556
  itemCount={totalItemCount}
552
557
  page={page}
@@ -33,13 +33,15 @@ export const DataListActionable: React.FunctionComponent = () => {
33
33
 
34
34
  return (
35
35
  <DashboardWrapper mainContainerId="main-content-datalist-view-actions" breadcrumb={null}>
36
- <PageSection>
36
+ <PageSection aria-labelledby="projects">
37
37
  <Content>
38
- <Title headingLevel="h1">Projects</Title>
38
+ <Title headingLevel="h1" id="projects">
39
+ Projects
40
+ </Title>
39
41
  <Content component="p">This is a demo that showcases PatternFly Data List</Content>
40
42
  </Content>
41
43
  </PageSection>
42
- <PageSection>
44
+ <PageSection aria-label="Data list of projects">
43
45
  <DataList aria-label="single action data list example ">
44
46
  {!isDeleted && (
45
47
  <DataListItem aria-labelledby="single-action-item1">
@@ -69,9 +69,9 @@ export const DataListBasic: React.FunctionComponent = () => {
69
69
  return (
70
70
  <Fragment>
71
71
  <DashboardWrapper mainContainerId="main-content-datalist-view-default-nav" breadcrumb={null}>
72
- <PageSection>
72
+ <PageSection aria-labelledby="projects">
73
73
  <Content>
74
- <h1>Projects</h1>
74
+ <h1 id="projects">Projects</h1>
75
75
  <p>This is a demo that showcases PatternFly data list</p>
76
76
  </Content>
77
77
  </PageSection>
@@ -133,9 +133,9 @@ export const DataListExpandableControlInToolbar: React.FunctionComponent = () =>
133
133
  return (
134
134
  <Fragment>
135
135
  <DashboardWrapper mainContainerId="main-content-datalist-view-default-nav" breadcrumb={null}>
136
- <PageSection>
136
+ <PageSection aria-labelledby="projects">
137
137
  <Content>
138
- <h1>Projects</h1>
138
+ <h1 id="projects">Projects</h1>
139
139
  <p>This is a demo that showcases PatternFly data list</p>
140
140
  </Content>
141
141
  </PageSection>
@@ -113,9 +113,11 @@ export const DataListStaticBottomPagination: React.FunctionComponent = () => {
113
113
 
114
114
  return (
115
115
  <DashboardWrapper mainContainerId="main-content-datalist-view-pagination" breadcrumb={null}>
116
- <PageSection>
116
+ <PageSection aria-labelledby="projects">
117
117
  <Content>
118
- <Content component="h1">Projects</Content>
118
+ <Content component="h1" id="projects">
119
+ Projects
120
+ </Content>
119
121
  <Content component="p">This is a demo that showcases PatternFly Data List</Content>
120
122
  </Content>
121
123
  </PageSection>
@@ -18,16 +18,16 @@ import { DashboardWrapper } from '@patternfly/react-core/dist/js/demos/Dashboard
18
18
 
19
19
  export const DescriptionListBasic: React.FunctionComponent = () => (
20
20
  <DashboardWrapper>
21
- <PageSection>
21
+ <PageSection aria-labelledby="projects">
22
22
  <Content>
23
- <Content component="h1">Projects</Content>
23
+ <h1 id="projects">Projects</h1>
24
24
  <Content component="p">This is a full page demo</Content>
25
25
  </Content>
26
26
  </PageSection>
27
- <PageSection>
27
+ <PageSection aria-labelledby="details">
28
28
  <Card>
29
29
  <CardHeader>
30
- <Title headingLevel="h2" size="lg">
30
+ <Title headingLevel="h2" size="lg" id="details">
31
31
  Details
32
32
  </Title>
33
33
  </CardHeader>
@@ -150,13 +150,15 @@ export const DescriptionListInDrawer: React.FunctionComponent = () => {
150
150
  isNotificationDrawerExpanded={isExpanded}
151
151
  onNotificationDrawerExpand={onExpand}
152
152
  >
153
- <PageSection>
153
+ <PageSection aria-labelledby="main-title">
154
154
  <Content>
155
- <Content component="h1">Main title</Content>
155
+ <Content component="h1" id="main-title">
156
+ Main title
157
+ </Content>
156
158
  <Content component="p">This is a full page demo.</Content>
157
159
  </Content>
158
160
  </PageSection>
159
- <PageSection>{drawerContent}</PageSection>
161
+ <PageSection aria-label="Drawer Content">{drawerContent}</PageSection>
160
162
  </DashboardWrapper>
161
163
  );
162
164
  };
@@ -79,8 +79,8 @@ ScrollspyH2 = () => {
79
79
 
80
80
  return (
81
81
  <DashboardWrapper breadcrumb={null} mainContainerId="scrollable-element">
82
- <PageSection>
83
- <Title headingLevel="h1" size="2xl">
82
+ <PageSection aria-labelledby='main-title'>
83
+ <Title headingLevel="h1" size="2xl" id='main-title'>
84
84
  Main title
85
85
  </Title>
86
86
  <Switch
@@ -90,10 +90,10 @@ ScrollspyH2 = () => {
90
90
  onChange={(_event, check) => setIsVertical(check)}
91
91
  />
92
92
  </PageSection>
93
- <PageSection padding={{ default: 'noPadding' }}>
93
+ <PageSection padding={{ default: 'noPadding' }} >
94
94
  <Sidebar hasGutter orientation={!isVertical && 'stack'}>
95
95
  <SidebarPanel variant="sticky">
96
- <PageSection>
96
+ <PageSection aria-label='Jump links navigation'>
97
97
  <JumpLinks
98
98
  isVertical={isVertical}
99
99
  isCentered={!isVertical}
@@ -113,7 +113,7 @@ ScrollspyH2 = () => {
113
113
  </PageSection>
114
114
  </SidebarPanel>
115
115
  <SidebarContent hasNoBackground>
116
- <PageSection>
116
+ <PageSection aria-label='Main content'>
117
117
  <Content>
118
118
  {headings.map(i => (
119
119
  <div key={i} style={{ maxWidth: '800px', marginBottom: '32px' }}>
package/src/demos/Tabs.md CHANGED
@@ -159,7 +159,7 @@ TabsOpenDemo = () => {
159
159
  return (
160
160
  <DashboardWrapper hasNoBreadcrumb>
161
161
  {tabsBreadcrumb}
162
- <PageSection isWidthLimited>
162
+ <PageSection isWidthLimited aria-label='Pod header'>
163
163
  <Flex
164
164
  spaceItems={{ default: 'spaceItemsMd' }}
165
165
  alignItems={{ default: 'alignItemsFlexStart' }}
@@ -178,7 +178,7 @@ TabsOpenDemo = () => {
178
178
  </FlexItem>
179
179
  </Flex>
180
180
  </PageSection>
181
- <PageSection type="tabs" isWidthLimited>
181
+ <PageSection type="tabs" isWidthLimited aria-label='Pod navigation tabs'>
182
182
  <Tabs activeKey={activeTabKey} onSelect={handleTabClick} usePageInsets id="open-tabs-example-tabs-list">
183
183
  <Tab eventKey={0} title={<TabTitleText>Details</TabTitleText>} tabContentId={`tabContent${0}`} />
184
184
  <Tab eventKey={1} title={<TabTitleText>YAML</TabTitleText>} tabContentId={`tabContent${1}`} />
@@ -187,7 +187,7 @@ TabsOpenDemo = () => {
187
187
  <Tab eventKey={4} title={<TabTitleText>Terminal</TabTitleText>} tabContentId={`tabContent${4}`} />
188
188
  </Tabs>
189
189
  </PageSection>
190
- <PageSection isWidthLimited>
190
+ <PageSection isWidthLimited aria-label='Pod content'>
191
191
  <TabContent key={0} eventKey={0} id={`tabContent${0}`} activeKey={activeTabKey} hidden={0 !== activeTabKey}>
192
192
  <TabContentBody>{tabContent}</TabContentBody>
193
193
  </TabContent>
@@ -355,7 +355,7 @@ TabsOpenWithSecondaryTabsDemo = () => {
355
355
  return (
356
356
  <DashboardWrapper hasNoBreadcrumb>
357
357
  {tabsBreadcrumb}
358
- <PageSection isWidthLimited>
358
+ <PageSection isWidthLimited aria-label='Pod header'>
359
359
  <Flex
360
360
  spaceItems={{ default: 'spaceItemsMd' }}
361
361
  alignItems={{ default: 'alignItemsFlexStart' }}
@@ -374,7 +374,7 @@ TabsOpenWithSecondaryTabsDemo = () => {
374
374
  </FlexItem>
375
375
  </Flex>
376
376
  </PageSection>
377
- <PageSection type="tabs" isWidthLimited>
377
+ <PageSection type="tabs" isWidthLimited aria-label='Pod navigation tabs'>
378
378
  <Tabs activeKey={activeTabKey} onSelect={handleTabClick} usePageInsets id="open-tabs-example-tabs-list">
379
379
  <Tab eventKey={0} title={<TabTitleText>Details</TabTitleText>} tabContentId={`tabContent${0}`} />
380
380
  <Tab eventKey={1} title={<TabTitleText>YAML</TabTitleText>} tabContentId={`tabContent${1}`} />
@@ -383,7 +383,7 @@ TabsOpenWithSecondaryTabsDemo = () => {
383
383
  <Tab eventKey={4} title={<TabTitleText>Terminal</TabTitleText>} tabContentId={`tabContent${4}`} />
384
384
  </Tabs>
385
385
  </PageSection>
386
- <PageSection isWidthLimited padding={{ default: 'noPadding' }}>
386
+ <PageSection isWidthLimited padding={{ default: 'noPadding' }} aria-label='Pod content'>
387
387
  <TabContent key={0} eventKey={0} id={`tabContent${0}`} activeKey={activeTabKey} hidden={0 !== activeTabKey}>
388
388
  <TabContentBody>
389
389
  <Tabs
@@ -312,9 +312,9 @@ export const AlertGroupToastWithNotificationDrawer: React.FunctionComponent = ()
312
312
  notificationDrawer={notificationDrawer}
313
313
  isNotificationDrawerExpanded={isDrawerExpanded}
314
314
  >
315
- <PageSection>
315
+ <PageSection aria-labelledby="alert-group-title">
316
316
  <Content>
317
- <h1>Alert group with notification drawer demo</h1>
317
+ <h1 id="alert-group-title">Alert group with notification drawer demo</h1>
318
318
  <p>
319
319
  New alerts can be added with the following buttons. Each alert has a timeout of 7 seconds, however, even
320
320
  after the timeout expires, all alerts are still visible in the notification drawer. By default, only 3
@@ -324,7 +324,7 @@ export const AlertGroupToastWithNotificationDrawer: React.FunctionComponent = ()
324
324
  </Content>
325
325
  </PageSection>
326
326
 
327
- <PageSection>
327
+ <PageSection aria-label="Alert Buttons">
328
328
  <Button variant="secondary" onClick={() => addNewNotification('success')} style={alertButtonStyle}>
329
329
  Add toast success alert
330
330
  </Button>
@@ -344,10 +344,10 @@ export const AlertGroupToastWithNotificationDrawer: React.FunctionComponent = ()
344
344
  </Button>
345
345
  </PageSection>
346
346
 
347
- <PageSection>
347
+ <PageSection aria-labelledby="max-displayed-alerts-title">
348
348
  <Content>
349
349
  <br />
350
- <h2>Max displayed alerts</h2>
350
+ <h2 id="max-displayed-alerts-title">Max displayed alerts</h2>
351
351
  <p>Adjust the maximum number of displayed alerts.</p>
352
352
  </Content>
353
353
  <NumberInput
@@ -364,7 +364,7 @@ export const AlertGroupToastWithNotificationDrawer: React.FunctionComponent = ()
364
364
  style={{ margin: '12px 0' }}
365
365
  />
366
366
  </PageSection>
367
- <PageSection>
367
+ <PageSection component="div">
368
368
  <AlertGroup
369
369
  hasAnimations
370
370
  isToast
@@ -11,9 +11,9 @@ export const Name = () => {
11
11
 
12
12
  return (
13
13
  <DashboardWrapper breadcrumb={null}>
14
- <PageSection>
14
+ <PageSection aria-labelledby="main-title">
15
15
  <Content>
16
- <h1>Main title</h1>
16
+ <h1 id="main-title">Main title</h1>
17
17
  <p>
18
18
  Body text should be Red Hat Text at 1rem(16px). It should have leading of 1.5rem(24px) because <br />
19
19
  of it’s relative line height of 1.5.
@@ -308,15 +308,17 @@ export const MastheadWithHorizontalNav: React.FunctionComponent = () => {
308
308
  isBreadcrumbWidthLimited
309
309
  isBreadcrumbGrouped
310
310
  additionalGroupedContent={
311
- <PageSection>
311
+ <PageSection aria-labelledby="main-title">
312
312
  <Content>
313
- <Content component="h1">Main title</Content>
313
+ <Content component="h1" id="main-title">
314
+ Main title
315
+ </Content>
314
316
  <Content component="p">This is a full page demo.</Content>
315
317
  </Content>
316
318
  </PageSection>
317
319
  }
318
320
  >
319
- <PageSection>
321
+ <PageSection aria-label="Card gallery">
320
322
  <Gallery hasGutter>
321
323
  {Array.from({ length: 10 }).map((_value, index) => (
322
324
  <GalleryItem key={index}>