@patternfly/react-core 5.1.1-prerelease.9 → 6.0.0-alpha.1

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 (328) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/Chip/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/DragDrop/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/Text/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/Tile/package.json +1 -1
  76. package/dist/dynamic/components/TimePicker/package.json +1 -1
  77. package/dist/dynamic/components/Timestamp/package.json +1 -1
  78. package/dist/dynamic/components/Title/package.json +1 -1
  79. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  80. package/dist/dynamic/components/Toolbar/package.json +1 -1
  81. package/dist/dynamic/components/Tooltip/package.json +1 -1
  82. package/dist/dynamic/components/TreeView/package.json +1 -1
  83. package/dist/dynamic/components/Truncate/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  85. package/dist/dynamic/components/Wizard/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/Select/package.json +1 -1
  92. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  93. package/dist/dynamic/deprecated/components/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/favorites/package.json +1 -1
  102. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  104. package/dist/dynamic/helpers/package.json +1 -1
  105. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  106. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  107. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  108. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  109. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  110. package/dist/dynamic/helpers/util/package.json +1 -1
  111. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  112. package/dist/dynamic/layouts/Flex/package.json +1 -1
  113. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  114. package/dist/dynamic/layouts/Grid/package.json +1 -1
  115. package/dist/dynamic/layouts/Level/package.json +1 -1
  116. package/dist/dynamic/layouts/Split/package.json +1 -1
  117. package/dist/dynamic/layouts/Stack/package.json +1 -1
  118. package/dist/dynamic/next/components/package.json +1 -1
  119. package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  120. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +1 -1
  121. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  122. package/dist/esm/components/ClipboardCopy/ClipboardCopyExpanded.js +1 -1
  123. package/dist/esm/components/ClipboardCopy/ClipboardCopyExpanded.js.map +1 -1
  124. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.d.ts.map +1 -1
  125. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js +5 -2
  126. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  127. package/dist/esm/components/DragDrop/Draggable.d.ts.map +1 -1
  128. package/dist/esm/components/DragDrop/Draggable.js +1 -0
  129. package/dist/esm/components/DragDrop/Draggable.js.map +1 -1
  130. package/dist/esm/components/Drawer/Drawer.d.ts +3 -3
  131. package/dist/esm/components/Drawer/Drawer.d.ts.map +1 -1
  132. package/dist/esm/components/Drawer/Drawer.js +3 -3
  133. package/dist/esm/components/Drawer/Drawer.js.map +1 -1
  134. package/dist/esm/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  135. package/dist/esm/components/Drawer/DrawerPanelContent.js +77 -26
  136. package/dist/esm/components/Drawer/DrawerPanelContent.js.map +1 -1
  137. package/dist/esm/components/Dropdown/Dropdown.d.ts +3 -1
  138. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  139. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  140. package/dist/esm/components/Icon/Icon.d.ts +4 -0
  141. package/dist/esm/components/Icon/Icon.d.ts.map +1 -1
  142. package/dist/esm/components/Icon/Icon.js +2 -2
  143. package/dist/esm/components/Icon/Icon.js.map +1 -1
  144. package/dist/esm/components/Label/Label.d.ts +4 -2
  145. package/dist/esm/components/Label/Label.d.ts.map +1 -1
  146. package/dist/esm/components/Label/Label.js +19 -4
  147. package/dist/esm/components/Label/Label.js.map +1 -1
  148. package/dist/esm/components/Menu/MenuContainer.d.ts +1 -1
  149. package/dist/esm/components/Menu/MenuContainer.d.ts.map +1 -1
  150. package/dist/esm/components/Modal/ModalContent.d.ts.map +1 -1
  151. package/dist/esm/components/Modal/ModalContent.js +3 -1
  152. package/dist/esm/components/Modal/ModalContent.js.map +1 -1
  153. package/dist/esm/components/Nav/NavItem.d.ts +1 -1
  154. package/dist/esm/components/Nav/NavItem.d.ts.map +1 -1
  155. package/dist/esm/components/Nav/NavList.d.ts +10 -4
  156. package/dist/esm/components/Nav/NavList.d.ts.map +1 -1
  157. package/dist/esm/components/Nav/NavList.js +29 -8
  158. package/dist/esm/components/Nav/NavList.js.map +1 -1
  159. package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
  160. package/dist/esm/components/SearchInput/SearchInput.js +4 -2
  161. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  162. package/dist/esm/components/Select/Select.d.ts +9 -1
  163. package/dist/esm/components/Select/Select.d.ts.map +1 -1
  164. package/dist/esm/components/Select/Select.js.map +1 -1
  165. package/dist/esm/components/Slider/Slider.d.ts +8 -4
  166. package/dist/esm/components/Slider/Slider.d.ts.map +1 -1
  167. package/dist/esm/components/Slider/Slider.js +62 -16
  168. package/dist/esm/components/Slider/Slider.js.map +1 -1
  169. package/dist/esm/components/Slider/SliderStep.d.ts.map +1 -1
  170. package/dist/esm/components/Slider/SliderStep.js +2 -1
  171. package/dist/esm/components/Slider/SliderStep.js.map +1 -1
  172. package/dist/esm/components/Tabs/Tabs.d.ts +11 -6
  173. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  174. package/dist/esm/components/Tabs/Tabs.js +35 -16
  175. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  176. package/dist/esm/components/TextInput/TextInput.d.ts +3 -1
  177. package/dist/esm/components/TextInput/TextInput.d.ts.map +1 -1
  178. package/dist/esm/components/TextInput/TextInput.js +8 -7
  179. package/dist/esm/components/TextInput/TextInput.js.map +1 -1
  180. package/dist/esm/components/Timestamp/Timestamp.d.ts +4 -0
  181. package/dist/esm/components/Timestamp/Timestamp.d.ts.map +1 -1
  182. package/dist/esm/components/Timestamp/Timestamp.js +7 -4
  183. package/dist/esm/components/Timestamp/Timestamp.js.map +1 -1
  184. package/dist/esm/helpers/Popper/Popper.d.ts +2 -1
  185. package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
  186. package/dist/esm/helpers/Popper/Popper.js +27 -5
  187. package/dist/esm/helpers/Popper/Popper.js.map +1 -1
  188. package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  189. package/dist/js/components/ClipboardCopy/ClipboardCopy.js +1 -1
  190. package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  191. package/dist/js/components/ClipboardCopy/ClipboardCopyExpanded.js +1 -1
  192. package/dist/js/components/ClipboardCopy/ClipboardCopyExpanded.js.map +1 -1
  193. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.d.ts.map +1 -1
  194. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js +5 -2
  195. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  196. package/dist/js/components/DragDrop/Draggable.d.ts.map +1 -1
  197. package/dist/js/components/DragDrop/Draggable.js +1 -0
  198. package/dist/js/components/DragDrop/Draggable.js.map +1 -1
  199. package/dist/js/components/Drawer/Drawer.d.ts +3 -3
  200. package/dist/js/components/Drawer/Drawer.d.ts.map +1 -1
  201. package/dist/js/components/Drawer/Drawer.js +3 -3
  202. package/dist/js/components/Drawer/Drawer.js.map +1 -1
  203. package/dist/js/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  204. package/dist/js/components/Drawer/DrawerPanelContent.js +77 -26
  205. package/dist/js/components/Drawer/DrawerPanelContent.js.map +1 -1
  206. package/dist/js/components/Dropdown/Dropdown.d.ts +3 -1
  207. package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
  208. package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
  209. package/dist/js/components/Icon/Icon.d.ts +4 -0
  210. package/dist/js/components/Icon/Icon.d.ts.map +1 -1
  211. package/dist/js/components/Icon/Icon.js +2 -2
  212. package/dist/js/components/Icon/Icon.js.map +1 -1
  213. package/dist/js/components/Label/Label.d.ts +4 -2
  214. package/dist/js/components/Label/Label.d.ts.map +1 -1
  215. package/dist/js/components/Label/Label.js +19 -4
  216. package/dist/js/components/Label/Label.js.map +1 -1
  217. package/dist/js/components/Menu/MenuContainer.d.ts +1 -1
  218. package/dist/js/components/Menu/MenuContainer.d.ts.map +1 -1
  219. package/dist/js/components/Modal/ModalContent.d.ts.map +1 -1
  220. package/dist/js/components/Modal/ModalContent.js +3 -1
  221. package/dist/js/components/Modal/ModalContent.js.map +1 -1
  222. package/dist/js/components/Nav/NavItem.d.ts +1 -1
  223. package/dist/js/components/Nav/NavItem.d.ts.map +1 -1
  224. package/dist/js/components/Nav/NavList.d.ts +10 -4
  225. package/dist/js/components/Nav/NavList.d.ts.map +1 -1
  226. package/dist/js/components/Nav/NavList.js +29 -8
  227. package/dist/js/components/Nav/NavList.js.map +1 -1
  228. package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
  229. package/dist/js/components/SearchInput/SearchInput.js +4 -2
  230. package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
  231. package/dist/js/components/Select/Select.d.ts +9 -1
  232. package/dist/js/components/Select/Select.d.ts.map +1 -1
  233. package/dist/js/components/Select/Select.js.map +1 -1
  234. package/dist/js/components/Slider/Slider.d.ts +8 -4
  235. package/dist/js/components/Slider/Slider.d.ts.map +1 -1
  236. package/dist/js/components/Slider/Slider.js +62 -16
  237. package/dist/js/components/Slider/Slider.js.map +1 -1
  238. package/dist/js/components/Slider/SliderStep.d.ts.map +1 -1
  239. package/dist/js/components/Slider/SliderStep.js +2 -1
  240. package/dist/js/components/Slider/SliderStep.js.map +1 -1
  241. package/dist/js/components/Tabs/Tabs.d.ts +11 -6
  242. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  243. package/dist/js/components/Tabs/Tabs.js +35 -16
  244. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  245. package/dist/js/components/TextInput/TextInput.d.ts +3 -1
  246. package/dist/js/components/TextInput/TextInput.d.ts.map +1 -1
  247. package/dist/js/components/TextInput/TextInput.js +8 -7
  248. package/dist/js/components/TextInput/TextInput.js.map +1 -1
  249. package/dist/js/components/Timestamp/Timestamp.d.ts +4 -0
  250. package/dist/js/components/Timestamp/Timestamp.d.ts.map +1 -1
  251. package/dist/js/components/Timestamp/Timestamp.js +7 -4
  252. package/dist/js/components/Timestamp/Timestamp.js.map +1 -1
  253. package/dist/js/helpers/Popper/Popper.d.ts +2 -1
  254. package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
  255. package/dist/js/helpers/Popper/Popper.js +29 -6
  256. package/dist/js/helpers/Popper/Popper.js.map +1 -1
  257. package/dist/umd/react-core.min.js +3 -3
  258. package/helpers/package.json +1 -1
  259. package/layouts/package.json +1 -1
  260. package/next/package.json +1 -1
  261. package/package.json +8 -7
  262. package/src/components/BackgroundImage/__tests__/BackgroundImage.test.tsx +21 -7
  263. package/src/components/BackgroundImage/__tests__/__snapshots__/BackgroundImage.test.tsx.snap +11 -0
  264. package/src/components/Brand/__tests__/Brand.test.tsx +105 -30
  265. package/src/components/Breadcrumb/examples/BreadcrumbDropdown.tsx +25 -3
  266. package/src/components/Checkbox/examples/Checkbox.md +8 -2
  267. package/src/components/Checkbox/examples/CheckboxControlled.tsx +18 -16
  268. package/src/components/ClipboardCopy/ClipboardCopy.tsx +1 -0
  269. package/src/components/ClipboardCopy/ClipboardCopyExpanded.tsx +1 -1
  270. package/src/components/ClipboardCopy/ClipboardCopyToggle.tsx +5 -2
  271. package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyExpanded.test.tsx.snap +3 -1
  272. package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyToggle.test.tsx.snap +16 -12
  273. package/src/components/DragDrop/Draggable.tsx +1 -0
  274. package/src/components/Drawer/Drawer.tsx +6 -6
  275. package/src/components/Drawer/DrawerPanelContent.tsx +72 -26
  276. package/src/components/Drawer/examples/Drawer.md +12 -12
  277. package/src/components/Drawer/examples/{DrawerInlinePanelRight.tsx → DrawerInlinePanelEnd.tsx} +1 -1
  278. package/src/components/Drawer/examples/{DrawerInlinePanelLeft.tsx → DrawerInlinePanelStart.tsx} +2 -2
  279. package/src/components/Drawer/examples/{DrawerPanelLeft.tsx → DrawerPanelEnd.tsx} +2 -2
  280. package/src/components/Drawer/examples/{DrawerPanelRight.tsx → DrawerPanelStart.tsx} +2 -2
  281. package/src/components/Drawer/examples/{DrawerResizableOnRight.tsx → DrawerResizableAtEnd.tsx} +3 -3
  282. package/src/components/Drawer/examples/{DrawerResizableOnLeft.tsx → DrawerResizableAtStart.tsx} +2 -2
  283. package/src/components/Dropdown/Dropdown.tsx +3 -1
  284. package/src/components/Icon/Icon.tsx +15 -1
  285. package/src/components/Icon/__tests__/Icon.test.tsx +16 -0
  286. package/src/components/Label/Label.tsx +29 -3
  287. package/src/components/Label/__tests__/Label.test.tsx +35 -0
  288. package/src/components/Label/__tests__/__snapshots__/Label.test.tsx.snap +1 -0
  289. package/src/components/Label/examples/LabelFilled.tsx +220 -168
  290. package/src/components/Label/examples/LabelOutline.tsx +280 -226
  291. package/src/components/Menu/MenuContainer.tsx +1 -1
  292. package/src/components/Menu/examples/MenuWithDrilldownBreadcrumbs.tsx +32 -15
  293. package/src/components/Modal/ModalContent.tsx +4 -6
  294. package/src/components/Nav/NavItem.tsx +1 -1
  295. package/src/components/Nav/NavList.tsx +44 -12
  296. package/src/components/Nav/__tests__/__snapshots__/Nav.test.tsx.snap +10 -10
  297. package/src/components/Page/__tests__/__snapshots__/Page.test.tsx.snap +6 -6
  298. package/src/components/SearchInput/SearchInput.tsx +5 -2
  299. package/src/components/SearchInput/__tests__/__snapshots__/SearchInput.test.tsx.snap +105 -65
  300. package/src/components/Select/Select.tsx +9 -1
  301. package/src/components/Slider/Slider.tsx +69 -20
  302. package/src/components/Slider/SliderStep.tsx +2 -1
  303. package/src/components/Slider/_tests_/Slider.test.tsx +3 -3
  304. package/src/components/Slider/examples/SliderActions.tsx +3 -3
  305. package/src/components/Tabs/Tabs.tsx +50 -26
  306. package/src/components/Tabs/examples/Tabs.md +1 -3
  307. package/src/components/TextInput/TextInput.tsx +11 -7
  308. package/src/components/TextInput/__tests__/TextInput.test.tsx +16 -1
  309. package/src/components/TextInput/__tests__/__snapshots__/TextInput.test.tsx.snap +2 -1
  310. package/src/components/TextInput/examples/TextInput.md +2 -2
  311. package/src/components/TextInput/examples/{TextInputLeftTruncated.tsx → TextInputStartTruncated.tsx} +3 -3
  312. package/src/components/Timestamp/Timestamp.tsx +12 -3
  313. package/src/components/Timestamp/__tests__/Timestamp.test.tsx +6 -0
  314. package/src/components/Timestamp/examples/Timestamp.md +8 -0
  315. package/src/components/Timestamp/examples/TimestampDefault.tsx +7 -1
  316. package/src/components/Timestamp/examples/TimestampDefaultTooltip.tsx +1 -1
  317. package/src/components/Toolbar/examples/Toolbar.md +0 -6
  318. package/src/demos/Card/Card.md +3 -664
  319. package/src/demos/Card/examples/CardView.tsx +575 -0
  320. package/src/demos/CustomMenus/examples/ApplicationLauncherDemo.tsx +1 -1
  321. package/src/demos/DataListDemo.md +7 -4
  322. package/src/demos/PrimaryDetail.md +3 -4
  323. package/src/deprecated/components/ContextSelector/__tests__/__snapshots__/ContextSelector.test.tsx.snap +42 -26
  324. package/src/helpers/Popper/Popper.tsx +43 -6
  325. package/src/components/Brand/__tests__/__snapshots__/Brand.test.tsx.snap +0 -11
  326. package/src/components/Checkbox/examples/checkbox.css +0 -3
  327. package/src/components/Toolbar/examples/Test.tsx +0 -258
  328. /package/src/demos/Card/{CardData.jsx → examples/CardData.jsx} +0 -0
@@ -128,7 +128,7 @@ exports[`ContextSelector Renders ContextSelector open 1`] = `
128
128
  </div>
129
129
  </div>
130
130
  <div
131
- class="pf-v5-c-input-group__item pf-m-plain"
131
+ class="pf-v5-c-input-group__item"
132
132
  >
133
133
  <button
134
134
  aria-disabled="false"
@@ -139,19 +139,27 @@ exports[`ContextSelector Renders ContextSelector open 1`] = `
139
139
  data-ouia-safe="true"
140
140
  type="submit"
141
141
  >
142
- <svg
143
- aria-hidden="true"
144
- class="pf-v5-svg"
145
- fill="currentColor"
146
- height="1em"
147
- role="img"
148
- viewBox="0 0 448 512"
149
- width="1em"
142
+ <span
143
+ class="pf-v5-c-icon"
150
144
  >
151
- <path
152
- d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"
153
- />
154
- </svg>
145
+ <span
146
+ class="pf-v5-c-icon__content pf-v5-m-mirror-inline-rtl"
147
+ >
148
+ <svg
149
+ aria-hidden="true"
150
+ class="pf-v5-svg"
151
+ fill="currentColor"
152
+ height="1em"
153
+ role="img"
154
+ viewBox="0 0 448 512"
155
+ width="1em"
156
+ >
157
+ <path
158
+ d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"
159
+ />
160
+ </svg>
161
+ </span>
162
+ </span>
155
163
  </button>
156
164
  </div>
157
165
  </div>
@@ -305,7 +313,7 @@ exports[`ContextSelector Renders in strict mode 1`] = `
305
313
  </div>
306
314
  </div>
307
315
  <div
308
- class="pf-v5-c-input-group__item pf-m-plain"
316
+ class="pf-v5-c-input-group__item"
309
317
  >
310
318
  <button
311
319
  aria-disabled="false"
@@ -316,19 +324,27 @@ exports[`ContextSelector Renders in strict mode 1`] = `
316
324
  data-ouia-safe="true"
317
325
  type="submit"
318
326
  >
319
- <svg
320
- aria-hidden="true"
321
- class="pf-v5-svg"
322
- fill="currentColor"
323
- height="1em"
324
- role="img"
325
- viewBox="0 0 448 512"
326
- width="1em"
327
+ <span
328
+ class="pf-v5-c-icon"
327
329
  >
328
- <path
329
- d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"
330
- />
331
- </svg>
330
+ <span
331
+ class="pf-v5-c-icon__content pf-v5-m-mirror-inline-rtl"
332
+ >
333
+ <svg
334
+ aria-hidden="true"
335
+ class="pf-v5-svg"
336
+ fill="currentColor"
337
+ height="1em"
338
+ role="img"
339
+ viewBox="0 0 448 512"
340
+ width="1em"
341
+ >
342
+ <path
343
+ d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"
344
+ />
345
+ </svg>
346
+ </span>
347
+ </span>
332
348
  </button>
333
349
  </div>
334
350
  </div>
@@ -45,6 +45,21 @@ const getOppositePlacement = (placement: Placement): any =>
45
45
  export const getOpacityTransition = (animationDuration: number) =>
46
46
  `opacity ${animationDuration}ms cubic-bezier(.54, 1.5, .38, 1.11)`;
47
47
 
48
+ export const getLanguageDirection = (targetElement: HTMLElement) => {
49
+ const defaultDirection = 'ltr';
50
+ let direction = defaultDirection;
51
+
52
+ if (targetElement) {
53
+ direction = getComputedStyle(targetElement).getPropertyValue('direction');
54
+ }
55
+
56
+ if (['ltr', 'rtl'].includes(direction)) {
57
+ return direction as 'ltr' | 'rtl';
58
+ }
59
+
60
+ return defaultDirection;
61
+ };
62
+
48
63
  export interface PopperProps {
49
64
  /**
50
65
  * Trigger reference element to which the popper is relatively placed to.
@@ -66,7 +81,7 @@ export interface PopperProps {
66
81
  /** popper direction */
67
82
  direction?: 'up' | 'down';
68
83
  /** popper position */
69
- position?: 'right' | 'left' | 'center';
84
+ position?: 'right' | 'left' | 'center' | 'start' | 'end';
70
85
  /** Instead of direction and position can set the placement of the popper */
71
86
  placement?: Placement;
72
87
  /** Custom width of the popper. If the value is "trigger", it will set the width to the trigger element's width */
@@ -177,7 +192,7 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
177
192
  trigger,
178
193
  popper,
179
194
  direction = 'down',
180
- position = 'left',
195
+ position = 'start',
181
196
  placement,
182
197
  width,
183
198
  minWidth = 'trigger',
@@ -226,6 +241,28 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
226
241
  const refOrTrigger = refElement || triggerElement;
227
242
  const showPopper = isVisible || internalIsVisible;
228
243
 
244
+ const triggerParent = ((triggerRef as React.RefObject<any>)?.current || triggerElement)?.parentElement;
245
+ const languageDirection = getLanguageDirection(triggerParent);
246
+
247
+ const internalPosition = React.useMemo<'left' | 'right' | 'center'>(() => {
248
+ const fixedPositions = { left: 'left', right: 'right', center: 'center' };
249
+
250
+ const positionMap = {
251
+ ltr: {
252
+ start: 'left',
253
+ end: 'right',
254
+ ...fixedPositions
255
+ },
256
+ rtl: {
257
+ start: 'right',
258
+ end: 'left',
259
+ ...fixedPositions
260
+ }
261
+ };
262
+
263
+ return positionMap[languageDirection][position] as 'left' | 'right' | 'center';
264
+ }, [position, languageDirection]);
265
+
229
266
  const onDocumentClickCallback = React.useCallback(
230
267
  (event: MouseEvent) => onDocumentClick(event, refOrTrigger, popperElement),
231
268
  [showPopper, triggerElement, refElement, popperElement, onDocumentClick]
@@ -333,15 +370,15 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
333
370
  return placement;
334
371
  }
335
372
  let convertedPlacement = direction === 'up' ? 'top' : 'bottom';
336
- if (position !== 'center') {
337
- convertedPlacement = `${convertedPlacement}-${position === 'right' ? 'end' : 'start'}`;
373
+ if (internalPosition !== 'center') {
374
+ convertedPlacement = `${convertedPlacement}-${internalPosition === 'right' ? 'end' : 'start'}`;
338
375
  }
339
376
  return convertedPlacement as Placement;
340
377
  };
341
- const getPlacementMemo = React.useMemo(getPlacement, [direction, position, placement]);
378
+ const getPlacementMemo = React.useMemo(getPlacement, [direction, internalPosition, placement]);
342
379
  const getOppositePlacementMemo = React.useMemo(
343
380
  () => getOppositePlacement(getPlacement()),
344
- [direction, position, placement]
381
+ [direction, internalPosition, placement]
345
382
  );
346
383
 
347
384
  const widthMods: Modifier<'widthMods', {}> = React.useMemo(
@@ -1,11 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`Brand simple brand 1`] = `
4
- <DocumentFragment>
5
- <img
6
- alt="brand"
7
- class="pf-v5-c-brand"
8
- src=""
9
- />
10
- </DocumentFragment>
11
- `;
@@ -1,3 +0,0 @@
1
- .ws-react-c-checkbox .pf-v5-c-check.nested {
2
- padding-left: var(--pf-v5-global--spacer--md);
3
- }
@@ -1,258 +0,0 @@
1
- import React from 'react';
2
- import {
3
- MenuToggle,
4
- MenuToggleElement,
5
- Toolbar,
6
- ToolbarItem,
7
- ToolbarContent,
8
- ToolbarToggleGroup,
9
- ToolbarGroup,
10
- SearchInput,
11
- Select,
12
- SelectList,
13
- SelectOption,
14
- ToolbarFilter,
15
- Badge
16
- } from '@patternfly/react-core';
17
- import FilterIcon from '@patternfly/react-icons/dist/esm/icons/filter-icon';
18
-
19
- export const Test: React.FunctionComponent = () => {
20
- const statusChipContainerRef = React.useRef<HTMLDivElement>();
21
- const riskChipContainerRef = React.useRef<HTMLDivElement>();
22
-
23
- const [isStatusGroupExpanded, setIsStatusGroupExpanded] = React.useState(false);
24
- const [isRiskGroupExpanded, setIsRiskGroupExpanded] = React.useState(false);
25
-
26
- const [isStatusMenuExpanded, setIsStatusExpanded] = React.useState(false);
27
- const [isRiskMenuExpanded, setIsRiskExpanded] = React.useState(false);
28
- const [inputValue, setInputValue] = React.useState('');
29
- const [filters, setFilters] = React.useState({
30
- risk: ['Low'],
31
- status: ['New', 'Pending']
32
- });
33
-
34
- const closeToggleGroups = () => {
35
- setIsStatusGroupExpanded(false);
36
- setIsRiskGroupExpanded(false);
37
- };
38
-
39
- React.useEffect(() => {
40
- window.addEventListener('resize', closeToggleGroups); // Resize observer to toggle off expand groups is required to properly reformat toolbar when growing
41
- return () => {
42
- window.removeEventListener('resize', closeToggleGroups);
43
- };
44
- }, []);
45
-
46
- const onInputChange = (newValue: string) => {
47
- setInputValue(newValue);
48
- };
49
-
50
- const onStatusToggle = () => {
51
- setIsStatusExpanded(!isStatusMenuExpanded);
52
- };
53
-
54
- const onRiskToggle = () => {
55
- setIsRiskExpanded(!isRiskMenuExpanded);
56
- };
57
-
58
- const onSelect = (type: string, event: React.MouseEvent | React.ChangeEvent | undefined, selection: string) => {
59
- const checked = (event?.target as HTMLInputElement).checked;
60
- setFilters((prev) => {
61
- const prevSelections = prev[type];
62
- return {
63
- ...prev,
64
- [type]: checked ? [...prevSelections, selection] : prevSelections.filter((value) => value !== selection)
65
- };
66
- });
67
- };
68
-
69
- const onStatusSelect = (event: React.MouseEvent | React.ChangeEvent | undefined, selection: string) => {
70
- onSelect('status', event, selection);
71
- };
72
-
73
- const onRiskSelect = (event: React.MouseEvent | React.ChangeEvent | undefined, selection: string) => {
74
- onSelect('risk', event, selection);
75
- };
76
-
77
- const onDelete = (type: string, id: string) => {
78
- if (type === 'Risk') {
79
- setFilters({ risk: filters.risk.filter((fil: string) => fil !== id), status: filters.status });
80
- } else if (type === 'Status') {
81
- setFilters({ risk: filters.risk, status: filters.status.filter((fil: string) => fil !== id) });
82
- } else {
83
- setFilters({ risk: [], status: [] });
84
- }
85
- };
86
-
87
- const onDeleteGroup = (type: string) => {
88
- if (type === 'Risk') {
89
- setFilters({ risk: [], status: filters.status });
90
- } else if (type === 'Status') {
91
- setFilters({ risk: filters.risk, status: [] });
92
- }
93
- };
94
-
95
- const statusToggleGroupItems = (
96
- <React.Fragment>
97
- <ToolbarItem variant="search-filter">
98
- <SearchInput
99
- aria-label="Consumer toggle groups example search input"
100
- onChange={(_event, value) => onInputChange(value)}
101
- value={inputValue}
102
- onClear={() => {
103
- onInputChange('');
104
- }}
105
- />
106
- </ToolbarItem>
107
- <ToolbarGroup variant="filter-group">
108
- <ToolbarFilter
109
- chips={filters.status}
110
- deleteChip={(category, chip) => onDelete(category as string, chip as string)}
111
- deleteChipGroup={(category) => onDeleteGroup(category as string)}
112
- categoryName="Status"
113
- isExpanded={isStatusGroupExpanded}
114
- expandableChipContainerRef={statusChipContainerRef} // Required to link the toolbar filter chip group to the custom expandable group
115
- >
116
- <Select
117
- aria-label="Status"
118
- role="menu"
119
- toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
120
- <MenuToggle
121
- ref={toggleRef}
122
- onClick={onStatusToggle}
123
- isExpanded={isStatusMenuExpanded}
124
- style={
125
- {
126
- width: '140px'
127
- } as React.CSSProperties
128
- }
129
- >
130
- Status
131
- {filters.status.length > 0 && <Badge isRead>{filters.status.length}</Badge>}
132
- </MenuToggle>
133
- )}
134
- onSelect={(event, selection) => onStatusSelect(event, selection as string)}
135
- selected={filters.status}
136
- isOpen={isStatusMenuExpanded}
137
- onOpenChange={(isOpen) => setIsStatusExpanded(isOpen)}
138
- >
139
- <SelectList>
140
- <SelectOption hasCheckbox key="statusNew" value="New" isSelected={filters.status.includes('New')}>
141
- New
142
- </SelectOption>
143
- <SelectOption
144
- hasCheckbox
145
- key="statusPending"
146
- value="Pending"
147
- isSelected={filters.status.includes('Pending')}
148
- >
149
- Pending
150
- </SelectOption>
151
- <SelectOption
152
- hasCheckbox
153
- key="statusRunning"
154
- value="Running"
155
- isSelected={filters.status.includes('Running')}
156
- >
157
- Running
158
- </SelectOption>
159
- <SelectOption
160
- hasCheckbox
161
- key="statusCancelled"
162
- value="Cancelled"
163
- isSelected={filters.status.includes('Cancelled')}
164
- >
165
- Cancelled
166
- </SelectOption>
167
- </SelectList>
168
- </Select>
169
- </ToolbarFilter>
170
- </ToolbarGroup>
171
- </React.Fragment>
172
- );
173
-
174
- const riskToggleGroupItems = (
175
- <ToolbarGroup variant="filter-group">
176
- <ToolbarFilter
177
- chips={filters.risk}
178
- deleteChip={(category, chip) => onDelete(category as string, chip as string)}
179
- categoryName="Risk"
180
- isExpanded={isRiskGroupExpanded}
181
- expandableChipContainerRef={riskChipContainerRef} // Required to link the toolbar filter chip group to the custom expandable group
182
- >
183
- <Select
184
- aria-label="Risk"
185
- role="menu"
186
- toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
187
- <MenuToggle
188
- ref={toggleRef}
189
- onClick={onRiskToggle}
190
- isExpanded={isRiskMenuExpanded}
191
- style={
192
- {
193
- width: '140px'
194
- } as React.CSSProperties
195
- }
196
- >
197
- Risk
198
- {filters.risk.length > 0 && <Badge isRead>{filters.risk.length}</Badge>}
199
- </MenuToggle>
200
- )}
201
- onSelect={(event, selection) => onRiskSelect(event, selection as string)}
202
- selected={filters.risk}
203
- isOpen={isRiskMenuExpanded}
204
- onOpenChange={(isOpen) => setIsRiskExpanded(isOpen)}
205
- >
206
- <SelectList>
207
- <SelectOption hasCheckbox key="riskLow" value="Low" isSelected={filters.risk.includes('Low')}>
208
- Low
209
- </SelectOption>
210
- <SelectOption hasCheckbox key="riskMedium" value="Medium" isSelected={filters.risk.includes('Medium')}>
211
- Medium
212
- </SelectOption>
213
- <SelectOption hasCheckbox key="riskHigh" value="High" isSelected={filters.risk.includes('High')}>
214
- High
215
- </SelectOption>
216
- </SelectList>
217
- </Select>
218
- </ToolbarFilter>
219
- </ToolbarGroup>
220
- );
221
-
222
- return (
223
- <Toolbar id="toolbar-multiple-toggle-groups" className="pf-m-toggle-group-container">
224
- <ToolbarContent>
225
- <ToolbarToggleGroup
226
- isExpanded={isStatusGroupExpanded} // Required to control expanded state
227
- onToggle={() => {
228
- setIsStatusGroupExpanded(!isStatusGroupExpanded);
229
- setIsRiskGroupExpanded(false);
230
- }} // Required to control expanded state
231
- toggleIcon={<FilterIcon />}
232
- breakpoint="md"
233
- chipContainerRef={statusChipContainerRef}
234
- showClearFiltersButton
235
- clearAllFilters={() => onDeleteGroup('Status')}
236
- clearFiltersButtonText="Clear status filter"
237
- >
238
- {statusToggleGroupItems}
239
- </ToolbarToggleGroup>
240
- <ToolbarToggleGroup
241
- isExpanded={isRiskGroupExpanded} // Required to control expanded state
242
- onToggle={() => {
243
- setIsRiskGroupExpanded(!isRiskGroupExpanded);
244
- setIsStatusGroupExpanded(false);
245
- }} // Required to control expanded state
246
- toggleIcon={<FilterIcon />}
247
- breakpoint="xl"
248
- chipContainerRef={riskChipContainerRef}
249
- showClearFiltersButton
250
- clearAllFilters={() => onDeleteGroup('Risk')}
251
- clearFiltersButtonText={'Clear risk filter'}
252
- >
253
- {riskToggleGroupItems}
254
- </ToolbarToggleGroup>
255
- </ToolbarContent>
256
- </Toolbar>
257
- );
258
- };