@patternfly/react-core 6.4.1-prerelease.9 → 6.5.0-prerelease.2

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 (300) hide show
  1. package/CHANGELOG.md +14 -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/Compass/package.json +1 -0
  23. package/dist/dynamic/components/Content/package.json +1 -1
  24. package/dist/dynamic/components/DataList/package.json +1 -1
  25. package/dist/dynamic/components/DatePicker/package.json +1 -1
  26. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  27. package/dist/dynamic/components/Divider/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/TextArea/package.json +1 -1
  72. package/dist/dynamic/components/TextInput/package.json +1 -1
  73. package/dist/dynamic/components/TextInputGroup/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/DualListSelector/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/package.json +1 -1
  91. package/dist/dynamic/helpers/AnimationsProvider/AnimationsProvider/package.json +1 -1
  92. package/dist/dynamic/helpers/AnimationsProvider/package.json +1 -1
  93. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  94. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  95. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  96. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  97. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  98. package/dist/dynamic/helpers/constants/package.json +1 -1
  99. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  100. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  102. package/dist/dynamic/helpers/package.json +1 -1
  103. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  104. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  105. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  106. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  107. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  108. package/dist/dynamic/helpers/util/package.json +1 -1
  109. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  110. package/dist/dynamic/layouts/Flex/package.json +1 -1
  111. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  112. package/dist/dynamic/layouts/Grid/package.json +1 -1
  113. package/dist/dynamic/layouts/Level/package.json +1 -1
  114. package/dist/dynamic/layouts/Split/package.json +1 -1
  115. package/dist/dynamic/layouts/Stack/package.json +1 -1
  116. package/dist/dynamic/styles/package.json +1 -1
  117. package/dist/dynamic-modules.json +8 -0
  118. package/dist/esm/components/ActionList/ActionList.d.ts +2 -0
  119. package/dist/esm/components/ActionList/ActionList.d.ts.map +1 -1
  120. package/dist/esm/components/ActionList/ActionList.js +2 -2
  121. package/dist/esm/components/ActionList/ActionList.js.map +1 -1
  122. package/dist/esm/components/Button/Button.d.ts +2 -0
  123. package/dist/esm/components/Button/Button.d.ts.map +1 -1
  124. package/dist/esm/components/Button/Button.js +2 -2
  125. package/dist/esm/components/Button/Button.js.map +1 -1
  126. package/dist/esm/components/Compass/Compass.d.ts +34 -0
  127. package/dist/esm/components/Compass/Compass.d.ts.map +1 -0
  128. package/dist/esm/components/Compass/Compass.js +25 -0
  129. package/dist/esm/components/Compass/Compass.js.map +1 -0
  130. package/dist/esm/components/Compass/CompassContent.d.ts +15 -0
  131. package/dist/esm/components/Compass/CompassContent.d.ts.map +1 -0
  132. package/dist/esm/components/Compass/CompassContent.js +16 -0
  133. package/dist/esm/components/Compass/CompassContent.js.map +1 -0
  134. package/dist/esm/components/Compass/CompassHeader.d.ts +12 -0
  135. package/dist/esm/components/Compass/CompassHeader.d.ts.map +1 -0
  136. package/dist/esm/components/Compass/CompassHeader.js +6 -0
  137. package/dist/esm/components/Compass/CompassHeader.js.map +1 -0
  138. package/dist/esm/components/Compass/CompassHero.d.ts +26 -0
  139. package/dist/esm/components/Compass/CompassHero.d.ts.map +1 -0
  140. package/dist/esm/components/Compass/CompassHero.js +47 -0
  141. package/dist/esm/components/Compass/CompassHero.js.map +1 -0
  142. package/dist/esm/components/Compass/CompassMainHeader.d.ts +14 -0
  143. package/dist/esm/components/Compass/CompassMainHeader.d.ts.map +1 -0
  144. package/dist/esm/components/Compass/CompassMainHeader.js +13 -0
  145. package/dist/esm/components/Compass/CompassMainHeader.js.map +1 -0
  146. package/dist/esm/components/Compass/CompassMessageBar.d.ts +10 -0
  147. package/dist/esm/components/Compass/CompassMessageBar.d.ts.map +1 -0
  148. package/dist/esm/components/Compass/CompassMessageBar.js +10 -0
  149. package/dist/esm/components/Compass/CompassMessageBar.js.map +1 -0
  150. package/dist/esm/components/Compass/CompassPanel.d.ts +22 -0
  151. package/dist/esm/components/Compass/CompassPanel.d.ts.map +1 -0
  152. package/dist/esm/components/Compass/CompassPanel.js +10 -0
  153. package/dist/esm/components/Compass/CompassPanel.js.map +1 -0
  154. package/dist/esm/components/Compass/index.d.ts +8 -0
  155. package/dist/esm/components/Compass/index.d.ts.map +1 -0
  156. package/dist/esm/components/Compass/index.js +8 -0
  157. package/dist/esm/components/Compass/index.js.map +1 -0
  158. package/dist/esm/components/Drawer/Drawer.d.ts +2 -0
  159. package/dist/esm/components/Drawer/Drawer.d.ts.map +1 -1
  160. package/dist/esm/components/Drawer/Drawer.js +2 -2
  161. package/dist/esm/components/Drawer/Drawer.js.map +1 -1
  162. package/dist/esm/components/Menu/Menu.d.ts +0 -1
  163. package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
  164. package/dist/esm/components/Menu/Menu.js +5 -8
  165. package/dist/esm/components/Menu/Menu.js.map +1 -1
  166. package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -0
  167. package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  168. package/dist/esm/components/MenuToggle/MenuToggle.js +3 -2
  169. package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
  170. package/dist/esm/components/Tabs/Tabs.d.ts +2 -0
  171. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  172. package/dist/esm/components/Tabs/Tabs.js +3 -2
  173. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  174. package/dist/esm/components/index.d.ts +1 -0
  175. package/dist/esm/components/index.d.ts.map +1 -1
  176. package/dist/esm/components/index.js +1 -0
  177. package/dist/esm/components/index.js.map +1 -1
  178. package/dist/js/components/ActionList/ActionList.d.ts +2 -0
  179. package/dist/js/components/ActionList/ActionList.d.ts.map +1 -1
  180. package/dist/js/components/ActionList/ActionList.js +2 -2
  181. package/dist/js/components/ActionList/ActionList.js.map +1 -1
  182. package/dist/js/components/Button/Button.d.ts +2 -0
  183. package/dist/js/components/Button/Button.d.ts.map +1 -1
  184. package/dist/js/components/Button/Button.js +2 -2
  185. package/dist/js/components/Button/Button.js.map +1 -1
  186. package/dist/js/components/Compass/Compass.d.ts +34 -0
  187. package/dist/js/components/Compass/Compass.d.ts.map +1 -0
  188. package/dist/js/components/Compass/Compass.js +29 -0
  189. package/dist/js/components/Compass/Compass.js.map +1 -0
  190. package/dist/js/components/Compass/CompassContent.d.ts +15 -0
  191. package/dist/js/components/Compass/CompassContent.d.ts.map +1 -0
  192. package/dist/js/components/Compass/CompassContent.js +20 -0
  193. package/dist/js/components/Compass/CompassContent.js.map +1 -0
  194. package/dist/js/components/Compass/CompassHeader.d.ts +12 -0
  195. package/dist/js/components/Compass/CompassHeader.d.ts.map +1 -0
  196. package/dist/js/components/Compass/CompassHeader.js +11 -0
  197. package/dist/js/components/Compass/CompassHeader.js.map +1 -0
  198. package/dist/js/components/Compass/CompassHero.d.ts +26 -0
  199. package/dist/js/components/Compass/CompassHero.d.ts.map +1 -0
  200. package/dist/js/components/Compass/CompassHero.js +51 -0
  201. package/dist/js/components/Compass/CompassHero.js.map +1 -0
  202. package/dist/js/components/Compass/CompassMainHeader.d.ts +14 -0
  203. package/dist/js/components/Compass/CompassMainHeader.d.ts.map +1 -0
  204. package/dist/js/components/Compass/CompassMainHeader.js +17 -0
  205. package/dist/js/components/Compass/CompassMainHeader.js.map +1 -0
  206. package/dist/js/components/Compass/CompassMessageBar.d.ts +10 -0
  207. package/dist/js/components/Compass/CompassMessageBar.d.ts.map +1 -0
  208. package/dist/js/components/Compass/CompassMessageBar.js +14 -0
  209. package/dist/js/components/Compass/CompassMessageBar.js.map +1 -0
  210. package/dist/js/components/Compass/CompassPanel.d.ts +22 -0
  211. package/dist/js/components/Compass/CompassPanel.d.ts.map +1 -0
  212. package/dist/js/components/Compass/CompassPanel.js +14 -0
  213. package/dist/js/components/Compass/CompassPanel.js.map +1 -0
  214. package/dist/js/components/Compass/index.d.ts +8 -0
  215. package/dist/js/components/Compass/index.d.ts.map +1 -0
  216. package/dist/js/components/Compass/index.js +11 -0
  217. package/dist/js/components/Compass/index.js.map +1 -0
  218. package/dist/js/components/Drawer/Drawer.d.ts +2 -0
  219. package/dist/js/components/Drawer/Drawer.d.ts.map +1 -1
  220. package/dist/js/components/Drawer/Drawer.js +2 -2
  221. package/dist/js/components/Drawer/Drawer.js.map +1 -1
  222. package/dist/js/components/Menu/Menu.d.ts +0 -1
  223. package/dist/js/components/Menu/Menu.d.ts.map +1 -1
  224. package/dist/js/components/Menu/Menu.js +5 -8
  225. package/dist/js/components/Menu/Menu.js.map +1 -1
  226. package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -0
  227. package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  228. package/dist/js/components/MenuToggle/MenuToggle.js +3 -2
  229. package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
  230. package/dist/js/components/Tabs/Tabs.d.ts +2 -0
  231. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  232. package/dist/js/components/Tabs/Tabs.js +3 -2
  233. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  234. package/dist/js/components/index.d.ts +1 -0
  235. package/dist/js/components/index.d.ts.map +1 -1
  236. package/dist/js/components/index.js +1 -0
  237. package/dist/js/components/index.js.map +1 -1
  238. package/dist/styles/assets/images/RHAiExperienceIcon.svg +27 -0
  239. package/dist/styles/assets/images/RHAutomationsLogo.svg +96 -0
  240. package/dist/styles/assets/images/RHServerStackIcon.svg +16 -0
  241. package/dist/styles/assets/images/compass--hero-bg.png +0 -0
  242. package/dist/styles/assets/images/compass--rh-wallpaper-dark.png +0 -0
  243. package/dist/styles/assets/images/compass--rh-wallpaper-light.png +0 -0
  244. package/dist/styles/assets/images/compass--wallpaper-dark.png +0 -0
  245. package/dist/styles/assets/images/compass--wallpaper-light.png +0 -0
  246. package/dist/styles/base-no-reset.css +51 -0
  247. package/dist/styles/base.css +51 -0
  248. package/dist/umd/assets/{output-CJfbZNQh.css → output-DxVGusJA.css} +21025 -20701
  249. package/dist/umd/react-core.min.js +2 -2
  250. package/helpers/package.json +1 -1
  251. package/layouts/package.json +1 -1
  252. package/next/package.json +1 -1
  253. package/package.json +6 -6
  254. package/src/components/ActionList/ActionList.tsx +12 -1
  255. package/src/components/ActionList/__tests__/ActionList.test.tsx +12 -0
  256. package/src/components/ActionList/examples/ActionList.md +6 -0
  257. package/src/components/ActionList/examples/ActionListVertical.tsx +46 -0
  258. package/src/components/Button/Button.tsx +4 -0
  259. package/src/components/Button/__tests__/Button.test.tsx +5 -0
  260. package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
  261. package/src/components/Button/examples/Button.md +8 -0
  262. package/src/components/Button/examples/ButtonCircle.tsx +63 -0
  263. package/src/components/Compass/Compass.tsx +107 -0
  264. package/src/components/Compass/CompassContent.tsx +42 -0
  265. package/src/components/Compass/CompassHeader.tsx +21 -0
  266. package/src/components/Compass/CompassHero.tsx +87 -0
  267. package/src/components/Compass/CompassMainHeader.tsx +43 -0
  268. package/src/components/Compass/CompassMessageBar.tsx +21 -0
  269. package/src/components/Compass/CompassPanel.tsx +51 -0
  270. package/src/components/Compass/__tests__/Compass.test.tsx +172 -0
  271. package/src/components/Compass/__tests__/CompassContent.test.tsx +46 -0
  272. package/src/components/Compass/__tests__/CompassHeader.test.tsx +56 -0
  273. package/src/components/Compass/__tests__/CompassHero.test.tsx +150 -0
  274. package/src/components/Compass/__tests__/CompassMainHeader.test.tsx +90 -0
  275. package/src/components/Compass/__tests__/CompassMessageBar.test.tsx +41 -0
  276. package/src/components/Compass/__tests__/CompassPanel.test.tsx +86 -0
  277. package/src/components/Compass/__tests__/__snapshots__/Compass.test.tsx.snap +104 -0
  278. package/src/components/Compass/__tests__/__snapshots__/CompassContent.test.tsx.snap +40 -0
  279. package/src/components/Compass/__tests__/__snapshots__/CompassHeader.test.tsx.snap +27 -0
  280. package/src/components/Compass/__tests__/__snapshots__/CompassHero.test.tsx.snap +18 -0
  281. package/src/components/Compass/__tests__/__snapshots__/CompassMainHeader.test.tsx.snap +42 -0
  282. package/src/components/Compass/__tests__/__snapshots__/CompassMessageBar.test.tsx.snap +13 -0
  283. package/src/components/Compass/__tests__/__snapshots__/CompassPanel.test.tsx.snap +25 -0
  284. package/src/components/Compass/examples/Compass.md +38 -0
  285. package/src/components/Compass/examples/CompassBasic.tsx +33 -0
  286. package/src/components/Compass/examples/CompassDemo.tsx +151 -0
  287. package/src/components/Compass/examples/compass.css +11 -0
  288. package/src/components/Compass/index.ts +7 -0
  289. package/src/components/Drawer/Drawer.tsx +4 -0
  290. package/src/components/Drawer/__tests__/Drawer.test.tsx +26 -1
  291. package/src/components/Drawer/examples/Drawer.md +13 -0
  292. package/src/components/Drawer/examples/DrawerBasicPill.tsx +57 -0
  293. package/src/components/Drawer/examples/DrawerPillInline.tsx +57 -0
  294. package/src/components/Menu/Menu.tsx +1 -6
  295. package/src/components/MenuToggle/MenuToggle.tsx +5 -1
  296. package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +20 -0
  297. package/src/components/MenuToggle/examples/MenuToggle.md +18 -0
  298. package/src/components/MenuToggle/examples/MenuTogglePlainCircle.tsx +11 -0
  299. package/src/components/Tabs/Tabs.tsx +5 -0
  300. package/src/components/index.ts +1 -0
@@ -0,0 +1,57 @@
1
+ import { Fragment, useRef, useState } from 'react';
2
+ import {
3
+ Drawer,
4
+ DrawerPanelContent,
5
+ DrawerContent,
6
+ DrawerContentBody,
7
+ DrawerHead,
8
+ DrawerActions,
9
+ DrawerCloseButton,
10
+ Button
11
+ } from '@patternfly/react-core';
12
+
13
+ export const DrawerBasicPill: React.FunctionComponent = () => {
14
+ const [isExpanded, setIsExpanded] = useState(false);
15
+ const drawerRef = useRef<HTMLDivElement>(undefined);
16
+
17
+ const onExpand = () => {
18
+ drawerRef.current && drawerRef.current.focus();
19
+ };
20
+
21
+ const onClick = () => {
22
+ setIsExpanded(!isExpanded);
23
+ };
24
+
25
+ const onCloseClick = () => {
26
+ setIsExpanded(false);
27
+ };
28
+
29
+ const panelContent = (
30
+ <DrawerPanelContent>
31
+ <DrawerHead>
32
+ <span tabIndex={isExpanded ? 0 : -1} ref={drawerRef}>
33
+ Drawer panel header
34
+ </span>
35
+ <DrawerActions>
36
+ <DrawerCloseButton onClick={onCloseClick} />
37
+ </DrawerActions>
38
+ </DrawerHead>
39
+ </DrawerPanelContent>
40
+ );
41
+
42
+ const drawerContent =
43
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus pretium est a porttitor vehicula. Quisque vel commodo urna. Morbi mattis rutrum ante, id vehicula ex accumsan ut. Morbi viverra, eros vel porttitor facilisis, eros purus aliquet erat,nec lobortis felis elit pulvinar sem. Vivamus vulputate, risus eget commodo eleifend, eros nibh porta quam, vitae lacinia leo libero at magna. Maecenas aliquam sagittis orci, et posuere nisi ultrices sit amet. Aliquam ex odio, malesuada sed posuere quis, pellentesque at mauris. Phasellus venenatis massa ex, eget pulvinar libero auctor pretium. Aliquam erat volutpat. Duis euismod justo in quam ullamcorper, in commodo massa vulputate.';
44
+
45
+ return (
46
+ <Fragment>
47
+ <Button aria-expanded={isExpanded} onClick={onClick}>
48
+ Toggle drawer
49
+ </Button>
50
+ <Drawer isExpanded={isExpanded} isPill isInline onExpand={onExpand}>
51
+ <DrawerContent panelContent={panelContent}>
52
+ <DrawerContentBody>{drawerContent}</DrawerContentBody>
53
+ </DrawerContent>
54
+ </Drawer>
55
+ </Fragment>
56
+ );
57
+ };
@@ -70,7 +70,6 @@ export interface MenuState {
70
70
  ouiaStateId: string;
71
71
  transitionMoveTarget: HTMLElement;
72
72
  flyoutRef: React.Ref<HTMLLIElement> | null;
73
- disableHover: boolean;
74
73
  currentDrilldownMenuId: string;
75
74
  }
76
75
 
@@ -99,7 +98,6 @@ class MenuBase extends Component<MenuProps, MenuState> {
99
98
  ouiaStateId: getDefaultOUIAId(Menu.displayName),
100
99
  transitionMoveTarget: null,
101
100
  flyoutRef: null,
102
- disableHover: false,
103
101
  currentDrilldownMenuId: this.props.id
104
102
  };
105
103
 
@@ -117,9 +115,6 @@ class MenuBase extends Component<MenuProps, MenuState> {
117
115
  }
118
116
 
119
117
  componentDidMount() {
120
- if (this.context) {
121
- this.setState({ disableHover: this.context.disableHover });
122
- }
123
118
  if (canUseDOM && this.props.containsDrilldown && this.props.isRootMenu) {
124
119
  window.addEventListener('transitionend', this.handleDrilldownTransition);
125
120
  }
@@ -284,7 +279,7 @@ class MenuBase extends Component<MenuProps, MenuState> {
284
279
  onGetMenuHeight,
285
280
  flyoutRef: this.state.flyoutRef,
286
281
  setFlyoutRef: (flyoutRef) => this.setState({ flyoutRef }),
287
- disableHover: this.state.disableHover,
282
+ disableHover: this.context?.disableHover ?? false,
288
283
  role
289
284
  }}
290
285
  >
@@ -45,6 +45,8 @@ export interface MenuToggleProps
45
45
  isFullWidth?: boolean;
46
46
  /** Flag indicating the toggle contains placeholder text */
47
47
  isPlaceholder?: boolean;
48
+ /** @beta Flag indicating the toggle has circular styling. Can only be applied to plain toggles. */
49
+ isCircle?: boolean;
48
50
  /** Flag indicating whether the toggle is a settings toggle. This will override the icon property */
49
51
  isSettings?: boolean;
50
52
  /** Elements to display before the toggle button. When included, renders the menu toggle as a split button. */
@@ -84,6 +86,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
84
86
  isFullWidth: false,
85
87
  isFullHeight: false,
86
88
  isPlaceholder: false,
89
+ isCircle: false,
87
90
  size: 'default',
88
91
  ouiaSafe: true
89
92
  };
@@ -103,6 +106,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
103
106
  isFullHeight,
104
107
  isFullWidth,
105
108
  isPlaceholder,
109
+ isCircle,
106
110
  isSettings,
107
111
  splitButtonItems,
108
112
  variant,
@@ -225,7 +229,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
225
229
 
226
230
  return (
227
231
  <button
228
- className={css(commonStyles)}
232
+ className={css(commonStyles, isCircle && isPlain && styles.modifiers.circle)}
229
233
  type="button"
230
234
  aria-label={ariaLabel}
231
235
  aria-expanded={isExpanded}
@@ -55,6 +55,8 @@ describe('Old Snapshot tests - remove when refactoring', () => {
55
55
  });
56
56
  });
57
57
 
58
+ const toggleVariants = ['default', 'plain', 'primary', 'plainText', 'secondary', 'typeahead'];
59
+
58
60
  test(`Renders with class ${styles.modifiers.small} when size="sm" is passed`, () => {
59
61
  render(<MenuToggle size="sm">Toggle</MenuToggle>);
60
62
  expect(screen.getByRole('button')).toHaveClass(styles.modifiers.small);
@@ -110,6 +112,24 @@ test(`Renders with class ${styles.modifiers.settings} when isSettings is passed`
110
112
  expect(screen.getByRole('button')).toHaveClass(styles.modifiers.settings);
111
113
  });
112
114
 
115
+ test(`Renders with class ${styles.modifiers.circle} when variant="plain" and isCircle is true`, () => {
116
+ render(<MenuToggle isCircle variant="plain" aria-label="Toggle"></MenuToggle>);
117
+ expect(screen.getByRole('button')).toHaveClass(styles.modifiers.circle);
118
+ });
119
+
120
+ toggleVariants
121
+ .filter((variant) => variant !== 'plain')
122
+ .forEach((variant) => {
123
+ test(`Does not with class ${styles.modifiers.circle} when variant="${variant}" and isCircle is true`, () => {
124
+ render(
125
+ <MenuToggle isCircle variant={variant as 'default' | 'primary' | 'plainText' | 'secondary' | 'typeahead'}>
126
+ Toggle
127
+ </MenuToggle>
128
+ );
129
+ expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.circle);
130
+ });
131
+ });
132
+
113
133
  test('Does not render custom icon when icon prop and isSettings are passed', () => {
114
134
  render(
115
135
  <MenuToggle isSettings icon={<div>Custom icon</div>}>
@@ -20,6 +20,7 @@ import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
20
20
  A toggle is collapsed until it is selected by a user.
21
21
 
22
22
  ```ts file="MenuToggleCollapsed.tsx"
23
+
23
24
  ```
24
25
 
25
26
  ### Expanded toggle
@@ -27,6 +28,7 @@ A toggle is collapsed until it is selected by a user.
27
28
  When a user selects a toggle, it becomes expanded and is styled with a blue underline. To flag expanded toggles, and apply expanded styling, use the `isExpanded` property .
28
29
 
29
30
  ```ts file ="MenuToggleExpanded.tsx"
31
+
30
32
  ```
31
33
 
32
34
  ### Small toggle
@@ -42,6 +44,7 @@ You can pass `size="sm"` to a MenuToggle to style it as a small toggle, such as
42
44
  To disable the selection and expansion of a toggle, use the `isDisabled` property.
43
45
 
44
46
  ```ts file="MenuToggleDisabled.tsx"
47
+
45
48
  ```
46
49
 
47
50
  ### With a badge
@@ -49,6 +52,7 @@ To disable the selection and expansion of a toggle, use the `isDisabled` propert
49
52
  To display a count of selected items in a toggle, use the `badge` property. You can also pass in `variant="plainText"` for a badge only toggle.
50
53
 
51
54
  ```ts file="MenuToggleBadge.tsx"
55
+
52
56
  ```
53
57
 
54
58
  ### Settings toggle
@@ -76,6 +80,7 @@ You can also pass images into the `icon` property. The following example passes
76
80
  This can be used alongside a text label that provides more context for the image.
77
81
 
78
82
  ```ts file="MenuToggleAvatarText.tsx"
83
+
79
84
  ```
80
85
 
81
86
  ### Variant styles
@@ -83,6 +88,7 @@ This can be used alongside a text label that provides more context for the image
83
88
  Variant styling can be applied to menu toggles. In the following example, the toggle uses primary styling by passing `variant="primary"` into the `<MenuToggle>` component. Additional variant options include “default”, “plain”, “plainText”, “secondary”, and “typeahead”.
84
89
 
85
90
  ```ts file="MenuToggleVariantStyles.tsx"
91
+
86
92
  ```
87
93
 
88
94
  ### Plain toggle with icon
@@ -92,6 +98,15 @@ To apply plain styling to a menu toggle with an icon, pass in `variant="plain"`.
92
98
  If the toggle does not have any visible text content, use the `aria-label` property to provide an accessible name.
93
99
 
94
100
  ```ts file="MenuTogglePlainIcon.tsx"
101
+
102
+ ```
103
+
104
+ ### Plain circle toggle
105
+
106
+ You can also pass the `isCircle` property to a plain, icon-only toggle to adjust the styling to a complete circular shape, rather than a rounded square.
107
+
108
+ ```ts file="MenuTogglePlainCircle.tsx"
109
+
95
110
  ```
96
111
 
97
112
  ### Plain toggle with text label
@@ -99,6 +114,7 @@ If the toggle does not have any visible text content, use the `aria-label` prope
99
114
  To apply plain styling to a menu toggle with a text label, pass in `variant="plainText"`. Unlike the “plain” variant, “plainText” adds a caret pointing down in the toggle.
100
115
 
101
116
  ```ts file="MenuTogglePlainTextLabel.tsx"
117
+
102
118
  ```
103
119
 
104
120
  ### Split toggle with checkbox
@@ -150,6 +166,7 @@ A full height toggle fills the height of its parent. To flag a full height toggl
150
166
  In the following example, the toggle fills the size of the "80px" `<div>` element that it is within.
151
167
 
152
168
  ```ts file="MenuToggleFullHeight.tsx"
169
+
153
170
  ```
154
171
 
155
172
  ### Full width toggle
@@ -159,6 +176,7 @@ A full width toggle fills the width of its parent. To flag a full width toggle,
159
176
  In the following example, the toggle fills the width of its parent as the window size changes.
160
177
 
161
178
  ```ts file="MenuToggleFullWidth.tsx"
179
+
162
180
  ```
163
181
 
164
182
  ### Typeahead toggle
@@ -0,0 +1,11 @@
1
+ import { Fragment } from 'react';
2
+ import { MenuToggle } from '@patternfly/react-core';
3
+ import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
4
+
5
+ export const MenuTogglePlainCircle: React.FunctionComponent = () => (
6
+ <Fragment>
7
+ <MenuToggle isCircle icon={<EllipsisVIcon />} variant="plain" aria-label="plain circle kebab" />{' '}
8
+ <MenuToggle isCircle icon={<EllipsisVIcon />} variant="plain" isExpanded aria-label="plain circle expanded kebab" />{' '}
9
+ <MenuToggle isCircle icon={<EllipsisVIcon />} variant="plain" isDisabled aria-label="disabled plain circle kebab" />
10
+ </Fragment>
11
+ );
@@ -69,6 +69,8 @@ export interface TabsProps
69
69
  isFilled?: boolean;
70
70
  /** Enables subtab tab styling */
71
71
  isSubtab?: boolean;
72
+ /** @beta Enables horizontal nav tab styling */
73
+ isNav?: boolean;
72
74
  /** Enables box styling to the tab component */
73
75
  isBox?: boolean;
74
76
  /** Enables vertical tab styling */
@@ -196,6 +198,7 @@ class Tabs extends Component<TabsProps, TabsState> {
196
198
  onSelect: () => undefined as any,
197
199
  isFilled: false,
198
200
  isSubtab: false,
201
+ isNav: false,
199
202
  isVertical: false,
200
203
  isBox: false,
201
204
  hasNoBorderBottom: false,
@@ -475,6 +478,7 @@ class Tabs extends Component<TabsProps, TabsState> {
475
478
  isAddButtonDisabled,
476
479
  isFilled,
477
480
  isSubtab,
481
+ isNav,
478
482
  isVertical,
479
483
  isBox,
480
484
  hasNoBorderBottom,
@@ -561,6 +565,7 @@ class Tabs extends Component<TabsProps, TabsState> {
561
565
  styles.modifiers.animateCurrent,
562
566
  isFilled && styles.modifiers.fill,
563
567
  isSubtab && styles.modifiers.subtab,
568
+ isNav && styles.modifiers.nav,
564
569
  isVertical && styles.modifiers.vertical,
565
570
  isVertical && expandable && formatBreakpointMods(expandable, styles),
566
571
  isVertical && expandable && isExpandedLocal && styles.modifiers.expanded,
@@ -17,6 +17,7 @@ export * from './Card';
17
17
  export * from './Checkbox';
18
18
  export * from './ClipboardCopy';
19
19
  export * from './CodeBlock';
20
+ export * from './Compass';
20
21
  export * from './Content';
21
22
  export * from './DataList';
22
23
  export * from './DatePicker';