@patternfly/react-core 6.0.0-alpha.65 → 6.0.0-alpha.67

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 (470) hide show
  1. package/CHANGELOG.md +12 -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/DataList/package.json +1 -1
  23. package/dist/dynamic/components/DatePicker/package.json +1 -1
  24. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  25. package/dist/dynamic/components/Divider/package.json +1 -1
  26. package/dist/dynamic/components/Drawer/package.json +1 -1
  27. package/dist/dynamic/components/Dropdown/package.json +1 -1
  28. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  29. package/dist/dynamic/components/EmptyState/package.json +1 -1
  30. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  31. package/dist/dynamic/components/FileUpload/package.json +1 -1
  32. package/dist/dynamic/components/Form/package.json +1 -1
  33. package/dist/dynamic/components/FormSelect/package.json +1 -1
  34. package/dist/dynamic/components/HelperText/package.json +1 -1
  35. package/dist/dynamic/components/Hint/package.json +1 -1
  36. package/dist/dynamic/components/Icon/package.json +1 -1
  37. package/dist/dynamic/components/InputGroup/package.json +1 -1
  38. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  39. package/dist/dynamic/components/Label/package.json +1 -1
  40. package/dist/dynamic/components/List/package.json +1 -1
  41. package/dist/dynamic/components/LoginPage/package.json +1 -1
  42. package/dist/dynamic/components/Masthead/package.json +1 -1
  43. package/dist/dynamic/components/Menu/package.json +1 -1
  44. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  45. package/dist/dynamic/components/Modal/package.json +1 -1
  46. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  47. package/dist/dynamic/components/Nav/package.json +1 -1
  48. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  49. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  50. package/dist/dynamic/components/NumberInput/package.json +1 -1
  51. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  52. package/dist/dynamic/components/Page/package.json +1 -1
  53. package/dist/dynamic/components/Pagination/package.json +1 -1
  54. package/dist/dynamic/components/Panel/package.json +1 -1
  55. package/dist/dynamic/components/Popover/package.json +1 -1
  56. package/dist/dynamic/components/Progress/package.json +1 -1
  57. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  58. package/dist/dynamic/components/Radio/package.json +1 -1
  59. package/dist/dynamic/components/SearchInput/package.json +1 -1
  60. package/dist/dynamic/components/Select/package.json +1 -1
  61. package/dist/dynamic/components/Sidebar/package.json +1 -1
  62. package/dist/dynamic/components/SimpleList/package.json +1 -1
  63. package/dist/dynamic/components/Skeleton/package.json +1 -1
  64. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  65. package/dist/dynamic/components/Slider/package.json +1 -1
  66. package/dist/dynamic/components/Spinner/package.json +1 -1
  67. package/dist/dynamic/components/Switch/package.json +1 -1
  68. package/dist/dynamic/components/Tabs/package.json +1 -1
  69. package/dist/dynamic/components/Text/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/Tile/package.json +1 -1
  74. package/dist/dynamic/components/TimePicker/package.json +1 -1
  75. package/dist/dynamic/components/Timestamp/package.json +1 -1
  76. package/dist/dynamic/components/Title/package.json +1 -1
  77. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  78. package/dist/dynamic/components/Toolbar/package.json +1 -1
  79. package/dist/dynamic/components/Tooltip/package.json +1 -1
  80. package/dist/dynamic/components/TreeView/package.json +1 -1
  81. package/dist/dynamic/components/Truncate/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  83. package/dist/dynamic/components/Wizard/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/Modal/package.json +1 -0
  87. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/package.json +1 -1
  89. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  90. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  91. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  92. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  93. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  94. package/dist/dynamic/helpers/constants/package.json +1 -1
  95. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  96. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  97. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  98. package/dist/dynamic/helpers/package.json +1 -1
  99. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  100. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  102. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  103. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  104. package/dist/dynamic/helpers/util/package.json +1 -1
  105. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  106. package/dist/dynamic/layouts/Flex/package.json +1 -1
  107. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  108. package/dist/dynamic/layouts/Grid/package.json +1 -1
  109. package/dist/dynamic/layouts/Level/package.json +1 -1
  110. package/dist/dynamic/layouts/Split/package.json +1 -1
  111. package/dist/dynamic/layouts/Stack/package.json +1 -1
  112. package/dist/dynamic/next/components/DualListSelector/package.json +1 -1
  113. package/dist/dynamic/next/components/package.json +1 -1
  114. package/dist/dynamic/styles/package.json +1 -1
  115. package/dist/dynamic-modules.json +6 -12
  116. package/dist/esm/components/AboutModal/AboutModal.js +1 -1
  117. package/dist/esm/components/AboutModal/AboutModal.js.map +1 -1
  118. package/dist/esm/components/Modal/Modal.d.ts +4 -40
  119. package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
  120. package/dist/esm/components/Modal/Modal.js +5 -27
  121. package/dist/esm/components/Modal/Modal.js.map +1 -1
  122. package/dist/esm/components/Modal/ModalBody.d.ts.map +1 -0
  123. package/dist/esm/components/Modal/ModalBody.js.map +1 -0
  124. package/dist/esm/components/Modal/ModalBox.d.ts +3 -3
  125. package/dist/esm/components/Modal/ModalBox.d.ts.map +1 -1
  126. package/dist/esm/components/Modal/ModalBox.js +2 -2
  127. package/dist/esm/components/Modal/ModalBox.js.map +1 -1
  128. package/dist/esm/components/Modal/ModalBoxCloseButton.js +1 -1
  129. package/dist/esm/components/Modal/ModalBoxCloseButton.js.map +1 -1
  130. package/dist/esm/components/Modal/ModalBoxTitle.d.ts +2 -2
  131. package/dist/esm/components/Modal/ModalBoxTitle.d.ts.map +1 -1
  132. package/dist/esm/components/Modal/ModalBoxTitle.js +3 -2
  133. package/dist/esm/components/Modal/ModalBoxTitle.js.map +1 -1
  134. package/dist/esm/components/Modal/ModalContent.d.ts +3 -41
  135. package/dist/esm/components/Modal/ModalContent.d.ts.map +1 -1
  136. package/dist/esm/components/Modal/ModalContent.js +12 -29
  137. package/dist/esm/components/Modal/ModalContent.js.map +1 -1
  138. package/dist/esm/components/Modal/ModalFooter.d.ts.map +1 -0
  139. package/dist/esm/components/Modal/ModalFooter.js.map +1 -0
  140. package/dist/esm/components/Modal/ModalHeader.d.ts.map +1 -0
  141. package/dist/esm/components/Modal/ModalHeader.js.map +1 -0
  142. package/dist/esm/components/Modal/index.d.ts +3 -6
  143. package/dist/esm/components/Modal/index.d.ts.map +1 -1
  144. package/dist/esm/components/Modal/index.js +3 -6
  145. package/dist/esm/components/Modal/index.js.map +1 -1
  146. package/dist/esm/{next → deprecated}/components/Modal/Modal.d.ts +40 -4
  147. package/dist/esm/deprecated/components/Modal/Modal.d.ts.map +1 -0
  148. package/dist/esm/{next → deprecated}/components/Modal/Modal.js +27 -5
  149. package/dist/esm/deprecated/components/Modal/Modal.js.map +1 -0
  150. package/dist/esm/{next → deprecated}/components/Modal/ModalBox.d.ts +3 -3
  151. package/dist/esm/deprecated/components/Modal/ModalBox.d.ts.map +1 -0
  152. package/dist/esm/deprecated/components/Modal/ModalBox.js +15 -0
  153. package/dist/esm/deprecated/components/Modal/ModalBox.js.map +1 -0
  154. package/dist/esm/deprecated/components/Modal/ModalBoxBody.d.ts.map +1 -0
  155. package/dist/esm/deprecated/components/Modal/ModalBoxBody.js.map +1 -0
  156. package/dist/esm/deprecated/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  157. package/dist/esm/{next → deprecated}/components/Modal/ModalBoxCloseButton.js +1 -1
  158. package/dist/esm/deprecated/components/Modal/ModalBoxCloseButton.js.map +1 -0
  159. package/dist/esm/deprecated/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  160. package/dist/esm/deprecated/components/Modal/ModalBoxDescription.js.map +1 -0
  161. package/dist/esm/deprecated/components/Modal/ModalBoxFooter.d.ts.map +1 -0
  162. package/dist/esm/deprecated/components/Modal/ModalBoxFooter.js.map +1 -0
  163. package/dist/esm/deprecated/components/Modal/ModalBoxHeader.d.ts.map +1 -0
  164. package/dist/esm/deprecated/components/Modal/ModalBoxHeader.js.map +1 -0
  165. package/dist/{js/next → esm/deprecated}/components/Modal/ModalBoxTitle.d.ts +2 -2
  166. package/dist/esm/deprecated/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  167. package/dist/esm/{next → deprecated}/components/Modal/ModalBoxTitle.js +2 -3
  168. package/dist/esm/deprecated/components/Modal/ModalBoxTitle.js.map +1 -0
  169. package/dist/esm/deprecated/components/Modal/ModalContent.d.ts +80 -0
  170. package/dist/esm/deprecated/components/Modal/ModalContent.d.ts.map +1 -0
  171. package/dist/esm/deprecated/components/Modal/ModalContent.js +62 -0
  172. package/dist/esm/deprecated/components/Modal/ModalContent.js.map +1 -0
  173. package/dist/esm/deprecated/components/Modal/index.d.ts +8 -0
  174. package/dist/esm/deprecated/components/Modal/index.d.ts.map +1 -0
  175. package/dist/esm/deprecated/components/Modal/index.js +8 -0
  176. package/dist/esm/deprecated/components/Modal/index.js.map +1 -0
  177. package/dist/esm/deprecated/components/Wizard/Wizard.js +1 -1
  178. package/dist/esm/deprecated/components/Wizard/Wizard.js.map +1 -1
  179. package/dist/esm/deprecated/components/index.d.ts +1 -0
  180. package/dist/esm/deprecated/components/index.d.ts.map +1 -1
  181. package/dist/esm/deprecated/components/index.js +1 -0
  182. package/dist/esm/deprecated/components/index.js.map +1 -1
  183. package/dist/esm/next/components/index.d.ts +0 -1
  184. package/dist/esm/next/components/index.d.ts.map +1 -1
  185. package/dist/esm/next/components/index.js +0 -1
  186. package/dist/esm/next/components/index.js.map +1 -1
  187. package/dist/js/components/AboutModal/AboutModal.js +1 -1
  188. package/dist/js/components/AboutModal/AboutModal.js.map +1 -1
  189. package/dist/js/components/Modal/Modal.d.ts +4 -40
  190. package/dist/js/components/Modal/Modal.d.ts.map +1 -1
  191. package/dist/js/components/Modal/Modal.js +5 -27
  192. package/dist/js/components/Modal/Modal.js.map +1 -1
  193. package/dist/js/components/Modal/ModalBody.d.ts.map +1 -0
  194. package/dist/js/components/Modal/ModalBody.js.map +1 -0
  195. package/dist/js/components/Modal/ModalBox.d.ts +3 -3
  196. package/dist/js/components/Modal/ModalBox.d.ts.map +1 -1
  197. package/dist/js/components/Modal/ModalBox.js +2 -2
  198. package/dist/js/components/Modal/ModalBox.js.map +1 -1
  199. package/dist/js/components/Modal/ModalBoxCloseButton.js +1 -1
  200. package/dist/js/components/Modal/ModalBoxCloseButton.js.map +1 -1
  201. package/dist/js/components/Modal/ModalBoxTitle.d.ts +2 -2
  202. package/dist/js/components/Modal/ModalBoxTitle.d.ts.map +1 -1
  203. package/dist/js/components/Modal/ModalBoxTitle.js +3 -2
  204. package/dist/js/components/Modal/ModalBoxTitle.js.map +1 -1
  205. package/dist/js/components/Modal/ModalContent.d.ts +3 -41
  206. package/dist/js/components/Modal/ModalContent.d.ts.map +1 -1
  207. package/dist/js/components/Modal/ModalContent.js +12 -29
  208. package/dist/js/components/Modal/ModalContent.js.map +1 -1
  209. package/dist/js/components/Modal/ModalFooter.d.ts.map +1 -0
  210. package/dist/js/components/Modal/ModalFooter.js.map +1 -0
  211. package/dist/js/components/Modal/ModalHeader.d.ts.map +1 -0
  212. package/dist/js/components/Modal/ModalHeader.js.map +1 -0
  213. package/dist/js/components/Modal/index.d.ts +3 -6
  214. package/dist/js/components/Modal/index.d.ts.map +1 -1
  215. package/dist/js/components/Modal/index.js +3 -6
  216. package/dist/js/components/Modal/index.js.map +1 -1
  217. package/dist/js/{next → deprecated}/components/Modal/Modal.d.ts +40 -4
  218. package/dist/js/deprecated/components/Modal/Modal.d.ts.map +1 -0
  219. package/dist/js/{next → deprecated}/components/Modal/Modal.js +27 -5
  220. package/dist/js/deprecated/components/Modal/Modal.js.map +1 -0
  221. package/dist/js/{next → deprecated}/components/Modal/ModalBox.d.ts +3 -3
  222. package/dist/js/deprecated/components/Modal/ModalBox.d.ts.map +1 -0
  223. package/dist/js/deprecated/components/Modal/ModalBox.js +19 -0
  224. package/dist/js/deprecated/components/Modal/ModalBox.js.map +1 -0
  225. package/dist/js/deprecated/components/Modal/ModalBoxBody.d.ts.map +1 -0
  226. package/dist/js/deprecated/components/Modal/ModalBoxBody.js.map +1 -0
  227. package/dist/js/deprecated/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  228. package/dist/js/{next → deprecated}/components/Modal/ModalBoxCloseButton.js +1 -1
  229. package/dist/js/deprecated/components/Modal/ModalBoxCloseButton.js.map +1 -0
  230. package/dist/js/deprecated/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  231. package/dist/js/deprecated/components/Modal/ModalBoxDescription.js.map +1 -0
  232. package/dist/js/deprecated/components/Modal/ModalBoxFooter.d.ts.map +1 -0
  233. package/dist/js/deprecated/components/Modal/ModalBoxFooter.js.map +1 -0
  234. package/dist/js/deprecated/components/Modal/ModalBoxHeader.d.ts.map +1 -0
  235. package/dist/js/deprecated/components/Modal/ModalBoxHeader.js.map +1 -0
  236. package/dist/{esm/next → js/deprecated}/components/Modal/ModalBoxTitle.d.ts +2 -2
  237. package/dist/js/deprecated/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  238. package/dist/js/{next → deprecated}/components/Modal/ModalBoxTitle.js +2 -3
  239. package/dist/js/deprecated/components/Modal/ModalBoxTitle.js.map +1 -0
  240. package/dist/js/deprecated/components/Modal/ModalContent.d.ts +80 -0
  241. package/dist/js/deprecated/components/Modal/ModalContent.d.ts.map +1 -0
  242. package/dist/js/deprecated/components/Modal/ModalContent.js +66 -0
  243. package/dist/js/deprecated/components/Modal/ModalContent.js.map +1 -0
  244. package/dist/js/deprecated/components/Modal/index.d.ts +8 -0
  245. package/dist/js/deprecated/components/Modal/index.d.ts.map +1 -0
  246. package/dist/js/deprecated/components/Modal/index.js +11 -0
  247. package/dist/js/deprecated/components/Modal/index.js.map +1 -0
  248. package/dist/js/deprecated/components/Wizard/Wizard.js +1 -1
  249. package/dist/js/deprecated/components/Wizard/Wizard.js.map +1 -1
  250. package/dist/js/deprecated/components/index.d.ts +1 -0
  251. package/dist/js/deprecated/components/index.d.ts.map +1 -1
  252. package/dist/js/deprecated/components/index.js +1 -0
  253. package/dist/js/deprecated/components/index.js.map +1 -1
  254. package/dist/js/next/components/index.d.ts +0 -1
  255. package/dist/js/next/components/index.d.ts.map +1 -1
  256. package/dist/js/next/components/index.js +0 -1
  257. package/dist/js/next/components/index.js.map +1 -1
  258. package/dist/umd/assets/{output-BsYBUJdh.css → output-DC58BpxL.css} +9943 -9943
  259. package/dist/umd/react-core.min.js +3 -3
  260. package/helpers/package.json +1 -1
  261. package/layouts/package.json +1 -1
  262. package/next/package.json +1 -1
  263. package/package.json +2 -2
  264. package/src/components/AboutModal/AboutModal.tsx +1 -1
  265. package/src/components/Label/examples/LabelGroupEditableAddModal.tsx +4 -5
  266. package/src/components/Modal/Modal.tsx +9 -82
  267. package/src/components/Modal/ModalBox.tsx +6 -6
  268. package/src/components/Modal/ModalBoxCloseButton.tsx +1 -1
  269. package/src/components/Modal/ModalBoxTitle.tsx +7 -5
  270. package/src/components/Modal/ModalContent.tsx +19 -110
  271. package/src/components/Modal/__tests__/Modal.test.tsx +10 -77
  272. package/src/components/Modal/__tests__/ModalBoxHeader.test.tsx +12 -5
  273. package/src/components/Modal/__tests__/ModalBoxTitle.test.tsx +6 -28
  274. package/src/components/Modal/__tests__/ModalContent.test.tsx +6 -72
  275. package/src/components/Modal/__tests__/__snapshots__/ModalBoxHeader.test.tsx.snap +16 -2
  276. package/src/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +13 -478
  277. package/src/components/Modal/examples/Modal.md +24 -32
  278. package/src/components/Modal/examples/ModalBasic.tsx +16 -12
  279. package/src/components/Modal/examples/ModalCustomFocus.tsx +19 -15
  280. package/src/{next/components → components}/Modal/examples/ModalCustomHeader.tsx +12 -2
  281. package/src/components/Modal/examples/ModalCustomTitleIcon.tsx +24 -18
  282. package/src/components/Modal/examples/ModalCustomWidth.tsx +15 -11
  283. package/src/components/Modal/examples/ModalNoHeaderFooter.tsx +14 -12
  284. package/src/{next/components → components}/Modal/examples/ModalSize.tsx +1 -2
  285. package/src/components/Modal/examples/ModalTitleIcon.tsx +20 -18
  286. package/src/components/Modal/examples/ModalTopAligned.tsx +15 -11
  287. package/src/components/Modal/examples/ModalWithDescription.tsx +53 -12
  288. package/src/components/Modal/examples/ModalWithDropdown.tsx +56 -49
  289. package/src/components/Modal/examples/ModalWithForm.tsx +150 -139
  290. package/src/components/Modal/examples/ModalWithHelp.tsx +34 -26
  291. package/src/components/Modal/examples/ModalWithOverflowingContent.tsx +47 -44
  292. package/src/components/Modal/examples/ModalWithWizard.tsx +2 -4
  293. package/src/components/Modal/index.ts +3 -6
  294. package/src/components/Wizard/examples/Wizard.md +1 -0
  295. package/src/components/Wizard/examples/WizardWithinModal.tsx +5 -4
  296. package/src/demos/CustomMenus/examples/DateSelectDemo.tsx +25 -13
  297. package/src/demos/DatePicker/DatePicker.md +2 -2
  298. package/src/demos/DatePicker/examples/DateTimePickerInModal.tsx +5 -12
  299. package/src/demos/LabelGroupDemos.md +3 -0
  300. package/src/demos/MultipleFileUploadDemos.md +2 -0
  301. package/src/demos/examples/Card/CardEventsView.tsx +15 -8
  302. package/src/demos/examples/Card/CardLogView.tsx +4 -4
  303. package/src/demos/examples/Card/CardStatusTabbed.tsx +23 -6
  304. package/src/demos/examples/Card/CardUtilizationDemo3.tsx +5 -2
  305. package/src/demos/examples/MultipleFileUpload/MultipleFileUploadRejectedFile.tsx +3 -3
  306. package/src/{next → deprecated}/components/Modal/Modal.tsx +82 -9
  307. package/src/{next → deprecated}/components/Modal/ModalBox.tsx +6 -6
  308. package/src/{next → deprecated}/components/Modal/ModalBoxCloseButton.tsx +1 -1
  309. package/src/{next → deprecated}/components/Modal/ModalBoxTitle.tsx +5 -7
  310. package/src/deprecated/components/Modal/ModalContent.tsx +222 -0
  311. package/src/{next → deprecated}/components/Modal/__tests__/Modal.test.tsx +76 -9
  312. package/src/deprecated/components/Modal/__tests__/ModalBoxHeader.test.tsx +14 -0
  313. package/src/{next → deprecated}/components/Modal/__tests__/ModalBoxTitle.test.tsx +28 -6
  314. package/src/deprecated/components/Modal/__tests__/ModalContent.test.tsx +112 -0
  315. package/src/{next → deprecated}/components/Modal/__tests__/__snapshots__/ModalBoxHeader.test.tsx.snap +2 -16
  316. package/src/deprecated/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +593 -0
  317. package/src/{next → deprecated}/components/Modal/examples/Modal.md +34 -24
  318. package/src/deprecated/components/Modal/examples/ModalBasic.tsx +39 -0
  319. package/src/deprecated/components/Modal/examples/ModalCustomFocus.tsx +39 -0
  320. package/src/{components → deprecated/components}/Modal/examples/ModalCustomHeaderFooter.tsx +5 -4
  321. package/src/deprecated/components/Modal/examples/ModalCustomTitleIcon.tsx +47 -0
  322. package/src/deprecated/components/Modal/examples/ModalCustomWidth.tsx +39 -0
  323. package/src/{components → deprecated/components}/Modal/examples/ModalLarge.tsx +5 -4
  324. package/src/{components → deprecated/components}/Modal/examples/ModalMedium.tsx +5 -4
  325. package/src/deprecated/components/Modal/examples/ModalNoHeaderFooter.tsx +38 -0
  326. package/src/{components → deprecated/components}/Modal/examples/ModalSmall.tsx +5 -4
  327. package/src/deprecated/components/Modal/examples/ModalTitleIcon.tsx +46 -0
  328. package/src/deprecated/components/Modal/examples/ModalTopAligned.tsx +39 -0
  329. package/src/deprecated/components/Modal/examples/ModalWithDescription.tsx +39 -0
  330. package/src/deprecated/components/Modal/examples/ModalWithDropdown.tsx +100 -0
  331. package/src/deprecated/components/Modal/examples/ModalWithForm.tsx +183 -0
  332. package/src/deprecated/components/Modal/examples/ModalWithHelp.tsx +56 -0
  333. package/src/deprecated/components/Modal/examples/ModalWithOverflowingContent.tsx +72 -0
  334. package/src/{next → deprecated}/components/Modal/examples/ModalWithWizard.tsx +7 -5
  335. package/src/deprecated/components/Modal/index.ts +7 -0
  336. package/src/deprecated/components/Wizard/Wizard.tsx +1 -1
  337. package/src/deprecated/components/index.ts +1 -0
  338. package/src/next/components/index.ts +0 -1
  339. package/dist/dynamic/next/components/Modal/package.json +0 -1
  340. package/dist/esm/components/Modal/ModalBoxBody.d.ts.map +0 -1
  341. package/dist/esm/components/Modal/ModalBoxBody.js.map +0 -1
  342. package/dist/esm/components/Modal/ModalBoxFooter.d.ts.map +0 -1
  343. package/dist/esm/components/Modal/ModalBoxFooter.js.map +0 -1
  344. package/dist/esm/components/Modal/ModalBoxHeader.d.ts.map +0 -1
  345. package/dist/esm/components/Modal/ModalBoxHeader.js.map +0 -1
  346. package/dist/esm/next/components/Modal/Modal.d.ts.map +0 -1
  347. package/dist/esm/next/components/Modal/Modal.js.map +0 -1
  348. package/dist/esm/next/components/Modal/ModalBody.d.ts.map +0 -1
  349. package/dist/esm/next/components/Modal/ModalBody.js.map +0 -1
  350. package/dist/esm/next/components/Modal/ModalBox.d.ts.map +0 -1
  351. package/dist/esm/next/components/Modal/ModalBox.js +0 -15
  352. package/dist/esm/next/components/Modal/ModalBox.js.map +0 -1
  353. package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts.map +0 -1
  354. package/dist/esm/next/components/Modal/ModalBoxCloseButton.js.map +0 -1
  355. package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts.map +0 -1
  356. package/dist/esm/next/components/Modal/ModalBoxDescription.js.map +0 -1
  357. package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts.map +0 -1
  358. package/dist/esm/next/components/Modal/ModalBoxTitle.js.map +0 -1
  359. package/dist/esm/next/components/Modal/ModalContent.d.ts +0 -42
  360. package/dist/esm/next/components/Modal/ModalContent.d.ts.map +0 -1
  361. package/dist/esm/next/components/Modal/ModalContent.js +0 -45
  362. package/dist/esm/next/components/Modal/ModalContent.js.map +0 -1
  363. package/dist/esm/next/components/Modal/ModalFooter.d.ts.map +0 -1
  364. package/dist/esm/next/components/Modal/ModalFooter.js.map +0 -1
  365. package/dist/esm/next/components/Modal/ModalHeader.d.ts.map +0 -1
  366. package/dist/esm/next/components/Modal/ModalHeader.js.map +0 -1
  367. package/dist/esm/next/components/Modal/index.d.ts +0 -5
  368. package/dist/esm/next/components/Modal/index.d.ts.map +0 -1
  369. package/dist/esm/next/components/Modal/index.js +0 -5
  370. package/dist/esm/next/components/Modal/index.js.map +0 -1
  371. package/dist/js/components/Modal/ModalBoxBody.d.ts.map +0 -1
  372. package/dist/js/components/Modal/ModalBoxBody.js.map +0 -1
  373. package/dist/js/components/Modal/ModalBoxFooter.d.ts.map +0 -1
  374. package/dist/js/components/Modal/ModalBoxFooter.js.map +0 -1
  375. package/dist/js/components/Modal/ModalBoxHeader.d.ts.map +0 -1
  376. package/dist/js/components/Modal/ModalBoxHeader.js.map +0 -1
  377. package/dist/js/next/components/Modal/Modal.d.ts.map +0 -1
  378. package/dist/js/next/components/Modal/Modal.js.map +0 -1
  379. package/dist/js/next/components/Modal/ModalBody.d.ts.map +0 -1
  380. package/dist/js/next/components/Modal/ModalBody.js.map +0 -1
  381. package/dist/js/next/components/Modal/ModalBox.d.ts.map +0 -1
  382. package/dist/js/next/components/Modal/ModalBox.js +0 -19
  383. package/dist/js/next/components/Modal/ModalBox.js.map +0 -1
  384. package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts.map +0 -1
  385. package/dist/js/next/components/Modal/ModalBoxCloseButton.js.map +0 -1
  386. package/dist/js/next/components/Modal/ModalBoxDescription.d.ts.map +0 -1
  387. package/dist/js/next/components/Modal/ModalBoxDescription.js.map +0 -1
  388. package/dist/js/next/components/Modal/ModalBoxTitle.d.ts.map +0 -1
  389. package/dist/js/next/components/Modal/ModalBoxTitle.js.map +0 -1
  390. package/dist/js/next/components/Modal/ModalContent.d.ts +0 -42
  391. package/dist/js/next/components/Modal/ModalContent.d.ts.map +0 -1
  392. package/dist/js/next/components/Modal/ModalContent.js +0 -49
  393. package/dist/js/next/components/Modal/ModalContent.js.map +0 -1
  394. package/dist/js/next/components/Modal/ModalFooter.d.ts.map +0 -1
  395. package/dist/js/next/components/Modal/ModalFooter.js.map +0 -1
  396. package/dist/js/next/components/Modal/ModalHeader.d.ts.map +0 -1
  397. package/dist/js/next/components/Modal/ModalHeader.js.map +0 -1
  398. package/dist/js/next/components/Modal/index.d.ts +0 -5
  399. package/dist/js/next/components/Modal/index.d.ts.map +0 -1
  400. package/dist/js/next/components/Modal/index.js +0 -8
  401. package/dist/js/next/components/Modal/index.js.map +0 -1
  402. package/src/demos/CustomMenus/examples/ComposableDateSelect.tsx +0 -113
  403. package/src/next/components/Modal/ModalContent.tsx +0 -131
  404. package/src/next/components/Modal/__tests__/ModalBoxHeader.test.tsx +0 -21
  405. package/src/next/components/Modal/__tests__/ModalContent.test.tsx +0 -46
  406. package/src/next/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +0 -128
  407. package/src/next/components/Modal/examples/ModalBasic.tsx +0 -43
  408. package/src/next/components/Modal/examples/ModalCustomFocus.tsx +0 -43
  409. package/src/next/components/Modal/examples/ModalCustomTitleIcon.tsx +0 -54
  410. package/src/next/components/Modal/examples/ModalCustomWidth.tsx +0 -43
  411. package/src/next/components/Modal/examples/ModalNoHeaderFooter.tsx +0 -40
  412. package/src/next/components/Modal/examples/ModalTitleIcon.tsx +0 -48
  413. package/src/next/components/Modal/examples/ModalTopAligned.tsx +0 -43
  414. package/src/next/components/Modal/examples/ModalWithDescription.tsx +0 -80
  415. package/src/next/components/Modal/examples/ModalWithDropdown.tsx +0 -105
  416. package/src/next/components/Modal/examples/ModalWithForm.tsx +0 -191
  417. package/src/next/components/Modal/examples/ModalWithHelp.tsx +0 -63
  418. package/src/next/components/Modal/examples/ModalWithOverflowingContent.tsx +0 -75
  419. package/src/next/components/Modal/index.ts +0 -4
  420. /package/dist/esm/{next/components → components}/Modal/ModalBody.d.ts +0 -0
  421. /package/dist/esm/{next/components → components}/Modal/ModalBody.js +0 -0
  422. /package/dist/esm/{next/components → components}/Modal/ModalFooter.d.ts +0 -0
  423. /package/dist/esm/{next/components → components}/Modal/ModalFooter.js +0 -0
  424. /package/dist/esm/{next/components → components}/Modal/ModalHeader.d.ts +0 -0
  425. /package/dist/esm/{next/components → components}/Modal/ModalHeader.js +0 -0
  426. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxBody.d.ts +0 -0
  427. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxBody.js +0 -0
  428. /package/dist/esm/{next → deprecated}/components/Modal/ModalBoxCloseButton.d.ts +0 -0
  429. /package/dist/esm/{next → deprecated}/components/Modal/ModalBoxDescription.d.ts +0 -0
  430. /package/dist/esm/{next → deprecated}/components/Modal/ModalBoxDescription.js +0 -0
  431. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxFooter.d.ts +0 -0
  432. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxFooter.js +0 -0
  433. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxHeader.d.ts +0 -0
  434. /package/dist/esm/{components → deprecated/components}/Modal/ModalBoxHeader.js +0 -0
  435. /package/dist/js/{next/components → components}/Modal/ModalBody.d.ts +0 -0
  436. /package/dist/js/{next/components → components}/Modal/ModalBody.js +0 -0
  437. /package/dist/js/{next/components → components}/Modal/ModalFooter.d.ts +0 -0
  438. /package/dist/js/{next/components → components}/Modal/ModalFooter.js +0 -0
  439. /package/dist/js/{next/components → components}/Modal/ModalHeader.d.ts +0 -0
  440. /package/dist/js/{next/components → components}/Modal/ModalHeader.js +0 -0
  441. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxBody.d.ts +0 -0
  442. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxBody.js +0 -0
  443. /package/dist/js/{next → deprecated}/components/Modal/ModalBoxCloseButton.d.ts +0 -0
  444. /package/dist/js/{next → deprecated}/components/Modal/ModalBoxDescription.d.ts +0 -0
  445. /package/dist/js/{next → deprecated}/components/Modal/ModalBoxDescription.js +0 -0
  446. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxFooter.d.ts +0 -0
  447. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxFooter.js +0 -0
  448. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxHeader.d.ts +0 -0
  449. /package/dist/js/{components → deprecated/components}/Modal/ModalBoxHeader.js +0 -0
  450. /package/src/{next/components → components}/Modal/ModalBody.tsx +0 -0
  451. /package/src/{next/components → components}/Modal/ModalFooter.tsx +0 -0
  452. /package/src/{next/components → components}/Modal/ModalHeader.tsx +0 -0
  453. /package/src/{next/components → components}/Modal/__tests__/ModalBody.test.tsx +0 -0
  454. /package/src/{next/components → components}/Modal/__tests__/ModalFooter.test.tsx +0 -0
  455. /package/src/{next/components → components}/Modal/__tests__/__snapshots__/ModalBody.test.tsx.snap +0 -0
  456. /package/src/{next/components → components}/Modal/__tests__/__snapshots__/ModalFooter.test.tsx.snap +0 -0
  457. /package/src/{components → deprecated/components}/Modal/ModalBoxBody.tsx +0 -0
  458. /package/src/{next → deprecated}/components/Modal/ModalBoxDescription.tsx +0 -0
  459. /package/src/{components → deprecated/components}/Modal/ModalBoxFooter.tsx +0 -0
  460. /package/src/{components → deprecated/components}/Modal/ModalBoxHeader.tsx +0 -0
  461. /package/src/{next → deprecated}/components/Modal/__tests__/ModalBox.test.tsx +0 -0
  462. /package/src/{components → deprecated/components}/Modal/__tests__/ModalBoxBody.test.tsx +0 -0
  463. /package/src/{next → deprecated}/components/Modal/__tests__/ModalBoxCloseButton.test.tsx +0 -0
  464. /package/src/{next → deprecated}/components/Modal/__tests__/ModalBoxDescription.test.tsx +0 -0
  465. /package/src/{components → deprecated/components}/Modal/__tests__/ModalBoxFooter.test.tsx +0 -0
  466. /package/src/{next → deprecated}/components/Modal/__tests__/__snapshots__/ModalBox.test.tsx.snap +0 -0
  467. /package/src/{components → deprecated/components}/Modal/__tests__/__snapshots__/ModalBoxBody.test.tsx.snap +0 -0
  468. /package/src/{next → deprecated}/components/Modal/__tests__/__snapshots__/ModalBoxDescription.test.tsx.snap +0 -0
  469. /package/src/{components → deprecated/components}/Modal/__tests__/__snapshots__/ModalBoxFooter.test.tsx.snap +0 -0
  470. /package/src/{next → deprecated}/components/Modal/__tests__/__snapshots__/ModalBoxTitle.test.tsx.snap +0 -0
@@ -1,13 +1,6 @@
1
1
  import React from 'react';
2
- import {
3
- DatePicker,
4
- Modal,
5
- ModalVariant,
6
- Button,
7
- TimePicker,
8
- InputGroup,
9
- InputGroupItem
10
- } from '@patternfly/react-core';
2
+ import { DatePicker, Button, TimePicker, InputGroup, InputGroupItem } from '@patternfly/react-core';
3
+ import { Modal as ModalDeprecated, ModalVariant as ModalVariantDeprecated } from '@patternfly/react-core/deprecated';
11
4
 
12
5
  export const SimpleModal = () => {
13
6
  const [isModalOpen, setIsModalOpen] = React.useState(false);
@@ -33,9 +26,9 @@ export const SimpleModal = () => {
33
26
  <Button variant="primary" onClick={handleModalToggle}>
34
27
  Launch modal
35
28
  </Button>
36
- <Modal
29
+ <ModalDeprecated
37
30
  id="date-time-picker-modal"
38
- variant={ModalVariant.small}
31
+ variant={ModalVariantDeprecated.small}
39
32
  title="Generic modal header"
40
33
  isOpen={isModalOpen}
41
34
  onEscapePress={onEscapePress}
@@ -57,7 +50,7 @@ export const SimpleModal = () => {
57
50
  <TimePicker menuAppendTo="parent" isOpen={isTimePickerOpen} setIsOpen={setIsTimePickerOpen} />
58
51
  </InputGroupItem>
59
52
  </InputGroup>
60
- </Modal>
53
+ </ModalDeprecated>
61
54
  </React.Fragment>
62
55
  );
63
56
  };
@@ -3,6 +3,7 @@ id: Label
3
3
  section: components
4
4
  ---
5
5
 
6
+ import { Modal as ModalDeprecated, ModalVariant as ModalVariantDeprecated } from '@patternfly/react-core/deprecated';
6
7
  import InfoCircleIcon from '@patternfly/react-icons/dist/esm/icons/info-circle-icon';
7
8
 
8
9
  ## Demos
@@ -10,9 +11,11 @@ import InfoCircleIcon from '@patternfly/react-icons/dist/esm/icons/info-circle-i
10
11
  ### Editable labels with add dropdown
11
12
 
12
13
  ```ts file="../components/Label/examples/LabelGroupEditableAddDropdown.tsx"
14
+
13
15
  ```
14
16
 
15
17
  ### Editable labels with add modal
16
18
 
17
19
  ```ts file="../components/Label/examples/LabelGroupEditableAddModal.tsx"
20
+
18
21
  ```
@@ -4,6 +4,7 @@ section: components
4
4
  subsection: file-upload
5
5
  ---
6
6
 
7
+ import { Modal as ModalDeprecated, ModalVariant as ModalVariantDeprecated } from '@patternfly/react-core/deprecated';
7
8
  import UploadIcon from '@patternfly/react-icons/dist/esm/icons/upload-icon';
8
9
 
9
10
  ## Demos
@@ -13,4 +14,5 @@ import UploadIcon from '@patternfly/react-icons/dist/esm/icons/upload-icon';
13
14
  This demo shows how to add a modal to alert users that the file(s) they attempted to drop was of a non-acceptable type.
14
15
 
15
16
  ```ts file="./examples/MultipleFileUpload/MultipleFileUploadRejectedFile.tsx"
17
+
16
18
  ```
@@ -14,6 +14,7 @@ import {
14
14
  Flex,
15
15
  FlexItem,
16
16
  Gallery,
17
+ Icon,
17
18
  MenuToggle,
18
19
  Select,
19
20
  SelectList,
@@ -39,7 +40,7 @@ export const CardEventsView: React.FunctionComponent = () => {
39
40
  Error
40
41
  </SelectOption>
41
42
  <SelectOption value="Warning" key="option3">
42
- Error
43
+ Warning
43
44
  </SelectOption>
44
45
  </SelectList>
45
46
  );
@@ -76,7 +77,9 @@ export const CardEventsView: React.FunctionComponent = () => {
76
77
  <DescriptionListTerm>
77
78
  <Flex flexWrap={{ default: 'nowrap' }}>
78
79
  <FlexItem>
79
- <ExclamationCircleIcon aria-hidden="true" />
80
+ <Icon status="danger">
81
+ <ExclamationCircleIcon aria-hidden="true" />
82
+ </Icon>
80
83
  </FlexItem>
81
84
  <FlexItem>
82
85
  <span>Readiness probe failed</span>
@@ -88,14 +91,16 @@ export const CardEventsView: React.FunctionComponent = () => {
88
91
  connection refused
89
92
  </DescriptionListDescription>
90
93
  <DescriptionListDescription>
91
- <Timestamp> Jun 17, 11:02 am </Timestamp>
94
+ <Timestamp date={new Date('2023-06-17T11:02')} dateFormat="medium" timeFormat="short" />
92
95
  </DescriptionListDescription>
93
96
  </DescriptionListGroup>
94
97
  <DescriptionListGroup>
95
98
  <DescriptionListTerm>
96
99
  <Flex flexWrap={{ default: 'nowrap' }}>
97
100
  <FlexItem>
98
- <CheckCircleIcon aria-hidden="true" />
101
+ <Icon status="success">
102
+ <CheckCircleIcon aria-hidden="true" />
103
+ </Icon>
99
104
  </FlexItem>
100
105
  <FlexItem>
101
106
  <span>Successful assignment</span>
@@ -106,7 +111,7 @@ export const CardEventsView: React.FunctionComponent = () => {
106
111
  Successfully assigned default/example to ip-10-0-130-149.ec2.internal
107
112
  </DescriptionListDescription>
108
113
  <DescriptionListDescription>
109
- <Timestamp> Jun 17, 11:13 am </Timestamp>
114
+ <Timestamp date={new Date('2023-06-17T11:13')} dateFormat="medium" timeFormat="short" />
110
115
  </DescriptionListDescription>
111
116
  </DescriptionListGroup>
112
117
  <DescriptionListGroup>
@@ -122,14 +127,16 @@ export const CardEventsView: React.FunctionComponent = () => {
122
127
  </DescriptionListTerm>
123
128
  <DescriptionListDescription>Pulling image "openshift/hello-openshift"</DescriptionListDescription>
124
129
  <DescriptionListDescription>
125
- <Timestamp> Jun 17, 10:59 am </Timestamp>
130
+ <Timestamp date={new Date('2023-06-17T10:59')} dateFormat="medium" timeFormat="short" />
126
131
  </DescriptionListDescription>
127
132
  </DescriptionListGroup>
128
133
  <DescriptionListGroup>
129
134
  <DescriptionListTerm>
130
135
  <Flex flexWrap={{ default: 'nowrap' }}>
131
136
  <FlexItem>
132
- <CheckCircleIcon aria-hidden="true" />
137
+ <Icon status="success">
138
+ <CheckCircleIcon aria-hidden="true" />
139
+ </Icon>
133
140
  </FlexItem>
134
141
  <FlexItem>
135
142
  <span>Created container</span>
@@ -138,7 +145,7 @@ export const CardEventsView: React.FunctionComponent = () => {
138
145
  </DescriptionListTerm>
139
146
  <DescriptionListDescription>Created container hello-openshift</DescriptionListDescription>
140
147
  <DescriptionListDescription>
141
- <Timestamp> Jun 17, 10:45 am </Timestamp>
148
+ <Timestamp date={new Date('2023-06-17T10:45')} dateFormat="medium" timeFormat="short" />
142
149
  </DescriptionListDescription>
143
150
  </DescriptionListGroup>
144
151
  </DescriptionList>
@@ -79,7 +79,7 @@ export const CardLogView: React.FunctionComponent = () => {
79
79
  connection refused
80
80
  </DescriptionListDescription>
81
81
  <DescriptionListDescription>
82
- <Timestamp> Jun 17, 11:02 am </Timestamp>
82
+ <Timestamp date={new Date('2023-06-17T11:02')} dateFormat="medium" timeFormat="short" />
83
83
  </DescriptionListDescription>
84
84
  </DescriptionListGroup>
85
85
  <DescriptionListGroup>
@@ -88,21 +88,21 @@ export const CardLogView: React.FunctionComponent = () => {
88
88
  Successfully assigned default/example to ip-10-0-130-149.ec2.internal
89
89
  </DescriptionListDescription>
90
90
  <DescriptionListDescription>
91
- <Timestamp> Jun 17, 11:13 am </Timestamp>
91
+ <Timestamp date={new Date('2023-06-17T11:13')} dateFormat="medium" timeFormat="short" />
92
92
  </DescriptionListDescription>
93
93
  </DescriptionListGroup>
94
94
  <DescriptionListGroup>
95
95
  <DescriptionListTerm>Pulling image</DescriptionListTerm>
96
96
  <DescriptionListDescription>Pulling image "openshift/hello-openshift"</DescriptionListDescription>
97
97
  <DescriptionListDescription>
98
- <Timestamp> Jun 17, 10:59 am </Timestamp>
98
+ <Timestamp date={new Date('2023-06-17T10:59')} dateFormat="medium" timeFormat="short" />
99
99
  </DescriptionListDescription>
100
100
  </DescriptionListGroup>
101
101
  <DescriptionListGroup>
102
102
  <DescriptionListTerm>Created container</DescriptionListTerm>
103
103
  <DescriptionListDescription>Created container hello-openshift</DescriptionListDescription>
104
104
  <DescriptionListDescription>
105
- <Timestamp> Jun 17, 10:45 am </Timestamp>
105
+ <Timestamp date={new Date('2023-06-17T10:45')} dateFormat="medium" timeFormat="short" />
106
106
  </DescriptionListDescription>
107
107
  </DescriptionListGroup>
108
108
  </DescriptionList>
@@ -9,6 +9,7 @@ import {
9
9
  DescriptionListTerm,
10
10
  Flex,
11
11
  FlexItem,
12
+ Icon,
12
13
  Tab,
13
14
  TabContent,
14
15
  Tabs,
@@ -23,25 +24,41 @@ const descriptionListData = [
23
24
  status: 'Running',
24
25
  resourceName: 'Resource name that is long and can wrap',
25
26
  detail: '121 Systems',
26
- icon: <CheckCircleIcon />
27
+ icon: (
28
+ <Icon status="success">
29
+ <CheckCircleIcon />
30
+ </Icon>
31
+ )
27
32
  },
28
33
  {
29
- status: 'Ready',
34
+ status: 'Failed',
30
35
  resourceName: 'Resource name that is long and can wrap',
31
36
  detail: '123 Systems',
32
- icon: <ExclamationCircleIcon />
37
+ icon: (
38
+ <Icon status="danger">
39
+ <ExclamationCircleIcon />
40
+ </Icon>
41
+ )
33
42
  },
34
43
  {
35
44
  status: 'Running',
36
45
  resourceName: 'Resource name that is long and can wrap',
37
46
  detail: '122 Systems',
38
- icon: <CheckCircleIcon />
47
+ icon: (
48
+ <Icon status="success">
49
+ <CheckCircleIcon />
50
+ </Icon>
51
+ )
39
52
  },
40
53
  {
41
- status: 'Ready',
54
+ status: 'Failed',
42
55
  resourceName: 'Resource name that is long and can wrap',
43
56
  detail: '124 Systems',
44
- icon: <ExclamationCircleIcon />
57
+ icon: (
58
+ <Icon status="danger">
59
+ <ExclamationCircleIcon />
60
+ </Icon>
61
+ )
45
62
  }
46
63
  ];
47
64
 
@@ -15,7 +15,8 @@ import {
15
15
  SelectList,
16
16
  SelectOption,
17
17
  MenuToggle,
18
- MenuToggleElement
18
+ MenuToggleElement,
19
+ Icon
19
20
  } from '@patternfly/react-core';
20
21
  import ExclamationCircleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-circle-icon';
21
22
  import { Chart, ChartStack, ChartBar, ChartTooltip } from '@patternfly/react-charts';
@@ -79,7 +80,9 @@ export const CardUtilizationDemo3: React.FunctionComponent = () => {
79
80
  <span>System</span>
80
81
  </FlexItem>
81
82
  <Flex>
82
- <ExclamationCircleIcon aria-hidden />
83
+ <Icon status="danger">
84
+ <ExclamationCircleIcon aria-hidden />
85
+ </Icon>
83
86
  <a href="#">25 incidents detected</a>
84
87
  </Flex>
85
88
  <FlexItem>
@@ -5,10 +5,10 @@ import {
5
5
  MultipleFileUploadMain,
6
6
  MultipleFileUploadStatus,
7
7
  MultipleFileUploadStatusItem,
8
- Modal,
9
8
  Checkbox,
10
9
  DropEvent
11
10
  } from '@patternfly/react-core';
11
+ import { Modal as ModalDeprecated } from '@patternfly/react-core/deprecated';
12
12
  import UploadIcon from '@patternfly/react-icons/dist/esm/icons/upload-icon';
13
13
 
14
14
  interface readFile {
@@ -135,7 +135,7 @@ export const MultipleFileUploadBasic: React.FunctionComponent = () => {
135
135
  ))}
136
136
  </MultipleFileUploadStatus>
137
137
  )}
138
- <Modal
138
+ <ModalDeprecated
139
139
  isOpen={!!modalText}
140
140
  title="Unsupported file"
141
141
  titleIconVariant="warning"
@@ -144,7 +144,7 @@ export const MultipleFileUploadBasic: React.FunctionComponent = () => {
144
144
  onClose={() => setModalText('')}
145
145
  >
146
146
  {modalText}
147
- </Modal>
147
+ </ModalDeprecated>
148
148
  </MultipleFileUpload>
149
149
  <Checkbox
150
150
  id="horizontal-checkbox"
@@ -7,29 +7,53 @@ import { ModalContent } from './ModalContent';
7
7
  import { OUIAProps, getDefaultOUIAId } from '../../../helpers';
8
8
 
9
9
  export interface ModalProps extends React.HTMLProps<HTMLDivElement>, OUIAProps {
10
+ /** Action buttons to add to the standard modal footer. Ignored if the footer property
11
+ * is passed in.
12
+ */
13
+ actions?: any;
10
14
  /** The parent container to append the modal to. Defaults to "document.body". */
11
15
  appendTo?: HTMLElement | (() => HTMLElement);
12
- /** Id to use for the modal box description. This should match the ModalHeader labelId or descriptorId. */
16
+ /** Id to use for the modal box descriptor. */
13
17
  'aria-describedby'?: string;
14
- /** Adds an accessible name to the modal when there is no title in the ModalHeader. */
18
+ /** Accessible descriptor of the modal. */
15
19
  'aria-label'?: string;
16
- /** Id to use for the modal box label. This should include the ModalHeader labelId. */
20
+ /** Id to use for the modal box label. */
17
21
  'aria-labelledby'?: string;
22
+ /** Accessible label applied to the modal box body. This should be used to communicate
23
+ * important information about the modal box body div element if needed, such as that it
24
+ * is scrollable.
25
+ */
26
+ bodyAriaLabel?: string;
27
+ /** Accessible role applied to the modal box body. This will default to "region" if the
28
+ * bodyAriaLabel property is passed in. Set to a more appropriate role as applicable
29
+ * based on the modal content and context.
30
+ */
31
+ bodyAriaRole?: string;
18
32
  /** Content rendered inside the modal. */
19
33
  children: React.ReactNode;
20
34
  /** Additional classes added to the modal. */
21
35
  className?: string;
36
+ /** Description of the modal. */
37
+ description?: React.ReactNode;
22
38
  /** Flag to disable focus trap. */
23
39
  disableFocusTrap?: boolean;
24
40
  /** The element to focus when the modal opens. By default the first
25
41
  * focusable element will receive focus.
26
42
  */
27
43
  elementToFocus?: HTMLElement | SVGElement | string;
44
+ /** Custom footer. */
45
+ footer?: React.ReactNode;
46
+ /** Flag indicating if modal content should be placed in a modal box body wrapper. */
47
+ hasNoBodyWrapper?: boolean;
48
+ /** Complex header (more than just text), supersedes the title property for header content. */
49
+ header?: React.ReactNode;
50
+ /** Optional help section for the modal header. */
51
+ help?: React.ReactNode;
28
52
  /** An id to use for the modal box container. */
29
53
  id?: string;
30
54
  /** Flag to show the modal. */
31
55
  isOpen?: boolean;
32
- /** Add callback for when the close button is clicked. This prop needs to be passed to render the close button */
56
+ /** A callback for when the close button is clicked. */
33
57
  onClose?: (event: KeyboardEvent | React.MouseEvent) => void;
34
58
  /** Modal handles pressing of the escape key and closes the modal. If you want to handle
35
59
  * this yourself you can use this callback function. */
@@ -38,6 +62,16 @@ export interface ModalProps extends React.HTMLProps<HTMLDivElement>, OUIAProps {
38
62
  position?: 'default' | 'top';
39
63
  /** Offset from alternate position. Can be any valid CSS length/percentage. */
40
64
  positionOffset?: string;
65
+ /** Flag to show the close button in the header area of the modal. */
66
+ showClose?: boolean;
67
+ /** Simple text content of the modal header. Also used for the aria-label on the body. */
68
+ title?: string;
69
+ /** Optional alert icon (or other) to show before the title of the modal header. When the
70
+ * predefined alert types are used the default styling will be automatically applied.
71
+ */
72
+ titleIconVariant?: 'success' | 'danger' | 'warning' | 'info' | 'custom' | React.ComponentType<any>;
73
+ /** Optional title label text for screen readers. */
74
+ titleLabel?: string;
41
75
  /** Variant of the modal. */
42
76
  variant?: 'small' | 'medium' | 'large' | 'default';
43
77
  /** Default width of the modal. */
@@ -66,10 +100,24 @@ class Modal extends React.Component<ModalProps, ModalState> {
66
100
  static displayName = 'Modal';
67
101
  static currentId = 0;
68
102
  boxId = '';
103
+ labelId = '';
104
+ descriptorId = '';
69
105
 
70
106
  static defaultProps: PickOptional<ModalProps> = {
107
+ className: '',
71
108
  isOpen: false,
109
+ title: '',
110
+ titleIconVariant: null,
111
+ titleLabel: '',
112
+ 'aria-label': '',
113
+ showClose: true,
114
+ 'aria-describedby': '',
115
+ 'aria-labelledby': '',
116
+ id: undefined,
117
+ actions: [] as any[],
118
+ onClose: () => undefined as any,
72
119
  variant: 'default',
120
+ hasNoBodyWrapper: false,
73
121
  appendTo: () => document.body,
74
122
  ouiaSafe: true,
75
123
  position: 'default'
@@ -78,7 +126,11 @@ class Modal extends React.Component<ModalProps, ModalState> {
78
126
  constructor(props: ModalProps) {
79
127
  super(props);
80
128
  const boxIdNum = Modal.currentId++;
129
+ const labelIdNum = boxIdNum + 1;
130
+ const descriptorIdNum = boxIdNum + 2;
81
131
  this.boxId = props.id || `pf-modal-part-${boxIdNum}`;
132
+ this.labelId = `pf-modal-part-${labelIdNum}`;
133
+ this.descriptorId = `pf-modal-part-${descriptorIdNum}`;
82
134
 
83
135
  this.state = {
84
136
  container: undefined,
@@ -116,9 +168,11 @@ class Modal extends React.Component<ModalProps, ModalState> {
116
168
  componentDidMount() {
117
169
  const {
118
170
  appendTo,
119
- 'aria-describedby': ariaDescribedby,
171
+ title,
120
172
  'aria-label': ariaLabel,
121
- 'aria-labelledby': ariaLabelledby
173
+ 'aria-labelledby': ariaLabelledby,
174
+ hasNoBodyWrapper,
175
+ header
122
176
  } = this.props;
123
177
  const target: HTMLElement = this.getElement(appendTo);
124
178
  const container = document.createElement('div');
@@ -132,9 +186,16 @@ class Modal extends React.Component<ModalProps, ModalState> {
132
186
  target.classList.remove(css(styles.backdropOpen));
133
187
  }
134
188
 
135
- if (!ariaDescribedby && !ariaLabel && !ariaLabelledby) {
189
+ if (this.isEmpty(title) && this.isEmpty(ariaLabel) && this.isEmpty(ariaLabelledby)) {
136
190
  // eslint-disable-next-line no-console
137
- console.error('Modal: Specify at least one of: aria-describedby, aria-label, aria-labelledby.');
191
+ console.error('Modal: Specify at least one of: title, aria-label, aria-labelledby.');
192
+ }
193
+
194
+ if (this.isEmpty(ariaLabel) && this.isEmpty(ariaLabelledby) && (hasNoBodyWrapper || header)) {
195
+ // eslint-disable-next-line no-console
196
+ console.error(
197
+ 'Modal: When using hasNoBodyWrapper or setting a custom header, ensure you assign an accessible name to the the modal container with aria-label or aria-labelledby.'
198
+ );
138
199
  }
139
200
  }
140
201
 
@@ -170,6 +231,11 @@ class Modal extends React.Component<ModalProps, ModalState> {
170
231
  'aria-labelledby': ariaLabelledby,
171
232
  'aria-label': ariaLabel,
172
233
  'aria-describedby': ariaDescribedby,
234
+ bodyAriaLabel,
235
+ bodyAriaRole,
236
+ title,
237
+ titleIconVariant,
238
+ titleLabel,
173
239
  ouiaId,
174
240
  ouiaSafe,
175
241
  position,
@@ -184,15 +250,22 @@ class Modal extends React.Component<ModalProps, ModalState> {
184
250
 
185
251
  return ReactDOM.createPortal(
186
252
  <ModalContent
253
+ {...props}
187
254
  boxId={this.boxId}
255
+ labelId={this.labelId}
256
+ descriptorId={this.descriptorId}
257
+ title={title}
258
+ titleIconVariant={titleIconVariant}
259
+ titleLabel={titleLabel}
188
260
  aria-label={ariaLabel}
189
261
  aria-describedby={ariaDescribedby}
190
262
  aria-labelledby={ariaLabelledby}
263
+ bodyAriaLabel={bodyAriaLabel}
264
+ bodyAriaRole={bodyAriaRole}
191
265
  ouiaId={ouiaId !== undefined ? ouiaId : this.state.ouiaStateId}
192
266
  ouiaSafe={ouiaSafe}
193
267
  position={position}
194
268
  elementToFocus={elementToFocus}
195
- {...props}
196
269
  />,
197
270
  container
198
271
  ) as React.ReactElement;
@@ -4,9 +4,9 @@ import styles from '@patternfly/react-styles/css/components/ModalBox/modal-box';
4
4
  import topSpacer from '@patternfly/react-tokens/dist/esm/c_modal_box_m_align_top_spacer';
5
5
 
6
6
  export interface ModalBoxProps extends React.HTMLProps<HTMLDivElement> {
7
- /** Id to use for the modal box description. This should match the ModalHeader labelId or descriptorId */
8
- 'aria-describedby'?: string;
9
- /** Adds an accessible name to the modal when there is no title in the ModalHeader. */
7
+ /** Id to use for the modal box description. */
8
+ 'aria-describedby': string;
9
+ /** Accessible descriptor of the modal. */
10
10
  'aria-label'?: string;
11
11
  /** Id to use for the modal box label. */
12
12
  'aria-labelledby'?: string;
@@ -24,12 +24,12 @@ export interface ModalBoxProps extends React.HTMLProps<HTMLDivElement> {
24
24
 
25
25
  export const ModalBox: React.FunctionComponent<ModalBoxProps> = ({
26
26
  children,
27
- className,
27
+ className = '',
28
28
  variant = 'default',
29
29
  position,
30
30
  positionOffset,
31
31
  'aria-labelledby': ariaLabelledby,
32
- 'aria-label': ariaLabel,
32
+ 'aria-label': ariaLabel = '',
33
33
  'aria-describedby': ariaDescribedby,
34
34
  style,
35
35
  ...props
@@ -40,6 +40,7 @@ export const ModalBox: React.FunctionComponent<ModalBoxProps> = ({
40
40
  }
41
41
  return (
42
42
  <div
43
+ {...props}
43
44
  role="dialog"
44
45
  aria-label={ariaLabel || null}
45
46
  aria-labelledby={ariaLabelledby || null}
@@ -54,7 +55,6 @@ export const ModalBox: React.FunctionComponent<ModalBoxProps> = ({
54
55
  variant === 'medium' && styles.modifiers.md
55
56
  )}
56
57
  style={style}
57
- {...props}
58
58
  >
59
59
  {children}
60
60
  </div>
@@ -18,7 +18,7 @@ export interface ModalBoxCloseButtonProps extends OUIAProps {
18
18
 
19
19
  export const ModalBoxCloseButton: React.FunctionComponent<ModalBoxCloseButtonProps> = ({
20
20
  className,
21
- onClose,
21
+ onClose = () => undefined as any,
22
22
  'aria-label': ariaLabel = 'Close',
23
23
  ouiaId,
24
24
  ...props
@@ -17,29 +17,27 @@ export interface ModalBoxTitleProps {
17
17
  /** Additional classes added to the modal box title. */
18
18
  className?: string;
19
19
  /** Id of the modal box title. */
20
- id?: string;
20
+ id: string;
21
21
  /** Content rendered inside the modal box title. */
22
22
  title: React.ReactNode;
23
23
  /** Optional alert icon (or other) to show before the title. When the predefined alert types
24
24
  * are used the default styling will be automatically applied. */
25
25
  titleIconVariant?: 'success' | 'danger' | 'warning' | 'info' | 'custom' | React.ComponentType<any>;
26
26
  /** Optional title label text for screen readers. */
27
- titleScreenReaderText?: string;
27
+ titleLabel?: string;
28
28
  }
29
29
 
30
30
  export const ModalBoxTitle: React.FunctionComponent<ModalBoxTitleProps> = ({
31
- className,
31
+ className = '',
32
32
  id,
33
33
  title,
34
34
  titleIconVariant,
35
- titleScreenReaderText,
35
+ titleLabel = '',
36
36
  ...props
37
37
  }: ModalBoxTitleProps) => {
38
38
  const [hasTooltip, setHasTooltip] = React.useState(false);
39
39
  const h1 = React.useRef<HTMLHeadingElement>(null);
40
- const label =
41
- titleScreenReaderText ||
42
- (isVariantIcon(titleIconVariant) ? `${capitalize(titleIconVariant)} alert:` : titleScreenReaderText);
40
+ const label = titleLabel || (isVariantIcon(titleIconVariant) ? `${capitalize(titleIconVariant)} alert:` : titleLabel);
43
41
  const variantIcons = {
44
42
  success: <CheckCircleIcon />,
45
43
  danger: <ExclamationCircleIcon />,