@patternfly/react-core 6.0.0-alpha.19 → 6.0.0-alpha.20

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 (448) hide show
  1. package/CHANGELOG.md +162 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/Chip/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/DragDrop/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/Text/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/Tile/package.json +1 -1
  76. package/dist/dynamic/components/TimePicker/package.json +1 -1
  77. package/dist/dynamic/components/Timestamp/package.json +1 -1
  78. package/dist/dynamic/components/Title/package.json +1 -1
  79. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  80. package/dist/dynamic/components/Toolbar/package.json +1 -1
  81. package/dist/dynamic/components/Tooltip/package.json +1 -1
  82. package/dist/dynamic/components/TreeView/package.json +1 -1
  83. package/dist/dynamic/components/Truncate/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  85. package/dist/dynamic/components/Wizard/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/Select/package.json +1 -1
  92. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  93. package/dist/dynamic/deprecated/components/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/favorites/package.json +1 -1
  102. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  104. package/dist/dynamic/helpers/package.json +1 -1
  105. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  106. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  107. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  108. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  109. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  110. package/dist/dynamic/helpers/util/package.json +1 -1
  111. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  112. package/dist/dynamic/layouts/Flex/package.json +1 -1
  113. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  114. package/dist/dynamic/layouts/Grid/package.json +1 -1
  115. package/dist/dynamic/layouts/Level/package.json +1 -1
  116. package/dist/dynamic/layouts/Split/package.json +1 -1
  117. package/dist/dynamic/layouts/Stack/package.json +1 -1
  118. package/dist/dynamic/next/components/Modal/package.json +1 -0
  119. package/dist/dynamic/next/components/package.json +1 -1
  120. package/dist/dynamic/styles/package.json +1 -0
  121. package/dist/esm/components/Accordion/Accordion.d.ts +2 -0
  122. package/dist/esm/components/Accordion/Accordion.d.ts.map +1 -1
  123. package/dist/esm/components/Accordion/Accordion.js +4 -3
  124. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  125. package/dist/esm/components/Accordion/AccordionContext.d.ts +1 -0
  126. package/dist/esm/components/Accordion/AccordionContext.d.ts.map +1 -1
  127. package/dist/esm/components/Accordion/AccordionContext.js.map +1 -1
  128. package/dist/esm/components/Accordion/AccordionToggle.d.ts.map +1 -1
  129. package/dist/esm/components/Accordion/AccordionToggle.js +7 -4
  130. package/dist/esm/components/Accordion/AccordionToggle.js.map +1 -1
  131. package/dist/esm/components/Checkbox/Checkbox.d.ts +9 -3
  132. package/dist/esm/components/Checkbox/Checkbox.d.ts.map +1 -1
  133. package/dist/esm/components/Checkbox/Checkbox.js +16 -8
  134. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  135. package/dist/esm/components/Chip/Chip.d.ts.map +1 -1
  136. package/dist/esm/components/Chip/Chip.js +3 -1
  137. package/dist/esm/components/Chip/Chip.js.map +1 -1
  138. package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  139. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +2 -1
  140. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  141. package/dist/esm/components/DragDrop/index.d.ts +1 -0
  142. package/dist/esm/components/DragDrop/index.d.ts.map +1 -1
  143. package/dist/esm/components/DragDrop/index.js +1 -0
  144. package/dist/esm/components/DragDrop/index.js.map +1 -1
  145. package/dist/esm/components/Dropdown/DropdownItem.d.ts +1 -1
  146. package/dist/esm/components/DualListSelector/index.d.ts +2 -0
  147. package/dist/esm/components/DualListSelector/index.d.ts.map +1 -1
  148. package/dist/esm/components/DualListSelector/index.js +2 -0
  149. package/dist/esm/components/DualListSelector/index.js.map +1 -1
  150. package/dist/esm/components/FileUpload/FileUploadField.d.ts +2 -0
  151. package/dist/esm/components/FileUpload/FileUploadField.d.ts.map +1 -1
  152. package/dist/esm/components/FileUpload/FileUploadField.js +3 -3
  153. package/dist/esm/components/FileUpload/FileUploadField.js.map +1 -1
  154. package/dist/esm/components/Popover/Popover.js +4 -4
  155. package/dist/esm/components/Popover/Popover.js.map +1 -1
  156. package/dist/esm/components/Radio/Radio.d.ts +7 -5
  157. package/dist/esm/components/Radio/Radio.d.ts.map +1 -1
  158. package/dist/esm/components/Radio/Radio.js +13 -20
  159. package/dist/esm/components/Radio/Radio.js.map +1 -1
  160. package/dist/esm/components/Toolbar/ToolbarChipGroupContent.d.ts.map +1 -1
  161. package/dist/esm/components/Toolbar/ToolbarChipGroupContent.js +1 -4
  162. package/dist/esm/components/Toolbar/ToolbarChipGroupContent.js.map +1 -1
  163. package/dist/esm/components/Toolbar/ToolbarExpandableContent.d.ts.map +1 -1
  164. package/dist/esm/components/Toolbar/ToolbarExpandableContent.js +1 -3
  165. package/dist/esm/components/Toolbar/ToolbarExpandableContent.js.map +1 -1
  166. package/dist/esm/components/Toolbar/ToolbarGroup.d.ts +2 -3
  167. package/dist/esm/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
  168. package/dist/esm/components/Toolbar/ToolbarGroup.js +1 -4
  169. package/dist/esm/components/Toolbar/ToolbarGroup.js.map +1 -1
  170. package/dist/esm/components/Toolbar/ToolbarItem.d.ts +1 -13
  171. package/dist/esm/components/Toolbar/ToolbarItem.d.ts.map +1 -1
  172. package/dist/esm/components/Toolbar/ToolbarItem.js +2 -20
  173. package/dist/esm/components/Toolbar/ToolbarItem.js.map +1 -1
  174. package/dist/esm/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
  175. package/dist/esm/components/Toolbar/ToolbarToggleGroup.js +1 -3
  176. package/dist/esm/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
  177. package/dist/esm/components/index.d.ts +1 -1
  178. package/dist/esm/components/index.d.ts.map +1 -1
  179. package/dist/esm/components/index.js +1 -1
  180. package/dist/esm/components/index.js.map +1 -1
  181. package/dist/esm/index.d.ts +1 -1
  182. package/dist/esm/index.d.ts.map +1 -1
  183. package/dist/esm/index.js +1 -1
  184. package/dist/esm/index.js.map +1 -1
  185. package/dist/esm/next/components/Modal/Modal.d.ts +73 -0
  186. package/dist/esm/next/components/Modal/Modal.d.ts.map +1 -0
  187. package/dist/esm/next/components/Modal/Modal.js +114 -0
  188. package/dist/esm/next/components/Modal/Modal.js.map +1 -0
  189. package/dist/esm/next/components/Modal/ModalBody.d.ts +19 -0
  190. package/dist/esm/next/components/Modal/ModalBody.d.ts.map +1 -0
  191. package/dist/esm/next/components/Modal/ModalBody.js +11 -0
  192. package/dist/esm/next/components/Modal/ModalBody.js.map +1 -0
  193. package/dist/esm/next/components/Modal/ModalBox.d.ts +21 -0
  194. package/dist/esm/next/components/Modal/ModalBox.d.ts.map +1 -0
  195. package/dist/esm/next/components/Modal/ModalBox.js +15 -0
  196. package/dist/esm/next/components/Modal/ModalBox.js.map +1 -0
  197. package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
  198. package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  199. package/dist/esm/next/components/Modal/ModalBoxCloseButton.js +14 -0
  200. package/dist/esm/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
  201. package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts +11 -0
  202. package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  203. package/dist/esm/next/components/Modal/ModalBoxDescription.js +10 -0
  204. package/dist/esm/next/components/Modal/ModalBoxDescription.js.map +1 -0
  205. package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts +17 -0
  206. package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  207. package/dist/esm/next/components/Modal/ModalBoxTitle.js +38 -0
  208. package/dist/esm/next/components/Modal/ModalBoxTitle.js.map +1 -0
  209. package/dist/esm/next/components/Modal/ModalContent.d.ts +42 -0
  210. package/dist/esm/next/components/Modal/ModalContent.d.ts.map +1 -0
  211. package/dist/esm/next/components/Modal/ModalContent.js +45 -0
  212. package/dist/esm/next/components/Modal/ModalContent.js.map +1 -0
  213. package/dist/esm/next/components/Modal/ModalFooter.d.ts +10 -0
  214. package/dist/esm/next/components/Modal/ModalFooter.d.ts.map +1 -0
  215. package/dist/esm/next/components/Modal/ModalFooter.js +10 -0
  216. package/dist/esm/next/components/Modal/ModalFooter.js.map +1 -0
  217. package/dist/esm/next/components/Modal/ModalHeader.d.ts +25 -0
  218. package/dist/esm/next/components/Modal/ModalHeader.d.ts.map +1 -0
  219. package/dist/esm/next/components/Modal/ModalHeader.js +21 -0
  220. package/dist/esm/next/components/Modal/ModalHeader.js.map +1 -0
  221. package/dist/esm/next/components/Modal/index.d.ts +5 -0
  222. package/dist/esm/next/components/Modal/index.d.ts.map +1 -0
  223. package/dist/esm/next/components/Modal/index.js +5 -0
  224. package/dist/esm/next/components/Modal/index.js.map +1 -0
  225. package/dist/esm/next/components/index.d.ts +1 -1
  226. package/dist/esm/next/components/index.d.ts.map +1 -1
  227. package/dist/esm/next/components/index.js +1 -1
  228. package/dist/esm/next/components/index.js.map +1 -1
  229. package/dist/esm/styles/index.d.ts +2 -0
  230. package/dist/esm/styles/index.d.ts.map +1 -0
  231. package/dist/esm/styles/index.js +2 -0
  232. package/dist/esm/styles/index.js.map +1 -0
  233. package/dist/js/components/Accordion/Accordion.d.ts +2 -0
  234. package/dist/js/components/Accordion/Accordion.d.ts.map +1 -1
  235. package/dist/js/components/Accordion/Accordion.js +4 -3
  236. package/dist/js/components/Accordion/Accordion.js.map +1 -1
  237. package/dist/js/components/Accordion/AccordionContext.d.ts +1 -0
  238. package/dist/js/components/Accordion/AccordionContext.d.ts.map +1 -1
  239. package/dist/js/components/Accordion/AccordionContext.js.map +1 -1
  240. package/dist/js/components/Accordion/AccordionToggle.d.ts.map +1 -1
  241. package/dist/js/components/Accordion/AccordionToggle.js +7 -4
  242. package/dist/js/components/Accordion/AccordionToggle.js.map +1 -1
  243. package/dist/js/components/Checkbox/Checkbox.d.ts +9 -3
  244. package/dist/js/components/Checkbox/Checkbox.d.ts.map +1 -1
  245. package/dist/js/components/Checkbox/Checkbox.js +16 -8
  246. package/dist/js/components/Checkbox/Checkbox.js.map +1 -1
  247. package/dist/js/components/Chip/Chip.d.ts.map +1 -1
  248. package/dist/js/components/Chip/Chip.js +3 -1
  249. package/dist/js/components/Chip/Chip.js.map +1 -1
  250. package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  251. package/dist/js/components/ClipboardCopy/ClipboardCopy.js +2 -1
  252. package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  253. package/dist/js/components/DragDrop/index.d.ts +1 -0
  254. package/dist/js/components/DragDrop/index.d.ts.map +1 -1
  255. package/dist/js/components/DragDrop/index.js +1 -0
  256. package/dist/js/components/DragDrop/index.js.map +1 -1
  257. package/dist/js/components/Dropdown/DropdownItem.d.ts +1 -1
  258. package/dist/js/components/DualListSelector/index.d.ts +2 -0
  259. package/dist/js/components/DualListSelector/index.d.ts.map +1 -1
  260. package/dist/js/components/DualListSelector/index.js +2 -0
  261. package/dist/js/components/DualListSelector/index.js.map +1 -1
  262. package/dist/js/components/FileUpload/FileUploadField.d.ts +2 -0
  263. package/dist/js/components/FileUpload/FileUploadField.d.ts.map +1 -1
  264. package/dist/js/components/FileUpload/FileUploadField.js +3 -3
  265. package/dist/js/components/FileUpload/FileUploadField.js.map +1 -1
  266. package/dist/js/components/Popover/Popover.js +4 -4
  267. package/dist/js/components/Popover/Popover.js.map +1 -1
  268. package/dist/js/components/Radio/Radio.d.ts +7 -5
  269. package/dist/js/components/Radio/Radio.d.ts.map +1 -1
  270. package/dist/js/components/Radio/Radio.js +13 -20
  271. package/dist/js/components/Radio/Radio.js.map +1 -1
  272. package/dist/js/components/Toolbar/ToolbarChipGroupContent.d.ts.map +1 -1
  273. package/dist/js/components/Toolbar/ToolbarChipGroupContent.js +1 -4
  274. package/dist/js/components/Toolbar/ToolbarChipGroupContent.js.map +1 -1
  275. package/dist/js/components/Toolbar/ToolbarExpandableContent.d.ts.map +1 -1
  276. package/dist/js/components/Toolbar/ToolbarExpandableContent.js +1 -3
  277. package/dist/js/components/Toolbar/ToolbarExpandableContent.js.map +1 -1
  278. package/dist/js/components/Toolbar/ToolbarGroup.d.ts +2 -3
  279. package/dist/js/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
  280. package/dist/js/components/Toolbar/ToolbarGroup.js +1 -4
  281. package/dist/js/components/Toolbar/ToolbarGroup.js.map +1 -1
  282. package/dist/js/components/Toolbar/ToolbarItem.d.ts +1 -13
  283. package/dist/js/components/Toolbar/ToolbarItem.d.ts.map +1 -1
  284. package/dist/js/components/Toolbar/ToolbarItem.js +2 -20
  285. package/dist/js/components/Toolbar/ToolbarItem.js.map +1 -1
  286. package/dist/js/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
  287. package/dist/js/components/Toolbar/ToolbarToggleGroup.js +1 -3
  288. package/dist/js/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
  289. package/dist/js/components/index.d.ts +1 -1
  290. package/dist/js/components/index.d.ts.map +1 -1
  291. package/dist/js/components/index.js +1 -1
  292. package/dist/js/components/index.js.map +1 -1
  293. package/dist/js/index.d.ts +1 -1
  294. package/dist/js/index.d.ts.map +1 -1
  295. package/dist/js/index.js +1 -4
  296. package/dist/js/index.js.map +1 -1
  297. package/dist/js/next/components/Modal/Modal.d.ts +73 -0
  298. package/dist/js/next/components/Modal/Modal.d.ts.map +1 -0
  299. package/dist/js/next/components/Modal/Modal.js +117 -0
  300. package/dist/js/next/components/Modal/Modal.js.map +1 -0
  301. package/dist/js/next/components/Modal/ModalBody.d.ts +19 -0
  302. package/dist/js/next/components/Modal/ModalBody.d.ts.map +1 -0
  303. package/dist/js/next/components/Modal/ModalBody.js +15 -0
  304. package/dist/js/next/components/Modal/ModalBody.js.map +1 -0
  305. package/dist/js/next/components/Modal/ModalBox.d.ts +21 -0
  306. package/dist/js/next/components/Modal/ModalBox.d.ts.map +1 -0
  307. package/dist/js/next/components/Modal/ModalBox.js +19 -0
  308. package/dist/js/next/components/Modal/ModalBox.js.map +1 -0
  309. package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
  310. package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  311. package/dist/js/next/components/Modal/ModalBoxCloseButton.js +18 -0
  312. package/dist/js/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
  313. package/dist/js/next/components/Modal/ModalBoxDescription.d.ts +11 -0
  314. package/dist/js/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  315. package/dist/js/next/components/Modal/ModalBoxDescription.js +14 -0
  316. package/dist/js/next/components/Modal/ModalBoxDescription.js.map +1 -0
  317. package/dist/js/next/components/Modal/ModalBoxTitle.d.ts +17 -0
  318. package/dist/js/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  319. package/dist/js/next/components/Modal/ModalBoxTitle.js +43 -0
  320. package/dist/js/next/components/Modal/ModalBoxTitle.js.map +1 -0
  321. package/dist/js/next/components/Modal/ModalContent.d.ts +42 -0
  322. package/dist/js/next/components/Modal/ModalContent.d.ts.map +1 -0
  323. package/dist/js/next/components/Modal/ModalContent.js +49 -0
  324. package/dist/js/next/components/Modal/ModalContent.js.map +1 -0
  325. package/dist/js/next/components/Modal/ModalFooter.d.ts +10 -0
  326. package/dist/js/next/components/Modal/ModalFooter.d.ts.map +1 -0
  327. package/dist/js/next/components/Modal/ModalFooter.js +14 -0
  328. package/dist/js/next/components/Modal/ModalFooter.js.map +1 -0
  329. package/dist/js/next/components/Modal/ModalHeader.d.ts +25 -0
  330. package/dist/js/next/components/Modal/ModalHeader.d.ts.map +1 -0
  331. package/dist/js/next/components/Modal/ModalHeader.js +25 -0
  332. package/dist/js/next/components/Modal/ModalHeader.js.map +1 -0
  333. package/dist/js/next/components/Modal/index.d.ts +5 -0
  334. package/dist/js/next/components/Modal/index.d.ts.map +1 -0
  335. package/dist/js/next/components/Modal/index.js +8 -0
  336. package/dist/js/next/components/Modal/index.js.map +1 -0
  337. package/dist/js/next/components/index.d.ts +1 -1
  338. package/dist/js/next/components/index.d.ts.map +1 -1
  339. package/dist/js/next/components/index.js +1 -1
  340. package/dist/js/next/components/index.js.map +1 -1
  341. package/dist/js/styles/index.d.ts +2 -0
  342. package/dist/js/styles/index.d.ts.map +1 -0
  343. package/dist/js/styles/index.js +5 -0
  344. package/dist/js/styles/index.js.map +1 -0
  345. package/dist/umd/react-core.min.js +1 -1
  346. package/helpers/package.json +1 -1
  347. package/layouts/package.json +1 -1
  348. package/next/package.json +1 -1
  349. package/package.json +5 -5
  350. package/single-packages.config.json +4 -4
  351. package/src/components/Accordion/Accordion.tsx +6 -1
  352. package/src/components/Accordion/AccordionContext.ts +1 -0
  353. package/src/components/Accordion/AccordionToggle.tsx +11 -5
  354. package/src/components/Accordion/__tests__/Accordion.test.tsx +12 -0
  355. package/src/components/Accordion/__tests__/AccordionToggle.test.tsx +28 -0
  356. package/src/components/Accordion/examples/Accordion.md +5 -0
  357. package/src/components/Accordion/examples/AccordionToggleIconAtStart.tsx +102 -0
  358. package/src/components/Checkbox/Checkbox.tsx +63 -29
  359. package/src/components/Checkbox/__tests__/Checkbox.test.tsx +41 -0
  360. package/src/components/Chip/Chip.tsx +2 -0
  361. package/src/components/Chip/__tests__/__snapshots__/Chip.test.tsx.snap +0 -1
  362. package/src/components/ClipboardCopy/ClipboardCopy.tsx +2 -1
  363. package/src/components/DataList/__tests__/__snapshots__/DataListAction.test.tsx.snap~HEAD +11 -0
  364. package/src/components/DataList/__tests__/__snapshots__/DataListAction.test.tsx.snap~main +11 -0
  365. package/src/components/DataList/__tests__/__snapshots__/DataListItemCells.test.tsx.snap~HEAD +9 -0
  366. package/src/components/DataList/__tests__/__snapshots__/DataListItemCells.test.tsx.snap~main +9 -0
  367. package/src/components/DataList/__tests__/__snapshots__/DataListItemRow.test.tsx.snap~HEAD +9 -0
  368. package/src/components/DataList/__tests__/__snapshots__/DataListItemRow.test.tsx.snap~main +9 -0
  369. package/src/components/DataList/examples/DataList.md +2 -2
  370. package/src/components/DragDrop/examples/DragDrop.md +4 -2
  371. package/src/components/DragDrop/examples/DragDropBasic.tsx +4 -4
  372. package/src/components/DragDrop/examples/DragDropMultipleLists.tsx +7 -2
  373. package/src/components/DragDrop/index.ts +1 -0
  374. package/src/components/DualListSelector/examples/DualListSelector.md +3 -1
  375. package/src/components/DualListSelector/index.ts +2 -0
  376. package/src/components/FileUpload/FileUploadField.tsx +4 -2
  377. package/src/components/FileUpload/__tests__/__snapshots__/FileUpload.test.tsx.snap +0 -1
  378. package/src/components/FileUpload/__tests__/__snapshots__/FileUploadField.test.tsx.snap +0 -1
  379. package/src/components/Popover/Popover.tsx +4 -4
  380. package/src/components/Radio/Radio.tsx +39 -38
  381. package/src/components/Radio/__tests__/Radio.test.tsx +41 -0
  382. package/src/components/Toolbar/ToolbarChipGroupContent.tsx +1 -7
  383. package/src/components/Toolbar/ToolbarExpandableContent.tsx +0 -1
  384. package/src/components/Toolbar/ToolbarGroup.tsx +2 -4
  385. package/src/components/Toolbar/ToolbarItem.tsx +2 -41
  386. package/src/components/Toolbar/ToolbarToggleGroup.tsx +0 -1
  387. package/src/components/Toolbar/__tests__/ToolbarItem.test.tsx +0 -14
  388. package/src/components/Toolbar/examples/Toolbar.md +0 -10
  389. package/src/components/Toolbar/examples/ToolbarComponentManagedToggleGroups.tsx +1 -1
  390. package/src/components/Toolbar/examples/ToolbarConsumerManagedToggleGroups.tsx +1 -1
  391. package/src/components/Toolbar/examples/ToolbarGroups.tsx +1 -1
  392. package/src/components/Toolbar/examples/ToolbarItems.tsx +1 -1
  393. package/src/components/Toolbar/examples/ToolbarStacked.tsx +2 -2
  394. package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +1 -1
  395. package/src/components/TreeView/examples/TreeViewWithSearch.tsx +1 -1
  396. package/src/components/index.ts +1 -1
  397. package/src/demos/CardView/examples/CardView.tsx +2 -2
  398. package/src/demos/DataList/examples/DataListBasic.tsx +2 -2
  399. package/src/demos/ExpandableSection/ExpandableSection.md +17 -0
  400. package/src/demos/ExpandableSection/examples/ExpandableTextDemo.tsx +30 -0
  401. package/src/demos/Filters/examples/FilterSearchInput.tsx +1 -1
  402. package/src/index.ts +1 -1
  403. package/src/next/components/Modal/Modal.tsx +202 -0
  404. package/src/next/components/Modal/ModalBody.tsx +42 -0
  405. package/src/next/components/Modal/ModalBox.tsx +63 -0
  406. package/src/next/components/Modal/ModalBoxCloseButton.tsx +38 -0
  407. package/src/next/components/Modal/ModalBoxDescription.tsx +24 -0
  408. package/src/next/components/Modal/ModalBoxTitle.tsx +75 -0
  409. package/src/next/components/Modal/ModalContent.tsx +131 -0
  410. package/src/next/components/Modal/ModalFooter.tsx +23 -0
  411. package/src/next/components/Modal/ModalHeader.tsx +71 -0
  412. package/src/next/components/Modal/__tests__/Modal.test.tsx +145 -0
  413. package/src/next/components/Modal/__tests__/ModalBody.test.tsx +60 -0
  414. package/src/next/components/Modal/__tests__/ModalBox.test.tsx +58 -0
  415. package/src/next/components/Modal/__tests__/ModalBoxCloseButton.test.tsx +18 -0
  416. package/src/next/components/Modal/__tests__/ModalBoxDescription.test.tsx +8 -0
  417. package/src/next/components/Modal/__tests__/ModalBoxHeader.test.tsx +21 -0
  418. package/src/next/components/Modal/__tests__/ModalBoxTitle.test.tsx +37 -0
  419. package/src/next/components/Modal/__tests__/ModalContent.test.tsx +46 -0
  420. package/src/next/components/Modal/__tests__/ModalFooter.test.tsx +8 -0
  421. package/src/next/components/Modal/__tests__/__snapshots__/ModalBody.test.tsx.snap +12 -0
  422. package/src/next/components/Modal/__tests__/__snapshots__/ModalBox.test.tsx.snap +86 -0
  423. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxDescription.test.tsx.snap +12 -0
  424. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxHeader.test.tsx.snap +46 -0
  425. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxTitle.test.tsx.snap +218 -0
  426. package/src/next/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +128 -0
  427. package/src/next/components/Modal/__tests__/__snapshots__/ModalFooter.test.tsx.snap +11 -0
  428. package/src/next/components/Modal/examples/Modal.md +148 -0
  429. package/src/next/components/Modal/examples/ModalBasic.tsx +43 -0
  430. package/src/next/components/Modal/examples/ModalCustomFocus.tsx +43 -0
  431. package/src/next/components/Modal/examples/ModalCustomHeader.tsx +58 -0
  432. package/src/next/components/Modal/examples/ModalCustomTitleIcon.tsx +54 -0
  433. package/src/next/components/Modal/examples/ModalCustomWidth.tsx +43 -0
  434. package/src/next/components/Modal/examples/ModalNoHeaderFooter.tsx +40 -0
  435. package/src/next/components/Modal/examples/ModalSize.tsx +63 -0
  436. package/src/next/components/Modal/examples/ModalTitleIcon.tsx +48 -0
  437. package/src/next/components/Modal/examples/ModalTopAligned.tsx +43 -0
  438. package/src/next/components/Modal/examples/ModalWithDescription.tsx +80 -0
  439. package/src/next/components/Modal/examples/ModalWithDropdown.tsx +105 -0
  440. package/src/next/components/Modal/examples/ModalWithForm.tsx +211 -0
  441. package/src/next/components/Modal/examples/ModalWithHelp.tsx +63 -0
  442. package/src/next/components/Modal/examples/ModalWithOverflowingContent.tsx +75 -0
  443. package/src/next/components/Modal/examples/ModalWithWizard.tsx +59 -0
  444. package/src/next/components/Modal/index.ts +4 -0
  445. package/src/next/components/index.ts +1 -1
  446. package/src/styles/index.ts +1 -0
  447. package/src/components/Toolbar/__tests__/__snapshots__/ToolbarItem.test.tsx.snap +0 -12
  448. package/src/components/Toolbar/examples/ToolbarWidths.tsx +0 -30
@@ -0,0 +1,71 @@
1
+ import * as React from 'react';
2
+ import { css } from '@patternfly/react-styles';
3
+ import styles from '@patternfly/react-styles/css/components/ModalBox/modal-box';
4
+ import { ModalBoxDescription } from './ModalBoxDescription';
5
+ import { ModalBoxTitle } from './ModalBoxTitle';
6
+
7
+ /** Renders content in the header of the modal */
8
+
9
+ export interface ModalHeaderProps {
10
+ /** Custom content rendered inside the modal header. If children are supplied then the tile, tileIconVariant and titleScreenReaderText props are ignored. */
11
+ children?: React.ReactNode;
12
+ /** Additional classes added to the modal header. */
13
+ className?: string;
14
+ /** Description of the modal. */
15
+ description?: React.ReactNode;
16
+ /** Id of the modal description. */
17
+ descriptorId?: string;
18
+ /** Optional help section for the modal header. */
19
+ help?: React.ReactNode;
20
+ /** Id of the modal title. */
21
+ labelId?: string;
22
+ /** Content rendered inside the modal title. */
23
+ title?: React.ReactNode;
24
+ /** Optional alert icon (or other) to show before the title. When the predefined alert types
25
+ * are used the default styling will be automatically applied. */
26
+ titleIconVariant?: 'success' | 'danger' | 'warning' | 'info' | 'custom' | React.ComponentType<any>;
27
+ /** Optional title label text for screen readers. */
28
+ titleScreenReaderText?: string;
29
+ }
30
+
31
+ export const ModalHeader: React.FunctionComponent<ModalHeaderProps> = ({
32
+ children,
33
+ className,
34
+ descriptorId,
35
+ description,
36
+ labelId,
37
+ title,
38
+ titleIconVariant,
39
+ titleScreenReaderText,
40
+ help,
41
+ ...props
42
+ }: ModalHeaderProps) => {
43
+ const headerContent = children ? (
44
+ children
45
+ ) : (
46
+ <>
47
+ <ModalBoxTitle
48
+ title={title}
49
+ titleIconVariant={titleIconVariant}
50
+ titleScreenReaderText={titleScreenReaderText}
51
+ id={labelId}
52
+ />
53
+ {description && <ModalBoxDescription id={descriptorId}>{description}</ModalBoxDescription>}
54
+ </>
55
+ );
56
+
57
+ // TODO: apply variant modifier for icon styling. Core fix needed first. similar to this:
58
+ // className={css(className, isVariantIcon(titleIconVariant) && modalStyles.modifiers[titleIconVariant])}
59
+ return (
60
+ <header className={css(styles.modalBoxHeader, help && styles.modifiers.help, className)} {...props}>
61
+ {help && (
62
+ <>
63
+ <div className={css(styles.modalBoxHeaderMain)}>{headerContent}</div>
64
+ <div className={`${styles.modalBoxHeader}-help`}>{help}</div>
65
+ </>
66
+ )}
67
+ {!help && headerContent}
68
+ </header>
69
+ );
70
+ };
71
+ ModalHeader.displayName = 'ModalHeader';
@@ -0,0 +1,145 @@
1
+ import * as React from 'react';
2
+
3
+ import { render, screen } from '@testing-library/react';
4
+ import userEvent from '@testing-library/user-event';
5
+
6
+ import { css } from '../../../../../../react-styles/dist/js';
7
+ import styles from '@patternfly/react-styles/css/components/Backdrop/backdrop';
8
+
9
+ import { Modal } from '../Modal';
10
+ import { KeyTypes } from '../../../../helpers';
11
+
12
+ jest.spyOn(document, 'createElement');
13
+ jest.spyOn(document.body, 'addEventListener');
14
+
15
+ const props = {
16
+ onClose: jest.fn(),
17
+ isOpen: false,
18
+ children: 'modal content'
19
+ };
20
+
21
+ const target = document.createElement('div');
22
+
23
+ const ModalWithSiblings = () => {
24
+ const [isOpen, setIsOpen] = React.useState(true);
25
+ const [isModalMounted, setIsModalMounted] = React.useState(true);
26
+ const modalProps = { ...props, isOpen, appendTo: target, onClose: () => setIsOpen(false) };
27
+
28
+ return (
29
+ <>
30
+ <aside>Aside sibling</aside>
31
+ <article>Section sibling</article>
32
+ {isModalMounted && (
33
+ <Modal {...modalProps}>
34
+ <button onClick={() => setIsModalMounted(false)}>Unmount Modal</button>
35
+ </Modal>
36
+ )}
37
+ </>
38
+ );
39
+ };
40
+
41
+ describe('Modal', () => {
42
+ test('Modal creates a container element once for div', () => {
43
+ render(<Modal {...props} />);
44
+ expect(document.createElement).toHaveBeenCalledWith('div');
45
+ });
46
+
47
+ test('modal closes with escape', async () => {
48
+ const user = userEvent.setup();
49
+
50
+ render(<Modal {...props} isOpen appendTo={document.body} aria-label="modal-div" />);
51
+
52
+ await user.type(screen.getByLabelText('modal-div'), `{${KeyTypes.Escape}}`);
53
+ expect(props.onClose).toHaveBeenCalled();
54
+ });
55
+
56
+ test('modal does not call onClose for esc key if it is not open', () => {
57
+ render(<Modal {...props} />);
58
+ expect(screen.queryByRole('dialog')).toBeNull();
59
+ expect(props.onClose).not.toHaveBeenCalled();
60
+ });
61
+
62
+ test('modal has body backdropOpen class when open', () => {
63
+ render(<Modal {...props} isOpen />);
64
+ expect(document.body).toHaveClass(css(styles.backdropOpen));
65
+ });
66
+
67
+ test('modal has no body backdropOpen class when not open', () => {
68
+ render(<Modal {...props} />);
69
+ expect(document.body).not.toHaveClass(css(styles.backdropOpen));
70
+ });
71
+
72
+ test('modal shows the close button when onClose prop is passed (true by default)', () => {
73
+ render(<Modal {...props} isOpen />);
74
+ expect(screen.getByRole('button', { name: 'Close' })).toBeInTheDocument();
75
+ });
76
+
77
+ test('modal does not show the close button when onClose not passed', () => {
78
+ render(
79
+ <Modal isOpen disableFocusTrap>
80
+ No close button{' '}
81
+ </Modal>
82
+ );
83
+ expect(screen.queryByRole('button', { name: 'Close' })).toBeNull();
84
+ });
85
+
86
+ test('modal generates console error when no accessible name is provided', () => {
87
+ const props = {
88
+ onClose: jest.fn(),
89
+ isOpen: true,
90
+ children: 'modal content'
91
+ };
92
+ const consoleErrorMock = jest.fn();
93
+ global.console = { error: consoleErrorMock } as any;
94
+
95
+ render(<Modal {...props} />);
96
+
97
+ expect(consoleErrorMock).toHaveBeenCalled();
98
+ });
99
+
100
+ test('modal adds aria-hidden attribute to its siblings when open', () => {
101
+ render(<ModalWithSiblings />, { container: document.body.appendChild(target) });
102
+
103
+ const asideSibling = screen.getByRole('complementary', { hidden: true });
104
+ const articleSibling = screen.getByRole('article', { hidden: true });
105
+
106
+ expect(asideSibling).toHaveAttribute('aria-hidden');
107
+ expect(articleSibling).toHaveAttribute('aria-hidden');
108
+ });
109
+
110
+ test('modal removes the aria-hidden attribute from its siblings when closed', async () => {
111
+ const user = userEvent.setup();
112
+
113
+ render(<ModalWithSiblings />, { container: document.body.appendChild(target) });
114
+
115
+ const asideSibling = screen.getByRole('complementary', { hidden: true });
116
+ const articleSibling = screen.getByRole('article', { hidden: true });
117
+ const closeButton = screen.getByRole('button', { name: 'Close' });
118
+
119
+ expect(articleSibling).toHaveAttribute('aria-hidden');
120
+ expect(asideSibling).toHaveAttribute('aria-hidden');
121
+
122
+ await user.click(closeButton);
123
+
124
+ expect(articleSibling).not.toHaveAttribute('aria-hidden');
125
+ expect(asideSibling).not.toHaveAttribute('aria-hidden');
126
+ });
127
+
128
+ test('modal removes the aria-hidden attribute from its siblings when unmounted', async () => {
129
+ const user = userEvent.setup();
130
+
131
+ render(<ModalWithSiblings />, { container: document.body.appendChild(target) });
132
+
133
+ const asideSibling = screen.getByRole('complementary', { hidden: true });
134
+ const articleSibling = screen.getByRole('article', { hidden: true });
135
+ const unmountButton = screen.getByRole('button', { name: 'Unmount Modal' });
136
+
137
+ expect(asideSibling).toHaveAttribute('aria-hidden');
138
+ expect(articleSibling).toHaveAttribute('aria-hidden');
139
+
140
+ await user.click(unmountButton);
141
+
142
+ expect(asideSibling).not.toHaveAttribute('aria-hidden');
143
+ expect(articleSibling).not.toHaveAttribute('aria-hidden');
144
+ });
145
+ });
@@ -0,0 +1,60 @@
1
+ import * as React from 'react';
2
+ import { render, screen } from '@testing-library/react';
3
+
4
+ import { ModalBody } from '../ModalBody';
5
+
6
+ describe('ModalBody tests', () => {
7
+ test('ModalBody renders', () => {
8
+ const { asFragment } = render(
9
+ <ModalBody id="id" className="test-box-class">
10
+ This is a Modal body
11
+ </ModalBody>
12
+ );
13
+ expect(asFragment()).toMatchSnapshot();
14
+ });
15
+
16
+ test('The ModalBody has the expected aria-label when it is passed', () => {
17
+ const props = {
18
+ isOpen: true
19
+ };
20
+
21
+ render(
22
+ <ModalBody aria-label="modal body aria label" {...props}>
23
+ This is a ModalBox
24
+ </ModalBody>
25
+ );
26
+
27
+ const modalBoxBody = screen.getByText('This is a ModalBox');
28
+ expect(modalBoxBody).toHaveAccessibleName('modal body aria label');
29
+ });
30
+
31
+ test('The modalBoxBody has the expected aria role when aria-label is passed and role is not', () => {
32
+ const props = {
33
+ isOpen: true
34
+ };
35
+
36
+ render(
37
+ <ModalBody aria-label="modal body aria label" {...props}>
38
+ This is a ModalBox
39
+ </ModalBody>
40
+ );
41
+
42
+ const modalBoxBody = screen.getByRole('region', { name: 'modal body aria label' });
43
+ expect(modalBoxBody).toBeInTheDocument();
44
+ });
45
+
46
+ test('The modalBoxBody has the expected aria role when bodyAriaRole is passed', () => {
47
+ const props = {
48
+ isOpen: true
49
+ };
50
+
51
+ render(
52
+ <ModalBody aria-label="modal body aria label" role="article" {...props}>
53
+ This is a ModalBox
54
+ </ModalBody>
55
+ );
56
+
57
+ const modalBoxBody = screen.getByRole('article', { name: 'modal body aria label' });
58
+ expect(modalBoxBody).toBeInTheDocument();
59
+ });
60
+ });
@@ -0,0 +1,58 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+
4
+ import { ModalBox } from '../ModalBox';
5
+
6
+ test('ModalBox Test', () => {
7
+ const { asFragment } = render(
8
+ <ModalBox aria-describedby="Test Modal Box" id="boxId">
9
+ This is a ModalBox
10
+ </ModalBox>
11
+ );
12
+ expect(asFragment()).toMatchSnapshot();
13
+ });
14
+
15
+ test('ModalBox Test large', () => {
16
+ const { asFragment } = render(
17
+ <ModalBox aria-describedby="Test Modal Box" id="boxId" variant="large">
18
+ This is a ModalBox
19
+ </ModalBox>
20
+ );
21
+ expect(asFragment()).toMatchSnapshot();
22
+ });
23
+
24
+ test('ModalBox Test medium', () => {
25
+ const { asFragment } = render(
26
+ <ModalBox aria-describedby="Test Modal Box" id="boxId" variant="medium">
27
+ This is a ModalBox
28
+ </ModalBox>
29
+ );
30
+ expect(asFragment()).toMatchSnapshot();
31
+ });
32
+
33
+ test('ModalBox Test small', () => {
34
+ const { asFragment } = render(
35
+ <ModalBox aria-describedby="Test Modal Box" id="boxId" variant="small">
36
+ This is a ModalBox
37
+ </ModalBox>
38
+ );
39
+ expect(asFragment()).toMatchSnapshot();
40
+ });
41
+
42
+ test('ModalBox Test top aligned', () => {
43
+ const { asFragment } = render(
44
+ <ModalBox aria-describedby="Test Modal Box" id="boxId" position="top">
45
+ This is a ModalBox
46
+ </ModalBox>
47
+ );
48
+ expect(asFragment()).toMatchSnapshot();
49
+ });
50
+
51
+ test('ModalBox Test top aligned distance', () => {
52
+ const { asFragment } = render(
53
+ <ModalBox aria-describedby="Test Modal Box" id="boxId" position="top" positionOffset="50px">
54
+ This is a ModalBox
55
+ </ModalBox>
56
+ );
57
+ expect(asFragment()).toMatchSnapshot();
58
+ });
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+
3
+ import { render, screen } from '@testing-library/react';
4
+ import userEvent from '@testing-library/user-event';
5
+
6
+ import { ModalBoxCloseButton } from '../ModalBoxCloseButton';
7
+
8
+ describe('ModalBoxCloseButton', () => {
9
+ test('onClose called when clicked', async () => {
10
+ const onClose = jest.fn();
11
+ const user = userEvent.setup();
12
+
13
+ render(<ModalBoxCloseButton className="test-box-close-button-class" onClose={onClose} />);
14
+
15
+ await user.click(screen.getByRole('button'));
16
+ expect(onClose).toHaveBeenCalledTimes(1);
17
+ });
18
+ });
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+ import { ModalBoxDescription } from '../ModalBoxDescription';
4
+
5
+ test('ModalBoxDescription Test', () => {
6
+ const { asFragment } = render(<ModalBoxDescription>This is a ModalBox Description</ModalBoxDescription>);
7
+ expect(asFragment()).toMatchSnapshot();
8
+ });
@@ -0,0 +1,21 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+
4
+ import { ModalHeader } from '../ModalHeader';
5
+
6
+ test('ModalHeader Test', () => {
7
+ const { asFragment } = render(<ModalHeader>This is a ModalBox header</ModalHeader>);
8
+ expect(asFragment()).toMatchSnapshot();
9
+ });
10
+
11
+ test('ModalHeader help renders', () => {
12
+ const { asFragment } = render(<ModalHeader help={<div>test</div>}>This is a ModalBox header</ModalHeader>);
13
+ expect(asFragment()).toMatchSnapshot();
14
+ });
15
+
16
+ test('Modal Test with custom header', () => {
17
+ const header = <span id="test-custom-header">TEST</span>;
18
+
19
+ const { asFragment } = render(<ModalHeader>{header}</ModalHeader>);
20
+ expect(asFragment()).toMatchSnapshot();
21
+ });
@@ -0,0 +1,37 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+
4
+ import { ModalBoxTitle } from '../ModalBoxTitle';
5
+ import BullhornIcon from '@patternfly/react-icons/dist/esm/icons/bullhorn-icon';
6
+
7
+ test('ModalBoxTitle alert variant', () => {
8
+ const { asFragment } = render(<ModalBoxTitle title="Test Modal Box warning" id="boxId" titleIconVariant="warning" />);
9
+ expect(asFragment()).toMatchSnapshot();
10
+ });
11
+
12
+ test('ModalBoxTitle info variant', () => {
13
+ const { asFragment } = render(<ModalBoxTitle title="Test Modal Box info" id="boxId" titleIconVariant="info" />);
14
+ expect(asFragment()).toMatchSnapshot();
15
+ });
16
+
17
+ test('ModalBoxTitle danger variant', () => {
18
+ const { asFragment } = render(<ModalBoxTitle title="Test Modal Box danger" id="boxId" titleIconVariant="danger" />);
19
+ expect(asFragment()).toMatchSnapshot();
20
+ });
21
+
22
+ test('ModalBoxTitle custom variant', () => {
23
+ const { asFragment } = render(<ModalBoxTitle title="Test Modal Box warning" id="boxId" titleIconVariant="custom" />);
24
+ expect(asFragment()).toMatchSnapshot();
25
+ });
26
+
27
+ test('ModalBoxTitle success variant', () => {
28
+ const { asFragment } = render(<ModalBoxTitle title="Test Modal Box success" id="boxId" titleIconVariant="success" />);
29
+ expect(asFragment()).toMatchSnapshot();
30
+ });
31
+
32
+ test('ModalBoxTitle custom icon variant', () => {
33
+ const { asFragment } = render(
34
+ <ModalBoxTitle title="Test Modal Box custom" id="boxId" titleIconVariant={BullhornIcon} />
35
+ );
36
+ expect(asFragment()).toMatchSnapshot();
37
+ });
@@ -0,0 +1,46 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+
4
+ import { ModalContent } from '../ModalContent';
5
+
6
+ const modalContentProps = {
7
+ boxId: 'boxId',
8
+ labelId: 'labelId',
9
+ descriptorId: 'descriptorId',
10
+ disableFocusTrap: true
11
+ };
12
+ test('Modal Content Test only body', () => {
13
+ const { asFragment } = render(
14
+ <ModalContent isOpen {...modalContentProps}>
15
+ This is a ModalBox header
16
+ </ModalContent>
17
+ );
18
+ expect(asFragment()).toMatchSnapshot();
19
+ });
20
+
21
+ test('Modal Content Test isOpen', () => {
22
+ const { asFragment } = render(
23
+ <ModalContent isOpen {...modalContentProps}>
24
+ This is a ModalBox header
25
+ </ModalContent>
26
+ );
27
+ expect(asFragment()).toMatchSnapshot();
28
+ });
29
+
30
+ test('Modal Content Test description', () => {
31
+ const { asFragment } = render(
32
+ <ModalContent isOpen {...modalContentProps}>
33
+ This is a ModalBox header
34
+ </ModalContent>
35
+ );
36
+ expect(asFragment()).toMatchSnapshot();
37
+ });
38
+
39
+ test('Modal Content Test with onclose', () => {
40
+ const { asFragment } = render(
41
+ <ModalContent variant="large" onClose={() => undefined} isOpen {...modalContentProps}>
42
+ This is a ModalBox header
43
+ </ModalContent>
44
+ );
45
+ expect(asFragment()).toMatchSnapshot();
46
+ });
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import { render } from '@testing-library/react';
3
+ import { ModalFooter } from '../ModalFooter';
4
+
5
+ test('ModalFooter Test', () => {
6
+ const { asFragment } = render(<ModalFooter className="test-box-footer-class">This is a ModalBox Footer</ModalFooter>);
7
+ expect(asFragment()).toMatchSnapshot();
8
+ });
@@ -0,0 +1,12 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ModalBody tests ModalBody renders 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ class="pf-v5-c-modal-box__body test-box-class"
7
+ id="id"
8
+ >
9
+ This is a Modal body
10
+ </div>
11
+ </DocumentFragment>
12
+ `;
@@ -0,0 +1,86 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ModalBox Test 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ aria-describedby="Test Modal Box"
7
+ aria-modal="true"
8
+ class="pf-v5-c-modal-box"
9
+ id="boxId"
10
+ role="dialog"
11
+ >
12
+ This is a ModalBox
13
+ </div>
14
+ </DocumentFragment>
15
+ `;
16
+
17
+ exports[`ModalBox Test large 1`] = `
18
+ <DocumentFragment>
19
+ <div
20
+ aria-describedby="Test Modal Box"
21
+ aria-modal="true"
22
+ class="pf-v5-c-modal-box pf-m-lg"
23
+ id="boxId"
24
+ role="dialog"
25
+ >
26
+ This is a ModalBox
27
+ </div>
28
+ </DocumentFragment>
29
+ `;
30
+
31
+ exports[`ModalBox Test medium 1`] = `
32
+ <DocumentFragment>
33
+ <div
34
+ aria-describedby="Test Modal Box"
35
+ aria-modal="true"
36
+ class="pf-v5-c-modal-box pf-m-md"
37
+ id="boxId"
38
+ role="dialog"
39
+ >
40
+ This is a ModalBox
41
+ </div>
42
+ </DocumentFragment>
43
+ `;
44
+
45
+ exports[`ModalBox Test small 1`] = `
46
+ <DocumentFragment>
47
+ <div
48
+ aria-describedby="Test Modal Box"
49
+ aria-modal="true"
50
+ class="pf-v5-c-modal-box pf-m-sm"
51
+ id="boxId"
52
+ role="dialog"
53
+ >
54
+ This is a ModalBox
55
+ </div>
56
+ </DocumentFragment>
57
+ `;
58
+
59
+ exports[`ModalBox Test top aligned 1`] = `
60
+ <DocumentFragment>
61
+ <div
62
+ aria-describedby="Test Modal Box"
63
+ aria-modal="true"
64
+ class="pf-v5-c-modal-box pf-m-align-top"
65
+ id="boxId"
66
+ role="dialog"
67
+ >
68
+ This is a ModalBox
69
+ </div>
70
+ </DocumentFragment>
71
+ `;
72
+
73
+ exports[`ModalBox Test top aligned distance 1`] = `
74
+ <DocumentFragment>
75
+ <div
76
+ aria-describedby="Test Modal Box"
77
+ aria-modal="true"
78
+ class="pf-v5-c-modal-box pf-m-align-top"
79
+ id="boxId"
80
+ role="dialog"
81
+ style="--pf-v5-c-modal-box--m-align-top--spacer: 50px;"
82
+ >
83
+ This is a ModalBox
84
+ </div>
85
+ </DocumentFragment>
86
+ `;
@@ -0,0 +1,12 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ModalBoxDescription Test 1`] = `
4
+ <DocumentFragment>
5
+ <div
6
+ class="pf-v5-c-modal-box__description"
7
+ id=""
8
+ >
9
+ This is a ModalBox Description
10
+ </div>
11
+ </DocumentFragment>
12
+ `;
@@ -0,0 +1,46 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Modal Test with custom header 1`] = `
4
+ <DocumentFragment>
5
+ <header
6
+ class="pf-v5-c-modal-box__header"
7
+ >
8
+ <span
9
+ id="test-custom-header"
10
+ >
11
+ TEST
12
+ </span>
13
+ </header>
14
+ </DocumentFragment>
15
+ `;
16
+
17
+ exports[`ModalHeader Test 1`] = `
18
+ <DocumentFragment>
19
+ <header
20
+ class="pf-v5-c-modal-box__header"
21
+ >
22
+ This is a ModalBox header
23
+ </header>
24
+ </DocumentFragment>
25
+ `;
26
+
27
+ exports[`ModalHeader help renders 1`] = `
28
+ <DocumentFragment>
29
+ <header
30
+ class="pf-v5-c-modal-box__header pf-m-help"
31
+ >
32
+ <div
33
+ class="pf-v5-c-modal-box__header-main"
34
+ >
35
+ This is a ModalBox header
36
+ </div>
37
+ <div
38
+ class="pf-v5-c-modal-box__header-help"
39
+ >
40
+ <div>
41
+ test
42
+ </div>
43
+ </div>
44
+ </header>
45
+ </DocumentFragment>
46
+ `;