@patternfly/react-core 6.5.0-prerelease.2 → 6.5.0-prerelease.21

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 (481) hide show
  1. package/CHANGELOG.md +122 -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/Compass/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/Hero/package.json +1 -0
  38. package/dist/dynamic/components/Hint/package.json +1 -1
  39. package/dist/dynamic/components/Icon/package.json +1 -1
  40. package/dist/dynamic/components/InputGroup/package.json +1 -1
  41. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  42. package/dist/dynamic/components/Label/package.json +1 -1
  43. package/dist/dynamic/components/List/package.json +1 -1
  44. package/dist/dynamic/components/LoginPage/package.json +1 -1
  45. package/dist/dynamic/components/Masthead/package.json +1 -1
  46. package/dist/dynamic/components/Menu/package.json +1 -1
  47. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  48. package/dist/dynamic/components/Modal/package.json +1 -1
  49. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  50. package/dist/dynamic/components/Nav/package.json +1 -1
  51. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  52. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  53. package/dist/dynamic/components/NumberInput/package.json +1 -1
  54. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  55. package/dist/dynamic/components/Page/package.json +1 -1
  56. package/dist/dynamic/components/Pagination/package.json +1 -1
  57. package/dist/dynamic/components/Panel/package.json +1 -1
  58. package/dist/dynamic/components/Popover/package.json +1 -1
  59. package/dist/dynamic/components/Progress/package.json +1 -1
  60. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  61. package/dist/dynamic/components/Radio/package.json +1 -1
  62. package/dist/dynamic/components/SearchInput/package.json +1 -1
  63. package/dist/dynamic/components/Select/package.json +1 -1
  64. package/dist/dynamic/components/Sidebar/package.json +1 -1
  65. package/dist/dynamic/components/SimpleList/package.json +1 -1
  66. package/dist/dynamic/components/Skeleton/package.json +1 -1
  67. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  68. package/dist/dynamic/components/Slider/package.json +1 -1
  69. package/dist/dynamic/components/Spinner/package.json +1 -1
  70. package/dist/dynamic/components/Switch/package.json +1 -1
  71. package/dist/dynamic/components/Tabs/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/TimePicker/package.json +1 -1
  76. package/dist/dynamic/components/Timestamp/package.json +1 -1
  77. package/dist/dynamic/components/Title/package.json +1 -1
  78. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  79. package/dist/dynamic/components/Toolbar/package.json +1 -1
  80. package/dist/dynamic/components/Tooltip/package.json +1 -1
  81. package/dist/dynamic/components/TreeView/package.json +1 -1
  82. package/dist/dynamic/components/Truncate/package.json +1 -1
  83. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/package.json +1 -1
  92. package/dist/dynamic/helpers/AnimationsProvider/AnimationsProvider/package.json +1 -1
  93. package/dist/dynamic/helpers/AnimationsProvider/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  102. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  103. package/dist/dynamic/helpers/package.json +1 -1
  104. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  105. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  106. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  107. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  108. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  109. package/dist/dynamic/helpers/util/package.json +1 -1
  110. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  111. package/dist/dynamic/layouts/Flex/package.json +1 -1
  112. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  113. package/dist/dynamic/layouts/Grid/package.json +1 -1
  114. package/dist/dynamic/layouts/Level/package.json +1 -1
  115. package/dist/dynamic/layouts/Split/package.json +1 -1
  116. package/dist/dynamic/layouts/Stack/package.json +1 -1
  117. package/dist/dynamic/styles/package.json +1 -1
  118. package/dist/dynamic-modules.json +23 -0
  119. package/dist/esm/components/Alert/AlertIcon.d.ts +5 -5
  120. package/dist/esm/components/Card/CardSubtitle.d.ts +9 -0
  121. package/dist/esm/components/Card/CardSubtitle.d.ts.map +1 -0
  122. package/dist/esm/components/Card/CardSubtitle.js +10 -0
  123. package/dist/esm/components/Card/CardSubtitle.js.map +1 -0
  124. package/dist/esm/components/Card/CardTitle.d.ts +2 -0
  125. package/dist/esm/components/Card/CardTitle.d.ts.map +1 -1
  126. package/dist/esm/components/Card/CardTitle.js +5 -3
  127. package/dist/esm/components/Card/CardTitle.js.map +1 -1
  128. package/dist/esm/components/Compass/Compass.d.ts.map +1 -1
  129. package/dist/esm/components/Compass/Compass.js +2 -2
  130. package/dist/esm/components/Compass/Compass.js.map +1 -1
  131. package/dist/esm/components/Compass/CompassContent.d.ts +1 -2
  132. package/dist/esm/components/Compass/CompassContent.d.ts.map +1 -1
  133. package/dist/esm/components/Compass/CompassContent.js.map +1 -1
  134. package/dist/esm/components/Compass/CompassHeader.d.ts +1 -2
  135. package/dist/esm/components/Compass/CompassHeader.d.ts.map +1 -1
  136. package/dist/esm/components/Compass/CompassHeader.js.map +1 -1
  137. package/dist/esm/components/Compass/CompassHero.d.ts +2 -18
  138. package/dist/esm/components/Compass/CompassHero.d.ts.map +1 -1
  139. package/dist/esm/components/Compass/CompassHero.js +2 -39
  140. package/dist/esm/components/Compass/CompassHero.js.map +1 -1
  141. package/dist/esm/components/Compass/CompassMainFooter.d.ts +12 -0
  142. package/dist/esm/components/Compass/CompassMainFooter.d.ts.map +1 -0
  143. package/dist/esm/components/Compass/CompassMainFooter.js +10 -0
  144. package/dist/esm/components/Compass/CompassMainFooter.js.map +1 -0
  145. package/dist/esm/components/Compass/CompassMainHeader.d.ts +11 -4
  146. package/dist/esm/components/Compass/CompassMainHeader.d.ts.map +1 -1
  147. package/dist/esm/components/Compass/CompassMainHeader.js +5 -3
  148. package/dist/esm/components/Compass/CompassMainHeader.js.map +1 -1
  149. package/dist/esm/components/Compass/CompassMainHeaderContent.d.ts +12 -0
  150. package/dist/esm/components/Compass/CompassMainHeaderContent.d.ts.map +1 -0
  151. package/dist/esm/components/Compass/CompassMainHeaderContent.js +10 -0
  152. package/dist/esm/components/Compass/CompassMainHeaderContent.js.map +1 -0
  153. package/dist/esm/components/Compass/CompassMainHeaderTitle.d.ts +12 -0
  154. package/dist/esm/components/Compass/CompassMainHeaderTitle.d.ts.map +1 -0
  155. package/dist/esm/components/Compass/CompassMainHeaderTitle.js +10 -0
  156. package/dist/esm/components/Compass/CompassMainHeaderTitle.js.map +1 -0
  157. package/dist/esm/components/Compass/CompassMainHeaderToolbar.d.ts +12 -0
  158. package/dist/esm/components/Compass/CompassMainHeaderToolbar.d.ts.map +1 -0
  159. package/dist/esm/components/Compass/CompassMainHeaderToolbar.js +10 -0
  160. package/dist/esm/components/Compass/CompassMainHeaderToolbar.js.map +1 -0
  161. package/dist/esm/components/Compass/CompassMessageBar.d.ts +1 -2
  162. package/dist/esm/components/Compass/CompassMessageBar.d.ts.map +1 -1
  163. package/dist/esm/components/Compass/CompassMessageBar.js.map +1 -1
  164. package/dist/esm/components/Compass/CompassNavContent.d.ts +9 -0
  165. package/dist/esm/components/Compass/CompassNavContent.d.ts.map +1 -0
  166. package/dist/esm/components/Compass/CompassNavContent.js +10 -0
  167. package/dist/esm/components/Compass/CompassNavContent.js.map +1 -0
  168. package/dist/esm/components/Compass/CompassNavHome.d.ts +13 -0
  169. package/dist/esm/components/Compass/CompassNavHome.d.ts.map +1 -0
  170. package/dist/esm/components/Compass/CompassNavHome.js +15 -0
  171. package/dist/esm/components/Compass/CompassNavHome.js.map +1 -0
  172. package/dist/esm/components/Compass/CompassNavMain.d.ts +9 -0
  173. package/dist/esm/components/Compass/CompassNavMain.d.ts.map +1 -0
  174. package/dist/esm/components/Compass/CompassNavMain.js +10 -0
  175. package/dist/esm/components/Compass/CompassNavMain.js.map +1 -0
  176. package/dist/esm/components/Compass/CompassNavSearch.d.ts +13 -0
  177. package/dist/esm/components/Compass/CompassNavSearch.d.ts.map +1 -0
  178. package/dist/esm/components/Compass/CompassNavSearch.js +15 -0
  179. package/dist/esm/components/Compass/CompassNavSearch.js.map +1 -0
  180. package/dist/esm/components/Compass/CompassPanel.d.ts +1 -2
  181. package/dist/esm/components/Compass/CompassPanel.d.ts.map +1 -1
  182. package/dist/esm/components/Compass/CompassPanel.js.map +1 -1
  183. package/dist/esm/components/Compass/index.d.ts +8 -0
  184. package/dist/esm/components/Compass/index.d.ts.map +1 -1
  185. package/dist/esm/components/Compass/index.js +8 -0
  186. package/dist/esm/components/Compass/index.js.map +1 -1
  187. package/dist/esm/components/DataList/DataList.d.ts +2 -0
  188. package/dist/esm/components/DataList/DataList.d.ts.map +1 -1
  189. package/dist/esm/components/DataList/DataList.js +2 -2
  190. package/dist/esm/components/DataList/DataList.js.map +1 -1
  191. package/dist/esm/components/Drawer/DrawerPanelContent.d.ts +2 -0
  192. package/dist/esm/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  193. package/dist/esm/components/Drawer/DrawerPanelContent.js +2 -2
  194. package/dist/esm/components/Drawer/DrawerPanelContent.js.map +1 -1
  195. package/dist/esm/components/Dropdown/Dropdown.d.ts +6 -0
  196. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  197. package/dist/esm/components/Dropdown/Dropdown.js +5 -2
  198. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  199. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +13 -2
  200. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  201. package/dist/esm/components/ExpandableSection/ExpandableSection.js +8 -5
  202. package/dist/esm/components/ExpandableSection/ExpandableSection.js.map +1 -1
  203. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +5 -0
  204. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  205. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js +3 -2
  206. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  207. package/dist/esm/components/FormControl/FormControlIcon.d.ts +3 -3
  208. package/dist/esm/components/Hero/Hero.d.ts +32 -0
  209. package/dist/esm/components/Hero/Hero.d.ts.map +1 -0
  210. package/dist/esm/components/Hero/Hero.js +51 -0
  211. package/dist/esm/components/Hero/Hero.js.map +1 -0
  212. package/dist/esm/components/Hero/index.d.ts +2 -0
  213. package/dist/esm/components/Hero/index.d.ts.map +1 -0
  214. package/dist/esm/components/Hero/index.js +2 -0
  215. package/dist/esm/components/Hero/index.js.map +1 -0
  216. package/dist/esm/components/NotificationDrawer/NotificationDrawerListItemHeader.d.ts +5 -5
  217. package/dist/esm/components/Page/Page.d.ts.map +1 -1
  218. package/dist/esm/components/Page/Page.js +1 -0
  219. package/dist/esm/components/Page/Page.js.map +1 -1
  220. package/dist/esm/components/Page/PageContext.d.ts +1 -0
  221. package/dist/esm/components/Page/PageContext.d.ts.map +1 -1
  222. package/dist/esm/components/Page/PageContext.js +1 -0
  223. package/dist/esm/components/Page/PageContext.js.map +1 -1
  224. package/dist/esm/components/Page/PageSidebar.js +2 -2
  225. package/dist/esm/components/Page/PageSidebar.js.map +1 -1
  226. package/dist/esm/components/Progress/Progress.d.ts +2 -0
  227. package/dist/esm/components/Progress/Progress.d.ts.map +1 -1
  228. package/dist/esm/components/Progress/Progress.js +2 -2
  229. package/dist/esm/components/Progress/Progress.js.map +1 -1
  230. package/dist/esm/components/Progress/ProgressContainer.d.ts +2 -0
  231. package/dist/esm/components/Progress/ProgressContainer.d.ts.map +1 -1
  232. package/dist/esm/components/Progress/ProgressContainer.js +2 -2
  233. package/dist/esm/components/Progress/ProgressContainer.js.map +1 -1
  234. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  235. package/dist/esm/components/Tabs/Tabs.js +2 -2
  236. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  237. package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
  238. package/dist/esm/components/Truncate/Truncate.js +5 -4
  239. package/dist/esm/components/Truncate/Truncate.js.map +1 -1
  240. package/dist/esm/components/index.d.ts +1 -0
  241. package/dist/esm/components/index.d.ts.map +1 -1
  242. package/dist/esm/components/index.js +1 -0
  243. package/dist/esm/components/index.js.map +1 -1
  244. package/dist/esm/helpers/constants.d.ts +5 -5
  245. package/dist/js/components/Card/CardSubtitle.d.ts +9 -0
  246. package/dist/js/components/Card/CardSubtitle.d.ts.map +1 -0
  247. package/dist/js/components/Card/CardSubtitle.js +14 -0
  248. package/dist/js/components/Card/CardSubtitle.js.map +1 -0
  249. package/dist/js/components/Card/CardTitle.d.ts +2 -0
  250. package/dist/js/components/Card/CardTitle.d.ts.map +1 -1
  251. package/dist/js/components/Card/CardTitle.js +4 -2
  252. package/dist/js/components/Card/CardTitle.js.map +1 -1
  253. package/dist/js/components/Compass/Compass.d.ts.map +1 -1
  254. package/dist/js/components/Compass/Compass.js +1 -1
  255. package/dist/js/components/Compass/Compass.js.map +1 -1
  256. package/dist/js/components/Compass/CompassContent.d.ts +1 -2
  257. package/dist/js/components/Compass/CompassContent.d.ts.map +1 -1
  258. package/dist/js/components/Compass/CompassContent.js.map +1 -1
  259. package/dist/js/components/Compass/CompassHeader.d.ts +1 -2
  260. package/dist/js/components/Compass/CompassHeader.d.ts.map +1 -1
  261. package/dist/js/components/Compass/CompassHeader.js.map +1 -1
  262. package/dist/js/components/Compass/CompassHero.d.ts +2 -18
  263. package/dist/js/components/Compass/CompassHero.d.ts.map +1 -1
  264. package/dist/js/components/Compass/CompassHero.js +2 -39
  265. package/dist/js/components/Compass/CompassHero.js.map +1 -1
  266. package/dist/js/components/Compass/CompassMainFooter.d.ts +12 -0
  267. package/dist/js/components/Compass/CompassMainFooter.d.ts.map +1 -0
  268. package/dist/js/components/Compass/CompassMainFooter.js +14 -0
  269. package/dist/js/components/Compass/CompassMainFooter.js.map +1 -0
  270. package/dist/js/components/Compass/CompassMainHeader.d.ts +11 -4
  271. package/dist/js/components/Compass/CompassMainHeader.d.ts.map +1 -1
  272. package/dist/js/components/Compass/CompassMainHeader.js +5 -3
  273. package/dist/js/components/Compass/CompassMainHeader.js.map +1 -1
  274. package/dist/js/components/Compass/CompassMainHeaderContent.d.ts +12 -0
  275. package/dist/js/components/Compass/CompassMainHeaderContent.d.ts.map +1 -0
  276. package/dist/js/components/Compass/CompassMainHeaderContent.js +14 -0
  277. package/dist/js/components/Compass/CompassMainHeaderContent.js.map +1 -0
  278. package/dist/js/components/Compass/CompassMainHeaderTitle.d.ts +12 -0
  279. package/dist/js/components/Compass/CompassMainHeaderTitle.d.ts.map +1 -0
  280. package/dist/js/components/Compass/CompassMainHeaderTitle.js +14 -0
  281. package/dist/js/components/Compass/CompassMainHeaderTitle.js.map +1 -0
  282. package/dist/js/components/Compass/CompassMainHeaderToolbar.d.ts +12 -0
  283. package/dist/js/components/Compass/CompassMainHeaderToolbar.d.ts.map +1 -0
  284. package/dist/js/components/Compass/CompassMainHeaderToolbar.js +14 -0
  285. package/dist/js/components/Compass/CompassMainHeaderToolbar.js.map +1 -0
  286. package/dist/js/components/Compass/CompassMessageBar.d.ts +1 -2
  287. package/dist/js/components/Compass/CompassMessageBar.d.ts.map +1 -1
  288. package/dist/js/components/Compass/CompassMessageBar.js.map +1 -1
  289. package/dist/js/components/Compass/CompassNavContent.d.ts +9 -0
  290. package/dist/js/components/Compass/CompassNavContent.d.ts.map +1 -0
  291. package/dist/js/components/Compass/CompassNavContent.js +14 -0
  292. package/dist/js/components/Compass/CompassNavContent.js.map +1 -0
  293. package/dist/js/components/Compass/CompassNavHome.d.ts +13 -0
  294. package/dist/js/components/Compass/CompassNavHome.d.ts.map +1 -0
  295. package/dist/js/components/Compass/CompassNavHome.js +19 -0
  296. package/dist/js/components/Compass/CompassNavHome.js.map +1 -0
  297. package/dist/js/components/Compass/CompassNavMain.d.ts +9 -0
  298. package/dist/js/components/Compass/CompassNavMain.d.ts.map +1 -0
  299. package/dist/js/components/Compass/CompassNavMain.js +14 -0
  300. package/dist/js/components/Compass/CompassNavMain.js.map +1 -0
  301. package/dist/js/components/Compass/CompassNavSearch.d.ts +13 -0
  302. package/dist/js/components/Compass/CompassNavSearch.d.ts.map +1 -0
  303. package/dist/js/components/Compass/CompassNavSearch.js +19 -0
  304. package/dist/js/components/Compass/CompassNavSearch.js.map +1 -0
  305. package/dist/js/components/Compass/CompassPanel.d.ts +1 -2
  306. package/dist/js/components/Compass/CompassPanel.d.ts.map +1 -1
  307. package/dist/js/components/Compass/CompassPanel.js.map +1 -1
  308. package/dist/js/components/Compass/index.d.ts +8 -0
  309. package/dist/js/components/Compass/index.d.ts.map +1 -1
  310. package/dist/js/components/Compass/index.js +8 -0
  311. package/dist/js/components/Compass/index.js.map +1 -1
  312. package/dist/js/components/DataList/DataList.d.ts +2 -0
  313. package/dist/js/components/DataList/DataList.d.ts.map +1 -1
  314. package/dist/js/components/DataList/DataList.js +2 -2
  315. package/dist/js/components/DataList/DataList.js.map +1 -1
  316. package/dist/js/components/Drawer/DrawerPanelContent.d.ts +2 -0
  317. package/dist/js/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  318. package/dist/js/components/Drawer/DrawerPanelContent.js +2 -2
  319. package/dist/js/components/Drawer/DrawerPanelContent.js.map +1 -1
  320. package/dist/js/components/Dropdown/Dropdown.d.ts +6 -0
  321. package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
  322. package/dist/js/components/Dropdown/Dropdown.js +5 -2
  323. package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
  324. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +13 -2
  325. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  326. package/dist/js/components/ExpandableSection/ExpandableSection.js +8 -5
  327. package/dist/js/components/ExpandableSection/ExpandableSection.js.map +1 -1
  328. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +5 -0
  329. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  330. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js +3 -2
  331. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  332. package/dist/js/components/Hero/Hero.d.ts +32 -0
  333. package/dist/js/components/Hero/Hero.d.ts.map +1 -0
  334. package/dist/js/components/Hero/Hero.js +55 -0
  335. package/dist/js/components/Hero/Hero.js.map +1 -0
  336. package/dist/js/components/Hero/index.d.ts +2 -0
  337. package/dist/js/components/Hero/index.d.ts.map +1 -0
  338. package/dist/js/components/Hero/index.js +5 -0
  339. package/dist/js/components/Hero/index.js.map +1 -0
  340. package/dist/js/components/Page/Page.d.ts.map +1 -1
  341. package/dist/js/components/Page/Page.js +1 -0
  342. package/dist/js/components/Page/Page.js.map +1 -1
  343. package/dist/js/components/Page/PageContext.d.ts +1 -0
  344. package/dist/js/components/Page/PageContext.d.ts.map +1 -1
  345. package/dist/js/components/Page/PageContext.js +1 -0
  346. package/dist/js/components/Page/PageContext.js.map +1 -1
  347. package/dist/js/components/Page/PageSidebar.js +2 -2
  348. package/dist/js/components/Page/PageSidebar.js.map +1 -1
  349. package/dist/js/components/Progress/Progress.d.ts +2 -0
  350. package/dist/js/components/Progress/Progress.d.ts.map +1 -1
  351. package/dist/js/components/Progress/Progress.js +2 -2
  352. package/dist/js/components/Progress/Progress.js.map +1 -1
  353. package/dist/js/components/Progress/ProgressContainer.d.ts +2 -0
  354. package/dist/js/components/Progress/ProgressContainer.d.ts.map +1 -1
  355. package/dist/js/components/Progress/ProgressContainer.js +2 -2
  356. package/dist/js/components/Progress/ProgressContainer.js.map +1 -1
  357. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  358. package/dist/js/components/Tabs/Tabs.js +2 -2
  359. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  360. package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
  361. package/dist/js/components/Truncate/Truncate.js +5 -4
  362. package/dist/js/components/Truncate/Truncate.js.map +1 -1
  363. package/dist/js/components/index.d.ts +1 -0
  364. package/dist/js/components/index.d.ts.map +1 -1
  365. package/dist/js/components/index.js +1 -0
  366. package/dist/js/components/index.js.map +1 -1
  367. package/dist/styles/base-no-reset.css +46 -0
  368. package/dist/styles/base.css +53 -0
  369. package/dist/umd/assets/{output-DxVGusJA.css → output-Bhl00hr4.css} +12673 -12499
  370. package/dist/umd/react-core.min.js +3 -3
  371. package/helpers/package.json +1 -1
  372. package/layouts/package.json +1 -1
  373. package/next/package.json +1 -1
  374. package/package.json +6 -6
  375. package/src/components/Card/CardSubtitle.tsx +20 -0
  376. package/src/components/Card/CardTitle.tsx +6 -0
  377. package/src/components/Card/__tests__/CardSubtitle.test.tsx +48 -0
  378. package/src/components/Card/__tests__/CardTitle.test.tsx +27 -17
  379. package/src/components/Card/__tests__/__snapshots__/CardSubtitle.test.tsx.snap +21 -0
  380. package/src/components/Card/__tests__/__snapshots__/CardTitle.test.tsx.snap +1 -1
  381. package/src/components/Card/examples/Card.md +16 -1
  382. package/src/components/Card/examples/CardSubtitle.tsx +9 -0
  383. package/src/components/Card/examples/CardSubtitleActions.tsx +107 -0
  384. package/src/components/ClipboardCopy/__tests__/ClipboardCopyTruncateIntegration.test.tsx +32 -0
  385. package/src/components/Compass/Compass.tsx +5 -3
  386. package/src/components/Compass/CompassContent.tsx +2 -2
  387. package/src/components/Compass/CompassHeader.tsx +6 -2
  388. package/src/components/Compass/CompassHero.tsx +7 -72
  389. package/src/components/Compass/CompassMainFooter.tsx +24 -0
  390. package/src/components/Compass/CompassMainHeader.tsx +22 -11
  391. package/src/components/Compass/CompassMainHeaderContent.tsx +25 -0
  392. package/src/components/Compass/CompassMainHeaderTitle.tsx +25 -0
  393. package/src/components/Compass/CompassMainHeaderToolbar.tsx +25 -0
  394. package/src/components/Compass/CompassMessageBar.tsx +2 -2
  395. package/src/components/Compass/CompassNavContent.tsx +20 -0
  396. package/src/components/Compass/CompassNavHome.tsx +77 -0
  397. package/src/components/Compass/CompassNavMain.tsx +21 -0
  398. package/src/components/Compass/CompassNavSearch.tsx +70 -0
  399. package/src/components/Compass/CompassPanel.tsx +2 -2
  400. package/src/components/Compass/__tests__/CompassHero.test.tsx +7 -119
  401. package/src/components/Compass/__tests__/CompassMainFooter.test.tsx +52 -0
  402. package/src/components/Compass/__tests__/CompassMainHeader.test.tsx +45 -2
  403. package/src/components/Compass/__tests__/CompassMainHeaderContent.test.tsx +28 -0
  404. package/src/components/Compass/__tests__/CompassMainHeaderTitle.test.tsx +28 -0
  405. package/src/components/Compass/__tests__/CompassMainHeaderToolbar.test.tsx +28 -0
  406. package/src/components/Compass/__tests__/CompassNavContent.test.tsx +37 -0
  407. package/src/components/Compass/__tests__/CompassNavHome.test.tsx +89 -0
  408. package/src/components/Compass/__tests__/CompassNavMain.test.tsx +37 -0
  409. package/src/components/Compass/__tests__/CompassNavSearch.test.tsx +87 -0
  410. package/src/components/Compass/__tests__/__snapshots__/Compass.test.tsx.snap +32 -28
  411. package/src/components/Compass/__tests__/__snapshots__/CompassHero.test.tsx.snap +2 -9
  412. package/src/components/Compass/__tests__/__snapshots__/CompassMainFooter.test.tsx.snap +11 -0
  413. package/src/components/Compass/__tests__/__snapshots__/CompassMainHeader.test.tsx.snap +3 -3
  414. package/src/components/Compass/__tests__/__snapshots__/CompassMainHeaderContent.test.tsx.snap +11 -0
  415. package/src/components/Compass/__tests__/__snapshots__/CompassMainHeaderTitle.test.tsx.snap +11 -0
  416. package/src/components/Compass/__tests__/__snapshots__/CompassMainHeaderToolbar.test.tsx.snap +11 -0
  417. package/src/components/Compass/__tests__/__snapshots__/CompassNavContent.test.tsx.snap +13 -0
  418. package/src/components/Compass/__tests__/__snapshots__/CompassNavHome.test.tsx.snap +107 -0
  419. package/src/components/Compass/__tests__/__snapshots__/CompassNavMain.test.tsx.snap +13 -0
  420. package/src/components/Compass/__tests__/__snapshots__/CompassNavSearch.test.tsx.snap +93 -0
  421. package/src/components/Compass/examples/Compass.md +42 -5
  422. package/src/components/Compass/examples/CompassBasic.tsx +15 -2
  423. package/src/components/Compass/examples/CompassDemo.tsx +63 -48
  424. package/src/components/Compass/examples/CompassMainFooterDemo.tsx +43 -0
  425. package/src/components/Compass/examples/compass.css +14 -2
  426. package/src/components/Compass/index.ts +8 -0
  427. package/src/components/DataList/DataList.tsx +4 -0
  428. package/src/components/DataList/__tests__/DataList.test.tsx +6 -0
  429. package/src/components/DataList/examples/DataList.md +6 -0
  430. package/src/components/DataList/examples/DataListPlain.tsx +32 -0
  431. package/src/components/Drawer/DrawerPanelContent.tsx +4 -0
  432. package/src/components/Drawer/__tests__/DrawerPanelContent.test.tsx +10 -0
  433. package/src/components/Dropdown/Dropdown.tsx +15 -1
  434. package/src/components/Dropdown/__tests__/Dropdown.test.tsx +26 -0
  435. package/src/components/ExpandableSection/ExpandableSection.tsx +27 -12
  436. package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +48 -38
  437. package/src/components/ExpandableSection/__tests__/ExpandableSection.test.tsx +94 -0
  438. package/src/components/ExpandableSection/__tests__/ExpandableSectionToggle.test.tsx +28 -0
  439. package/src/components/ExpandableSection/examples/ExpandableSection.md +16 -0
  440. package/src/components/ExpandableSection/examples/ExpandableSectionCustomToggle.tsx +31 -16
  441. package/src/components/ExpandableSection/examples/ExpandableSectionUncontrolledDynamicToggleFunction.tsx +13 -0
  442. package/src/components/ExpandableSection/examples/ExpandableSectionWithHeading.tsx +89 -0
  443. package/src/components/Hero/Hero.tsx +102 -0
  444. package/src/components/Hero/__tests__/Hero.test.tsx +175 -0
  445. package/src/components/Hero/__tests__/__snapshots__/Hero.test.tsx.snap +30 -0
  446. package/src/components/Hero/examples/Hero.md +19 -0
  447. package/src/components/Hero/examples/HeroBasic.tsx +3 -0
  448. package/src/components/Hero/index.ts +1 -0
  449. package/src/components/Page/Page.tsx +1 -0
  450. package/src/components/Page/PageContext.tsx +2 -0
  451. package/src/components/Page/PageSidebar.tsx +2 -2
  452. package/src/components/Page/__tests__/Generated/__snapshots__/PageSidebar.test.tsx.snap +1 -1
  453. package/src/components/Page/__tests__/__snapshots__/Page.test.tsx.snap +12 -12
  454. package/src/components/Progress/Progress.tsx +4 -0
  455. package/src/components/Progress/ProgressContainer.tsx +5 -2
  456. package/src/components/Progress/__tests__/Generated/ProgressContainer.test.tsx +1 -0
  457. package/src/components/Progress/__tests__/Progress.test.tsx +32 -0
  458. package/src/components/Progress/examples/Progress.md +2 -14
  459. package/src/components/Progress/examples/ProgressInteractiveFailure.tsx +55 -0
  460. package/src/components/Tabs/Tabs.tsx +2 -2
  461. package/src/components/Tabs/__tests__/Tabs.test.tsx +60 -0
  462. package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +13 -13
  463. package/src/components/Tabs/examples/Tabs.md +8 -0
  464. package/src/components/Tabs/examples/TabsSiteNav.tsx +40 -0
  465. package/src/components/Truncate/Truncate.tsx +5 -4
  466. package/src/components/Truncate/__tests__/Truncate.test.tsx +21 -3
  467. package/src/components/Truncate/__tests__/__snapshots__/Truncate.test.tsx.snap +3 -9
  468. package/src/components/index.ts +1 -0
  469. package/src/deprecated/components/Modal/examples/Modal.md +2 -2
  470. package/src/deprecated/components/Tile/examples/Tile.md +0 -2
  471. package/src/helpers/OUIA/OUIA.md +2 -2
  472. package/src/layouts/Bullseye/examples/Bullseye.md +2 -1
  473. package/src/layouts/Flex/examples/Flex.md +2 -1
  474. package/src/layouts/Gallery/examples/Gallery.md +2 -1
  475. package/src/layouts/Grid/examples/Grid.md +2 -1
  476. package/src/layouts/Level/examples/Level.md +2 -1
  477. package/src/layouts/Split/examples/Split.md +2 -1
  478. package/src/layouts/Stack/examples/Stack.md +2 -1
  479. package/src/components/Progress/examples/ProgressFailureWithoutMeasure.tsx +0 -5
  480. package/src/components/Progress/examples/ProgressInsideSuccess.tsx +0 -10
  481. package/src/components/Progress/examples/ProgressOutsideFailure.tsx +0 -10
@@ -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.5.0-prerelease.1","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.5.0-prerelease.20","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.5.0-prerelease.1","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.5.0-prerelease.20","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.5.0-prerelease.1","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.5.0-prerelease.20","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "6.5.0-prerelease.2",
3
+ "version": "6.5.0-prerelease.21",
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",
@@ -46,15 +46,15 @@
46
46
  "subpaths": "node ../../scripts/exportSubpaths.mjs --config subpaths.config.json"
47
47
  },
48
48
  "dependencies": {
49
- "@patternfly/react-icons": "^6.5.0-prerelease.2",
50
- "@patternfly/react-styles": "^6.5.0-prerelease.2",
51
- "@patternfly/react-tokens": "^6.5.0-prerelease.2",
49
+ "@patternfly/react-icons": "^6.5.0-prerelease.8",
50
+ "@patternfly/react-styles": "^6.5.0-prerelease.6",
51
+ "@patternfly/react-tokens": "^6.5.0-prerelease.6",
52
52
  "focus-trap": "7.6.4",
53
53
  "react-dropzone": "^14.3.5",
54
54
  "tslib": "^2.8.1"
55
55
  },
56
56
  "devDependencies": {
57
- "@patternfly/patternfly": "6.5.0-prerelease.12",
57
+ "@patternfly/patternfly": "6.5.0-prerelease.27",
58
58
  "case-anything": "^3.1.2",
59
59
  "css": "^3.0.0",
60
60
  "fs-extra": "^11.3.0"
@@ -63,5 +63,5 @@
63
63
  "react": "^17 || ^18 || ^19",
64
64
  "react-dom": "^17 || ^18 || ^19"
65
65
  },
66
- "gitHead": "c7b90a136c135c4cf74a7fc768cc17ee39227a6d"
66
+ "gitHead": "5d9af44db11de73886f034a15546618870aab25c"
67
67
  }
@@ -0,0 +1,20 @@
1
+ import { css } from '@patternfly/react-styles';
2
+ import styles from '@patternfly/react-styles/css/components/Card/card';
3
+
4
+ export interface CardSubtitleProps {
5
+ /** Content rendered inside the description. */
6
+ children?: React.ReactNode;
7
+ /** Id of the description. */
8
+ id?: string;
9
+ }
10
+
11
+ export const CardSubtitle: React.FunctionComponent<CardSubtitleProps> = ({
12
+ children = null,
13
+ id = '',
14
+ ...props
15
+ }: CardSubtitleProps) => (
16
+ <div {...props} id={id} className={css(styles.cardSubtitle)}>
17
+ {children}
18
+ </div>
19
+ );
20
+ CardSubtitle.displayName = 'CardSubtitle';
@@ -2,6 +2,7 @@ import { useContext } from 'react';
2
2
  import { css } from '@patternfly/react-styles';
3
3
  import styles from '@patternfly/react-styles/css/components/Card/card';
4
4
  import { CardContext } from './Card';
5
+ import { CardSubtitle } from './CardSubtitle';
5
6
 
6
7
  export interface CardTitleProps extends React.HTMLProps<HTMLDivElement> {
7
8
  /** Content rendered inside the CardTitle */
@@ -10,23 +11,28 @@ export interface CardTitleProps extends React.HTMLProps<HTMLDivElement> {
10
11
  className?: string;
11
12
  /** Sets the base component to render. defaults to div */
12
13
  component?: keyof React.JSX.IntrinsicElements;
14
+ /** @beta Subtitle of the card title */
15
+ subtitle?: React.ReactNode;
13
16
  }
14
17
 
15
18
  export const CardTitle: React.FunctionComponent<CardTitleProps> = ({
16
19
  children,
17
20
  className,
18
21
  component = 'div',
22
+ subtitle,
19
23
  ...props
20
24
  }: CardTitleProps) => {
21
25
  const { cardId } = useContext(CardContext);
22
26
  const Component = component as any;
23
27
  const titleId = cardId ? `${cardId}-title` : '';
28
+ const subtitleId = cardId ? `${cardId}-subtitle` : '';
24
29
 
25
30
  return (
26
31
  <div className={css(styles.cardTitle)}>
27
32
  <Component className={css(styles.cardTitleText, className)} id={titleId || undefined} {...props}>
28
33
  {children}
29
34
  </Component>
35
+ {subtitle && <CardSubtitle id={subtitleId}>{subtitle}</CardSubtitle>}
30
36
  </div>
31
37
  );
32
38
  };
@@ -0,0 +1,48 @@
1
+ import { render, screen } from '@testing-library/react';
2
+ import { CardSubtitle } from '../CardSubtitle';
3
+ import styles from '@patternfly/react-styles/css/components/Card/card';
4
+
5
+ test('Renders without children', () => {
6
+ render(
7
+ <div data-testid="container">
8
+ <CardSubtitle />
9
+ </div>
10
+ );
11
+
12
+ expect(screen.getByTestId('container').firstChild).toBeVisible();
13
+ });
14
+
15
+ test('Renders with children', () => {
16
+ render(<CardSubtitle>Subtitle content</CardSubtitle>);
17
+
18
+ expect(screen.getByText('Subtitle content')).toBeInTheDocument();
19
+ });
20
+
21
+ test(`Renders with class ${styles.cardSubtitle} by default`, () => {
22
+ render(<CardSubtitle>Subtitle content</CardSubtitle>);
23
+
24
+ expect(screen.getByText('Subtitle content')).toHaveClass(styles.cardSubtitle, { exact: true });
25
+ });
26
+
27
+ test('Renders with id when passed', () => {
28
+ render(<CardSubtitle id="subtitle-id">Subtitle content</CardSubtitle>);
29
+
30
+ expect(screen.getByText('Subtitle content')).toHaveAttribute('id', 'subtitle-id');
31
+ });
32
+
33
+ test('extra props are spread to the root element', () => {
34
+ const testId = 'card-subtitle';
35
+
36
+ render(<CardSubtitle data-testid={testId} />);
37
+ expect(screen.getByTestId(testId)).toBeInTheDocument();
38
+ });
39
+
40
+ test('Matches snapshot without children', () => {
41
+ const { asFragment } = render(<CardSubtitle />);
42
+ expect(asFragment()).toMatchSnapshot();
43
+ });
44
+
45
+ test('Matches snapshot with children', () => {
46
+ const { asFragment } = render(<CardSubtitle>Subtitle content</CardSubtitle>);
47
+ expect(asFragment()).toMatchSnapshot();
48
+ });
@@ -1,21 +1,31 @@
1
1
  import { render, screen } from '@testing-library/react';
2
2
  import { CardTitle } from '../CardTitle';
3
3
 
4
- describe('CardTitle', () => {
5
- test('renders with PatternFly Core styles', () => {
6
- const { asFragment } = render(<CardTitle>text</CardTitle>);
7
- expect(asFragment()).toMatchSnapshot();
8
- });
9
-
10
- test('className is added to the root element', () => {
11
- render(<CardTitle className="extra-class">text</CardTitle>);
12
- expect(screen.getByText('text')).toHaveClass('extra-class');
13
- });
14
-
15
- test('extra props are spread to the root element', () => {
16
- const testId = 'card-header';
17
-
18
- render(<CardTitle data-testid={testId} />);
19
- expect(screen.getByTestId(testId)).toBeInTheDocument();
20
- });
4
+ test('Renders with custom class when passed', () => {
5
+ render(<CardTitle className="extra-class">text</CardTitle>);
6
+ expect(screen.getByText('text')).toHaveClass('extra-class');
7
+ });
8
+
9
+ test('Does not render with card subtitle by default', () => {
10
+ render(<CardTitle>text</CardTitle>);
11
+
12
+ expect(screen.queryByText('text')?.nextElementSibling).not.toBeInTheDocument();
13
+ });
14
+
15
+ test('Renders with card subtitle when subtitle is passed', () => {
16
+ render(<CardTitle subtitle="subtitle content">text</CardTitle>);
17
+
18
+ expect(screen.getByText('subtitle content')).toBeInTheDocument();
19
+ });
20
+
21
+ test('extra props are spread to the root element', () => {
22
+ const testId = 'card-header';
23
+
24
+ render(<CardTitle data-testid={testId} />);
25
+ expect(screen.getByTestId(testId)).toBeInTheDocument();
26
+ });
27
+
28
+ test('Matches snapshot', () => {
29
+ const { asFragment } = render(<CardTitle>text</CardTitle>);
30
+ expect(asFragment()).toMatchSnapshot();
21
31
  });
@@ -0,0 +1,21 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Matches snapshot with children 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ class="pf-v6-c-card__subtitle"
7
+ id=""
8
+ >
9
+ Subtitle content
10
+ </div>
11
+ </DocumentFragment>
12
+ `;
13
+
14
+ exports[`Matches snapshot without children 1`] = `
15
+ <DocumentFragment>
16
+ <div
17
+ class="pf-v6-c-card__subtitle"
18
+ id=""
19
+ />
20
+ </DocumentFragment>
21
+ `;
@@ -1,6 +1,6 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
- exports[`CardTitle renders with PatternFly Core styles 1`] = `
3
+ exports[`Matches snapshot 1`] = `
4
4
  <DocumentFragment>
5
5
  <div
6
6
  class="pf-v6-c-card__title"
@@ -28,7 +28,20 @@ import PlusIcon from '@patternfly/react-icons/dist/esm/icons/plus-icon';
28
28
 
29
29
  Basic cards typically have a `<CardTitle>`, `<CardBody>` and `<CardFooter>`. You may omit these components as needed, but it is recommended to at least include a `<CardBody>` to provide details about the card item.
30
30
 
31
- ```ts file='./CardBasic.tsx'
31
+ ```ts file='./CardBasic.tsx'
32
+
33
+ ```
34
+ ### Card with subtitle
35
+
36
+ A basic card that also has a subtitle
37
+
38
+ ```ts file='./CardSubtitle.tsx' isBeta
39
+
40
+ ```
41
+ ### Card with subtitle and Actions
42
+ This card demonstrates having an image, action, and subtitle in a single card.
43
+
44
+ ```ts file='./CardSubtitleActions.tsx' isBeta
32
45
 
33
46
  ```
34
47
 
@@ -71,6 +84,8 @@ Select the "actions hasNoOffset" checkbox in the example below to illustrate thi
71
84
 
72
85
  ```
73
86
 
87
+
88
+
74
89
  ### Title inline with images and actions
75
90
 
76
91
  Moving `<CardTitle>` within the `<CardHeader>` will style it inline with any images or actions.
@@ -0,0 +1,9 @@
1
+ import { Card, CardTitle, CardBody, CardFooter } from '@patternfly/react-core';
2
+
3
+ export const CardSubtitle: React.FunctionComponent = () => (
4
+ <Card ouiaId="CardSubtitle">
5
+ <CardTitle subtitle="Subtitle">Title</CardTitle>
6
+ <CardBody>Body</CardBody>
7
+ <CardFooter>Footer</CardFooter>
8
+ </Card>
9
+ );
@@ -0,0 +1,107 @@
1
+ import { useState } from 'react';
2
+ import {
3
+ Brand,
4
+ Card,
5
+ CardHeader,
6
+ CardTitle,
7
+ CardBody,
8
+ CardFooter,
9
+ Checkbox,
10
+ Dropdown,
11
+ DropdownList,
12
+ DropdownItem,
13
+ MenuToggle,
14
+ MenuToggleElement,
15
+ Divider
16
+ } from '@patternfly/react-core';
17
+ import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
18
+ import pfLogo from '../../assets/PF-HorizontalLogo-Color.svg';
19
+
20
+ export const CardWithImageAndActions: React.FunctionComponent = () => {
21
+ const [isOpen, setIsOpen] = useState<boolean>(false);
22
+ const [isChecked, setIsChecked] = useState<boolean>(false);
23
+ const [hasNoOffset, setHasNoOffset] = useState<boolean>(false);
24
+
25
+ const onSelect = () => {
26
+ setIsOpen(!isOpen);
27
+ };
28
+ const onClick = (checked: boolean) => {
29
+ setIsChecked(checked);
30
+ };
31
+ const toggleOffset = (checked: boolean) => {
32
+ setHasNoOffset(checked);
33
+ };
34
+
35
+ const dropdownItems = (
36
+ <>
37
+ <DropdownItem key="action">Action</DropdownItem>
38
+ {/* Prevent default onClick functionality for example purposes */}
39
+ <DropdownItem key="link" to="#" onClick={(event: any) => event.preventDefault()}>
40
+ Link
41
+ </DropdownItem>
42
+ <DropdownItem key="disabled action" isDisabled>
43
+ Disabled Action
44
+ </DropdownItem>
45
+ <DropdownItem key="disabled link" isDisabled to="#" onClick={(event: any) => event.preventDefault()}>
46
+ Disabled Link
47
+ </DropdownItem>
48
+ <Divider component="li" key="separator" />
49
+ <DropdownItem key="separated action">Separated Action</DropdownItem>
50
+ <DropdownItem key="separated link" to="#" onClick={(event: any) => event.preventDefault()}>
51
+ Separated Link
52
+ </DropdownItem>
53
+ </>
54
+ );
55
+
56
+ const headerActions = (
57
+ <>
58
+ <Dropdown
59
+ onSelect={onSelect}
60
+ toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
61
+ <MenuToggle
62
+ ref={toggleRef}
63
+ isExpanded={isOpen}
64
+ onClick={() => setIsOpen(!isOpen)}
65
+ variant="plain"
66
+ aria-label="Card header images and actions example kebab toggle"
67
+ icon={<EllipsisVIcon />}
68
+ />
69
+ )}
70
+ isOpen={isOpen}
71
+ onOpenChange={(isOpen: boolean) => setIsOpen(isOpen)}
72
+ >
73
+ <DropdownList>{dropdownItems}</DropdownList>
74
+ </Dropdown>
75
+ <Checkbox
76
+ isChecked={isChecked}
77
+ onChange={(_event, checked) => onClick(checked)}
78
+ aria-label="card checkbox example"
79
+ id="check-1"
80
+ name="check1"
81
+ />
82
+ </>
83
+ );
84
+
85
+ return (
86
+ <>
87
+ <Checkbox
88
+ label="actions hasNoOffset"
89
+ isChecked={hasNoOffset}
90
+ onChange={(_event, checked) => toggleOffset(checked)}
91
+ aria-label="remove actions offset"
92
+ id="toggle-actions-offset"
93
+ name="toggle-actions-offset"
94
+ />
95
+ <div style={{ marginTop: '15px' }}>
96
+ <Card>
97
+ <CardHeader actions={{ actions: headerActions, hasNoOffset }}>
98
+ <Brand src={pfLogo} alt="PatternFly logo" style={{ width: '300px' }} />
99
+ </CardHeader>
100
+ <CardTitle subtitle="Subtitle">Title</CardTitle>
101
+ <CardBody>Body</CardBody>
102
+ <CardFooter>Footer</CardFooter>
103
+ </Card>
104
+ </div>
105
+ </>
106
+ );
107
+ };
@@ -0,0 +1,32 @@
1
+ import { render, screen } from '@testing-library/react';
2
+ import userEvent from '@testing-library/user-event';
3
+ import { ClipboardCopy, ClipboardCopyVariant } from '../ClipboardCopy';
4
+
5
+ // This test file uses the real Truncate component for integration testing, instead of a mock
6
+
7
+ test('Tooltip appears on keyboard focus when using inline-compact variant with truncation', async () => {
8
+ const user = userEvent.setup();
9
+ const longText = 'This is a very long piece of content that should be truncated when the container is too small';
10
+
11
+ render(
12
+ <ClipboardCopy
13
+ variant={ClipboardCopyVariant.inlineCompact}
14
+ truncation={{ maxCharsDisplayed: 20 }}
15
+ data-testid="clipboard-copy"
16
+ >
17
+ {longText}
18
+ </ClipboardCopy>
19
+ );
20
+
21
+ expect(screen.queryByText(longText)).not.toBeInTheDocument();
22
+ expect(screen.queryByRole('tooltip')).not.toBeInTheDocument();
23
+
24
+ await user.tab();
25
+
26
+ const clipboardCopy = screen.getByTestId('clipboard-copy');
27
+ expect(clipboardCopy).toHaveFocus();
28
+
29
+ const tooltip = screen.getByRole('tooltip');
30
+ expect(tooltip).toBeInTheDocument();
31
+ expect(tooltip).toHaveTextContent(longText);
32
+ });
@@ -1,4 +1,4 @@
1
- import { Drawer, DrawerContent, DrawerProps } from '../Drawer';
1
+ import { Drawer, DrawerContent, DrawerContentBody, DrawerProps } from '../Drawer';
2
2
  import styles from '@patternfly/react-styles/css/components/Compass/compass';
3
3
  import { css } from '@patternfly/react-styles';
4
4
 
@@ -52,7 +52,7 @@ export const Compass: React.FunctionComponent<CompassProps> = ({
52
52
  backgroundSrcLight,
53
53
  backgroundSrcDark,
54
54
  ...props
55
- }) => {
55
+ }: CompassProps) => {
56
56
  const hasDrawer = drawerContent !== undefined;
57
57
 
58
58
  const backgroundImageStyles: { [key: string]: string } = {};
@@ -96,7 +96,9 @@ export const Compass: React.FunctionComponent<CompassProps> = ({
96
96
  if (hasDrawer) {
97
97
  return (
98
98
  <Drawer {...drawerProps}>
99
- <DrawerContent panelContent={drawerContent}>{compassContent}</DrawerContent>
99
+ <DrawerContent panelContent={drawerContent}>
100
+ <DrawerContentBody>{compassContent}</DrawerContentBody>
101
+ </DrawerContent>
100
102
  </Drawer>
101
103
  );
102
104
  }
@@ -2,7 +2,7 @@ import { Drawer, DrawerContent, DrawerProps } from '../Drawer';
2
2
  import styles from '@patternfly/react-styles/css/components/Compass/compass';
3
3
  import { css } from '@patternfly/react-styles';
4
4
 
5
- interface CompassContentProps extends React.HTMLProps<HTMLDivElement> {
5
+ export interface CompassContentProps extends React.HTMLProps<HTMLDivElement> {
6
6
  /** Content of the main compass area. Typically one or more CompassPanel components. */
7
7
  children: React.ReactNode;
8
8
  /** Additional classes added to the CompassContent */
@@ -19,7 +19,7 @@ export const CompassContent: React.FunctionComponent<CompassContentProps> = ({
19
19
  drawerProps,
20
20
  drawerContent,
21
21
  ...props
22
- }) => {
22
+ }: CompassContentProps) => {
23
23
  const hasDrawer = drawerContent !== undefined;
24
24
 
25
25
  const compassContent = (
@@ -1,7 +1,7 @@
1
1
  import styles from '@patternfly/react-styles/css/components/Compass/compass';
2
2
  import { css } from '@patternfly/react-styles';
3
3
 
4
- interface CompassHeaderProps {
4
+ export interface CompassHeaderProps {
5
5
  /** Content of the logo area */
6
6
  logo?: React.ReactNode;
7
7
  /** Content of the navigation area */
@@ -10,7 +10,11 @@ interface CompassHeaderProps {
10
10
  profile?: React.ReactNode;
11
11
  }
12
12
 
13
- export const CompassHeader: React.FunctionComponent<CompassHeaderProps> = ({ logo, nav, profile }) => (
13
+ export const CompassHeader: React.FunctionComponent<CompassHeaderProps> = ({
14
+ logo,
15
+ nav,
16
+ profile
17
+ }: CompassHeaderProps) => (
14
18
  <>
15
19
  <div className={css(`${styles.compass}__logo`)}>{logo}</div>
16
20
  <div className={css(styles.compassNav)}>{nav}</div>
@@ -1,87 +1,22 @@
1
1
  import styles from '@patternfly/react-styles/css/components/Compass/compass';
2
2
  import { css } from '@patternfly/react-styles';
3
3
 
4
- import compassHeroBackgroundImageLight from '@patternfly/react-tokens/dist/esm/c_compass__hero_BackgroundImage_light';
5
- import compassHeroBackgroundImageDark from '@patternfly/react-tokens/dist/esm/c_compass__hero_BackgroundImage_dark';
6
- import compassHeroGradientStop1Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_1_light';
7
- import compassHeroGradientStop2Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_2_light';
8
- import compassHeroGradientStop3Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_3_light';
9
- import compassHeroGradientStop1Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_1_dark';
10
- import compassHeroGradientStop2Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_2_dark';
11
- import compassHeroGradientStop3Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_3_dark';
12
-
13
- interface CompassHeroProps extends Omit<React.HTMLProps<HTMLDivElement>, 'content'> {
4
+ /** A wrapper component to pass a PatternFly Hero component into. */
5
+ export interface CompassHeroProps extends Omit<React.HTMLProps<HTMLDivElement>, 'content'> {
14
6
  /** Content of the hero */
15
7
  children?: React.ReactNode;
16
8
  /** Additional classes added to the hero */
17
9
  className?: string;
18
- /** Light theme background image path of the hero */
19
- backgroundSrcLight?: string;
20
- /** Dark theme background image path of the hero */
21
- backgroundSrcDark?: string;
22
- /** Light theme gradient of the hero */
23
- gradientLight?: {
24
- stop1?: string;
25
- stop2?: string;
26
- stop3?: string;
27
- };
28
- /** Dark theme gradient of the hero */
29
- gradientDark?: {
30
- stop1?: string;
31
- stop2?: string;
32
- stop3?: string;
33
- };
34
10
  }
35
11
 
36
12
  export const CompassHero: React.FunctionComponent<CompassHeroProps> = ({
37
13
  className,
38
14
  children,
39
- backgroundSrcLight,
40
- backgroundSrcDark,
41
- gradientLight,
42
- gradientDark,
43
15
  ...props
44
- }) => {
45
- const backgroundImageStyles: { [key: string]: string } = {};
46
- if (backgroundSrcLight) {
47
- backgroundImageStyles[compassHeroBackgroundImageLight.name] = `url(${backgroundSrcLight})`;
48
- }
49
- if (backgroundSrcDark) {
50
- backgroundImageStyles[compassHeroBackgroundImageDark.name] = `url(${backgroundSrcDark})`;
51
- }
52
-
53
- if (gradientLight) {
54
- if (gradientLight.stop1) {
55
- backgroundImageStyles[compassHeroGradientStop1Light.name] = gradientLight.stop1;
56
- }
57
- if (gradientLight.stop2) {
58
- backgroundImageStyles[compassHeroGradientStop2Light.name] = gradientLight.stop2;
59
- }
60
- if (gradientLight.stop3) {
61
- backgroundImageStyles[compassHeroGradientStop3Light.name] = gradientLight.stop3;
62
- }
63
- }
64
- if (gradientDark) {
65
- if (gradientDark.stop1) {
66
- backgroundImageStyles[compassHeroGradientStop1Dark.name] = gradientDark.stop1;
67
- }
68
- if (gradientDark.stop2) {
69
- backgroundImageStyles[compassHeroGradientStop2Dark.name] = gradientDark.stop2;
70
- }
71
- if (gradientDark.stop3) {
72
- backgroundImageStyles[compassHeroGradientStop3Dark.name] = gradientDark.stop3;
73
- }
74
- }
75
-
76
- return (
77
- <div
78
- className={css(styles.compassPanel, styles.compassHero, className)}
79
- style={{ ...props.style, ...backgroundImageStyles }}
80
- {...props}
81
- >
82
- <div className={css(styles.compassHeroBody)}>{children}</div>
83
- </div>
84
- );
85
- };
16
+ }: CompassHeroProps) => (
17
+ <div className={css(`${styles.compass}__hero`, className)} {...props}>
18
+ {children}
19
+ </div>
20
+ );
86
21
 
87
22
  CompassHero.displayName = 'CompassHero';
@@ -0,0 +1,24 @@
1
+ import styles from '@patternfly/react-styles/css/components/Compass/compass';
2
+ import { css } from '@patternfly/react-styles';
3
+
4
+ interface CompassMainFooterProps extends Omit<React.HTMLProps<HTMLDivElement>, 'title'> {
5
+ /** Additional classes added to the main footer */
6
+ className?: string;
7
+ /** Main footer content */
8
+ children?: React.ReactNode;
9
+ /** Indicates if the main footer is expanded */
10
+ isExpanded?: boolean;
11
+ }
12
+
13
+ export const CompassMainFooter: React.FunctionComponent<CompassMainFooterProps> = ({
14
+ className,
15
+ children,
16
+ isExpanded = true,
17
+ ...props
18
+ }) => (
19
+ <div className={css(styles.compassMainFooter, isExpanded && 'pf-m-expanded', className)} {...props}>
20
+ {children}
21
+ </div>
22
+ );
23
+
24
+ CompassMainFooter.displayName = 'CompassMainFooter';