@patternfly/react-core 6.3.1-prerelease.9 → 6.4.0-prerelease.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 (357) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  21. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  22. package/dist/dynamic/components/Content/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/Drawer/package.json +1 -1
  28. package/dist/dynamic/components/Dropdown/package.json +1 -1
  29. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  30. package/dist/dynamic/components/EmptyState/package.json +1 -1
  31. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  32. package/dist/dynamic/components/FileUpload/package.json +1 -1
  33. package/dist/dynamic/components/Form/package.json +1 -1
  34. package/dist/dynamic/components/FormSelect/package.json +1 -1
  35. package/dist/dynamic/components/HelperText/package.json +1 -1
  36. package/dist/dynamic/components/Hint/package.json +1 -1
  37. package/dist/dynamic/components/Icon/package.json +1 -1
  38. package/dist/dynamic/components/InputGroup/package.json +1 -1
  39. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  40. package/dist/dynamic/components/Label/package.json +1 -1
  41. package/dist/dynamic/components/List/package.json +1 -1
  42. package/dist/dynamic/components/LoginPage/package.json +1 -1
  43. package/dist/dynamic/components/Masthead/package.json +1 -1
  44. package/dist/dynamic/components/Menu/package.json +1 -1
  45. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  46. package/dist/dynamic/components/Modal/package.json +1 -1
  47. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  48. package/dist/dynamic/components/Nav/package.json +1 -1
  49. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  50. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  51. package/dist/dynamic/components/NumberInput/package.json +1 -1
  52. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  53. package/dist/dynamic/components/Page/package.json +1 -1
  54. package/dist/dynamic/components/Pagination/package.json +1 -1
  55. package/dist/dynamic/components/Panel/package.json +1 -1
  56. package/dist/dynamic/components/Popover/package.json +1 -1
  57. package/dist/dynamic/components/Progress/package.json +1 -1
  58. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  59. package/dist/dynamic/components/Radio/package.json +1 -1
  60. package/dist/dynamic/components/SearchInput/package.json +1 -1
  61. package/dist/dynamic/components/Select/package.json +1 -1
  62. package/dist/dynamic/components/Sidebar/package.json +1 -1
  63. package/dist/dynamic/components/SimpleList/package.json +1 -1
  64. package/dist/dynamic/components/Skeleton/package.json +1 -1
  65. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  66. package/dist/dynamic/components/Slider/package.json +1 -1
  67. package/dist/dynamic/components/Spinner/package.json +1 -1
  68. package/dist/dynamic/components/Switch/package.json +1 -1
  69. package/dist/dynamic/components/Tabs/package.json +1 -1
  70. package/dist/dynamic/components/TextArea/package.json +1 -1
  71. package/dist/dynamic/components/TextInput/package.json +1 -1
  72. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  73. package/dist/dynamic/components/TimePicker/package.json +1 -1
  74. package/dist/dynamic/components/Timestamp/package.json +1 -1
  75. package/dist/dynamic/components/Title/package.json +1 -1
  76. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  77. package/dist/dynamic/components/Toolbar/package.json +1 -1
  78. package/dist/dynamic/components/Tooltip/package.json +1 -1
  79. package/dist/dynamic/components/TreeView/package.json +1 -1
  80. package/dist/dynamic/components/Truncate/package.json +1 -1
  81. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/package.json +1 -1
  83. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/package.json +1 -1
  90. package/dist/dynamic/helpers/AnimationsProvider/AnimationsProvider/package.json +1 -0
  91. package/dist/dynamic/helpers/AnimationsProvider/package.json +1 -0
  92. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  93. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  94. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  95. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  96. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  97. package/dist/dynamic/helpers/constants/package.json +1 -1
  98. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  99. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  100. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  101. package/dist/dynamic/helpers/package.json +1 -1
  102. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  103. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  104. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  105. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  106. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  107. package/dist/dynamic/helpers/util/package.json +1 -1
  108. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  109. package/dist/dynamic/layouts/Flex/package.json +1 -1
  110. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  111. package/dist/dynamic/layouts/Grid/package.json +1 -1
  112. package/dist/dynamic/layouts/Level/package.json +1 -1
  113. package/dist/dynamic/layouts/Split/package.json +1 -1
  114. package/dist/dynamic/layouts/Stack/package.json +1 -1
  115. package/dist/dynamic/styles/package.json +1 -1
  116. package/dist/dynamic-modules.json +6 -0
  117. package/dist/esm/components/Alert/AlertGroup.d.ts +2 -13
  118. package/dist/esm/components/Alert/AlertGroup.d.ts.map +1 -1
  119. package/dist/esm/components/Alert/AlertGroup.js +33 -38
  120. package/dist/esm/components/Alert/AlertGroup.js.map +1 -1
  121. package/dist/esm/components/Alert/AlertGroupInline.d.ts.map +1 -1
  122. package/dist/esm/components/Alert/AlertGroupInline.js +3 -1
  123. package/dist/esm/components/Alert/AlertGroupInline.js.map +1 -1
  124. package/dist/esm/components/DataList/DataListItem.d.ts.map +1 -1
  125. package/dist/esm/components/DataList/DataListItem.js +8 -0
  126. package/dist/esm/components/DataList/DataListItem.js.map +1 -1
  127. package/dist/esm/components/Dropdown/Dropdown.d.ts +6 -20
  128. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  129. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  130. package/dist/esm/components/DualListSelector/DualListSelector.d.ts +2 -9
  131. package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  132. package/dist/esm/components/DualListSelector/DualListSelector.js +6 -16
  133. package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
  134. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  135. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js +3 -1
  136. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  137. package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  138. package/dist/esm/components/Form/FormFieldGroupExpandable.js +3 -1
  139. package/dist/esm/components/Form/FormFieldGroupExpandable.js.map +1 -1
  140. package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  141. package/dist/esm/components/Form/InternalFormFieldGroup.js +3 -1
  142. package/dist/esm/components/Form/InternalFormFieldGroup.js.map +1 -1
  143. package/dist/esm/components/Menu/Menu.d.ts +2 -1
  144. package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
  145. package/dist/esm/components/Menu/Menu.js +0 -1
  146. package/dist/esm/components/Menu/Menu.js.map +1 -1
  147. package/dist/esm/components/Menu/MenuContainer.d.ts +4 -17
  148. package/dist/esm/components/Menu/MenuContainer.d.ts.map +1 -1
  149. package/dist/esm/components/Menu/MenuContainer.js.map +1 -1
  150. package/dist/esm/components/Menu/MenuGroup.d.ts.map +1 -1
  151. package/dist/esm/components/Menu/MenuGroup.js +3 -2
  152. package/dist/esm/components/Menu/MenuGroup.js.map +1 -1
  153. package/dist/esm/components/Menu/MenuItem.js +3 -2
  154. package/dist/esm/components/Menu/MenuItem.js.map +1 -1
  155. package/dist/esm/components/Menu/MenuItemAction.d.ts.map +1 -1
  156. package/dist/esm/components/Menu/MenuItemAction.js +1 -2
  157. package/dist/esm/components/Menu/MenuItemAction.js.map +1 -1
  158. package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts +2 -0
  159. package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts.map +1 -1
  160. package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.js +2 -2
  161. package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.js.map +1 -1
  162. package/dist/esm/components/Progress/Progress.d.ts +2 -0
  163. package/dist/esm/components/Progress/Progress.d.ts.map +1 -1
  164. package/dist/esm/components/Progress/Progress.js +6 -2
  165. package/dist/esm/components/Progress/Progress.js.map +1 -1
  166. package/dist/esm/components/Progress/ProgressBar.d.ts +1 -0
  167. package/dist/esm/components/Progress/ProgressBar.d.ts.map +1 -1
  168. package/dist/esm/components/Progress/ProgressBar.js +1 -1
  169. package/dist/esm/components/Progress/ProgressBar.js.map +1 -1
  170. package/dist/esm/components/Progress/ProgressContainer.js +1 -1
  171. package/dist/esm/components/Progress/ProgressContainer.js.map +1 -1
  172. package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
  173. package/dist/esm/components/SearchInput/SearchInput.js +3 -1
  174. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  175. package/dist/esm/components/Select/Select.d.ts +6 -26
  176. package/dist/esm/components/Select/Select.d.ts.map +1 -1
  177. package/dist/esm/components/Select/Select.js.map +1 -1
  178. package/dist/esm/components/Tabs/OverflowTab.d.ts +4 -25
  179. package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -1
  180. package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
  181. package/dist/esm/components/Tabs/Tabs.d.ts +2 -2
  182. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  183. package/dist/esm/components/Tabs/Tabs.js +1 -1
  184. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  185. package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
  186. package/dist/esm/components/TreeView/TreeView.js +3 -1
  187. package/dist/esm/components/TreeView/TreeView.js.map +1 -1
  188. package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  189. package/dist/esm/components/TreeView/TreeViewListItem.js +3 -1
  190. package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
  191. package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
  192. package/dist/esm/components/Truncate/Truncate.js +3 -2
  193. package/dist/esm/components/Truncate/Truncate.js.map +1 -1
  194. package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.d.ts +76 -0
  195. package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.d.ts.map +1 -0
  196. package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.js +83 -0
  197. package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.js.map +1 -0
  198. package/dist/esm/helpers/AnimationsProvider/index.d.ts +2 -0
  199. package/dist/esm/helpers/AnimationsProvider/index.d.ts.map +1 -0
  200. package/dist/esm/helpers/AnimationsProvider/index.js +2 -0
  201. package/dist/esm/helpers/AnimationsProvider/index.js.map +1 -0
  202. package/dist/esm/helpers/Popper/Popper.d.ts +28 -21
  203. package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
  204. package/dist/esm/helpers/Popper/Popper.js +2 -2
  205. package/dist/esm/helpers/Popper/Popper.js.map +1 -1
  206. package/dist/esm/helpers/index.d.ts +1 -0
  207. package/dist/esm/helpers/index.d.ts.map +1 -1
  208. package/dist/esm/helpers/index.js +1 -0
  209. package/dist/esm/helpers/index.js.map +1 -1
  210. package/dist/js/components/Alert/AlertGroup.d.ts +2 -13
  211. package/dist/js/components/Alert/AlertGroup.d.ts.map +1 -1
  212. package/dist/js/components/Alert/AlertGroup.js +33 -37
  213. package/dist/js/components/Alert/AlertGroup.js.map +1 -1
  214. package/dist/js/components/Alert/AlertGroupInline.d.ts.map +1 -1
  215. package/dist/js/components/Alert/AlertGroupInline.js +3 -1
  216. package/dist/js/components/Alert/AlertGroupInline.js.map +1 -1
  217. package/dist/js/components/DataList/DataListItem.d.ts.map +1 -1
  218. package/dist/js/components/DataList/DataListItem.js +8 -0
  219. package/dist/js/components/DataList/DataListItem.js.map +1 -1
  220. package/dist/js/components/Dropdown/Dropdown.d.ts +6 -20
  221. package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
  222. package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
  223. package/dist/js/components/DualListSelector/DualListSelector.d.ts +2 -9
  224. package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  225. package/dist/js/components/DualListSelector/DualListSelector.js +7 -16
  226. package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
  227. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  228. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js +3 -1
  229. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  230. package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  231. package/dist/js/components/Form/FormFieldGroupExpandable.js +3 -1
  232. package/dist/js/components/Form/FormFieldGroupExpandable.js.map +1 -1
  233. package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  234. package/dist/js/components/Form/InternalFormFieldGroup.js +3 -1
  235. package/dist/js/components/Form/InternalFormFieldGroup.js.map +1 -1
  236. package/dist/js/components/Menu/Menu.d.ts +2 -1
  237. package/dist/js/components/Menu/Menu.d.ts.map +1 -1
  238. package/dist/js/components/Menu/Menu.js +0 -1
  239. package/dist/js/components/Menu/Menu.js.map +1 -1
  240. package/dist/js/components/Menu/MenuContainer.d.ts +4 -17
  241. package/dist/js/components/Menu/MenuContainer.d.ts.map +1 -1
  242. package/dist/js/components/Menu/MenuContainer.js.map +1 -1
  243. package/dist/js/components/Menu/MenuGroup.d.ts.map +1 -1
  244. package/dist/js/components/Menu/MenuGroup.js +3 -2
  245. package/dist/js/components/Menu/MenuGroup.js.map +1 -1
  246. package/dist/js/components/Menu/MenuItem.js +3 -2
  247. package/dist/js/components/Menu/MenuItem.js.map +1 -1
  248. package/dist/js/components/Menu/MenuItemAction.d.ts.map +1 -1
  249. package/dist/js/components/Menu/MenuItemAction.js +1 -2
  250. package/dist/js/components/Menu/MenuItemAction.js.map +1 -1
  251. package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts +2 -0
  252. package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts.map +1 -1
  253. package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.js +2 -2
  254. package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.js.map +1 -1
  255. package/dist/js/components/Progress/Progress.d.ts +2 -0
  256. package/dist/js/components/Progress/Progress.d.ts.map +1 -1
  257. package/dist/js/components/Progress/Progress.js +6 -2
  258. package/dist/js/components/Progress/Progress.js.map +1 -1
  259. package/dist/js/components/Progress/ProgressBar.d.ts +1 -0
  260. package/dist/js/components/Progress/ProgressBar.d.ts.map +1 -1
  261. package/dist/js/components/Progress/ProgressBar.js +1 -1
  262. package/dist/js/components/Progress/ProgressBar.js.map +1 -1
  263. package/dist/js/components/Progress/ProgressContainer.js +1 -1
  264. package/dist/js/components/Progress/ProgressContainer.js.map +1 -1
  265. package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
  266. package/dist/js/components/SearchInput/SearchInput.js +3 -1
  267. package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
  268. package/dist/js/components/Select/Select.d.ts +6 -26
  269. package/dist/js/components/Select/Select.d.ts.map +1 -1
  270. package/dist/js/components/Select/Select.js.map +1 -1
  271. package/dist/js/components/Tabs/OverflowTab.d.ts +4 -25
  272. package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -1
  273. package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
  274. package/dist/js/components/Tabs/Tabs.d.ts +2 -2
  275. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  276. package/dist/js/components/Tabs/Tabs.js +1 -1
  277. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  278. package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
  279. package/dist/js/components/TreeView/TreeView.js +3 -1
  280. package/dist/js/components/TreeView/TreeView.js.map +1 -1
  281. package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  282. package/dist/js/components/TreeView/TreeViewListItem.js +3 -1
  283. package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
  284. package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
  285. package/dist/js/components/Truncate/Truncate.js +2 -1
  286. package/dist/js/components/Truncate/Truncate.js.map +1 -1
  287. package/dist/js/helpers/AnimationsProvider/AnimationsProvider.d.ts +76 -0
  288. package/dist/js/helpers/AnimationsProvider/AnimationsProvider.d.ts.map +1 -0
  289. package/dist/js/helpers/AnimationsProvider/AnimationsProvider.js +89 -0
  290. package/dist/js/helpers/AnimationsProvider/AnimationsProvider.js.map +1 -0
  291. package/dist/js/helpers/AnimationsProvider/index.d.ts +2 -0
  292. package/dist/js/helpers/AnimationsProvider/index.d.ts.map +1 -0
  293. package/dist/js/helpers/AnimationsProvider/index.js +5 -0
  294. package/dist/js/helpers/AnimationsProvider/index.js.map +1 -0
  295. package/dist/js/helpers/Popper/Popper.d.ts +28 -21
  296. package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
  297. package/dist/js/helpers/Popper/Popper.js +2 -2
  298. package/dist/js/helpers/Popper/Popper.js.map +1 -1
  299. package/dist/js/helpers/index.d.ts +1 -0
  300. package/dist/js/helpers/index.d.ts.map +1 -1
  301. package/dist/js/helpers/index.js +1 -0
  302. package/dist/js/helpers/index.js.map +1 -1
  303. package/dist/styles/base-no-reset.css +8 -45
  304. package/dist/styles/base.css +8 -45
  305. package/dist/umd/assets/{output-D8x_lwPB.css → output-NiN4FQqb.css} +20230 -20103
  306. package/dist/umd/react-core.min.js +3 -3
  307. package/helpers/package.json +1 -1
  308. package/layouts/package.json +1 -1
  309. package/next/package.json +1 -1
  310. package/package.json +6 -6
  311. package/src/components/Alert/AlertGroup.tsx +59 -63
  312. package/src/components/Alert/AlertGroupInline.tsx +3 -1
  313. package/src/components/Alert/__tests__/AlertGroup.test.tsx +55 -4
  314. package/src/components/DataList/DataListItem.tsx +12 -0
  315. package/src/components/Dropdown/Dropdown.tsx +6 -21
  316. package/src/components/Dropdown/examples/Dropdown.md +2 -2
  317. package/src/components/DualListSelector/DualListSelector.tsx +32 -39
  318. package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +3 -1
  319. package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +28 -0
  320. package/src/components/Form/FormFieldGroupExpandable.tsx +3 -1
  321. package/src/components/Form/InternalFormFieldGroup.tsx +3 -1
  322. package/src/components/Form/__tests__/FormFieldGroupExpandable.test.tsx +30 -0
  323. package/src/components/Menu/Menu.tsx +2 -2
  324. package/src/components/Menu/MenuContainer.tsx +4 -17
  325. package/src/components/Menu/MenuGroup.tsx +13 -7
  326. package/src/components/Menu/MenuItem.tsx +2 -2
  327. package/src/components/Menu/MenuItemAction.tsx +3 -2
  328. package/src/components/Menu/__tests__/Menu.test.tsx +39 -1
  329. package/src/components/Menu/examples/Menu.md +3 -3
  330. package/src/components/MultipleFileUpload/MultipleFileUploadStatusItem.tsx +4 -0
  331. package/src/components/MultipleFileUpload/examples/MultipleFileUploadBasic.tsx +5 -4
  332. package/src/components/Progress/Progress.tsx +9 -1
  333. package/src/components/Progress/ProgressBar.tsx +2 -1
  334. package/src/components/Progress/ProgressContainer.tsx +1 -1
  335. package/src/components/Progress/__tests__/Generated/__snapshots__/ProgressBar.test.tsx.snap +1 -0
  336. package/src/components/Progress/__tests__/ProgressBar.test.tsx +19 -0
  337. package/src/components/Progress/examples/Progress.md +67 -23
  338. package/src/components/Progress/examples/ProgressHelperText.tsx +8 -2
  339. package/src/components/SearchInput/SearchInput.tsx +3 -1
  340. package/src/components/SearchInput/__tests__/SearchInput.test.tsx +52 -0
  341. package/src/components/Select/Select.tsx +6 -27
  342. package/src/components/Select/examples/Select.md +1 -1
  343. package/src/components/Tabs/OverflowTab.tsx +4 -26
  344. package/src/components/Tabs/Tabs.tsx +7 -3
  345. package/src/components/Tabs/__tests__/Tabs.test.tsx +12 -0
  346. package/src/components/Tabs/examples/Tabs.md +27 -27
  347. package/src/components/TreeView/TreeView.tsx +3 -1
  348. package/src/components/TreeView/TreeViewListItem.tsx +3 -1
  349. package/src/components/TreeView/__tests__/TreeView.test.tsx +28 -0
  350. package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +1 -1
  351. package/src/components/Truncate/Truncate.tsx +3 -1
  352. package/src/components/Truncate/examples/TruncateExamples.css +2 -2
  353. package/src/helpers/AnimationsProvider/AnimationsProvider.tsx +104 -0
  354. package/src/helpers/AnimationsProvider/__tests__/AnimationsProvider.test.tsx +157 -0
  355. package/src/helpers/AnimationsProvider/index.ts +1 -0
  356. package/src/helpers/Popper/Popper.tsx +31 -22
  357. package/src/helpers/index.ts +1 -0
@@ -0,0 +1,157 @@
1
+ import { render, screen } from '@testing-library/react';
2
+ import '@testing-library/jest-dom';
3
+ import { AnimationsProvider, useAnimationsConfig, useHasAnimations } from '../AnimationsProvider';
4
+
5
+ // Test component that uses the useAnimationsConfig hook
6
+ const TestConfigComponent = () => {
7
+ const { hasAnimations } = useAnimationsConfig();
8
+ return <div data-testid="config">{hasAnimations ? 'animations-enabled' : 'animations-disabled'}</div>;
9
+ };
10
+
11
+ // Test component that uses the useHasAnimations hook with a local prop
12
+ const TestHasAnimationsComponent = ({ hasAnimations: hasAnimationsProp }: { hasAnimations?: boolean }) => {
13
+ const hasAnimations = useHasAnimations(hasAnimationsProp);
14
+ return <div data-testid="has-animations">{hasAnimations ? 'animations-enabled' : 'animations-disabled'}</div>;
15
+ };
16
+
17
+ test('renders children correctly', () => {
18
+ render(
19
+ <AnimationsProvider config={{ hasAnimations: true }}>
20
+ <div data-testid="child">Test Child</div>
21
+ </AnimationsProvider>
22
+ );
23
+
24
+ expect(screen.getByTestId('child')).toBeInTheDocument();
25
+ expect(screen.getByTestId('child')).toHaveTextContent('Test Child');
26
+ });
27
+
28
+ test('provides explicit config', () => {
29
+ render(
30
+ <AnimationsProvider config={{ hasAnimations: false }}>
31
+ <TestConfigComponent />
32
+ </AnimationsProvider>
33
+ );
34
+
35
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-disabled');
36
+ });
37
+
38
+ test('provides animations enabled config', () => {
39
+ render(
40
+ <AnimationsProvider config={{ hasAnimations: true }}>
41
+ <TestConfigComponent />
42
+ </AnimationsProvider>
43
+ );
44
+
45
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-enabled');
46
+ });
47
+
48
+ test('provides animations disabled config', () => {
49
+ render(
50
+ <AnimationsProvider config={{ hasAnimations: false }}>
51
+ <TestConfigComponent />
52
+ </AnimationsProvider>
53
+ );
54
+
55
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-disabled');
56
+ });
57
+
58
+ test('useAnimationsConfig returns default config when no provider', () => {
59
+ render(<TestConfigComponent />);
60
+
61
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-disabled');
62
+ });
63
+
64
+ test('useHasAnimations uses context when no local prop provided', () => {
65
+ render(
66
+ <AnimationsProvider config={{ hasAnimations: true }}>
67
+ <TestHasAnimationsComponent />
68
+ </AnimationsProvider>
69
+ );
70
+
71
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-enabled');
72
+ });
73
+
74
+ test('useHasAnimations uses local prop when provided (true)', () => {
75
+ render(
76
+ <AnimationsProvider config={{ hasAnimations: false }}>
77
+ <TestHasAnimationsComponent hasAnimations={true} />
78
+ </AnimationsProvider>
79
+ );
80
+
81
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-enabled');
82
+ });
83
+
84
+ test('useHasAnimations uses local prop when provided (false)', () => {
85
+ render(
86
+ <AnimationsProvider config={{ hasAnimations: true }}>
87
+ <TestHasAnimationsComponent hasAnimations={false} />
88
+ </AnimationsProvider>
89
+ );
90
+
91
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-disabled');
92
+ });
93
+
94
+ test('useHasAnimations works without provider', () => {
95
+ render(<TestHasAnimationsComponent />);
96
+
97
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-disabled');
98
+ });
99
+
100
+ test('useHasAnimations with local prop and no provider', () => {
101
+ render(<TestHasAnimationsComponent hasAnimations={true} />);
102
+
103
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-enabled');
104
+ });
105
+
106
+ test('works in app-level scenario with multiple components', () => {
107
+ // Simulate realistic app-level usage
108
+ const MockApp = () => (
109
+ <div>
110
+ <header>
111
+ <TestConfigComponent />
112
+ </header>
113
+ <main>
114
+ <TestHasAnimationsComponent />
115
+ <TestHasAnimationsComponent hasAnimations={false} /> {/* Component override */}
116
+ </main>
117
+ </div>
118
+ );
119
+
120
+ render(
121
+ <AnimationsProvider config={{ hasAnimations: true }}>
122
+ <MockApp />
123
+ </AnimationsProvider>
124
+ );
125
+
126
+ const configs = screen.getAllByTestId('config');
127
+ const hasAnimationsComponents = screen.getAllByTestId('has-animations');
128
+
129
+ expect(configs[0]).toHaveTextContent('animations-enabled'); // Header uses provider
130
+ expect(hasAnimationsComponents[0]).toHaveTextContent('animations-enabled'); // Main uses provider
131
+ expect(hasAnimationsComponents[1]).toHaveTextContent('animations-disabled'); // Component override
132
+ });
133
+
134
+ test('handles dynamic context changes', () => {
135
+ const TestComponent = ({ hasAnimations }: { hasAnimations: boolean }) => (
136
+ <AnimationsProvider config={{ hasAnimations }}>
137
+ <TestConfigComponent />
138
+ <TestHasAnimationsComponent />
139
+ </AnimationsProvider>
140
+ );
141
+
142
+ const { rerender } = render(<TestComponent hasAnimations={true} />);
143
+
144
+ // Initially animations enabled
145
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-enabled');
146
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-enabled');
147
+
148
+ // Change to disabled
149
+ rerender(<TestComponent hasAnimations={false} />);
150
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-disabled');
151
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-disabled');
152
+
153
+ // Change back to enabled
154
+ rerender(<TestComponent hasAnimations={true} />);
155
+ expect(screen.getByTestId('config')).toHaveTextContent('animations-enabled');
156
+ expect(screen.getByTestId('has-animations')).toHaveTextContent('animations-enabled');
157
+ });
@@ -0,0 +1 @@
1
+ export * from './AnimationsProvider';
@@ -1,6 +1,7 @@
1
1
  import { cloneElement, isValidElement, useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
2
  import * as ReactDOM from 'react-dom';
3
3
  import { usePopper } from './thirdparty/react-popper/usePopper';
4
+ import { Options as OffsetOptions } from './thirdparty/popper-core/modifiers/offset';
4
5
  import { Placement, Modifier } from './thirdparty/popper-core';
5
6
  import { clearTimeouts } from '../util';
6
7
  import { css } from '@patternfly/react-styles';
@@ -46,27 +47,11 @@ const getOppositePlacement = (placement: Placement): any =>
46
47
  export const getOpacityTransition = (animationDuration: number) =>
47
48
  `opacity ${animationDuration}ms cubic-bezier(.54, 1.5, .38, 1.11)`;
48
49
 
49
- export interface PopperProps {
50
- /**
51
- * Trigger reference element to which the popper is relatively placed to.
52
- */
53
- trigger?: React.ReactNode;
54
- /**
55
- * A reference to the trigger reference element that can be passed instead of or along
56
- * with the trigger prop. When passed along with the trigger prop, the div element that
57
- * wraps the trigger will be removed.
58
- */
59
- triggerRef?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
60
- /** The popper (menu/tooltip/popover) element */
61
- popper: React.ReactElement<any>;
62
- /**
63
- * Reference to the popper (menu/tooltip/popover) element.
64
- * Passing this prop will remove the wrapper div element from the popper.
65
- */
66
- popperRef?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
50
+ /** Properties of Popper that can be used to customize its behavior. */
51
+ export interface PopperOptions {
67
52
  /** popper direction */
68
53
  direction?: 'up' | 'down';
69
- /** popper position */
54
+ /** Horizontal position of the popper. Use the additional prop preventOverflow if seeing clipping. */
70
55
  position?: 'right' | 'left' | 'center' | 'start' | 'end';
71
56
  /** Instead of direction and position can set the placement of the popper */
72
57
  placement?: Placement;
@@ -80,8 +65,6 @@ export interface PopperProps {
80
65
  appendTo?: HTMLElement | (() => HTMLElement) | 'inline';
81
66
  /** z-index of the popper element */
82
67
  zIndex?: number;
83
- /** True to make the popper visible */
84
- isVisible?: boolean;
85
68
  /**
86
69
  * Map class names to positions, for example:
87
70
  * {
@@ -107,6 +90,8 @@ export interface PopperProps {
107
90
  };
108
91
  /** Distance of the popper to the trigger */
109
92
  distance?: number;
93
+ /** Override for the popper's offset */
94
+ offset?: OffsetOptions['offset'];
110
95
  /** Callback function when mouse enters trigger */
111
96
  onMouseEnter?: (event?: MouseEvent) => void;
112
97
  /** Callback function when mouse leaves trigger */
@@ -176,6 +161,29 @@ export interface PopperProps {
176
161
  preventOverflow?: boolean;
177
162
  }
178
163
 
164
+ /** Extends PopperOptions */
165
+ export interface PopperProps extends PopperOptions {
166
+ /**
167
+ * Trigger reference element to which the popper is relatively placed to.
168
+ */
169
+ trigger?: React.ReactNode;
170
+ /**
171
+ * A reference to the trigger reference element that can be passed instead of or along
172
+ * with the trigger prop. When passed along with the trigger prop, the div element that
173
+ * wraps the trigger will be removed.
174
+ */
175
+ triggerRef?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
176
+ /** The popper (menu/tooltip/popover) element */
177
+ popper: React.ReactElement<any>;
178
+ /**
179
+ * Reference to the popper (menu/tooltip/popover) element.
180
+ * Passing this prop will remove the wrapper div element from the popper.
181
+ */
182
+ popperRef?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
183
+ /** True to make the popper visible */
184
+ isVisible?: boolean;
185
+ }
186
+
179
187
  export const Popper: React.FunctionComponent<PopperProps> = ({
180
188
  trigger,
181
189
  popper,
@@ -190,6 +198,7 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
190
198
  isVisible = true,
191
199
  positionModifiers,
192
200
  distance = 0,
201
+ offset,
193
202
  onMouseEnter,
194
203
  onMouseLeave,
195
204
  onFocus,
@@ -420,7 +429,7 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
420
429
  {
421
430
  name: 'offset',
422
431
  options: {
423
- offset: [0, distance]
432
+ offset: offset || [0, distance]
424
433
  }
425
434
  },
426
435
  {
@@ -1,3 +1,4 @@
1
+ export * from './AnimationsProvider';
1
2
  export * from './constants';
2
3
  export * from './FocusTrap/FocusTrap';
3
4
  export * from './GenerateId/GenerateId';