@patternfly/react-core 6.3.0-prerelease.9 → 6.3.1-prerelease.0

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 (518) hide show
  1. package/CHANGELOG.md +154 -0
  2. package/CONTRIBUTING.md +3 -5
  3. package/components/package.json +1 -1
  4. package/deprecated/package.json +1 -1
  5. package/dist/dynamic/components/AboutModal/package.json +1 -1
  6. package/dist/dynamic/components/Accordion/package.json +1 -1
  7. package/dist/dynamic/components/ActionList/package.json +1 -1
  8. package/dist/dynamic/components/Alert/package.json +1 -1
  9. package/dist/dynamic/components/Avatar/package.json +1 -1
  10. package/dist/dynamic/components/BackToTop/package.json +1 -1
  11. package/dist/dynamic/components/Backdrop/package.json +1 -1
  12. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  13. package/dist/dynamic/components/Badge/package.json +1 -1
  14. package/dist/dynamic/components/Banner/package.json +1 -1
  15. package/dist/dynamic/components/Brand/package.json +1 -1
  16. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  17. package/dist/dynamic/components/Button/package.json +1 -1
  18. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  19. package/dist/dynamic/components/Card/package.json +1 -1
  20. package/dist/dynamic/components/Checkbox/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/Content/package.json +1 -1
  24. package/dist/dynamic/components/DataList/package.json +1 -1
  25. package/dist/dynamic/components/DatePicker/package.json +1 -1
  26. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  27. package/dist/dynamic/components/Divider/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/TextArea/package.json +1 -1
  72. package/dist/dynamic/components/TextInput/package.json +1 -1
  73. package/dist/dynamic/components/TextInputGroup/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/Tile/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/package.json +1 -1
  91. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  92. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  93. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  94. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  95. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  96. package/dist/dynamic/helpers/constants/package.json +1 -1
  97. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  98. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  99. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  100. package/dist/dynamic/helpers/package.json +1 -1
  101. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  102. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  104. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  105. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  106. package/dist/dynamic/helpers/util/package.json +1 -1
  107. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  108. package/dist/dynamic/layouts/Flex/package.json +1 -1
  109. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  110. package/dist/dynamic/layouts/Grid/package.json +1 -1
  111. package/dist/dynamic/layouts/Level/package.json +1 -1
  112. package/dist/dynamic/layouts/Split/package.json +1 -1
  113. package/dist/dynamic/layouts/Stack/package.json +1 -1
  114. package/dist/dynamic/styles/package.json +1 -1
  115. package/dist/dynamic-modules.json +2 -0
  116. package/dist/esm/components/Alert/AlertGroupInline.d.ts.map +1 -1
  117. package/dist/esm/components/Alert/AlertGroupInline.js +7 -1
  118. package/dist/esm/components/Alert/AlertGroupInline.js.map +1 -1
  119. package/dist/esm/components/Button/Button.d.ts +12 -0
  120. package/dist/esm/components/Button/Button.d.ts.map +1 -1
  121. package/dist/esm/components/Button/Button.js +33 -3
  122. package/dist/esm/components/Button/Button.js.map +1 -1
  123. package/dist/esm/components/Button/hamburgerIcon.d.ts +2 -0
  124. package/dist/esm/components/Button/hamburgerIcon.d.ts.map +1 -0
  125. package/dist/esm/components/Button/hamburgerIcon.js +7 -0
  126. package/dist/esm/components/Button/hamburgerIcon.js.map +1 -0
  127. package/dist/esm/components/Card/Card.d.ts +3 -1
  128. package/dist/esm/components/Card/Card.d.ts.map +1 -1
  129. package/dist/esm/components/Card/Card.js +5 -4
  130. package/dist/esm/components/Card/Card.js.map +1 -1
  131. package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  132. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +2 -2
  133. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  134. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
  135. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  136. package/dist/esm/components/DualListSelector/DualListSelector.d.ts +5 -0
  137. package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  138. package/dist/esm/components/DualListSelector/DualListSelector.js +4 -3
  139. package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
  140. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  141. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  142. package/dist/esm/components/DualListSelector/DualListSelectorContext.js +1 -1
  143. package/dist/esm/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  144. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  145. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
  146. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  147. package/dist/esm/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  148. package/dist/esm/components/DualListSelector/DualListSelectorTree.js +4 -1
  149. package/dist/esm/components/DualListSelector/DualListSelectorTree.js.map +1 -1
  150. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
  151. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  152. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js +8 -4
  153. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  154. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +5 -1
  155. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  156. package/dist/esm/components/ExpandableSection/ExpandableSection.js +6 -2
  157. package/dist/esm/components/ExpandableSection/ExpandableSection.js.map +1 -1
  158. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
  159. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  160. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
  161. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  162. package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts +5 -0
  163. package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  164. package/dist/esm/components/Form/FormFieldGroupExpandable.js +2 -2
  165. package/dist/esm/components/Form/FormFieldGroupExpandable.js.map +1 -1
  166. package/dist/esm/components/Form/InternalFormFieldGroup.d.ts +5 -0
  167. package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  168. package/dist/esm/components/Form/InternalFormFieldGroup.js +2 -2
  169. package/dist/esm/components/Form/InternalFormFieldGroup.js.map +1 -1
  170. package/dist/esm/components/Label/Label.js +57 -57
  171. package/dist/esm/components/Label/Label.js.map +1 -1
  172. package/dist/esm/components/Menu/Menu.js +3 -3
  173. package/dist/esm/components/Menu/Menu.js.map +1 -1
  174. package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -0
  175. package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  176. package/dist/esm/components/MenuToggle/MenuToggle.js +4 -3
  177. package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
  178. package/dist/esm/components/Page/PageToggleButton.d.ts +4 -0
  179. package/dist/esm/components/Page/PageToggleButton.d.ts.map +1 -1
  180. package/dist/esm/components/Page/PageToggleButton.js +2 -2
  181. package/dist/esm/components/Page/PageToggleButton.js.map +1 -1
  182. package/dist/esm/components/Popover/Popover.d.ts.map +1 -1
  183. package/dist/esm/components/Popover/Popover.js +11 -1
  184. package/dist/esm/components/Popover/Popover.js.map +1 -1
  185. package/dist/esm/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
  186. package/dist/esm/components/SearchInput/AdvancedSearchMenu.js +13 -19
  187. package/dist/esm/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
  188. package/dist/esm/components/SearchInput/SearchInput.d.ts +4 -0
  189. package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
  190. package/dist/esm/components/SearchInput/SearchInput.js +37 -13
  191. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  192. package/dist/esm/components/Tabs/OverflowTab.d.ts +26 -0
  193. package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -1
  194. package/dist/esm/components/Tabs/OverflowTab.js +2 -2
  195. package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
  196. package/dist/esm/components/Tabs/Tab.d.ts.map +1 -1
  197. package/dist/esm/components/Tabs/Tab.js +5 -2
  198. package/dist/esm/components/Tabs/Tab.js.map +1 -1
  199. package/dist/esm/components/Tabs/Tabs.d.ts +10 -0
  200. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  201. package/dist/esm/components/Tabs/Tabs.js +46 -12
  202. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  203. package/dist/esm/components/Tabs/TabsContext.d.ts +1 -0
  204. package/dist/esm/components/Tabs/TabsContext.d.ts.map +1 -1
  205. package/dist/esm/components/Tabs/TabsContext.js +1 -0
  206. package/dist/esm/components/Tabs/TabsContext.js.map +1 -1
  207. package/dist/esm/components/TextArea/TextArea.d.ts.map +1 -1
  208. package/dist/esm/components/TextArea/TextArea.js +4 -3
  209. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  210. package/dist/esm/components/TreeView/TreeView.d.ts +5 -0
  211. package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
  212. package/dist/esm/components/TreeView/TreeView.js +5 -5
  213. package/dist/esm/components/TreeView/TreeView.js.map +1 -1
  214. package/dist/esm/components/TreeView/TreeViewListItem.d.ts +5 -0
  215. package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  216. package/dist/esm/components/TreeView/TreeViewListItem.js +8 -4
  217. package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
  218. package/dist/esm/components/TreeView/TreeViewRoot.d.ts.map +1 -1
  219. package/dist/esm/components/TreeView/TreeViewRoot.js +2 -2
  220. package/dist/esm/components/TreeView/TreeViewRoot.js.map +1 -1
  221. package/dist/esm/components/Truncate/Truncate.d.ts +11 -8
  222. package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
  223. package/dist/esm/components/Truncate/Truncate.js +16 -9
  224. package/dist/esm/components/Truncate/Truncate.js.map +1 -1
  225. package/dist/esm/demos/DashboardHeader.d.ts.map +1 -1
  226. package/dist/esm/demos/DashboardHeader.js +1 -2
  227. package/dist/esm/demos/DashboardHeader.js.map +1 -1
  228. package/dist/esm/demos/sampleData.d.ts.map +1 -1
  229. package/dist/esm/demos/sampleData.js +225 -226
  230. package/dist/esm/demos/sampleData.js.map +1 -1
  231. package/dist/esm/demos/sampleDataRTL.d.ts +7 -0
  232. package/dist/esm/demos/sampleDataRTL.d.ts.map +1 -0
  233. package/dist/esm/demos/sampleDataRTL.js +128 -0
  234. package/dist/esm/demos/sampleDataRTL.js.map +1 -0
  235. package/dist/esm/helpers/KeyboardHandler.js +3 -2
  236. package/dist/esm/helpers/KeyboardHandler.js.map +1 -1
  237. package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
  238. package/dist/esm/helpers/Popper/Popper.js +1 -0
  239. package/dist/esm/helpers/Popper/Popper.js.map +1 -1
  240. package/dist/esm/helpers/util.d.ts +17 -0
  241. package/dist/esm/helpers/util.d.ts.map +1 -1
  242. package/dist/esm/helpers/util.js +36 -0
  243. package/dist/esm/helpers/util.js.map +1 -1
  244. package/dist/js/components/Alert/AlertGroupInline.d.ts.map +1 -1
  245. package/dist/js/components/Alert/AlertGroupInline.js +6 -0
  246. package/dist/js/components/Alert/AlertGroupInline.js.map +1 -1
  247. package/dist/js/components/Button/Button.d.ts +12 -0
  248. package/dist/js/components/Button/Button.d.ts.map +1 -1
  249. package/dist/js/components/Button/Button.js +33 -3
  250. package/dist/js/components/Button/Button.js.map +1 -1
  251. package/dist/js/components/Button/hamburgerIcon.d.ts +2 -0
  252. package/dist/js/components/Button/hamburgerIcon.d.ts.map +1 -0
  253. package/dist/js/components/Button/hamburgerIcon.js +11 -0
  254. package/dist/js/components/Button/hamburgerIcon.js.map +1 -0
  255. package/dist/js/components/Card/Card.d.ts +3 -1
  256. package/dist/js/components/Card/Card.d.ts.map +1 -1
  257. package/dist/js/components/Card/Card.js +4 -4
  258. package/dist/js/components/Card/Card.js.map +1 -1
  259. package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  260. package/dist/js/components/ClipboardCopy/ClipboardCopy.js +2 -2
  261. package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  262. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
  263. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  264. package/dist/js/components/DualListSelector/DualListSelector.d.ts +5 -0
  265. package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  266. package/dist/js/components/DualListSelector/DualListSelector.js +4 -3
  267. package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
  268. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  269. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  270. package/dist/js/components/DualListSelector/DualListSelectorContext.js +1 -1
  271. package/dist/js/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  272. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  273. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
  274. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  275. package/dist/js/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  276. package/dist/js/components/DualListSelector/DualListSelectorTree.js +4 -1
  277. package/dist/js/components/DualListSelector/DualListSelectorTree.js.map +1 -1
  278. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
  279. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  280. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js +7 -3
  281. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  282. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +5 -1
  283. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  284. package/dist/js/components/ExpandableSection/ExpandableSection.js +6 -2
  285. package/dist/js/components/ExpandableSection/ExpandableSection.js.map +1 -1
  286. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
  287. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  288. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
  289. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  290. package/dist/js/components/Form/FormFieldGroupExpandable.d.ts +5 -0
  291. package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  292. package/dist/js/components/Form/FormFieldGroupExpandable.js +2 -2
  293. package/dist/js/components/Form/FormFieldGroupExpandable.js.map +1 -1
  294. package/dist/js/components/Form/InternalFormFieldGroup.d.ts +5 -0
  295. package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  296. package/dist/js/components/Form/InternalFormFieldGroup.js +2 -2
  297. package/dist/js/components/Form/InternalFormFieldGroup.js.map +1 -1
  298. package/dist/js/components/Label/Label.js +57 -57
  299. package/dist/js/components/Label/Label.js.map +1 -1
  300. package/dist/js/components/Menu/Menu.js +3 -3
  301. package/dist/js/components/Menu/Menu.js.map +1 -1
  302. package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -0
  303. package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  304. package/dist/js/components/MenuToggle/MenuToggle.js +4 -3
  305. package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
  306. package/dist/js/components/Page/PageToggleButton.d.ts +4 -0
  307. package/dist/js/components/Page/PageToggleButton.d.ts.map +1 -1
  308. package/dist/js/components/Page/PageToggleButton.js +2 -2
  309. package/dist/js/components/Page/PageToggleButton.js.map +1 -1
  310. package/dist/js/components/Popover/Popover.d.ts.map +1 -1
  311. package/dist/js/components/Popover/Popover.js +11 -1
  312. package/dist/js/components/Popover/Popover.js.map +1 -1
  313. package/dist/js/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
  314. package/dist/js/components/SearchInput/AdvancedSearchMenu.js +12 -18
  315. package/dist/js/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
  316. package/dist/js/components/SearchInput/SearchInput.d.ts +4 -0
  317. package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
  318. package/dist/js/components/SearchInput/SearchInput.js +36 -12
  319. package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
  320. package/dist/js/components/Tabs/OverflowTab.d.ts +26 -0
  321. package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -1
  322. package/dist/js/components/Tabs/OverflowTab.js +2 -2
  323. package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
  324. package/dist/js/components/Tabs/Tab.d.ts.map +1 -1
  325. package/dist/js/components/Tabs/Tab.js +4 -1
  326. package/dist/js/components/Tabs/Tab.js.map +1 -1
  327. package/dist/js/components/Tabs/Tabs.d.ts +10 -0
  328. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  329. package/dist/js/components/Tabs/Tabs.js +45 -11
  330. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  331. package/dist/js/components/Tabs/TabsContext.d.ts +1 -0
  332. package/dist/js/components/Tabs/TabsContext.d.ts.map +1 -1
  333. package/dist/js/components/Tabs/TabsContext.js +1 -0
  334. package/dist/js/components/Tabs/TabsContext.js.map +1 -1
  335. package/dist/js/components/TextArea/TextArea.d.ts.map +1 -1
  336. package/dist/js/components/TextArea/TextArea.js +4 -3
  337. package/dist/js/components/TextArea/TextArea.js.map +1 -1
  338. package/dist/js/components/TreeView/TreeView.d.ts +5 -0
  339. package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
  340. package/dist/js/components/TreeView/TreeView.js +5 -5
  341. package/dist/js/components/TreeView/TreeView.js.map +1 -1
  342. package/dist/js/components/TreeView/TreeViewListItem.d.ts +5 -0
  343. package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  344. package/dist/js/components/TreeView/TreeViewListItem.js +7 -3
  345. package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
  346. package/dist/js/components/TreeView/TreeViewRoot.d.ts.map +1 -1
  347. package/dist/js/components/TreeView/TreeViewRoot.js +2 -2
  348. package/dist/js/components/TreeView/TreeViewRoot.js.map +1 -1
  349. package/dist/js/components/Truncate/Truncate.d.ts +11 -8
  350. package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
  351. package/dist/js/components/Truncate/Truncate.js +15 -9
  352. package/dist/js/components/Truncate/Truncate.js.map +1 -1
  353. package/dist/js/demos/DashboardHeader.d.ts.map +1 -1
  354. package/dist/js/demos/DashboardHeader.js +1 -2
  355. package/dist/js/demos/DashboardHeader.js.map +1 -1
  356. package/dist/js/demos/sampleData.d.ts.map +1 -1
  357. package/dist/js/demos/sampleData.js +225 -226
  358. package/dist/js/demos/sampleData.js.map +1 -1
  359. package/dist/js/demos/sampleDataRTL.d.ts +7 -0
  360. package/dist/js/demos/sampleDataRTL.d.ts.map +1 -0
  361. package/dist/js/demos/sampleDataRTL.js +131 -0
  362. package/dist/js/demos/sampleDataRTL.js.map +1 -0
  363. package/dist/js/helpers/KeyboardHandler.js +3 -2
  364. package/dist/js/helpers/KeyboardHandler.js.map +1 -1
  365. package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
  366. package/dist/js/helpers/Popper/Popper.js +1 -0
  367. package/dist/js/helpers/Popper/Popper.js.map +1 -1
  368. package/dist/js/helpers/util.d.ts +17 -0
  369. package/dist/js/helpers/util.d.ts.map +1 -1
  370. package/dist/js/helpers/util.js +39 -1
  371. package/dist/js/helpers/util.js.map +1 -1
  372. package/dist/styles/assets/images/icon-help.hbs +3 -0
  373. package/dist/styles/assets/images/icon-outlined-star.hbs +3 -0
  374. package/dist/styles/assets/images/icon-star.hbs +3 -0
  375. package/dist/styles/base-no-reset.css +52 -11
  376. package/dist/styles/base.css +52 -11
  377. package/dist/umd/assets/{output-iWrWEXUG.css → output-CQ44UfaW.css} +20162 -19420
  378. package/dist/umd/react-core.min.js +3 -3
  379. package/helpers/package.json +1 -1
  380. package/layouts/package.json +1 -1
  381. package/next/package.json +1 -1
  382. package/package.json +6 -6
  383. package/src/components/Alert/AlertGroupInline.tsx +13 -2
  384. package/src/components/Button/Button.tsx +78 -5
  385. package/src/components/Button/__tests__/Button.test.tsx +380 -74
  386. package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
  387. package/src/components/Button/examples/Button.md +57 -14
  388. package/src/components/Button/examples/ButtonFavorite.tsx +18 -0
  389. package/src/components/Button/examples/ButtonHamburger.tsx +9 -0
  390. package/src/components/Button/examples/ButtonSettings.tsx +10 -0
  391. package/src/components/Button/hamburgerIcon.tsx +13 -0
  392. package/src/components/Card/Card.tsx +9 -3
  393. package/src/components/Card/__tests__/Card.test.tsx +11 -0
  394. package/src/components/Card/examples/Card.md +1 -1
  395. package/src/components/Card/examples/CardSelectable.tsx +73 -60
  396. package/src/components/Card/examples/CardSingleSelectable.tsx +65 -48
  397. package/src/components/ClipboardCopy/ClipboardCopy.tsx +2 -1
  398. package/src/components/ClipboardCopy/ClipboardCopyToggle.tsx +1 -1
  399. package/src/components/ClipboardCopy/__tests__/ClipboardCopyToggle.test.tsx +7 -1
  400. package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyToggle.test.tsx.snap +0 -1
  401. package/src/components/DualListSelector/DualListSelector.tsx +18 -4
  402. package/src/components/DualListSelector/DualListSelectorContext.ts +2 -1
  403. package/src/components/DualListSelector/DualListSelectorListWrapper.tsx +8 -5
  404. package/src/components/DualListSelector/DualListSelectorTree.tsx +4 -0
  405. package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +17 -2
  406. package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +32 -1
  407. package/src/components/DualListSelector/__tests__/DualListSelectorTreeItem.test.tsx +55 -0
  408. package/src/components/DualListSelector/examples/DualListSelectorTree.tsx +1 -1
  409. package/src/components/ExpandableSection/ExpandableSection.tsx +13 -1
  410. package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +5 -1
  411. package/src/components/ExpandableSection/__tests__/ExpandableSection.test.tsx +85 -23
  412. package/src/components/ExpandableSection/__tests__/ExpandableSectionToggle.test.tsx +32 -0
  413. package/src/components/ExpandableSection/__tests__/__snapshots__/ExpandableSection.test.tsx.snap +1 -63
  414. package/src/components/ExpandableSection/examples/ExpandableSection.md +2 -0
  415. package/src/components/ExpandableSection/examples/ExpandableSectionDetached.tsx +1 -1
  416. package/src/components/Form/FormFieldGroupExpandable.tsx +7 -0
  417. package/src/components/Form/InternalFormFieldGroup.tsx +19 -3
  418. package/src/components/Form/__tests__/FormFieldGroupExpandable.test.tsx +55 -0
  419. package/src/components/Form/examples/FormFieldGroups.tsx +7 -1
  420. package/src/components/Label/Label.tsx +63 -63
  421. package/src/components/Masthead/examples/MastheadBasic.tsx +1 -2
  422. package/src/components/Masthead/examples/MastheadBasicMixedContent.tsx +1 -2
  423. package/src/components/Masthead/examples/MastheadDisplayInline.tsx +1 -2
  424. package/src/components/Masthead/examples/MastheadDisplayStack.tsx +1 -2
  425. package/src/components/Masthead/examples/MastheadDisplayStackInlineResponsive.tsx +1 -2
  426. package/src/components/Masthead/examples/MastheadInsets.tsx +1 -2
  427. package/src/components/Masthead/examples/MastheadLogoCustomComponent.tsx +1 -2
  428. package/src/components/Menu/Menu.tsx +3 -3
  429. package/src/components/MenuToggle/MenuToggle.tsx +6 -1
  430. package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +59 -45
  431. package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +9 -9
  432. package/src/components/MenuToggle/examples/MenuToggle.md +14 -30
  433. package/src/components/MenuToggle/examples/MenuToggleCustomIcon.tsx +17 -0
  434. package/src/components/MenuToggle/examples/MenuToggleSettings.tsx +8 -0
  435. package/src/components/Page/PageToggleButton.tsx +9 -2
  436. package/src/components/Page/examples/Page.md +1 -1
  437. package/src/components/Page/examples/PageCenteredSection.tsx +4 -8
  438. package/src/components/Page/examples/PageGroupSection.tsx +2 -5
  439. package/src/components/Page/examples/PageMainSectionPadding.tsx +2 -5
  440. package/src/components/Page/examples/PageMainSectionVariations.tsx +2 -5
  441. package/src/components/Page/examples/PageMultipleSidebarBody.tsx +2 -5
  442. package/src/components/Page/examples/PageUncontrolledNav.tsx +1 -4
  443. package/src/components/Page/examples/PageVerticalNav.tsx +2 -5
  444. package/src/components/Page/examples/PageWithOrWithoutFill.tsx +2 -5
  445. package/src/components/Popover/Popover.tsx +13 -1
  446. package/src/components/SearchInput/AdvancedSearchMenu.tsx +15 -23
  447. package/src/components/SearchInput/SearchInput.tsx +111 -15
  448. package/src/components/SearchInput/__tests__/SearchInput.test.tsx +84 -0
  449. package/src/components/SearchInput/examples/SearchInput.md +11 -2
  450. package/src/components/SearchInput/examples/SearchInputWithExpandable.tsx +6 -1
  451. package/src/components/Skeleton/examples/SkeletonText.tsx +0 -1
  452. package/src/components/Tabs/OverflowTab.tsx +29 -0
  453. package/src/components/Tabs/Tab.tsx +6 -2
  454. package/src/components/Tabs/Tabs.tsx +76 -11
  455. package/src/components/Tabs/TabsContext.ts +2 -0
  456. package/src/components/Tabs/__tests__/Tabs.test.tsx +65 -1
  457. package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +39 -26
  458. package/src/components/Tabs/examples/Tabs.md +1 -1
  459. package/src/components/TextArea/TextArea.tsx +5 -3
  460. package/src/components/TextArea/__tests__/__snapshots__/TextArea.test.tsx.snap +1 -1
  461. package/src/components/Timestamp/examples/TimestampBasicFormats.tsx +1 -1
  462. package/src/components/Timestamp/examples/TimestampDefaultTooltip.tsx +1 -1
  463. package/src/components/TreeView/TreeView.tsx +9 -0
  464. package/src/components/TreeView/TreeViewListItem.tsx +18 -5
  465. package/src/components/TreeView/TreeViewRoot.tsx +4 -2
  466. package/src/components/TreeView/__tests__/TreeView.test.tsx +8 -1
  467. package/src/components/TreeView/__tests__/TreeViewList.test.tsx +39 -0
  468. package/src/components/TreeView/__tests__/TreeViewListItem.test.tsx +17 -3
  469. package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +3 -0
  470. package/src/components/TreeView/examples/TreeViewCompact.tsx +1 -1
  471. package/src/components/TreeView/examples/TreeViewCompactNoBackground.tsx +8 -1
  472. package/src/components/TreeView/examples/TreeViewGuides.tsx +1 -1
  473. package/src/components/TreeView/examples/TreeViewMultiselectable.tsx +1 -0
  474. package/src/components/TreeView/examples/TreeViewSelectionExpansion.tsx +1 -0
  475. package/src/components/TreeView/examples/TreeViewSingleSelectable.tsx +1 -0
  476. package/src/components/TreeView/examples/TreeViewWithActionItems.tsx +1 -0
  477. package/src/components/TreeView/examples/TreeViewWithBadges.tsx +1 -0
  478. package/src/components/TreeView/examples/TreeViewWithCheckboxes.tsx +9 -1
  479. package/src/components/TreeView/examples/TreeViewWithCustomBadges.tsx +1 -0
  480. package/src/components/TreeView/examples/TreeViewWithIconPerItem.tsx +1 -0
  481. package/src/components/TreeView/examples/TreeViewWithIcons.tsx +1 -0
  482. package/src/components/TreeView/examples/TreeViewWithMemoization.tsx +1 -0
  483. package/src/components/TreeView/examples/TreeViewWithSearch.tsx +1 -0
  484. package/src/components/Truncate/Truncate.tsx +40 -19
  485. package/src/components/Truncate/__tests__/Truncate.test.tsx +24 -0
  486. package/src/components/Truncate/examples/Truncate.md +8 -0
  487. package/src/components/Truncate/examples/TruncateLinks.tsx +22 -0
  488. package/src/demos/CardDemos.md +1 -1
  489. package/src/demos/DashboardHeader.tsx +2 -5
  490. package/src/demos/NotificationDrawer/examples/NotificationDrawerBasic.tsx +2 -5
  491. package/src/demos/NotificationDrawer/examples/NotificationDrawerGrouped.tsx +2 -5
  492. package/src/demos/RTL/RTL.md +1 -0
  493. package/src/demos/RTL/examples/PaginatedTable.tsx +18 -53
  494. package/src/demos/examples/Card/CardAggregateStatus.tsx +2 -6
  495. package/src/demos/examples/Card/CardDetails.tsx +2 -3
  496. package/src/demos/examples/Card/CardEventsView.tsx +2 -3
  497. package/src/demos/examples/Card/CardLogView.tsx +2 -3
  498. package/src/demos/examples/Card/CardStatus.tsx +0 -1
  499. package/src/demos/examples/Card/CardUtilizationDemo3.tsx +0 -1
  500. package/src/demos/examples/Masthead/MastheadWithHorizontalNav.tsx +1 -1
  501. package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +2 -5
  502. package/src/demos/examples/Nav/NavFlyout.tsx +3 -6
  503. package/src/demos/examples/Nav/NavHorizontal.tsx +1 -1
  504. package/src/demos/examples/Nav/NavHorizontalWithSubnav.tsx +2 -5
  505. package/src/demos/examples/Nav/NavManual.tsx +3 -6
  506. package/src/demos/examples/Page/PageContextSelector.tsx +3 -6
  507. package/src/demos/examples/Page/PageStickySectionBreadcrumb.tsx +2 -5
  508. package/src/demos/examples/Page/PageStickySectionGroup.tsx +2 -5
  509. package/src/demos/examples/Page/PageStickySectionGroupAlternate.tsx +2 -5
  510. package/src/demos/examples/Toolbar/ConsoleLogViewerToolbar.tsx +2 -3
  511. package/src/demos/examples/Wizard/InPageWithDrawer.tsx +1 -4
  512. package/src/demos/examples/Wizard/InPageWithDrawerInformationalStep.tsx +1 -4
  513. package/src/demos/sampleData.tsx +225 -227
  514. package/src/demos/sampleDataRTL.tsx +133 -0
  515. package/src/helpers/KeyboardHandler.tsx +2 -2
  516. package/src/helpers/Popper/Popper.tsx +1 -0
  517. package/src/helpers/util.ts +45 -0
  518. package/src/demos/RTL/examples/PaginatedTable.jsx +0 -504
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`menu toggle passes additional classes 1`] = `
3
+ exports[`Old Snapshot tests - remove when refactoring passes additional classes 1`] = `
4
4
  <DocumentFragment>
5
5
  <button
6
6
  aria-expanded="false"
@@ -40,7 +40,7 @@ exports[`menu toggle passes additional classes 1`] = `
40
40
  </DocumentFragment>
41
41
  `;
42
42
 
43
- exports[`menu toggle renders successfully 1`] = `
43
+ exports[`Old Snapshot tests - remove when refactoring renders successfully 1`] = `
44
44
  <DocumentFragment>
45
45
  <button
46
46
  aria-expanded="false"
@@ -80,7 +80,7 @@ exports[`menu toggle renders successfully 1`] = `
80
80
  </DocumentFragment>
81
81
  `;
82
82
 
83
- exports[`menu toggle shows badge 1`] = `
83
+ exports[`Old Snapshot tests - remove when refactoring shows badge 1`] = `
84
84
  <DocumentFragment>
85
85
  <button
86
86
  aria-expanded="false"
@@ -129,7 +129,7 @@ exports[`menu toggle shows badge 1`] = `
129
129
  </DocumentFragment>
130
130
  `;
131
131
 
132
- exports[`menu toggle shows icon 1`] = `
132
+ exports[`Old Snapshot tests - remove when refactoring shows icon 1`] = `
133
133
  <DocumentFragment>
134
134
  <button
135
135
  aria-expanded="false"
@@ -186,7 +186,7 @@ exports[`menu toggle shows icon 1`] = `
186
186
  </DocumentFragment>
187
187
  `;
188
188
 
189
- exports[`menu toggle shows isDisabled 1`] = `
189
+ exports[`Old Snapshot tests - remove when refactoring shows isDisabled 1`] = `
190
190
  <DocumentFragment>
191
191
  <button
192
192
  aria-expanded="false"
@@ -227,7 +227,7 @@ exports[`menu toggle shows isDisabled 1`] = `
227
227
  </DocumentFragment>
228
228
  `;
229
229
 
230
- exports[`menu toggle shows isExpanded 1`] = `
230
+ exports[`Old Snapshot tests - remove when refactoring shows isExpanded 1`] = `
231
231
  <DocumentFragment>
232
232
  <button
233
233
  aria-expanded="true"
@@ -267,7 +267,7 @@ exports[`menu toggle shows isExpanded 1`] = `
267
267
  </DocumentFragment>
268
268
  `;
269
269
 
270
- exports[`menu toggle shows isPlain 1`] = `
270
+ exports[`Old Snapshot tests - remove when refactoring shows isPlain 1`] = `
271
271
  <DocumentFragment>
272
272
  <button
273
273
  aria-expanded="false"
@@ -298,7 +298,7 @@ exports[`menu toggle shows isPlain 1`] = `
298
298
  </DocumentFragment>
299
299
  `;
300
300
 
301
- exports[`menu toggle shows isPrimary 1`] = `
301
+ exports[`Old Snapshot tests - remove when refactoring shows isPrimary 1`] = `
302
302
  <DocumentFragment>
303
303
  <button
304
304
  aria-expanded="false"
@@ -338,7 +338,7 @@ exports[`menu toggle shows isPrimary 1`] = `
338
338
  </DocumentFragment>
339
339
  `;
340
340
 
341
- exports[`menu toggle shows plain text 1`] = `
341
+ exports[`Old Snapshot tests - remove when refactoring shows plain text 1`] = `
342
342
  <DocumentFragment>
343
343
  <button
344
344
  aria-expanded="false"
@@ -8,7 +8,7 @@ propComponents: ['MenuToggle', 'MenuToggleAction', 'MenuToggleCheckbox']
8
8
 
9
9
  import { Fragment, useState } from 'react';
10
10
  import './MenuToggle.css'
11
- import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
11
+ import PlusIcon from '@patternfly/react-icons/dist/esm/icons/plus-icon';
12
12
  import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
13
13
  import imgAvatar from '@patternfly/react-core/src/components/assets/avatarImg.svg';
14
14
  import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
@@ -70,38 +70,22 @@ import { MenuToggle, Badge } from '@patternfly/react-core';
70
70
  </Fragment>
71
71
  ```
72
72
 
73
- ### With icons
73
+ ### Settings toggle
74
+
75
+ To create a "settings" menu toggle that will animate on hover and focus, you can pass the `isSettings` property in. Doing so will override the `icon` property, as a specific icon is used internally for the animations.
74
76
 
75
- To add a recognizable icon to a menu toggle, use the `icon` property. The following example adds a `CogIcon` to the toggle.
77
+ ```ts file="./MenuToggleSettings.tsx"
78
+
79
+ ```
80
+
81
+ ### Custom icons
82
+
83
+ To add a recognizable icon to a menu toggle, use the `icon` property. The following example adds a `PlusIcon` to the toggle.
76
84
 
77
85
  For most basic icons, it is recommended to wrap it inside our [icon component](/components/icon).
78
86
 
79
- ```ts
80
- import { Fragment } from 'react';
81
- import { MenuToggle } from '@patternfly/react-core';
82
- import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
87
+ ```ts file="./MenuToggleCustomIcon.tsx"
83
88
 
84
- <Fragment>
85
- <MenuToggle
86
- icon={<CogIcon />}
87
- variant="primary"
88
- >
89
- Icon
90
- </MenuToggle>{' '}
91
- <MenuToggle
92
- icon={<CogIcon />}
93
- variant="secondary"
94
- >
95
- Icon
96
- </MenuToggle>{' '}
97
- <MenuToggle
98
- icon={<CogIcon />}
99
- variant="secondary"
100
- isDisabled
101
- >
102
- Icon
103
- </MenuToggle>
104
- </Fragment>;
105
89
  ```
106
90
 
107
91
  ### With avatar and text
@@ -202,13 +186,13 @@ Variant styling can be applied to split button toggles to adjust their appearanc
202
186
 
203
187
  You can allow users to select a toggle checkbox by clicking either the checkbox or the text label.
204
188
 
205
- To link a split toggle label to the toggle's checkbox, pass both the label and the `<MenuToggleCheckbox>` component to `splitButtonItems`.
189
+ To link a split toggle label to the toggle's checkbox, pass both the label and the `<MenuToggleCheckbox>` component to `splitButtonItems`.
206
190
 
207
191
  ```ts file='MenuToggleSplitButtonCheckboxWithText.tsx'
208
192
 
209
193
  ```
210
194
 
211
- ### Split toggle with checkbox and toggle text
195
+ ### Split toggle with checkbox and toggle text
212
196
 
213
197
  To link a split toggle label to the toggle button itself, pass the label to the `<MenuToggle>` component, instead of `splitButtonItems`.
214
198
 
@@ -0,0 +1,17 @@
1
+ import { Fragment } from 'react';
2
+ import { MenuToggle } from '@patternfly/react-core';
3
+ import PlusIcon from '@patternfly/react-icons/dist/esm/icons/plus-icon';
4
+
5
+ export const MenuToggleCustomIcon: React.FC = () => (
6
+ <Fragment>
7
+ <MenuToggle icon={<PlusIcon />} variant="primary">
8
+ Icon
9
+ </MenuToggle>{' '}
10
+ <MenuToggle icon={<PlusIcon />} variant="secondary">
11
+ Icon
12
+ </MenuToggle>{' '}
13
+ <MenuToggle icon={<PlusIcon />} variant="secondary" isDisabled>
14
+ Icon
15
+ </MenuToggle>
16
+ </Fragment>
17
+ );
@@ -0,0 +1,8 @@
1
+ import { Fragment } from 'react/jsx-runtime';
2
+ import { MenuToggle } from '@patternfly/react-core';
3
+
4
+ export const MenuToggleSettings: React.FunctionComponent = () => (
5
+ <Fragment>
6
+ <MenuToggle isSettings>Settings</MenuToggle> <MenuToggle isSettings variant="plain" aria-label="Settings" />
7
+ </Fragment>
8
+ );
@@ -10,6 +10,10 @@ export interface PageToggleButtonProps extends ButtonProps {
10
10
  onSidebarToggle?: () => void;
11
11
  /** Button id */
12
12
  id?: string;
13
+ /** Adds an accessible name to the toggle button. */
14
+ 'aria-label'?: string;
15
+ /** Flag indicating whether the hamburger button variation with animations should be used. */
16
+ isHamburgerButton?: boolean;
13
17
  }
14
18
 
15
19
  export const PageToggleButton: React.FunctionComponent<PageToggleButtonProps> = ({
@@ -17,6 +21,8 @@ export const PageToggleButton: React.FunctionComponent<PageToggleButtonProps> =
17
21
  isSidebarOpen = true,
18
22
  onSidebarToggle = () => undefined as any,
19
23
  id = 'nav-toggle',
24
+ 'aria-label': ariaLabel = 'Side navigation toggle',
25
+ isHamburgerButton,
20
26
  ...props
21
27
  }: PageToggleButtonProps) => (
22
28
  <PageContextConsumer>
@@ -32,12 +38,13 @@ export const PageToggleButton: React.FunctionComponent<PageToggleButtonProps> =
32
38
  <Button
33
39
  id={id}
34
40
  onClick={sidebarToggle}
35
- aria-label="Side navigation toggle"
41
+ aria-label={ariaLabel}
36
42
  aria-expanded={sidebarOpen ? 'true' : 'false'}
37
43
  variant={ButtonVariant.plain}
44
+ isHamburger={isHamburgerButton}
38
45
  {...props}
39
46
  >
40
- {children}
47
+ {!isHamburgerButton && children}
41
48
  </Button>
42
49
  );
43
50
  }}
@@ -8,7 +8,7 @@ propComponents:
8
8
 
9
9
  import { useState } from 'react';
10
10
  import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
11
- import c_page_section_m_limit_width_MaxWidth from '@patternfly/react-tokens/dist/esm/c_page_section_m_limit_width_MaxWidth';
11
+ import pageSectionWidthLimitMaxWidth from '@patternfly/react-tokens/dist/esm/c_page_section_m_limit_width_MaxWidth';
12
12
 
13
13
  ## Examples
14
14
 
@@ -17,9 +17,7 @@ import {
17
17
  Card,
18
18
  CardBody
19
19
  } from '@patternfly/react-core';
20
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
21
- /* eslint-disable camelcase */
22
- import c_page_section_m_limit_width_MaxWidth from '@patternfly/react-tokens/dist/esm/c_page_section_m_limit_width_MaxWidth';
20
+ import pageSectionWidthLimitMaxWidth from '@patternfly/react-tokens/dist/esm/c_page_section_m_limit_width_MaxWidth';
23
21
 
24
22
  export const PageCenteredSection: React.FunctionComponent = () => {
25
23
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -41,14 +39,12 @@ export const PageCenteredSection: React.FunctionComponent = () => {
41
39
  <MastheadMain>
42
40
  <MastheadToggle>
43
41
  <PageToggleButton
44
- variant="plain"
45
42
  aria-label="Global navigation"
46
43
  isSidebarOpen={isSidebarOpen}
47
44
  onSidebarToggle={onSidebarToggle}
48
45
  id="centered-nav-toggle"
49
- >
50
- <BarsIcon />
51
- </PageToggleButton>
46
+ isHamburgerButton
47
+ />
52
48
  </MastheadToggle>
53
49
  <MastheadBrand>
54
50
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -72,7 +68,7 @@ export const PageCenteredSection: React.FunctionComponent = () => {
72
68
  <Card>
73
69
  <CardBody>
74
70
  When a width limited page section is wider than the value of
75
- <code>{c_page_section_m_limit_width_MaxWidth.name}</code>, the section will be centered in the main section.
71
+ <code>{pageSectionWidthLimitMaxWidth.name}</code>, the section will be centered in the main section.
76
72
  <br />
77
73
  <br />
78
74
  The content in this example is placed in a card to better illustrate how the section behaves when it is
@@ -22,7 +22,6 @@ import {
22
22
  ToolbarContent,
23
23
  ToolbarItem
24
24
  } from '@patternfly/react-core';
25
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
26
25
 
27
26
  export const PageGroupSection: React.FunctionComponent = () => {
28
27
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -44,14 +43,12 @@ export const PageGroupSection: React.FunctionComponent = () => {
44
43
  <MastheadMain>
45
44
  <MastheadToggle>
46
45
  <PageToggleButton
47
- variant="plain"
48
46
  aria-label="Global navigation"
49
47
  isSidebarOpen={isSidebarOpen}
50
48
  onSidebarToggle={onSidebarToggle}
51
49
  id="group-section-nav-toggle"
52
- >
53
- <BarsIcon />
54
- </PageToggleButton>
50
+ isHamburgerButton
51
+ />
55
52
  </MastheadToggle>
56
53
  <MastheadBrand>
57
54
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -15,7 +15,6 @@ import {
15
15
  ToolbarContent,
16
16
  ToolbarItem
17
17
  } from '@patternfly/react-core';
18
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
19
18
 
20
19
  export const PageMainSectionPadding: React.FunctionComponent = () => {
21
20
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -37,14 +36,12 @@ export const PageMainSectionPadding: React.FunctionComponent = () => {
37
36
  <MastheadMain>
38
37
  <MastheadToggle>
39
38
  <PageToggleButton
40
- variant="plain"
41
39
  aria-label="Global navigation"
42
40
  isSidebarOpen={isSidebarOpen}
43
41
  onSidebarToggle={onSidebarToggle}
44
42
  id="main-padding-nav-toggle"
45
- >
46
- <BarsIcon />
47
- </PageToggleButton>
43
+ isHamburgerButton
44
+ />
48
45
  </MastheadToggle>
49
46
  <MastheadBrand>
50
47
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -15,7 +15,6 @@ import {
15
15
  ToolbarContent,
16
16
  ToolbarItem
17
17
  } from '@patternfly/react-core';
18
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
19
18
 
20
19
  export const PageMainSectionPadding: React.FunctionComponent = () => {
21
20
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -37,14 +36,12 @@ export const PageMainSectionPadding: React.FunctionComponent = () => {
37
36
  <MastheadMain>
38
37
  <MastheadToggle>
39
38
  <PageToggleButton
40
- variant="plain"
41
39
  aria-label="Global navigation"
42
40
  isSidebarOpen={isSidebarOpen}
43
41
  onSidebarToggle={onSidebarToggle}
44
42
  id="main-variations-nav-toggle"
45
- >
46
- <BarsIcon />
47
- </PageToggleButton>
43
+ isHamburgerButton
44
+ />
48
45
  </MastheadToggle>
49
46
  <MastheadBrand>
50
47
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -15,7 +15,6 @@ import {
15
15
  ToolbarContent,
16
16
  ToolbarItem
17
17
  } from '@patternfly/react-core';
18
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
19
18
 
20
19
  export const PageMultipleSidebarBody: React.FunctionComponent = () => {
21
20
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -37,14 +36,12 @@ export const PageMultipleSidebarBody: React.FunctionComponent = () => {
37
36
  <MastheadMain>
38
37
  <MastheadToggle>
39
38
  <PageToggleButton
40
- variant="plain"
41
39
  aria-label="Global navigation"
42
40
  isSidebarOpen={isSidebarOpen}
43
41
  onSidebarToggle={onSidebarToggle}
44
42
  id="multiple-sidebar-body-nav-toggle"
45
- >
46
- <BarsIcon />
47
- </PageToggleButton>
43
+ isHamburgerButton
44
+ />
48
45
  </MastheadToggle>
49
46
  <MastheadBrand>
50
47
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -14,7 +14,6 @@ import {
14
14
  ToolbarContent,
15
15
  ToolbarItem
16
16
  } from '@patternfly/react-core';
17
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
18
17
 
19
18
  export const PageUncontrolledNav: React.FunctionComponent = () => {
20
19
  const headerToolbar = (
@@ -29,9 +28,7 @@ export const PageUncontrolledNav: React.FunctionComponent = () => {
29
28
  <Masthead>
30
29
  <MastheadMain>
31
30
  <MastheadToggle>
32
- <PageToggleButton variant="plain" aria-label="Global navigation" id="uncontrolled-nav-toggle">
33
- <BarsIcon />
34
- </PageToggleButton>
31
+ <PageToggleButton isHamburgerButton aria-label="Global navigation" id="uncontrolled-nav-toggle" />
35
32
  </MastheadToggle>
36
33
  <MastheadBrand>
37
34
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -15,7 +15,6 @@ import {
15
15
  ToolbarContent,
16
16
  ToolbarItem
17
17
  } from '@patternfly/react-core';
18
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
19
18
 
20
19
  export const PageVerticalNav: React.FunctionComponent = () => {
21
20
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -37,14 +36,12 @@ export const PageVerticalNav: React.FunctionComponent = () => {
37
36
  <MastheadMain>
38
37
  <MastheadToggle>
39
38
  <PageToggleButton
40
- variant="plain"
39
+ isHamburgerButton
41
40
  aria-label="Global navigation"
42
41
  isSidebarOpen={isSidebarOpen}
43
42
  onSidebarToggle={onSidebarToggle}
44
43
  id="vertical-nav-toggle"
45
- >
46
- <BarsIcon />
47
- </PageToggleButton>
44
+ />
48
45
  </MastheadToggle>
49
46
  <MastheadBrand>
50
47
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -15,7 +15,6 @@ import {
15
15
  ToolbarContent,
16
16
  ToolbarItem
17
17
  } from '@patternfly/react-core';
18
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
19
18
 
20
19
  export const PageWithOrWithoutFill: React.FunctionComponent = () => {
21
20
  const [isSidebarOpen, setIsSidebarOpen] = useState(true);
@@ -37,14 +36,12 @@ export const PageWithOrWithoutFill: React.FunctionComponent = () => {
37
36
  <MastheadMain>
38
37
  <MastheadToggle>
39
38
  <PageToggleButton
40
- variant="plain"
39
+ isHamburgerButton
41
40
  aria-label="Global navigation"
42
41
  isSidebarOpen={isSidebarOpen}
43
42
  onSidebarToggle={onSidebarToggle}
44
43
  id="fill-nav-toggle"
45
- >
46
- <BarsIcon />
47
- </PageToggleButton>
44
+ />
48
45
  </MastheadToggle>
49
46
  <MastheadBrand>
50
47
  <MastheadLogo href="https://patternfly.org" target="_blank">
@@ -422,10 +422,22 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
422
422
  new Promise((resolve) => {
423
423
  const interval = setInterval(() => {
424
424
  if (containers.every((container) => getComputedStyle(container).visibility !== 'hidden')) {
425
- resolve();
426
425
  clearInterval(interval);
426
+ resolve();
427
427
  }
428
428
  }, 10);
429
+
430
+ // Clear interval if promise is never resolved (component unmount)
431
+ const timeout = setTimeout(() => {
432
+ clearInterval(interval);
433
+ resolve(); // Resolve to prevent hanging promise
434
+ }, 5000); // 5 second timeout as safety net
435
+
436
+ // Store cleanup function for potential external cleanup
437
+ (resolve as any)._cleanup = () => {
438
+ clearInterval(interval);
439
+ clearTimeout(timeout);
440
+ };
429
441
  }),
430
442
  tabbableOptions: { displayCheck: 'none' },
431
443
 
@@ -2,7 +2,7 @@ import { useEffect, useRef, useState } from 'react';
2
2
  import { Button } from '../Button';
3
3
  import { ActionGroup, Form, FormGroup } from '../Form';
4
4
  import { TextInput } from '../TextInput';
5
- import { GenerateId, KeyTypes } from '../../helpers';
5
+ import { GenerateId } from '../../helpers';
6
6
  import { SearchInputSearchAttribute } from './SearchInput';
7
7
  import { Panel, PanelMain, PanelMainBody } from '../Panel';
8
8
  import { css } from '@patternfly/react-styles';
@@ -89,6 +89,19 @@ export const AdvancedSearchMenu: React.FunctionComponent<AdvancedSearchMenuProps
89
89
  }, [isSearchMenuOpen]);
90
90
 
91
91
  useEffect(() => {
92
+ const onDocClick = (event: Event) => {
93
+ const clickedWithinSearchInput = parentRef && parentRef.current.contains(event.target as Node);
94
+ if (isSearchMenuOpen && !clickedWithinSearchInput) {
95
+ onToggleAdvancedMenu(event as any);
96
+ }
97
+ };
98
+
99
+ const onEscPress = (event: KeyboardEvent) => {
100
+ if (event.key === 'Escape' && isSearchMenuOpen) {
101
+ onToggleAdvancedMenu(event as any);
102
+ }
103
+ };
104
+
92
105
  document.addEventListener('mousedown', onDocClick);
93
106
  document.addEventListener('touchstart', onDocClick);
94
107
  document.addEventListener('keydown', onEscPress);
@@ -98,28 +111,7 @@ export const AdvancedSearchMenu: React.FunctionComponent<AdvancedSearchMenuProps
98
111
  document.removeEventListener('touchstart', onDocClick);
99
112
  document.removeEventListener('keydown', onEscPress);
100
113
  };
101
- });
102
-
103
- const onDocClick = (event: Event) => {
104
- const clickedWithinSearchInput = parentRef && parentRef.current.contains(event.target as Node);
105
- if (isSearchMenuOpen && !clickedWithinSearchInput) {
106
- onToggleAdvancedMenu(event as any);
107
- }
108
- };
109
-
110
- const onEscPress = (event: KeyboardEvent) => {
111
- if (
112
- isSearchMenuOpen &&
113
- event.key === KeyTypes.Escape &&
114
- parentRef &&
115
- parentRef.current.contains(event.target as Node)
116
- ) {
117
- onToggleAdvancedMenu(event as any);
118
- if (parentInputRef) {
119
- parentInputRef.current.focus();
120
- }
121
- }
122
- };
114
+ }, [isSearchMenuOpen, parentRef, onToggleAdvancedMenu]);
123
115
 
124
116
  const onSearchHandler = (event: React.SyntheticEvent<HTMLButtonElement>) => {
125
117
  event.preventDefault();