@patternfly/react-core 5.0.0-alpha.46 → 5.0.0-alpha.48

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 (485) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/esm/components/ApplicationLauncher/ApplicationLauncher.d.ts +1 -1
  3. package/dist/esm/components/ApplicationLauncher/ApplicationLauncher.d.ts.map +1 -1
  4. package/dist/esm/components/ApplicationLauncher/ApplicationLauncher.js +2 -2
  5. package/dist/esm/components/ApplicationLauncher/ApplicationLauncher.js.map +1 -1
  6. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherGroup.d.ts +1 -1
  7. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherGroup.d.ts.map +1 -1
  8. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherGroup.js +1 -1
  9. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherGroup.js.map +1 -1
  10. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherItem.d.ts +1 -1
  11. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherItem.d.ts.map +1 -1
  12. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherItem.js +1 -1
  13. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherItem.js.map +1 -1
  14. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherSeparator.d.ts +1 -1
  15. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherSeparator.d.ts.map +1 -1
  16. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherSeparator.js +1 -1
  17. package/dist/esm/components/ApplicationLauncher/ApplicationLauncherSeparator.js.map +1 -1
  18. package/dist/esm/components/Dropdown/Dropdown.d.ts +24 -55
  19. package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
  20. package/dist/esm/components/Dropdown/Dropdown.js +53 -12
  21. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  22. package/dist/esm/components/Dropdown/DropdownGroup.d.ts +8 -7
  23. package/dist/esm/components/Dropdown/DropdownGroup.d.ts.map +1 -1
  24. package/dist/esm/components/Dropdown/DropdownGroup.js +4 -9
  25. package/dist/esm/components/Dropdown/DropdownGroup.js.map +1 -1
  26. package/dist/esm/components/Dropdown/DropdownItem.d.ts +8 -41
  27. package/dist/esm/components/Dropdown/DropdownItem.d.ts.map +1 -1
  28. package/dist/esm/components/Dropdown/DropdownItem.js +5 -8
  29. package/dist/esm/components/Dropdown/DropdownItem.js.map +1 -1
  30. package/dist/esm/{next/components → components}/Dropdown/DropdownList.d.ts +1 -1
  31. package/dist/esm/components/Dropdown/DropdownList.d.ts.map +1 -0
  32. package/dist/esm/{next/components → components}/Dropdown/DropdownList.js +1 -1
  33. package/dist/esm/components/Dropdown/DropdownList.js.map +1 -0
  34. package/dist/esm/components/Dropdown/index.d.ts +1 -9
  35. package/dist/esm/components/Dropdown/index.d.ts.map +1 -1
  36. package/dist/esm/components/Dropdown/index.js +1 -9
  37. package/dist/esm/components/Dropdown/index.js.map +1 -1
  38. package/dist/esm/components/OverflowMenu/OverflowMenuDropdownItem.d.ts +1 -1
  39. package/dist/esm/components/OverflowMenu/OverflowMenuDropdownItem.d.ts.map +1 -1
  40. package/dist/esm/components/OverflowMenu/OverflowMenuDropdownItem.js +2 -2
  41. package/dist/esm/components/OverflowMenu/OverflowMenuDropdownItem.js.map +1 -1
  42. package/dist/esm/{components → deprecated/components}/Dropdown/BadgeToggle.d.ts +1 -1
  43. package/dist/esm/deprecated/components/Dropdown/BadgeToggle.d.ts.map +1 -0
  44. package/dist/esm/{components → deprecated/components}/Dropdown/BadgeToggle.js +1 -1
  45. package/dist/esm/deprecated/components/Dropdown/BadgeToggle.js.map +1 -0
  46. package/dist/esm/deprecated/components/Dropdown/Dropdown.d.ts +66 -0
  47. package/dist/esm/deprecated/components/Dropdown/Dropdown.d.ts.map +1 -0
  48. package/dist/esm/deprecated/components/Dropdown/Dropdown.js +16 -0
  49. package/dist/esm/deprecated/components/Dropdown/Dropdown.js.map +1 -0
  50. package/dist/esm/deprecated/components/Dropdown/DropdownGroup.d.ts +11 -0
  51. package/dist/esm/deprecated/components/Dropdown/DropdownGroup.d.ts.map +1 -0
  52. package/dist/esm/deprecated/components/Dropdown/DropdownGroup.js +15 -0
  53. package/dist/esm/deprecated/components/Dropdown/DropdownGroup.js.map +1 -0
  54. package/dist/esm/deprecated/components/Dropdown/DropdownItem.d.ts +52 -0
  55. package/dist/esm/deprecated/components/Dropdown/DropdownItem.d.ts.map +1 -0
  56. package/dist/esm/deprecated/components/Dropdown/DropdownItem.js +15 -0
  57. package/dist/esm/deprecated/components/Dropdown/DropdownItem.js.map +1 -0
  58. package/dist/esm/deprecated/components/Dropdown/DropdownMenu.d.ts.map +1 -0
  59. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownMenu.js +7 -7
  60. package/dist/esm/deprecated/components/Dropdown/DropdownMenu.js.map +1 -0
  61. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownSeparator.d.ts +1 -1
  62. package/dist/esm/deprecated/components/Dropdown/DropdownSeparator.d.ts.map +1 -0
  63. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownSeparator.js +3 -3
  64. package/dist/esm/deprecated/components/Dropdown/DropdownSeparator.js.map +1 -0
  65. package/dist/{js → esm/deprecated}/components/Dropdown/DropdownToggle.d.ts +1 -1
  66. package/dist/esm/deprecated/components/Dropdown/DropdownToggle.d.ts.map +1 -0
  67. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownToggle.js +1 -1
  68. package/dist/esm/deprecated/components/Dropdown/DropdownToggle.js.map +1 -0
  69. package/dist/esm/deprecated/components/Dropdown/DropdownToggleAction.d.ts.map +1 -0
  70. package/dist/esm/deprecated/components/Dropdown/DropdownToggleAction.js.map +1 -0
  71. package/dist/{js → esm/deprecated}/components/Dropdown/DropdownToggleCheckbox.d.ts +2 -2
  72. package/dist/esm/deprecated/components/Dropdown/DropdownToggleCheckbox.d.ts.map +1 -0
  73. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownToggleCheckbox.js +2 -2
  74. package/dist/esm/deprecated/components/Dropdown/DropdownToggleCheckbox.js.map +1 -0
  75. package/dist/{js → esm/deprecated}/components/Dropdown/DropdownWithContext.d.ts +2 -2
  76. package/dist/esm/deprecated/components/Dropdown/DropdownWithContext.d.ts.map +1 -0
  77. package/dist/esm/{components → deprecated/components}/Dropdown/DropdownWithContext.js +2 -2
  78. package/dist/esm/deprecated/components/Dropdown/DropdownWithContext.js.map +1 -0
  79. package/dist/esm/deprecated/components/Dropdown/InternalDropdownItem.d.ts.map +1 -0
  80. package/dist/esm/{components → deprecated/components}/Dropdown/InternalDropdownItem.js +3 -3
  81. package/dist/esm/deprecated/components/Dropdown/InternalDropdownItem.js.map +1 -0
  82. package/dist/esm/deprecated/components/Dropdown/KebabToggle.d.ts.map +1 -0
  83. package/dist/esm/deprecated/components/Dropdown/KebabToggle.js.map +1 -0
  84. package/dist/{js → esm/deprecated}/components/Dropdown/Toggle.d.ts +1 -1
  85. package/dist/esm/deprecated/components/Dropdown/Toggle.d.ts.map +1 -0
  86. package/dist/esm/{components → deprecated/components}/Dropdown/Toggle.js +2 -2
  87. package/dist/esm/deprecated/components/Dropdown/Toggle.js.map +1 -0
  88. package/dist/esm/{components → deprecated/components}/Dropdown/dropdownConstants.d.ts +1 -1
  89. package/dist/esm/deprecated/components/Dropdown/dropdownConstants.d.ts.map +1 -0
  90. package/dist/esm/deprecated/components/Dropdown/dropdownConstants.js.map +1 -0
  91. package/dist/esm/deprecated/components/Dropdown/index.d.ts +13 -0
  92. package/dist/esm/deprecated/components/Dropdown/index.d.ts.map +1 -0
  93. package/dist/esm/deprecated/components/Dropdown/index.js +13 -0
  94. package/dist/esm/deprecated/components/Dropdown/index.js.map +1 -0
  95. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenu.js +2 -2
  96. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenu.js.map +1 -1
  97. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuItem.js +1 -1
  98. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuItem.js.map +1 -1
  99. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuToggle.js +1 -1
  100. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuToggle.js.map +1 -1
  101. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuToggleWithText.js +2 -2
  102. package/dist/esm/deprecated/components/OptionsMenu/OptionsMenuToggleWithText.js.map +1 -1
  103. package/dist/esm/deprecated/components/index.d.ts +1 -0
  104. package/dist/esm/deprecated/components/index.d.ts.map +1 -1
  105. package/dist/esm/deprecated/components/index.js +1 -0
  106. package/dist/esm/deprecated/components/index.js.map +1 -1
  107. package/dist/esm/next/components/index.d.ts +0 -1
  108. package/dist/esm/next/components/index.d.ts.map +1 -1
  109. package/dist/esm/next/components/index.js +0 -1
  110. package/dist/esm/next/components/index.js.map +1 -1
  111. package/dist/js/components/ApplicationLauncher/ApplicationLauncher.d.ts +1 -1
  112. package/dist/js/components/ApplicationLauncher/ApplicationLauncher.d.ts.map +1 -1
  113. package/dist/js/components/ApplicationLauncher/ApplicationLauncher.js +2 -2
  114. package/dist/js/components/ApplicationLauncher/ApplicationLauncher.js.map +1 -1
  115. package/dist/js/components/ApplicationLauncher/ApplicationLauncherGroup.d.ts +1 -1
  116. package/dist/js/components/ApplicationLauncher/ApplicationLauncherGroup.d.ts.map +1 -1
  117. package/dist/js/components/ApplicationLauncher/ApplicationLauncherGroup.js +1 -1
  118. package/dist/js/components/ApplicationLauncher/ApplicationLauncherGroup.js.map +1 -1
  119. package/dist/js/components/ApplicationLauncher/ApplicationLauncherItem.d.ts +1 -1
  120. package/dist/js/components/ApplicationLauncher/ApplicationLauncherItem.d.ts.map +1 -1
  121. package/dist/js/components/ApplicationLauncher/ApplicationLauncherItem.js +1 -1
  122. package/dist/js/components/ApplicationLauncher/ApplicationLauncherItem.js.map +1 -1
  123. package/dist/js/components/ApplicationLauncher/ApplicationLauncherSeparator.d.ts +1 -1
  124. package/dist/js/components/ApplicationLauncher/ApplicationLauncherSeparator.d.ts.map +1 -1
  125. package/dist/js/components/ApplicationLauncher/ApplicationLauncherSeparator.js +1 -1
  126. package/dist/js/components/ApplicationLauncher/ApplicationLauncherSeparator.js.map +1 -1
  127. package/dist/js/components/Dropdown/Dropdown.d.ts +24 -55
  128. package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
  129. package/dist/js/components/Dropdown/Dropdown.js +52 -12
  130. package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
  131. package/dist/js/components/Dropdown/DropdownGroup.d.ts +8 -7
  132. package/dist/js/components/Dropdown/DropdownGroup.d.ts.map +1 -1
  133. package/dist/js/components/Dropdown/DropdownGroup.js +4 -9
  134. package/dist/js/components/Dropdown/DropdownGroup.js.map +1 -1
  135. package/dist/js/components/Dropdown/DropdownItem.d.ts +8 -41
  136. package/dist/js/components/Dropdown/DropdownItem.d.ts.map +1 -1
  137. package/dist/js/components/Dropdown/DropdownItem.js +5 -8
  138. package/dist/js/components/Dropdown/DropdownItem.js.map +1 -1
  139. package/dist/js/{next/components → components}/Dropdown/DropdownList.d.ts +1 -1
  140. package/dist/js/components/Dropdown/DropdownList.d.ts.map +1 -0
  141. package/dist/js/{next/components → components}/Dropdown/DropdownList.js +1 -1
  142. package/dist/js/components/Dropdown/DropdownList.js.map +1 -0
  143. package/dist/js/components/Dropdown/index.d.ts +1 -9
  144. package/dist/js/components/Dropdown/index.d.ts.map +1 -1
  145. package/dist/js/components/Dropdown/index.js +1 -9
  146. package/dist/js/components/Dropdown/index.js.map +1 -1
  147. package/dist/js/components/OverflowMenu/OverflowMenuDropdownItem.d.ts +1 -1
  148. package/dist/js/components/OverflowMenu/OverflowMenuDropdownItem.d.ts.map +1 -1
  149. package/dist/js/components/OverflowMenu/OverflowMenuDropdownItem.js +2 -2
  150. package/dist/js/components/OverflowMenu/OverflowMenuDropdownItem.js.map +1 -1
  151. package/dist/js/{components → deprecated/components}/Dropdown/BadgeToggle.d.ts +1 -1
  152. package/dist/js/deprecated/components/Dropdown/BadgeToggle.d.ts.map +1 -0
  153. package/dist/js/{components → deprecated/components}/Dropdown/BadgeToggle.js +1 -1
  154. package/dist/js/deprecated/components/Dropdown/BadgeToggle.js.map +1 -0
  155. package/dist/js/deprecated/components/Dropdown/Dropdown.d.ts +66 -0
  156. package/dist/js/deprecated/components/Dropdown/Dropdown.d.ts.map +1 -0
  157. package/dist/js/deprecated/components/Dropdown/Dropdown.js +20 -0
  158. package/dist/js/deprecated/components/Dropdown/Dropdown.js.map +1 -0
  159. package/dist/js/deprecated/components/Dropdown/DropdownGroup.d.ts +11 -0
  160. package/dist/js/deprecated/components/Dropdown/DropdownGroup.d.ts.map +1 -0
  161. package/dist/js/deprecated/components/Dropdown/DropdownGroup.js +19 -0
  162. package/dist/js/deprecated/components/Dropdown/DropdownGroup.js.map +1 -0
  163. package/dist/js/deprecated/components/Dropdown/DropdownItem.d.ts +52 -0
  164. package/dist/js/deprecated/components/Dropdown/DropdownItem.d.ts.map +1 -0
  165. package/dist/js/deprecated/components/Dropdown/DropdownItem.js +19 -0
  166. package/dist/js/deprecated/components/Dropdown/DropdownItem.js.map +1 -0
  167. package/dist/js/deprecated/components/Dropdown/DropdownMenu.d.ts.map +1 -0
  168. package/dist/js/{components → deprecated/components}/Dropdown/DropdownMenu.js +7 -7
  169. package/dist/js/deprecated/components/Dropdown/DropdownMenu.js.map +1 -0
  170. package/dist/js/{components → deprecated/components}/Dropdown/DropdownSeparator.d.ts +1 -1
  171. package/dist/js/deprecated/components/Dropdown/DropdownSeparator.d.ts.map +1 -0
  172. package/dist/js/{components → deprecated/components}/Dropdown/DropdownSeparator.js +3 -3
  173. package/dist/js/deprecated/components/Dropdown/DropdownSeparator.js.map +1 -0
  174. package/dist/{esm → js/deprecated}/components/Dropdown/DropdownToggle.d.ts +1 -1
  175. package/dist/js/deprecated/components/Dropdown/DropdownToggle.d.ts.map +1 -0
  176. package/dist/js/{components → deprecated/components}/Dropdown/DropdownToggle.js +1 -1
  177. package/dist/js/deprecated/components/Dropdown/DropdownToggle.js.map +1 -0
  178. package/dist/js/deprecated/components/Dropdown/DropdownToggleAction.d.ts.map +1 -0
  179. package/dist/js/deprecated/components/Dropdown/DropdownToggleAction.js.map +1 -0
  180. package/dist/{esm → js/deprecated}/components/Dropdown/DropdownToggleCheckbox.d.ts +2 -2
  181. package/dist/js/deprecated/components/Dropdown/DropdownToggleCheckbox.d.ts.map +1 -0
  182. package/dist/js/{components → deprecated/components}/Dropdown/DropdownToggleCheckbox.js +2 -2
  183. package/dist/js/deprecated/components/Dropdown/DropdownToggleCheckbox.js.map +1 -0
  184. package/dist/{esm → js/deprecated}/components/Dropdown/DropdownWithContext.d.ts +2 -2
  185. package/dist/js/deprecated/components/Dropdown/DropdownWithContext.d.ts.map +1 -0
  186. package/dist/js/{components → deprecated/components}/Dropdown/DropdownWithContext.js +2 -2
  187. package/dist/js/deprecated/components/Dropdown/DropdownWithContext.js.map +1 -0
  188. package/dist/js/deprecated/components/Dropdown/InternalDropdownItem.d.ts.map +1 -0
  189. package/dist/js/{components → deprecated/components}/Dropdown/InternalDropdownItem.js +3 -3
  190. package/dist/js/deprecated/components/Dropdown/InternalDropdownItem.js.map +1 -0
  191. package/dist/js/deprecated/components/Dropdown/KebabToggle.d.ts.map +1 -0
  192. package/dist/js/deprecated/components/Dropdown/KebabToggle.js.map +1 -0
  193. package/dist/{esm → js/deprecated}/components/Dropdown/Toggle.d.ts +1 -1
  194. package/dist/js/deprecated/components/Dropdown/Toggle.d.ts.map +1 -0
  195. package/dist/js/{components → deprecated/components}/Dropdown/Toggle.js +2 -2
  196. package/dist/js/deprecated/components/Dropdown/Toggle.js.map +1 -0
  197. package/dist/js/{components → deprecated/components}/Dropdown/dropdownConstants.d.ts +1 -1
  198. package/dist/js/deprecated/components/Dropdown/dropdownConstants.d.ts.map +1 -0
  199. package/dist/js/deprecated/components/Dropdown/dropdownConstants.js.map +1 -0
  200. package/dist/js/deprecated/components/Dropdown/index.d.ts +13 -0
  201. package/dist/js/deprecated/components/Dropdown/index.d.ts.map +1 -0
  202. package/dist/js/deprecated/components/Dropdown/index.js +16 -0
  203. package/dist/js/deprecated/components/Dropdown/index.js.map +1 -0
  204. package/dist/js/deprecated/components/OptionsMenu/OptionsMenu.js +2 -2
  205. package/dist/js/deprecated/components/OptionsMenu/OptionsMenu.js.map +1 -1
  206. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuItem.js +1 -1
  207. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuItem.js.map +1 -1
  208. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuToggle.js +1 -1
  209. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuToggle.js.map +1 -1
  210. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuToggleWithText.js +2 -2
  211. package/dist/js/deprecated/components/OptionsMenu/OptionsMenuToggleWithText.js.map +1 -1
  212. package/dist/js/deprecated/components/index.d.ts +1 -0
  213. package/dist/js/deprecated/components/index.d.ts.map +1 -1
  214. package/dist/js/deprecated/components/index.js +1 -0
  215. package/dist/js/deprecated/components/index.js.map +1 -1
  216. package/dist/js/next/components/index.d.ts +0 -1
  217. package/dist/js/next/components/index.d.ts.map +1 -1
  218. package/dist/js/next/components/index.js +0 -1
  219. package/dist/js/next/components/index.js.map +1 -1
  220. package/dist/umd/react-core.min.js +3 -3
  221. package/package.json +2 -2
  222. package/src/components/ActionList/examples/ActionList.md +10 -0
  223. package/src/components/ActionList/examples/ActionListSingleGroup.tsx +15 -17
  224. package/src/components/ApplicationLauncher/ApplicationLauncher.tsx +8 -9
  225. package/src/components/ApplicationLauncher/ApplicationLauncherGroup.tsx +1 -1
  226. package/src/components/ApplicationLauncher/ApplicationLauncherItem.tsx +1 -1
  227. package/src/components/ApplicationLauncher/ApplicationLauncherSeparator.tsx +1 -1
  228. package/src/components/ApplicationLauncher/__tests__/ApplicationLauncher.test.tsx +1 -1
  229. package/src/components/ApplicationLauncher/__tests__/Generated/ApplicationLauncherSeparator.test.tsx +1 -1
  230. package/src/components/ApplicationLauncher/examples/ApplicationLauncher.md +11 -0
  231. package/src/components/ApplicationLauncher/examples/ApplicationLauncherAlignRight.tsx +3 -2
  232. package/src/components/ApplicationLauncher/examples/ApplicationLauncherAlignTop.tsx +3 -2
  233. package/src/components/Breadcrumb/examples/Breadcrumb.md +9 -0
  234. package/src/components/Breadcrumb/examples/BreadcrumbDropdown.tsx +11 -13
  235. package/src/components/Card/examples/Card.md +35 -17
  236. package/src/components/Card/examples/CardExpandable.tsx +18 -16
  237. package/src/components/Card/examples/CardExpandableWithIcon.tsx +16 -21
  238. package/src/components/Card/examples/CardHeaderInCardHead.tsx +16 -21
  239. package/src/components/Card/examples/CardLegacySelectable.tsx +16 -19
  240. package/src/components/Card/examples/CardOnlyActionsInCardHead.tsx +17 -20
  241. package/src/components/Card/examples/CardSelectable.tsx +16 -19
  242. package/src/components/Card/examples/CardWithImageAndActions.tsx +16 -22
  243. package/src/components/DataList/__tests__/DataList.test.tsx +10 -10
  244. package/src/components/DataList/examples/DataList.md +18 -1
  245. package/src/components/DataList/examples/DataListActions.tsx +12 -10
  246. package/src/components/DataList/examples/DataListCheckboxes.tsx +26 -24
  247. package/src/components/DataList/examples/DataListExpandable.tsx +25 -23
  248. package/src/components/DataList/examples/DataListMixedExpandable.tsx +25 -23
  249. package/src/components/DataList/examples/DataListSelectableRows.tsx +18 -16
  250. package/src/components/DataList/examples/DataListWidthModifiers.tsx +18 -16
  251. package/src/components/Dropdown/Dropdown.tsx +113 -98
  252. package/src/components/Dropdown/DropdownGroup.tsx +15 -26
  253. package/src/components/Dropdown/DropdownItem.tsx +14 -90
  254. package/src/{next/components → components}/Dropdown/DropdownList.tsx +1 -1
  255. package/src/components/Dropdown/__tests__/Dropdown.test.tsx +208 -270
  256. package/src/components/Dropdown/__tests__/DropdownGroup.test.tsx +68 -9
  257. package/src/{next/components → components}/Dropdown/__tests__/DropdownItem.test.tsx +1 -1
  258. package/src/{next/components → components}/Dropdown/__tests__/DropdownList.test.tsx +1 -1
  259. package/src/components/Dropdown/__tests__/__snapshots__/Dropdown.test.tsx.snap +32 -963
  260. package/src/components/Dropdown/__tests__/__snapshots__/DropdownGroup.test.tsx.snap +14 -15
  261. package/src/components/Dropdown/examples/Dropdown.md +20 -149
  262. package/src/components/Dropdown/examples/DropdownBasic.tsx +35 -43
  263. package/src/{next/components → components}/Dropdown/examples/DropdownWithDescriptions.tsx +1 -2
  264. package/src/{next/components → components}/Dropdown/examples/DropdownWithGroups.tsx +4 -5
  265. package/src/{next/components → components}/Dropdown/examples/DropdownWithKebabToggle.tsx +2 -3
  266. package/src/components/Dropdown/index.ts +1 -9
  267. package/src/components/DualListSelector/examples/DualListSelector.md +14 -1
  268. package/src/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +11 -14
  269. package/src/components/Hint/examples/Hint.md +9 -0
  270. package/src/components/Hint/examples/HintBasicWithTitle.tsx +15 -19
  271. package/src/components/Hint/examples/HintBasicWithoutTitle.tsx +15 -18
  272. package/src/components/InputGroup/examples/InputGroup.md +17 -0
  273. package/src/components/InputGroup/examples/InputGroupWithDropdown.tsx +13 -8
  274. package/src/components/Menu/examples/Menu.md +27 -0
  275. package/src/components/Menu/examples/MenuWithDrilldownBreadcrumbs.tsx +30 -28
  276. package/src/components/Modal/examples/Modal.md +24 -4
  277. package/src/components/Modal/examples/ModalWithDropdown.tsx +14 -9
  278. package/src/components/NotificationDrawer/examples/NotificationDrawer.md +12 -1
  279. package/src/components/NotificationDrawer/examples/NotificationDrawerBasic.tsx +20 -18
  280. package/src/components/NotificationDrawer/examples/NotificationDrawerGroups.tsx +22 -20
  281. package/src/components/OverflowMenu/OverflowMenuDropdownItem.tsx +2 -2
  282. package/src/components/OverflowMenu/examples/OverflowMenu.md +20 -17
  283. package/src/components/OverflowMenu/examples/OverflowMenuBreakpointOnContainer.tsx +7 -6
  284. package/src/components/Toolbar/examples/Toolbar.md +20 -1
  285. package/src/components/Toolbar/examples/ToolbarStacked.tsx +43 -39
  286. package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +19 -23
  287. package/src/components/TreeView/examples/TreeView.md +59 -59
  288. package/src/demos/AlertGroup.md +8 -2
  289. package/src/demos/Card/Card.md +38 -23
  290. package/src/demos/CardDemos.md +15 -12
  291. package/src/demos/DataListDemo.md +37 -29
  292. package/src/demos/DateTimePicker.md +6 -0
  293. package/src/demos/Masthead.md +8 -0
  294. package/src/demos/Nav.md +86 -78
  295. package/src/demos/NotificationDrawer/NotificationDrawer.md +94 -80
  296. package/src/demos/Page.md +12 -1
  297. package/src/demos/PrimaryDetail.md +51 -34
  298. package/src/demos/Tabs.md +5 -2
  299. package/src/demos/Toolbar.md +53 -43
  300. package/src/demos/examples/AlertGroup/AlertGroupToastWithNotificationDrawer.tsx +16 -14
  301. package/src/demos/examples/DashboardHeader.js +31 -28
  302. package/src/demos/examples/DateTimePicker/DateTimePicker.tsx +8 -12
  303. package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +31 -28
  304. package/src/demos/examples/Page/PageStickySectionBreadcrumb.tsx +31 -28
  305. package/src/demos/examples/Page/PageStickySectionGroup.tsx +31 -28
  306. package/src/demos/examples/Page/PageStickySectionGroupAlternate.tsx +31 -28
  307. package/src/demos/examples/Page/PageStickySectionGroupUsingPageHeader.tsx +31 -28
  308. package/src/demos/examples/Tabs/TabsAndTable.tsx +15 -14
  309. package/src/{components → deprecated/components}/Dropdown/BadgeToggle.tsx +1 -1
  310. package/src/deprecated/components/Dropdown/Dropdown.tsx +115 -0
  311. package/src/deprecated/components/Dropdown/DropdownGroup.tsx +36 -0
  312. package/src/deprecated/components/Dropdown/DropdownItem.tsx +113 -0
  313. package/src/{components → deprecated/components}/Dropdown/DropdownMenu.tsx +11 -18
  314. package/src/{components → deprecated/components}/Dropdown/DropdownSeparator.tsx +3 -3
  315. package/src/{components → deprecated/components}/Dropdown/DropdownToggle.tsx +1 -1
  316. package/src/{components → deprecated/components}/Dropdown/DropdownToggleCheckbox.tsx +3 -3
  317. package/src/{components → deprecated/components}/Dropdown/DropdownWithContext.tsx +3 -3
  318. package/src/{components → deprecated/components}/Dropdown/InternalDropdownItem.tsx +3 -3
  319. package/src/{components → deprecated/components}/Dropdown/Toggle.tsx +4 -4
  320. package/src/deprecated/components/Dropdown/__tests__/Dropdown.test.tsx +278 -0
  321. package/src/deprecated/components/Dropdown/__tests__/DropdownGroup.test.tsx +10 -0
  322. package/src/deprecated/components/Dropdown/__tests__/__snapshots__/Dropdown.test.tsx.snap +978 -0
  323. package/src/deprecated/components/Dropdown/__tests__/__snapshots__/DropdownGroup.test.tsx.snap +21 -0
  324. package/src/{components → deprecated/components}/Dropdown/dropdownConstants.tsx +1 -1
  325. package/src/deprecated/components/Dropdown/examples/Dropdown.md +211 -0
  326. package/src/{components → deprecated/components}/Dropdown/examples/DropdownAlignmentOnBreakpoints.tsx +1 -1
  327. package/src/{components → deprecated/components}/Dropdown/examples/DropdownAppendBodyVsParent.tsx +2 -1
  328. package/src/{components → deprecated/components}/Dropdown/examples/DropdownBadge.tsx +1 -1
  329. package/src/deprecated/components/Dropdown/examples/DropdownBasic.tsx +59 -0
  330. package/src/{components → deprecated/components}/Dropdown/examples/DropdownBasicPanel.tsx +1 -1
  331. package/src/{components → deprecated/components}/Dropdown/examples/DropdownDescriptions.tsx +1 -1
  332. package/src/{components → deprecated/components}/Dropdown/examples/DropdownDirectionUp.tsx +7 -1
  333. package/src/{components → deprecated/components}/Dropdown/examples/DropdownDisabled.tsx +1 -1
  334. package/src/{components → deprecated/components}/Dropdown/examples/DropdownGroups.tsx +1 -1
  335. package/src/{components → deprecated/components}/Dropdown/examples/DropdownIconOnly.tsx +1 -1
  336. package/src/{components → deprecated/components}/Dropdown/examples/DropdownImageAndText.tsx +3 -3
  337. package/src/{components → deprecated/components}/Dropdown/examples/DropdownInitialSelection.tsx +1 -1
  338. package/src/{components → deprecated/components}/Dropdown/examples/DropdownKebab.tsx +1 -1
  339. package/src/{components → deprecated/components}/Dropdown/examples/DropdownPlainTextToggle.tsx +1 -1
  340. package/src/{components → deprecated/components}/Dropdown/examples/DropdownPositionRight.tsx +7 -1
  341. package/src/{components → deprecated/components}/Dropdown/examples/DropdownPrimaryToggle.tsx +1 -1
  342. package/src/{components → deprecated/components}/Dropdown/examples/DropdownRouterLink.tsx +1 -1
  343. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSecondaryToggle.tsx +1 -1
  344. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButton.tsx +1 -1
  345. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonAction.tsx +1 -1
  346. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonActionPrimary.tsx +1 -1
  347. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonActionSecondary.tsx +1 -1
  348. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonDisabled.tsx +1 -1
  349. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonProgressCheckbox.tsx +1 -1
  350. package/src/{components → deprecated/components}/Dropdown/examples/DropdownSplitButtonText.tsx +1 -1
  351. package/src/deprecated/components/Dropdown/index.ts +12 -0
  352. package/src/deprecated/components/OptionsMenu/OptionsMenu.tsx +2 -2
  353. package/src/deprecated/components/OptionsMenu/OptionsMenuItem.tsx +1 -1
  354. package/src/deprecated/components/OptionsMenu/OptionsMenuToggle.tsx +1 -1
  355. package/src/deprecated/components/OptionsMenu/OptionsMenuToggleWithText.tsx +2 -2
  356. package/src/deprecated/components/OptionsMenu/__tests__/Generated/OptionsMenuItem.test.tsx +1 -1
  357. package/src/deprecated/components/index.ts +1 -0
  358. package/src/next/components/Wizard/examples/WizardWithinModal.tsx +9 -1
  359. package/src/next/components/index.ts +0 -1
  360. package/dist/esm/components/Dropdown/BadgeToggle.d.ts.map +0 -1
  361. package/dist/esm/components/Dropdown/BadgeToggle.js.map +0 -1
  362. package/dist/esm/components/Dropdown/DropdownMenu.d.ts.map +0 -1
  363. package/dist/esm/components/Dropdown/DropdownMenu.js.map +0 -1
  364. package/dist/esm/components/Dropdown/DropdownSeparator.d.ts.map +0 -1
  365. package/dist/esm/components/Dropdown/DropdownSeparator.js.map +0 -1
  366. package/dist/esm/components/Dropdown/DropdownToggle.d.ts.map +0 -1
  367. package/dist/esm/components/Dropdown/DropdownToggle.js.map +0 -1
  368. package/dist/esm/components/Dropdown/DropdownToggleAction.d.ts.map +0 -1
  369. package/dist/esm/components/Dropdown/DropdownToggleAction.js.map +0 -1
  370. package/dist/esm/components/Dropdown/DropdownToggleCheckbox.d.ts.map +0 -1
  371. package/dist/esm/components/Dropdown/DropdownToggleCheckbox.js.map +0 -1
  372. package/dist/esm/components/Dropdown/DropdownWithContext.d.ts.map +0 -1
  373. package/dist/esm/components/Dropdown/DropdownWithContext.js.map +0 -1
  374. package/dist/esm/components/Dropdown/InternalDropdownItem.d.ts.map +0 -1
  375. package/dist/esm/components/Dropdown/InternalDropdownItem.js.map +0 -1
  376. package/dist/esm/components/Dropdown/KebabToggle.d.ts.map +0 -1
  377. package/dist/esm/components/Dropdown/KebabToggle.js.map +0 -1
  378. package/dist/esm/components/Dropdown/Toggle.d.ts.map +0 -1
  379. package/dist/esm/components/Dropdown/Toggle.js.map +0 -1
  380. package/dist/esm/components/Dropdown/dropdownConstants.d.ts.map +0 -1
  381. package/dist/esm/components/Dropdown/dropdownConstants.js.map +0 -1
  382. package/dist/esm/next/components/Dropdown/Dropdown.d.ts +0 -35
  383. package/dist/esm/next/components/Dropdown/Dropdown.d.ts.map +0 -1
  384. package/dist/esm/next/components/Dropdown/Dropdown.js +0 -57
  385. package/dist/esm/next/components/Dropdown/Dropdown.js.map +0 -1
  386. package/dist/esm/next/components/Dropdown/DropdownGroup.d.ts +0 -12
  387. package/dist/esm/next/components/Dropdown/DropdownGroup.d.ts.map +0 -1
  388. package/dist/esm/next/components/Dropdown/DropdownGroup.js +0 -10
  389. package/dist/esm/next/components/Dropdown/DropdownGroup.js.map +0 -1
  390. package/dist/esm/next/components/Dropdown/DropdownItem.d.ts +0 -19
  391. package/dist/esm/next/components/Dropdown/DropdownItem.d.ts.map +0 -1
  392. package/dist/esm/next/components/Dropdown/DropdownItem.js +0 -12
  393. package/dist/esm/next/components/Dropdown/DropdownItem.js.map +0 -1
  394. package/dist/esm/next/components/Dropdown/DropdownList.d.ts.map +0 -1
  395. package/dist/esm/next/components/Dropdown/DropdownList.js.map +0 -1
  396. package/dist/esm/next/components/Dropdown/index.d.ts +0 -5
  397. package/dist/esm/next/components/Dropdown/index.d.ts.map +0 -1
  398. package/dist/esm/next/components/Dropdown/index.js +0 -5
  399. package/dist/esm/next/components/Dropdown/index.js.map +0 -1
  400. package/dist/js/components/Dropdown/BadgeToggle.d.ts.map +0 -1
  401. package/dist/js/components/Dropdown/BadgeToggle.js.map +0 -1
  402. package/dist/js/components/Dropdown/DropdownMenu.d.ts.map +0 -1
  403. package/dist/js/components/Dropdown/DropdownMenu.js.map +0 -1
  404. package/dist/js/components/Dropdown/DropdownSeparator.d.ts.map +0 -1
  405. package/dist/js/components/Dropdown/DropdownSeparator.js.map +0 -1
  406. package/dist/js/components/Dropdown/DropdownToggle.d.ts.map +0 -1
  407. package/dist/js/components/Dropdown/DropdownToggle.js.map +0 -1
  408. package/dist/js/components/Dropdown/DropdownToggleAction.d.ts.map +0 -1
  409. package/dist/js/components/Dropdown/DropdownToggleAction.js.map +0 -1
  410. package/dist/js/components/Dropdown/DropdownToggleCheckbox.d.ts.map +0 -1
  411. package/dist/js/components/Dropdown/DropdownToggleCheckbox.js.map +0 -1
  412. package/dist/js/components/Dropdown/DropdownWithContext.d.ts.map +0 -1
  413. package/dist/js/components/Dropdown/DropdownWithContext.js.map +0 -1
  414. package/dist/js/components/Dropdown/InternalDropdownItem.d.ts.map +0 -1
  415. package/dist/js/components/Dropdown/InternalDropdownItem.js.map +0 -1
  416. package/dist/js/components/Dropdown/KebabToggle.d.ts.map +0 -1
  417. package/dist/js/components/Dropdown/KebabToggle.js.map +0 -1
  418. package/dist/js/components/Dropdown/Toggle.d.ts.map +0 -1
  419. package/dist/js/components/Dropdown/Toggle.js.map +0 -1
  420. package/dist/js/components/Dropdown/dropdownConstants.d.ts.map +0 -1
  421. package/dist/js/components/Dropdown/dropdownConstants.js.map +0 -1
  422. package/dist/js/next/components/Dropdown/Dropdown.d.ts +0 -35
  423. package/dist/js/next/components/Dropdown/Dropdown.d.ts.map +0 -1
  424. package/dist/js/next/components/Dropdown/Dropdown.js +0 -60
  425. package/dist/js/next/components/Dropdown/Dropdown.js.map +0 -1
  426. package/dist/js/next/components/Dropdown/DropdownGroup.d.ts +0 -12
  427. package/dist/js/next/components/Dropdown/DropdownGroup.d.ts.map +0 -1
  428. package/dist/js/next/components/Dropdown/DropdownGroup.js +0 -14
  429. package/dist/js/next/components/Dropdown/DropdownGroup.js.map +0 -1
  430. package/dist/js/next/components/Dropdown/DropdownItem.d.ts +0 -19
  431. package/dist/js/next/components/Dropdown/DropdownItem.d.ts.map +0 -1
  432. package/dist/js/next/components/Dropdown/DropdownItem.js +0 -16
  433. package/dist/js/next/components/Dropdown/DropdownItem.js.map +0 -1
  434. package/dist/js/next/components/Dropdown/DropdownList.d.ts.map +0 -1
  435. package/dist/js/next/components/Dropdown/DropdownList.js.map +0 -1
  436. package/dist/js/next/components/Dropdown/index.d.ts +0 -5
  437. package/dist/js/next/components/Dropdown/index.d.ts.map +0 -1
  438. package/dist/js/next/components/Dropdown/index.js +0 -8
  439. package/dist/js/next/components/Dropdown/index.js.map +0 -1
  440. package/src/next/components/Dropdown/Dropdown.tsx +0 -130
  441. package/src/next/components/Dropdown/DropdownGroup.tsx +0 -25
  442. package/src/next/components/Dropdown/DropdownItem.tsx +0 -37
  443. package/src/next/components/Dropdown/__tests__/Dropdown.test.tsx +0 -216
  444. package/src/next/components/Dropdown/__tests__/DropdownGroup.test.tsx +0 -69
  445. package/src/next/components/Dropdown/__tests__/__snapshots__/Dropdown.test.tsx.snap +0 -47
  446. package/src/next/components/Dropdown/__tests__/__snapshots__/DropdownGroup.test.tsx.snap +0 -20
  447. package/src/next/components/Dropdown/examples/Dropdown.md +0 -45
  448. package/src/next/components/Dropdown/examples/DropdownBasic.tsx +0 -52
  449. package/src/next/components/Dropdown/index.ts +0 -4
  450. /package/dist/esm/{components → deprecated/components}/Dropdown/DropdownMenu.d.ts +0 -0
  451. /package/dist/esm/{components → deprecated/components}/Dropdown/DropdownToggleAction.d.ts +0 -0
  452. /package/dist/esm/{components → deprecated/components}/Dropdown/DropdownToggleAction.js +0 -0
  453. /package/dist/esm/{components → deprecated/components}/Dropdown/InternalDropdownItem.d.ts +0 -0
  454. /package/dist/esm/{components → deprecated/components}/Dropdown/KebabToggle.d.ts +0 -0
  455. /package/dist/esm/{components → deprecated/components}/Dropdown/KebabToggle.js +0 -0
  456. /package/dist/esm/{components → deprecated/components}/Dropdown/dropdownConstants.js +0 -0
  457. /package/dist/js/{components → deprecated/components}/Dropdown/DropdownMenu.d.ts +0 -0
  458. /package/dist/js/{components → deprecated/components}/Dropdown/DropdownToggleAction.d.ts +0 -0
  459. /package/dist/js/{components → deprecated/components}/Dropdown/DropdownToggleAction.js +0 -0
  460. /package/dist/js/{components → deprecated/components}/Dropdown/InternalDropdownItem.d.ts +0 -0
  461. /package/dist/js/{components → deprecated/components}/Dropdown/KebabToggle.d.ts +0 -0
  462. /package/dist/js/{components → deprecated/components}/Dropdown/KebabToggle.js +0 -0
  463. /package/dist/js/{components → deprecated/components}/Dropdown/dropdownConstants.js +0 -0
  464. /package/src/{next/components → components}/Dropdown/__tests__/__snapshots__/DropdownItem.test.tsx.snap +0 -0
  465. /package/src/{next/components → components}/Dropdown/__tests__/__snapshots__/DropdownList.test.tsx.snap +0 -0
  466. /package/src/{components → deprecated/components}/Dropdown/DropdownToggleAction.tsx +0 -0
  467. /package/src/{components → deprecated/components}/Dropdown/KebabToggle.tsx +0 -0
  468. /package/src/{components → deprecated/components}/Dropdown/__tests__/DropdownToggle.test.tsx +0 -0
  469. /package/src/{components → deprecated/components}/Dropdown/__tests__/DropdownToggleAction.test.tsx +0 -0
  470. /package/src/{components → deprecated/components}/Dropdown/__tests__/DropdownToggleCheckbox.test.tsx +0 -0
  471. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/DropdownItem.test.tsx +0 -0
  472. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/DropdownMenu.test.tsx +0 -0
  473. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/DropdownSeparator.test.tsx +0 -0
  474. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/KebabToggle.test.tsx +0 -0
  475. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/__snapshots__/DropdownItem.test.tsx.snap +0 -0
  476. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/__snapshots__/DropdownMenu.test.tsx.snap +0 -0
  477. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/__snapshots__/DropdownSeparator.test.tsx.snap +0 -0
  478. /package/src/{components → deprecated/components}/Dropdown/__tests__/Generated/__snapshots__/KebabToggle.test.tsx.snap +0 -0
  479. /package/src/{components → deprecated/components}/Dropdown/__tests__/InternalDropdownItem.test.tsx +0 -0
  480. /package/src/{components → deprecated/components}/Dropdown/__tests__/Toggle.test.tsx +0 -0
  481. /package/src/{components → deprecated/components}/Dropdown/__tests__/__snapshots__/DropdownToggle.test.tsx.snap +0 -0
  482. /package/src/{components → deprecated/components}/Dropdown/__tests__/__snapshots__/DropdownToggleAction.test.tsx.snap +0 -0
  483. /package/src/{components → deprecated/components}/Dropdown/__tests__/__snapshots__/DropdownToggleCheckbox.test.tsx.snap +0 -0
  484. /package/src/{components → deprecated/components}/Dropdown/__tests__/__snapshots__/InternalDropdownItem.test.tsx.snap +0 -0
  485. /package/src/{components → deprecated/components}/Dropdown/__tests__/__snapshots__/Toggle.test.tsx.snap +0 -0
@@ -0,0 +1,115 @@
1
+ import * as React from 'react';
2
+ import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
3
+ import { DropdownPosition, DropdownDirection, DropdownContext } from './dropdownConstants';
4
+ import { DropdownWithContext } from './DropdownWithContext';
5
+ import { OUIAProps, useOUIAId } from '../../../helpers';
6
+
7
+ export interface DropdownProps extends React.HTMLProps<HTMLDivElement>, OUIAProps {
8
+ /** Anything which can be rendered in a dropdown */
9
+ children?: React.ReactNode;
10
+ /** Classes applied to root element of dropdown */
11
+ className?: string;
12
+ /** Array of DropdownItem nodes that will be rendered in the dropdown Menu list */
13
+ dropdownItems?: any[];
14
+ /** Flag to indicate if menu is opened */
15
+ isOpen?: boolean;
16
+ /** Display the toggle with no border or background */
17
+ isPlain?: boolean;
18
+ /** Display the toggle in text only mode */
19
+ isText?: boolean;
20
+ /** Flag indicating that the dropdown should expand to full height */
21
+ isFullHeight?: boolean;
22
+ /** Indicates where menu will be aligned horizontally */
23
+ position?: DropdownPosition | 'right' | 'left';
24
+ /** Indicates how the menu will align at screen size breakpoints. Default alignment is set via the position property. */
25
+ alignments?: {
26
+ sm?: 'right' | 'left';
27
+ md?: 'right' | 'left';
28
+ lg?: 'right' | 'left';
29
+ xl?: 'right' | 'left';
30
+ '2xl'?: 'right' | 'left';
31
+ };
32
+ /** Display menu above or below dropdown toggle */
33
+ direction?: DropdownDirection | 'up' | 'down';
34
+ /** Minimum width of the dropdown menu. If set to "trigger", the minimum width will be set to the toggle width. */
35
+ minWidth?: string | 'trigger';
36
+ /** The container to append the menu to. Defaults to 'inline'.
37
+ * If your menu is being cut off you can append it to an element higher up the DOM tree.
38
+ * Some examples:
39
+ * menuAppendTo="parent"
40
+ * menuAppendTo={() => document.body}
41
+ * menuAppendTo={document.getElementById('target')}
42
+ */
43
+ menuAppendTo?: HTMLElement | (() => HTMLElement) | 'inline' | 'parent';
44
+ /** Flag to indicate if dropdown has groups */
45
+ isGrouped?: boolean;
46
+ /** Toggle for the dropdown, examples: <DropdownToggle> or <DropdownToggleCheckbox> */
47
+ toggle: React.ReactElement<any>;
48
+ /** Function callback called when user selects item */
49
+ onSelect?: (event?: React.SyntheticEvent<HTMLDivElement>) => void;
50
+ /** Flag to indicate if the first dropdown item should gain initial focus, set false when adding
51
+ * a specific auto-focus item (like a current selection) otherwise leave as true
52
+ */
53
+ autoFocus?: boolean;
54
+ /** Props for extreme customization of dropdown */
55
+ contextProps?: typeof DropdownContext;
56
+ /** Flag for indicating that the dropdown menu should automatically flip vertically when
57
+ * it reaches the boundary. This prop can only be used when the dropdown component is not
58
+ * appended inline, e.g. `menuAppendTo="parent"`
59
+ */
60
+ isFlipEnabled?: boolean;
61
+ /** z-index of the dropdown when menuAppendTo is not inline. */
62
+ zIndex?: number;
63
+ /** Value to overwrite the randomly generated data-ouia-component-id.*/
64
+ ouiaId?: number | string;
65
+ /** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
66
+ ouiaSafe?: boolean;
67
+ }
68
+
69
+ export const Dropdown: React.FunctionComponent<DropdownProps> = ({
70
+ onSelect,
71
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
72
+ ref, // Types of Ref are different for React.FunctionComponent vs React.Component
73
+ ouiaId,
74
+ ouiaSafe,
75
+ alignments,
76
+ contextProps,
77
+ minWidth,
78
+ menuAppendTo = 'inline',
79
+ isFlipEnabled = true,
80
+ zIndex = 9999,
81
+ ...props
82
+ }: DropdownProps) => (
83
+ <DropdownContext.Provider
84
+ value={{
85
+ onSelect: (event) => onSelect && onSelect(event),
86
+ toggleTextClass: styles.dropdownToggleText,
87
+ toggleIconClass: styles.dropdownToggleImage,
88
+ toggleIndicatorClass: styles.dropdownToggleIcon,
89
+ menuClass: styles.dropdownMenu,
90
+ itemClass: styles.dropdownMenuItem,
91
+ toggleClass: styles.dropdownToggle,
92
+ baseClass: styles.dropdown,
93
+ baseComponent: 'div',
94
+ sectionClass: styles.dropdownGroup,
95
+ sectionTitleClass: styles.dropdownGroupTitle,
96
+ sectionComponent: 'section',
97
+ disabledClass: styles.modifiers.disabled,
98
+ plainTextClass: styles.modifiers.text,
99
+ ouiaId: useOUIAId(Dropdown.displayName, ouiaId),
100
+ ouiaSafe,
101
+ ouiaComponentType: Dropdown.displayName,
102
+ alignments,
103
+ ...contextProps
104
+ }}
105
+ >
106
+ <DropdownWithContext
107
+ menuAppendTo={menuAppendTo}
108
+ isFlipEnabled={isFlipEnabled}
109
+ zIndex={zIndex}
110
+ minWidth={minWidth}
111
+ {...props}
112
+ />
113
+ </DropdownContext.Provider>
114
+ );
115
+ Dropdown.displayName = 'Dropdown';
@@ -0,0 +1,36 @@
1
+ import * as React from 'react';
2
+ import { css } from '@patternfly/react-styles';
3
+ import { DropdownContext } from './dropdownConstants';
4
+
5
+ export interface DropdownGroupProps extends Omit<React.HTMLProps<HTMLDivElement>, 'label'> {
6
+ /** Checkboxes within group */
7
+ children?: React.ReactNode;
8
+ /** Additional classes added to the DropdownGroup control */
9
+ className?: string;
10
+ /** Group label */
11
+ label?: React.ReactNode;
12
+ }
13
+
14
+ export const DropdownGroup: React.FunctionComponent<DropdownGroupProps> = ({
15
+ children = null,
16
+ className = '',
17
+ label = '',
18
+ ...props
19
+ }: DropdownGroupProps) => (
20
+ <DropdownContext.Consumer>
21
+ {({ sectionClass, sectionTitleClass, sectionComponent }) => {
22
+ const SectionComponent = sectionComponent as any;
23
+ return (
24
+ <SectionComponent className={css(sectionClass, className)} {...props}>
25
+ {label && (
26
+ <h1 className={css(sectionTitleClass)} aria-hidden>
27
+ {label}
28
+ </h1>
29
+ )}
30
+ <ul role="none">{children}</ul>
31
+ </SectionComponent>
32
+ );
33
+ }}
34
+ </DropdownContext.Consumer>
35
+ );
36
+ DropdownGroup.displayName = 'DropdownGroup';
@@ -0,0 +1,113 @@
1
+ import * as React from 'react';
2
+ import { InternalDropdownItemProps, InternalDropdownItem } from './InternalDropdownItem';
3
+ import { DropdownArrowContext } from './dropdownConstants';
4
+ import { useOUIAProps, OUIAProps } from '../../../helpers';
5
+
6
+ export interface DropdownItemProps extends Omit<InternalDropdownItemProps, 'tabIndex'>, OUIAProps {
7
+ /** Anything which can be rendered as dropdown item */
8
+ children?: React.ReactNode;
9
+ /** Classes applied to root element of dropdown item */
10
+ className?: string;
11
+ /** Class to be applied to list item */
12
+ listItemClassName?: string;
13
+ /**
14
+ * A ReactElement to render, or a string to use as the component tag.
15
+ * Example: component={<Link to="/components/alert/">Alert</Link>}
16
+ * Example: component="button"
17
+ * If React.isValidElement(component) the className prop will be injected unless styleChildren="false"
18
+ */
19
+ component?: React.ReactNode;
20
+ /** ID for the component element */
21
+ componentID?: string;
22
+ /** Whether to set className on component when React.isValidElement(component) */
23
+ styleChildren?: boolean;
24
+ /** Render dropdown item as disabled option */
25
+ isDisabled?: boolean;
26
+ /** Render dropdown item as aria-disabled option */
27
+ isAriaDisabled?: boolean;
28
+ /** Render dropdown item as non-interactive item */
29
+ isPlainText?: boolean;
30
+ /** Default hyperlink location */
31
+ href?: string;
32
+ /** Tooltip to display when hovered over the item */
33
+ tooltip?: React.ReactNode;
34
+ /** Additional tooltip props forwarded to the Tooltip component */
35
+ tooltipProps?: any;
36
+ /** Additional node to include alongside item within the <li> */
37
+ additionalChild?: React.ReactNode;
38
+ /** Custom item rendering that receives the DropdownContext */
39
+ customChild?: React.ReactNode;
40
+ /** tabIndex to use, null to unset it */
41
+ tabIndex?: number | null;
42
+ /** An image to display within the DropdownItem, appearing before any component children */
43
+ icon?: React.ReactNode;
44
+ /** Initial focus on the item when the menu is opened (Note: Only applicable to one of the items) */
45
+ autoFocus?: boolean;
46
+ /** A short description of the dropdown item, displayed under the dropdown item content */
47
+ description?: React.ReactNode;
48
+ /** Value to overwrite the randomly generated data-ouia-component-id.*/
49
+ ouiaId?: number | string;
50
+ /** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
51
+ ouiaSafe?: boolean;
52
+ }
53
+
54
+ export const DropdownItem: React.FunctionComponent<DropdownItemProps> = ({
55
+ children,
56
+ className,
57
+ component = 'a',
58
+ isDisabled = false,
59
+ isAriaDisabled = false,
60
+ isPlainText = false,
61
+ href,
62
+ tooltip,
63
+ tooltipProps = {},
64
+ listItemClassName,
65
+ onClick,
66
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
67
+ ref, // Types of Ref are different for React.FunctionComponent vs React.Component
68
+ additionalChild,
69
+ customChild,
70
+ tabIndex = -1,
71
+ icon = null,
72
+ autoFocus,
73
+ description = null,
74
+ styleChildren,
75
+ ouiaId,
76
+ ouiaSafe,
77
+ ...props
78
+ }: DropdownItemProps) => {
79
+ const ouiaProps = useOUIAProps(DropdownItem.displayName, ouiaId, ouiaSafe);
80
+ return (
81
+ <DropdownArrowContext.Consumer>
82
+ {(context) => (
83
+ <InternalDropdownItem
84
+ context={context}
85
+ role="menuitem"
86
+ tabIndex={tabIndex}
87
+ className={className}
88
+ component={component}
89
+ isDisabled={isDisabled}
90
+ isAriaDisabled={isAriaDisabled}
91
+ isPlainText={isPlainText}
92
+ href={href}
93
+ tooltip={tooltip}
94
+ tooltipProps={tooltipProps}
95
+ listItemClassName={listItemClassName}
96
+ onClick={onClick}
97
+ additionalChild={additionalChild}
98
+ customChild={customChild}
99
+ icon={icon}
100
+ autoFocus={autoFocus}
101
+ styleChildren={styleChildren}
102
+ description={description}
103
+ {...ouiaProps}
104
+ {...props}
105
+ >
106
+ {children}
107
+ </InternalDropdownItem>
108
+ )}
109
+ </DropdownArrowContext.Consumer>
110
+ );
111
+ };
112
+
113
+ DropdownItem.displayName = 'DropdownItem';
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  import * as ReactDOM from 'react-dom';
3
3
  import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
4
4
  import { css } from '@patternfly/react-styles';
5
- import { keyHandler, formatBreakpointMods } from '../../helpers/util';
5
+ import { keyHandler, formatBreakpointMods } from '../../../helpers/util';
6
6
  import { DropdownPosition, DropdownArrowContext, DropdownContext } from './dropdownConstants';
7
7
 
8
8
  export interface DropdownMenuProps {
@@ -62,7 +62,9 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
62
62
 
63
63
  if (autoFocus) {
64
64
  // Focus first non-disabled element
65
- const focusTargetCollection = this.refsCollection.find(ref => ref && ref[0] && !ref[0].hasAttribute('disabled'));
65
+ const focusTargetCollection = this.refsCollection.find(
66
+ (ref) => ref && ref[0] && !ref[0].hasAttribute('disabled')
67
+ );
66
68
  const focusTarget = focusTargetCollection && focusTargetCollection[0];
67
69
  if (focusTarget && focusTarget.focus) {
68
70
  setTimeout(() => focusTarget.focus());
@@ -84,7 +86,7 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
84
86
  onKeyDown = (event: any) => {
85
87
  if (
86
88
  !this.props.isOpen ||
87
- !Array.from(document.activeElement.classList).find(className =>
89
+ !Array.from(document.activeElement.classList).find((className) =>
88
90
  DropdownMenu.validToggleClasses.concat(this.context.toggleClass).includes(className)
89
91
  )
90
92
  ) {
@@ -92,7 +94,7 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
92
94
  }
93
95
  const refs = this.refsCollection;
94
96
  if (event.key === 'ArrowDown') {
95
- const firstFocusTargetCollection = refs.find(ref => ref && ref[0] && !ref[0].hasAttribute('disabled'));
97
+ const firstFocusTargetCollection = refs.find((ref) => ref && ref[0] && !ref[0].hasAttribute('disabled'));
96
98
  DropdownMenu.focusFirstRef(firstFocusTargetCollection);
97
99
  event.stopPropagation();
98
100
  } else if (event.key === 'ArrowUp') {
@@ -141,12 +143,12 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
141
143
  const { children, isGrouped } = this.props;
142
144
  if (isGrouped) {
143
145
  let index = 0;
144
- return React.Children.map(children, groupedChildren => {
146
+ return React.Children.map(children, (groupedChildren) => {
145
147
  const group = groupedChildren as React.ReactElement;
146
148
  const props: { children?: React.ReactNode } = {};
147
149
  if (group.props && group.props.children) {
148
150
  if (Array.isArray(group.props.children)) {
149
- props.children = React.Children.map(group.props.children, option =>
151
+ props.children = React.Children.map(group.props.children, (option) =>
150
152
  React.cloneElement(option as React.ReactElement, {
151
153
  index: index++
152
154
  })
@@ -168,17 +170,8 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
168
170
  }
169
171
 
170
172
  render() {
171
- const {
172
- className,
173
- isOpen,
174
- position,
175
- children,
176
- component,
177
- isGrouped,
178
- setMenuComponentRef,
179
- alignments,
180
- ...props
181
- } = this.props;
173
+ const { className, isOpen, position, children, component, isGrouped, setMenuComponentRef, alignments, ...props } =
174
+ this.props;
182
175
  return (
183
176
  <DropdownArrowContext.Provider
184
177
  value={{
@@ -197,7 +190,7 @@ export class DropdownMenu extends React.Component<DropdownMenuProps> {
197
190
  className
198
191
  )}
199
192
  hidden={!isOpen}
200
- onClick={event => onSelect && onSelect(event)}
193
+ onClick={(event) => onSelect && onSelect(event)}
201
194
  ref={setMenuComponentRef}
202
195
  >
203
196
  {children}
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
2
  import { DropdownArrowContext } from './dropdownConstants';
3
3
  import { InternalDropdownItem } from './InternalDropdownItem';
4
- import { Divider, DividerVariant } from '../Divider';
5
- import { useOUIAProps, OUIAProps } from '../../helpers';
4
+ import { Divider, DividerVariant } from '../../../components/Divider';
5
+ import { useOUIAProps, OUIAProps } from '../../../helpers';
6
6
 
7
7
  export interface SeparatorProps extends React.HTMLProps<HTMLAnchorElement>, OUIAProps {
8
8
  /** Classes applied to root element of dropdown item */
@@ -26,7 +26,7 @@ export const DropdownSeparator: React.FunctionComponent<SeparatorProps> = ({
26
26
  const ouiaProps = useOUIAProps(DropdownSeparator.displayName, ouiaId, ouiaSafe);
27
27
  return (
28
28
  <DropdownArrowContext.Consumer>
29
- {context => (
29
+ {(context) => (
30
30
  <InternalDropdownItem
31
31
  {...props}
32
32
  context={context}
@@ -4,7 +4,7 @@ import { Toggle } from './Toggle';
4
4
  import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
5
5
  import { DropdownContext } from './dropdownConstants';
6
6
  import { css } from '@patternfly/react-styles';
7
- import { useOUIAProps, OUIAProps } from '../../helpers';
7
+ import { useOUIAProps, OUIAProps } from '../../../helpers';
8
8
 
9
9
  export interface DropdownToggleProps extends React.HTMLProps<HTMLButtonElement>, OUIAProps {
10
10
  /** HTML ID of dropdown toggle */
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
3
3
  import { css } from '@patternfly/react-styles';
4
- import { PickOptional } from '../../helpers/typeUtils';
5
- import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '../../helpers';
6
- import { Spinner } from '../Spinner';
4
+ import { PickOptional } from '../../../helpers/typeUtils';
5
+ import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '../../../helpers';
6
+ import { Spinner } from '../../../components/Spinner';
7
7
 
8
8
  export interface DropdownToggleCheckboxProps
9
9
  extends Omit<React.HTMLProps<HTMLInputElement>, 'type' | 'onChange' | 'disabled' | 'checked'>,
@@ -4,9 +4,9 @@ import { css } from '@patternfly/react-styles';
4
4
  import { DropdownMenu } from './DropdownMenu';
5
5
  import { DropdownProps } from './Dropdown';
6
6
  import { DropdownContext, DropdownDirection, DropdownPosition } from './dropdownConstants';
7
- import { getOUIAProps, OUIAProps } from '../../helpers';
8
- import { PickOptional } from '../../helpers/typeUtils';
9
- import { Popper } from '../../helpers/Popper/Popper';
7
+ import { getOUIAProps, OUIAProps } from '../../../helpers';
8
+ import { PickOptional } from '../../../helpers/typeUtils';
9
+ import { Popper } from '../../../helpers/Popper/Popper';
10
10
 
11
11
  export class DropdownWithContext extends React.Component<DropdownProps & OUIAProps> {
12
12
  static displayName = 'DropdownWithContext';
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { css } from '@patternfly/react-styles';
3
3
  import { DropdownContext } from './dropdownConstants';
4
- import { KEYHANDLER_DIRECTION } from '../../helpers/constants';
5
- import { preventedEvents } from '../../helpers/util';
6
- import { Tooltip } from '../Tooltip';
4
+ import { KEYHANDLER_DIRECTION } from '../../../helpers/constants';
5
+ import { preventedEvents } from '../../../helpers/util';
6
+ import { Tooltip } from '../../../components/Tooltip';
7
7
  import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
8
8
 
9
9
  export interface InternalDropdownItemProps extends React.HTMLProps<HTMLAnchorElement> {
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import styles from '@patternfly/react-styles/css/components/Dropdown/dropdown';
3
3
  import { DropdownContext } from './dropdownConstants';
4
4
  import { css } from '@patternfly/react-styles';
5
- import { KeyTypes } from '../../helpers/constants';
6
- import { PickOptional } from '../../helpers/typeUtils';
5
+ import { KeyTypes } from '../../../helpers/constants';
6
+ import { PickOptional } from '../../../helpers/typeUtils';
7
7
 
8
8
  export interface ToggleProps {
9
9
  /** HTML ID of dropdown toggle */
@@ -166,10 +166,10 @@ export class Toggle extends React.Component<ToggleProps> {
166
166
  className
167
167
  )}
168
168
  type={type || 'button'}
169
- onClick={event => onToggle?.(event, !isOpen)}
169
+ onClick={(event) => onToggle?.(event, !isOpen)}
170
170
  aria-expanded={isOpen}
171
171
  aria-haspopup={ariaHasPopup}
172
- onKeyDown={event => this.onKeyDown(event)}
172
+ onKeyDown={(event) => this.onKeyDown(event)}
173
173
  disabled={isDisabled}
174
174
  >
175
175
  {children}