@patternfly/react-core 5.2.0-prerelease.40 → 5.2.0-prerelease.41

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 (254) hide show
  1. package/CHANGELOG.md +6 -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/esm/next/components/Modal/Modal.d.ts +73 -0
  121. package/dist/esm/next/components/Modal/Modal.d.ts.map +1 -0
  122. package/dist/esm/next/components/Modal/Modal.js +114 -0
  123. package/dist/esm/next/components/Modal/Modal.js.map +1 -0
  124. package/dist/esm/next/components/Modal/ModalBody.d.ts +19 -0
  125. package/dist/esm/next/components/Modal/ModalBody.d.ts.map +1 -0
  126. package/dist/esm/next/components/Modal/ModalBody.js +11 -0
  127. package/dist/esm/next/components/Modal/ModalBody.js.map +1 -0
  128. package/dist/esm/next/components/Modal/ModalBox.d.ts +21 -0
  129. package/dist/esm/next/components/Modal/ModalBox.d.ts.map +1 -0
  130. package/dist/esm/next/components/Modal/ModalBox.js +15 -0
  131. package/dist/esm/next/components/Modal/ModalBox.js.map +1 -0
  132. package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
  133. package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  134. package/dist/esm/next/components/Modal/ModalBoxCloseButton.js +14 -0
  135. package/dist/esm/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
  136. package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts +11 -0
  137. package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  138. package/dist/esm/next/components/Modal/ModalBoxDescription.js +10 -0
  139. package/dist/esm/next/components/Modal/ModalBoxDescription.js.map +1 -0
  140. package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts +17 -0
  141. package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  142. package/dist/esm/next/components/Modal/ModalBoxTitle.js +38 -0
  143. package/dist/esm/next/components/Modal/ModalBoxTitle.js.map +1 -0
  144. package/dist/esm/next/components/Modal/ModalContent.d.ts +42 -0
  145. package/dist/esm/next/components/Modal/ModalContent.d.ts.map +1 -0
  146. package/dist/esm/next/components/Modal/ModalContent.js +45 -0
  147. package/dist/esm/next/components/Modal/ModalContent.js.map +1 -0
  148. package/dist/esm/next/components/Modal/ModalFooter.d.ts +10 -0
  149. package/dist/esm/next/components/Modal/ModalFooter.d.ts.map +1 -0
  150. package/dist/esm/next/components/Modal/ModalFooter.js +10 -0
  151. package/dist/esm/next/components/Modal/ModalFooter.js.map +1 -0
  152. package/dist/esm/next/components/Modal/ModalHeader.d.ts +25 -0
  153. package/dist/esm/next/components/Modal/ModalHeader.d.ts.map +1 -0
  154. package/dist/esm/next/components/Modal/ModalHeader.js +21 -0
  155. package/dist/esm/next/components/Modal/ModalHeader.js.map +1 -0
  156. package/dist/esm/next/components/Modal/index.d.ts +5 -0
  157. package/dist/esm/next/components/Modal/index.d.ts.map +1 -0
  158. package/dist/esm/next/components/Modal/index.js +5 -0
  159. package/dist/esm/next/components/Modal/index.js.map +1 -0
  160. package/dist/esm/next/components/index.d.ts +1 -1
  161. package/dist/esm/next/components/index.d.ts.map +1 -1
  162. package/dist/esm/next/components/index.js +1 -1
  163. package/dist/esm/next/components/index.js.map +1 -1
  164. package/dist/js/next/components/Modal/Modal.d.ts +73 -0
  165. package/dist/js/next/components/Modal/Modal.d.ts.map +1 -0
  166. package/dist/js/next/components/Modal/Modal.js +117 -0
  167. package/dist/js/next/components/Modal/Modal.js.map +1 -0
  168. package/dist/js/next/components/Modal/ModalBody.d.ts +19 -0
  169. package/dist/js/next/components/Modal/ModalBody.d.ts.map +1 -0
  170. package/dist/js/next/components/Modal/ModalBody.js +15 -0
  171. package/dist/js/next/components/Modal/ModalBody.js.map +1 -0
  172. package/dist/js/next/components/Modal/ModalBox.d.ts +21 -0
  173. package/dist/js/next/components/Modal/ModalBox.d.ts.map +1 -0
  174. package/dist/js/next/components/Modal/ModalBox.js +19 -0
  175. package/dist/js/next/components/Modal/ModalBox.js.map +1 -0
  176. package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
  177. package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
  178. package/dist/js/next/components/Modal/ModalBoxCloseButton.js +18 -0
  179. package/dist/js/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
  180. package/dist/js/next/components/Modal/ModalBoxDescription.d.ts +11 -0
  181. package/dist/js/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
  182. package/dist/js/next/components/Modal/ModalBoxDescription.js +14 -0
  183. package/dist/js/next/components/Modal/ModalBoxDescription.js.map +1 -0
  184. package/dist/js/next/components/Modal/ModalBoxTitle.d.ts +17 -0
  185. package/dist/js/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
  186. package/dist/js/next/components/Modal/ModalBoxTitle.js +43 -0
  187. package/dist/js/next/components/Modal/ModalBoxTitle.js.map +1 -0
  188. package/dist/js/next/components/Modal/ModalContent.d.ts +42 -0
  189. package/dist/js/next/components/Modal/ModalContent.d.ts.map +1 -0
  190. package/dist/js/next/components/Modal/ModalContent.js +49 -0
  191. package/dist/js/next/components/Modal/ModalContent.js.map +1 -0
  192. package/dist/js/next/components/Modal/ModalFooter.d.ts +10 -0
  193. package/dist/js/next/components/Modal/ModalFooter.d.ts.map +1 -0
  194. package/dist/js/next/components/Modal/ModalFooter.js +14 -0
  195. package/dist/js/next/components/Modal/ModalFooter.js.map +1 -0
  196. package/dist/js/next/components/Modal/ModalHeader.d.ts +25 -0
  197. package/dist/js/next/components/Modal/ModalHeader.d.ts.map +1 -0
  198. package/dist/js/next/components/Modal/ModalHeader.js +25 -0
  199. package/dist/js/next/components/Modal/ModalHeader.js.map +1 -0
  200. package/dist/js/next/components/Modal/index.d.ts +5 -0
  201. package/dist/js/next/components/Modal/index.d.ts.map +1 -0
  202. package/dist/js/next/components/Modal/index.js +8 -0
  203. package/dist/js/next/components/Modal/index.js.map +1 -0
  204. package/dist/js/next/components/index.d.ts +1 -1
  205. package/dist/js/next/components/index.d.ts.map +1 -1
  206. package/dist/js/next/components/index.js +1 -1
  207. package/dist/js/next/components/index.js.map +1 -1
  208. package/helpers/package.json +1 -1
  209. package/layouts/package.json +1 -1
  210. package/next/package.json +1 -1
  211. package/package.json +2 -2
  212. package/src/next/components/Modal/Modal.tsx +202 -0
  213. package/src/next/components/Modal/ModalBody.tsx +42 -0
  214. package/src/next/components/Modal/ModalBox.tsx +63 -0
  215. package/src/next/components/Modal/ModalBoxCloseButton.tsx +38 -0
  216. package/src/next/components/Modal/ModalBoxDescription.tsx +24 -0
  217. package/src/next/components/Modal/ModalBoxTitle.tsx +75 -0
  218. package/src/next/components/Modal/ModalContent.tsx +131 -0
  219. package/src/next/components/Modal/ModalFooter.tsx +23 -0
  220. package/src/next/components/Modal/ModalHeader.tsx +71 -0
  221. package/src/next/components/Modal/__tests__/Modal.test.tsx +145 -0
  222. package/src/next/components/Modal/__tests__/ModalBody.test.tsx +60 -0
  223. package/src/next/components/Modal/__tests__/ModalBox.test.tsx +58 -0
  224. package/src/next/components/Modal/__tests__/ModalBoxCloseButton.test.tsx +18 -0
  225. package/src/next/components/Modal/__tests__/ModalBoxDescription.test.tsx +8 -0
  226. package/src/next/components/Modal/__tests__/ModalBoxHeader.test.tsx +21 -0
  227. package/src/next/components/Modal/__tests__/ModalBoxTitle.test.tsx +37 -0
  228. package/src/next/components/Modal/__tests__/ModalContent.test.tsx +46 -0
  229. package/src/next/components/Modal/__tests__/ModalFooter.test.tsx +8 -0
  230. package/src/next/components/Modal/__tests__/__snapshots__/ModalBody.test.tsx.snap +12 -0
  231. package/src/next/components/Modal/__tests__/__snapshots__/ModalBox.test.tsx.snap +86 -0
  232. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxDescription.test.tsx.snap +12 -0
  233. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxHeader.test.tsx.snap +46 -0
  234. package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxTitle.test.tsx.snap +218 -0
  235. package/src/next/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +128 -0
  236. package/src/next/components/Modal/__tests__/__snapshots__/ModalFooter.test.tsx.snap +11 -0
  237. package/src/next/components/Modal/examples/Modal.md +148 -0
  238. package/src/next/components/Modal/examples/ModalBasic.tsx +43 -0
  239. package/src/next/components/Modal/examples/ModalCustomFocus.tsx +43 -0
  240. package/src/next/components/Modal/examples/ModalCustomHeader.tsx +58 -0
  241. package/src/next/components/Modal/examples/ModalCustomTitleIcon.tsx +54 -0
  242. package/src/next/components/Modal/examples/ModalCustomWidth.tsx +43 -0
  243. package/src/next/components/Modal/examples/ModalNoHeaderFooter.tsx +40 -0
  244. package/src/next/components/Modal/examples/ModalSize.tsx +63 -0
  245. package/src/next/components/Modal/examples/ModalTitleIcon.tsx +48 -0
  246. package/src/next/components/Modal/examples/ModalTopAligned.tsx +43 -0
  247. package/src/next/components/Modal/examples/ModalWithDescription.tsx +80 -0
  248. package/src/next/components/Modal/examples/ModalWithDropdown.tsx +105 -0
  249. package/src/next/components/Modal/examples/ModalWithForm.tsx +211 -0
  250. package/src/next/components/Modal/examples/ModalWithHelp.tsx +63 -0
  251. package/src/next/components/Modal/examples/ModalWithOverflowingContent.tsx +75 -0
  252. package/src/next/components/Modal/examples/ModalWithWizard.tsx +59 -0
  253. package/src/next/components/Modal/index.ts +4 -0
  254. package/src/next/components/index.ts +1 -1
@@ -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
+ `;
@@ -0,0 +1,218 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`ModalBoxTitle alert variant 1`] = `
4
+ <DocumentFragment>
5
+ <h1
6
+ class="pf-v5-c-modal-box__title pf-m-icon"
7
+ id="boxId"
8
+ >
9
+ <span
10
+ class="pf-v5-c-modal-box__title-icon"
11
+ >
12
+ <svg
13
+ aria-hidden="true"
14
+ class="pf-v5-svg"
15
+ fill="currentColor"
16
+ height="1em"
17
+ role="img"
18
+ viewBox="0 0 576 512"
19
+ width="1em"
20
+ >
21
+ <path
22
+ d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"
23
+ />
24
+ </svg>
25
+ </span>
26
+ <span
27
+ class="pf-v5-screen-reader"
28
+ >
29
+ Warning alert:
30
+ </span>
31
+ <span
32
+ class="pf-v5-c-modal-box__title-text"
33
+ >
34
+ Test Modal Box warning
35
+ </span>
36
+ </h1>
37
+ </DocumentFragment>
38
+ `;
39
+
40
+ exports[`ModalBoxTitle custom icon variant 1`] = `
41
+ <DocumentFragment>
42
+ <h1
43
+ class="pf-v5-c-modal-box__title pf-m-icon"
44
+ id="boxId"
45
+ >
46
+ <span
47
+ class="pf-v5-c-modal-box__title-icon"
48
+ >
49
+ <svg
50
+ aria-hidden="true"
51
+ class="pf-v5-svg"
52
+ fill="currentColor"
53
+ height="1em"
54
+ role="img"
55
+ viewBox="0 0 576 512"
56
+ width="1em"
57
+ >
58
+ <path
59
+ d="M576 240c0-23.63-12.95-44.04-32-55.12V32.01C544 23.26 537.02 0 512 0c-7.12 0-14.19 2.38-19.98 7.02l-85.03 68.03C364.28 109.19 310.66 128 256 128H64c-35.35 0-64 28.65-64 64v96c0 35.35 28.65 64 64 64h33.7c-1.39 10.48-2.18 21.14-2.18 32 0 39.77 9.26 77.35 25.56 110.94 5.19 10.69 16.52 17.06 28.4 17.06h74.28c26.05 0 41.69-29.84 25.9-50.56-16.4-21.52-26.15-48.36-26.15-77.44 0-11.11 1.62-21.79 4.41-32H256c54.66 0 108.28 18.81 150.98 52.95l85.03 68.03a32.023 32.023 0 0 0 19.98 7.02c24.92 0 32-22.78 32-32V295.13C563.05 284.04 576 263.63 576 240zm-96 141.42l-33.05-26.44C392.95 311.78 325.12 288 256 288v-96c69.12 0 136.95-23.78 190.95-66.98L480 98.58v282.84z"
60
+ />
61
+ </svg>
62
+ </span>
63
+ <span
64
+ class="pf-v5-c-modal-box__title-text"
65
+ >
66
+ Test Modal Box custom
67
+ </span>
68
+ </h1>
69
+ </DocumentFragment>
70
+ `;
71
+
72
+ exports[`ModalBoxTitle custom variant 1`] = `
73
+ <DocumentFragment>
74
+ <h1
75
+ class="pf-v5-c-modal-box__title pf-m-icon"
76
+ id="boxId"
77
+ >
78
+ <span
79
+ class="pf-v5-c-modal-box__title-icon"
80
+ >
81
+ <svg
82
+ aria-hidden="true"
83
+ class="pf-v5-svg"
84
+ fill="currentColor"
85
+ height="1em"
86
+ role="img"
87
+ viewBox="0 0 896 1024"
88
+ width="1em"
89
+ >
90
+ <path
91
+ d="M448,0 C465.333333,0 480.333333,6.33333333 493,19 C505.666667,31.6666667 512,46.6666667 512,64 L512,106 L514.23,106.45 C587.89,121.39 648.48,157.24 696,214 C744,271.333333 768,338.666667 768,416 C768,500 780,568.666667 804,622 C818.666667,652.666667 841.333333,684 872,716 C873.773676,718.829136 875.780658,721.505113 878,724 C890,737.333333 896,752.333333 896,769 C896,785.666667 890,800.333333 878,813 C866,825.666667 850.666667,832 832,832 L63.3,832 C44.9533333,831.84 29.8533333,825.506667 18,813 C6,800.333333 0,785.666667 0,769 C0,752.333333 6,737.333333 18,724 L24,716 L25.06,714.9 C55.1933333,683.28 77.5066667,652.313333 92,622 C116,568.666667 128,500 128,416 C128,338.666667 152,271.333333 200,214 C248,156.666667 309.333333,120.666667 384,106 L384,63.31 C384.166667,46.27 390.5,31.5 403,19 C415.666667,6.33333333 430.666667,0 448,0 Z M576,896 L576,897.08 C575.74,932.6 563.073333,962.573333 538,987 C512.666667,1011.66667 482.666667,1024 448,1024 C413.333333,1024 383.333333,1011.66667 358,987 C332.666667,962.333333 320,932 320,896 L576,896 Z"
92
+ />
93
+ </svg>
94
+ </span>
95
+ <span
96
+ class="pf-v5-screen-reader"
97
+ >
98
+ Custom alert:
99
+ </span>
100
+ <span
101
+ class="pf-v5-c-modal-box__title-text"
102
+ >
103
+ Test Modal Box warning
104
+ </span>
105
+ </h1>
106
+ </DocumentFragment>
107
+ `;
108
+
109
+ exports[`ModalBoxTitle danger variant 1`] = `
110
+ <DocumentFragment>
111
+ <h1
112
+ class="pf-v5-c-modal-box__title pf-m-icon"
113
+ id="boxId"
114
+ >
115
+ <span
116
+ class="pf-v5-c-modal-box__title-icon"
117
+ >
118
+ <svg
119
+ aria-hidden="true"
120
+ class="pf-v5-svg"
121
+ fill="currentColor"
122
+ height="1em"
123
+ role="img"
124
+ viewBox="0 0 512 512"
125
+ width="1em"
126
+ >
127
+ <path
128
+ d="M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"
129
+ />
130
+ </svg>
131
+ </span>
132
+ <span
133
+ class="pf-v5-screen-reader"
134
+ >
135
+ Danger alert:
136
+ </span>
137
+ <span
138
+ class="pf-v5-c-modal-box__title-text"
139
+ >
140
+ Test Modal Box danger
141
+ </span>
142
+ </h1>
143
+ </DocumentFragment>
144
+ `;
145
+
146
+ exports[`ModalBoxTitle info variant 1`] = `
147
+ <DocumentFragment>
148
+ <h1
149
+ class="pf-v5-c-modal-box__title pf-m-icon"
150
+ id="boxId"
151
+ >
152
+ <span
153
+ class="pf-v5-c-modal-box__title-icon"
154
+ >
155
+ <svg
156
+ aria-hidden="true"
157
+ class="pf-v5-svg"
158
+ fill="currentColor"
159
+ height="1em"
160
+ role="img"
161
+ viewBox="0 0 512 512"
162
+ width="1em"
163
+ >
164
+ <path
165
+ d="M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z"
166
+ />
167
+ </svg>
168
+ </span>
169
+ <span
170
+ class="pf-v5-screen-reader"
171
+ >
172
+ Info alert:
173
+ </span>
174
+ <span
175
+ class="pf-v5-c-modal-box__title-text"
176
+ >
177
+ Test Modal Box info
178
+ </span>
179
+ </h1>
180
+ </DocumentFragment>
181
+ `;
182
+
183
+ exports[`ModalBoxTitle success variant 1`] = `
184
+ <DocumentFragment>
185
+ <h1
186
+ class="pf-v5-c-modal-box__title pf-m-icon"
187
+ id="boxId"
188
+ >
189
+ <span
190
+ class="pf-v5-c-modal-box__title-icon"
191
+ >
192
+ <svg
193
+ aria-hidden="true"
194
+ class="pf-v5-svg"
195
+ fill="currentColor"
196
+ height="1em"
197
+ role="img"
198
+ viewBox="0 0 512 512"
199
+ width="1em"
200
+ >
201
+ <path
202
+ d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"
203
+ />
204
+ </svg>
205
+ </span>
206
+ <span
207
+ class="pf-v5-screen-reader"
208
+ >
209
+ Success alert:
210
+ </span>
211
+ <span
212
+ class="pf-v5-c-modal-box__title-text"
213
+ >
214
+ Test Modal Box success
215
+ </span>
216
+ </h1>
217
+ </DocumentFragment>
218
+ `;