@patternfly/react-core 5.0.0-alpha.62 → 5.0.0-alpha.64

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 (236) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/esm/components/CalendarMonth/CalendarMonth.d.ts.map +1 -1
  3. package/dist/esm/components/CalendarMonth/CalendarMonth.js +9 -11
  4. package/dist/esm/components/CalendarMonth/CalendarMonth.js.map +1 -1
  5. package/dist/esm/components/DualListSelector/DualListSelectorControl.d.ts +1 -1
  6. package/dist/esm/components/Menu/MenuItem.d.ts +1 -1
  7. package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  8. package/dist/esm/components/MenuToggle/MenuToggle.js +3 -1
  9. package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
  10. package/dist/esm/components/Select/Select.d.ts +26 -192
  11. package/dist/esm/components/Select/Select.d.ts.map +1 -1
  12. package/dist/esm/components/Select/Select.js +51 -935
  13. package/dist/esm/components/Select/Select.js.map +1 -1
  14. package/dist/esm/components/Select/SelectGroup.d.ts +7 -8
  15. package/dist/esm/components/Select/SelectGroup.d.ts.map +1 -1
  16. package/dist/esm/components/Select/SelectGroup.js +4 -7
  17. package/dist/esm/components/Select/SelectGroup.js.map +1 -1
  18. package/dist/{js/next → esm}/components/Select/SelectList.d.ts +1 -1
  19. package/dist/esm/components/Select/SelectList.d.ts.map +1 -0
  20. package/dist/esm/{next/components → components}/Select/SelectList.js +1 -1
  21. package/dist/esm/components/Select/SelectList.js.map +1 -0
  22. package/dist/esm/components/Select/SelectOption.d.ts +13 -66
  23. package/dist/esm/components/Select/SelectOption.d.ts.map +1 -1
  24. package/dist/esm/components/Select/SelectOption.js +6 -192
  25. package/dist/esm/components/Select/SelectOption.js.map +1 -1
  26. package/dist/esm/components/Select/index.d.ts +1 -1
  27. package/dist/esm/components/Select/index.d.ts.map +1 -1
  28. package/dist/esm/components/Select/index.js +1 -1
  29. package/dist/esm/components/Select/index.js.map +1 -1
  30. package/dist/esm/deprecated/components/Select/Select.d.ts +199 -0
  31. package/dist/esm/deprecated/components/Select/Select.d.ts.map +1 -0
  32. package/dist/esm/deprecated/components/Select/Select.js +940 -0
  33. package/dist/esm/deprecated/components/Select/Select.js.map +1 -0
  34. package/dist/esm/deprecated/components/Select/SelectGroup.d.ts +13 -0
  35. package/dist/esm/deprecated/components/Select/SelectGroup.d.ts.map +1 -0
  36. package/dist/esm/deprecated/components/Select/SelectGroup.js +13 -0
  37. package/dist/esm/deprecated/components/Select/SelectGroup.js.map +1 -0
  38. package/dist/esm/deprecated/components/Select/SelectMenu.d.ts.map +1 -0
  39. package/dist/esm/{components → deprecated/components}/Select/SelectMenu.js +1 -1
  40. package/dist/esm/deprecated/components/Select/SelectMenu.js.map +1 -0
  41. package/dist/esm/deprecated/components/Select/SelectOption.d.ts +73 -0
  42. package/dist/esm/deprecated/components/Select/SelectOption.d.ts.map +1 -0
  43. package/dist/esm/deprecated/components/Select/SelectOption.js +196 -0
  44. package/dist/esm/deprecated/components/Select/SelectOption.js.map +1 -0
  45. package/dist/esm/deprecated/components/Select/SelectToggle.d.ts.map +1 -0
  46. package/dist/esm/{components → deprecated/components}/Select/SelectToggle.js +2 -2
  47. package/dist/esm/deprecated/components/Select/SelectToggle.js.map +1 -0
  48. package/dist/esm/{next → deprecated}/components/Select/index.d.ts +1 -1
  49. package/dist/esm/deprecated/components/Select/index.d.ts.map +1 -0
  50. package/dist/esm/{next → deprecated}/components/Select/index.js +1 -1
  51. package/dist/esm/deprecated/components/Select/index.js.map +1 -0
  52. package/dist/esm/deprecated/components/Select/selectConstants.d.ts.map +1 -0
  53. package/dist/esm/deprecated/components/Select/selectConstants.js.map +1 -0
  54. package/dist/esm/deprecated/components/index.d.ts +1 -0
  55. package/dist/esm/deprecated/components/index.d.ts.map +1 -1
  56. package/dist/esm/deprecated/components/index.js +1 -0
  57. package/dist/esm/deprecated/components/index.js.map +1 -1
  58. package/dist/esm/next/components/index.d.ts +0 -1
  59. package/dist/esm/next/components/index.d.ts.map +1 -1
  60. package/dist/esm/next/components/index.js +0 -1
  61. package/dist/esm/next/components/index.js.map +1 -1
  62. package/dist/js/components/CalendarMonth/CalendarMonth.d.ts.map +1 -1
  63. package/dist/js/components/CalendarMonth/CalendarMonth.js +8 -10
  64. package/dist/js/components/CalendarMonth/CalendarMonth.js.map +1 -1
  65. package/dist/js/components/DualListSelector/DualListSelectorControl.d.ts +1 -1
  66. package/dist/js/components/Menu/MenuItem.d.ts +1 -1
  67. package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  68. package/dist/js/components/MenuToggle/MenuToggle.js +3 -1
  69. package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
  70. package/dist/js/components/Select/Select.d.ts +26 -192
  71. package/dist/js/components/Select/Select.d.ts.map +1 -1
  72. package/dist/js/components/Select/Select.js +51 -936
  73. package/dist/js/components/Select/Select.js.map +1 -1
  74. package/dist/js/components/Select/SelectGroup.d.ts +7 -8
  75. package/dist/js/components/Select/SelectGroup.d.ts.map +1 -1
  76. package/dist/js/components/Select/SelectGroup.js +4 -7
  77. package/dist/js/components/Select/SelectGroup.js.map +1 -1
  78. package/dist/{esm/next → js}/components/Select/SelectList.d.ts +1 -1
  79. package/dist/js/components/Select/SelectList.d.ts.map +1 -0
  80. package/dist/js/{next/components → components}/Select/SelectList.js +1 -1
  81. package/dist/js/components/Select/SelectList.js.map +1 -0
  82. package/dist/js/components/Select/SelectOption.d.ts +13 -66
  83. package/dist/js/components/Select/SelectOption.d.ts.map +1 -1
  84. package/dist/js/components/Select/SelectOption.js +7 -193
  85. package/dist/js/components/Select/SelectOption.js.map +1 -1
  86. package/dist/js/components/Select/index.d.ts +1 -1
  87. package/dist/js/components/Select/index.d.ts.map +1 -1
  88. package/dist/js/components/Select/index.js +1 -1
  89. package/dist/js/components/Select/index.js.map +1 -1
  90. package/dist/js/deprecated/components/Select/Select.d.ts +199 -0
  91. package/dist/js/deprecated/components/Select/Select.d.ts.map +1 -0
  92. package/dist/js/deprecated/components/Select/Select.js +944 -0
  93. package/dist/js/deprecated/components/Select/Select.js.map +1 -0
  94. package/dist/js/deprecated/components/Select/SelectGroup.d.ts +13 -0
  95. package/dist/js/deprecated/components/Select/SelectGroup.d.ts.map +1 -0
  96. package/dist/js/deprecated/components/Select/SelectGroup.js +17 -0
  97. package/dist/js/deprecated/components/Select/SelectGroup.js.map +1 -0
  98. package/dist/js/deprecated/components/Select/SelectMenu.d.ts.map +1 -0
  99. package/dist/js/{components → deprecated/components}/Select/SelectMenu.js +1 -1
  100. package/dist/js/deprecated/components/Select/SelectMenu.js.map +1 -0
  101. package/dist/js/deprecated/components/Select/SelectOption.d.ts +73 -0
  102. package/dist/js/deprecated/components/Select/SelectOption.d.ts.map +1 -0
  103. package/dist/js/deprecated/components/Select/SelectOption.js +200 -0
  104. package/dist/js/deprecated/components/Select/SelectOption.js.map +1 -0
  105. package/dist/js/deprecated/components/Select/SelectToggle.d.ts.map +1 -0
  106. package/dist/js/{components → deprecated/components}/Select/SelectToggle.js +2 -2
  107. package/dist/js/deprecated/components/Select/SelectToggle.js.map +1 -0
  108. package/dist/js/{next → deprecated}/components/Select/index.d.ts +1 -1
  109. package/dist/js/deprecated/components/Select/index.d.ts.map +1 -0
  110. package/dist/js/{next → deprecated}/components/Select/index.js +1 -1
  111. package/dist/js/deprecated/components/Select/index.js.map +1 -0
  112. package/dist/js/deprecated/components/Select/selectConstants.d.ts.map +1 -0
  113. package/dist/js/deprecated/components/Select/selectConstants.js.map +1 -0
  114. package/dist/js/deprecated/components/index.d.ts +1 -0
  115. package/dist/js/deprecated/components/index.d.ts.map +1 -1
  116. package/dist/js/deprecated/components/index.js +1 -0
  117. package/dist/js/deprecated/components/index.js.map +1 -1
  118. package/dist/js/next/components/index.d.ts +0 -1
  119. package/dist/js/next/components/index.d.ts.map +1 -1
  120. package/dist/js/next/components/index.js +0 -1
  121. package/dist/js/next/components/index.js.map +1 -1
  122. package/dist/umd/react-core.min.js +3 -3
  123. package/package.json +2 -2
  124. package/src/components/CalendarMonth/CalendarMonth.tsx +25 -15
  125. package/src/components/DatePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +22 -31
  126. package/src/components/LoginPage/examples/LoginPageLanguageSelect.tsx +28 -19
  127. package/src/components/MenuToggle/MenuToggle.tsx +2 -1
  128. package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +18 -10
  129. package/src/components/MenuToggle/examples/MenuToggle.md +85 -78
  130. package/src/components/MenuToggle/examples/MenuToggleSplitButtonAction.tsx +10 -11
  131. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckbox.tsx +4 -17
  132. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxWithText.tsx +10 -11
  133. package/src/components/MenuToggle/examples/MenuToggleTypeahead.tsx +35 -0
  134. package/src/components/Select/Select.tsx +113 -1475
  135. package/src/components/Select/SelectGroup.tsx +13 -25
  136. package/src/{next/components → components}/Select/SelectList.tsx +1 -1
  137. package/src/components/Select/SelectOption.tsx +22 -452
  138. package/src/components/Select/examples/Select.md +11 -2897
  139. package/src/{next/components → components}/Select/examples/SelectBasic.tsx +1 -2
  140. package/src/{next/components → components}/Select/examples/SelectCheckbox.tsx +1 -2
  141. package/src/{next/components → components}/Select/examples/SelectGrouped.tsx +1 -2
  142. package/src/{next/components → components}/Select/examples/SelectMultiTypeahead.tsx +4 -1
  143. package/src/{next/components → components}/Select/examples/SelectTypeahead.tsx +4 -1
  144. package/src/components/Select/index.ts +1 -1
  145. package/src/components/Toolbar/__tests__/Toolbar.test.tsx +3 -21
  146. package/src/components/Toolbar/__tests__/__snapshots__/Toolbar.test.tsx.snap +12 -124
  147. package/src/components/Toolbar/examples/Toolbar.md +0 -1
  148. package/src/components/Toolbar/examples/ToolbarComponentManagedToggleGroups.tsx +59 -63
  149. package/src/components/Toolbar/examples/ToolbarConsumerManagedToggleGroups.tsx +58 -62
  150. package/src/components/Toolbar/examples/ToolbarCustomChipGroupContent.tsx +107 -23
  151. package/src/components/Toolbar/examples/ToolbarGroups.tsx +96 -59
  152. package/src/components/Toolbar/examples/ToolbarStacked.tsx +56 -39
  153. package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +115 -28
  154. package/src/components/Tooltip/examples/TooltipOptions.tsx +53 -23
  155. package/src/demos/Card/Card.md +39 -23
  156. package/src/demos/CardDemos.md +99 -46
  157. package/src/demos/Toolbar.md +51 -21
  158. package/src/demos/examples/Tabs/TabsAndTable.tsx +5 -22
  159. package/src/deprecated/components/Select/Select.tsx +1495 -0
  160. package/src/deprecated/components/Select/SelectGroup.tsx +36 -0
  161. package/src/{components → deprecated/components}/Select/SelectMenu.tsx +2 -2
  162. package/src/deprecated/components/Select/SelectOption.tsx +461 -0
  163. package/src/{components → deprecated/components}/Select/SelectToggle.tsx +3 -3
  164. package/src/{components → deprecated/components}/Select/__tests__/Select.test.tsx +1 -1
  165. package/src/deprecated/components/Select/examples/Select.md +2937 -0
  166. package/src/{next → deprecated}/components/Select/index.ts +1 -1
  167. package/src/deprecated/components/index.ts +1 -0
  168. package/src/next/components/index.ts +0 -1
  169. package/dist/esm/components/Select/SelectMenu.d.ts.map +0 -1
  170. package/dist/esm/components/Select/SelectMenu.js.map +0 -1
  171. package/dist/esm/components/Select/SelectToggle.d.ts.map +0 -1
  172. package/dist/esm/components/Select/SelectToggle.js.map +0 -1
  173. package/dist/esm/components/Select/selectConstants.d.ts.map +0 -1
  174. package/dist/esm/components/Select/selectConstants.js.map +0 -1
  175. package/dist/esm/next/components/Select/Select.d.ts +0 -33
  176. package/dist/esm/next/components/Select/Select.d.ts.map +0 -1
  177. package/dist/esm/next/components/Select/Select.js +0 -56
  178. package/dist/esm/next/components/Select/Select.js.map +0 -1
  179. package/dist/esm/next/components/Select/SelectGroup.d.ts +0 -12
  180. package/dist/esm/next/components/Select/SelectGroup.d.ts.map +0 -1
  181. package/dist/esm/next/components/Select/SelectGroup.js +0 -10
  182. package/dist/esm/next/components/Select/SelectGroup.js.map +0 -1
  183. package/dist/esm/next/components/Select/SelectList.d.ts.map +0 -1
  184. package/dist/esm/next/components/Select/SelectList.js.map +0 -1
  185. package/dist/esm/next/components/Select/SelectOption.d.ts +0 -20
  186. package/dist/esm/next/components/Select/SelectOption.d.ts.map +0 -1
  187. package/dist/esm/next/components/Select/SelectOption.js +0 -10
  188. package/dist/esm/next/components/Select/SelectOption.js.map +0 -1
  189. package/dist/esm/next/components/Select/index.d.ts.map +0 -1
  190. package/dist/esm/next/components/Select/index.js.map +0 -1
  191. package/dist/js/components/Select/SelectMenu.d.ts.map +0 -1
  192. package/dist/js/components/Select/SelectMenu.js.map +0 -1
  193. package/dist/js/components/Select/SelectToggle.d.ts.map +0 -1
  194. package/dist/js/components/Select/SelectToggle.js.map +0 -1
  195. package/dist/js/components/Select/selectConstants.d.ts.map +0 -1
  196. package/dist/js/components/Select/selectConstants.js.map +0 -1
  197. package/dist/js/next/components/Select/Select.d.ts +0 -33
  198. package/dist/js/next/components/Select/Select.d.ts.map +0 -1
  199. package/dist/js/next/components/Select/Select.js +0 -59
  200. package/dist/js/next/components/Select/Select.js.map +0 -1
  201. package/dist/js/next/components/Select/SelectGroup.d.ts +0 -12
  202. package/dist/js/next/components/Select/SelectGroup.d.ts.map +0 -1
  203. package/dist/js/next/components/Select/SelectGroup.js +0 -14
  204. package/dist/js/next/components/Select/SelectGroup.js.map +0 -1
  205. package/dist/js/next/components/Select/SelectList.d.ts.map +0 -1
  206. package/dist/js/next/components/Select/SelectList.js.map +0 -1
  207. package/dist/js/next/components/Select/SelectOption.d.ts +0 -20
  208. package/dist/js/next/components/Select/SelectOption.d.ts.map +0 -1
  209. package/dist/js/next/components/Select/SelectOption.js +0 -14
  210. package/dist/js/next/components/Select/SelectOption.js.map +0 -1
  211. package/dist/js/next/components/Select/index.d.ts.map +0 -1
  212. package/dist/js/next/components/Select/index.js.map +0 -1
  213. package/src/components/MenuToggle/examples/MenuToggleSplitButtonActionPrimary.tsx +0 -58
  214. package/src/components/MenuToggle/examples/MenuToggleSplitButtonActionSecondary.tsx +0 -58
  215. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxPrimary.tsx +0 -55
  216. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxSecondary.tsx +0 -55
  217. package/src/next/components/Select/Select.tsx +0 -133
  218. package/src/next/components/Select/SelectGroup.tsx +0 -24
  219. package/src/next/components/Select/SelectOption.tsx +0 -31
  220. package/src/next/components/Select/examples/Select.md +0 -38
  221. /package/dist/esm/{components → deprecated/components}/Select/SelectMenu.d.ts +0 -0
  222. /package/dist/esm/{components → deprecated/components}/Select/SelectToggle.d.ts +0 -0
  223. /package/dist/esm/{components → deprecated/components}/Select/selectConstants.d.ts +0 -0
  224. /package/dist/esm/{components → deprecated/components}/Select/selectConstants.js +0 -0
  225. /package/dist/js/{components → deprecated/components}/Select/SelectMenu.d.ts +0 -0
  226. /package/dist/js/{components → deprecated/components}/Select/SelectToggle.d.ts +0 -0
  227. /package/dist/js/{components → deprecated/components}/Select/selectConstants.d.ts +0 -0
  228. /package/dist/js/{components → deprecated/components}/Select/selectConstants.js +0 -0
  229. /package/src/{components → deprecated/components}/Select/__tests__/SelectGroup.test.tsx +0 -0
  230. /package/src/{components → deprecated/components}/Select/__tests__/SelectOption.test.tsx +0 -0
  231. /package/src/{components → deprecated/components}/Select/__tests__/SelectToggle.test.tsx +0 -0
  232. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/Select.test.tsx.snap +0 -0
  233. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectGroup.test.tsx.snap +0 -0
  234. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectOption.test.tsx.snap +0 -0
  235. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectToggle.test.tsx.snap +0 -0
  236. /package/src/{components → deprecated/components}/Select/selectConstants.tsx +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "5.0.0-alpha.62",
3
+ "version": "5.0.0-alpha.64",
4
4
  "description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
5
5
  "main": "dist/js/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -70,5 +70,5 @@
70
70
  "react": "^17 || ^18",
71
71
  "react-dom": "^17 || ^18"
72
72
  },
73
- "gitHead": "d92de5c78c49b2c1e5df50821a7fdb0870cea154"
73
+ "gitHead": "96fff41f82b6547ea995ea64938c38575058518e"
74
74
  }
@@ -1,7 +1,8 @@
1
1
  import React, { useEffect } from 'react';
2
- import { TextInput } from '../TextInput/TextInput';
3
- import { Button } from '../Button/Button';
4
- import { Select, SelectOption } from '../Select';
2
+ import { TextInput } from '../TextInput';
3
+ import { Button } from '../Button';
4
+ import { Select, SelectList, SelectOption } from '../Select';
5
+ import { MenuToggle, MenuToggleElement } from '../MenuToggle';
5
6
  import { InputGroup } from '../InputGroup';
6
7
  import AngleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-left-icon';
7
8
  import AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';
@@ -263,13 +264,21 @@ export const CalendarMonth = ({
263
264
  Month
264
265
  </span>
265
266
  <Select
266
- // Max width with "September"
267
- width="140px"
267
+ toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
268
+ <MenuToggle
269
+ ref={toggleRef}
270
+ onClick={()=>setIsSelectOpen(!isSelectOpen)}
271
+ isExpanded={isSelectOpen}
272
+ style={{width: "140px"} as React.CSSProperties }
273
+ >
274
+ {monthFormatted}
275
+ </MenuToggle>
276
+ )}
268
277
  aria-labelledby={hiddenMonthId}
269
278
  isOpen={isSelectOpen}
270
- onToggle={() => {
271
- setIsSelectOpen(!isSelectOpen);
272
- onSelectToggle(!isSelectOpen);
279
+ onOpenChange={(isOpen) => {
280
+ setIsSelectOpen(isOpen);
281
+ onSelectToggle(isOpen);
273
282
  }}
274
283
  onSelect={(ev, monthNum) => {
275
284
  // When we put CalendarMonth in a Popover we want the Popover's onDocumentClick
@@ -285,14 +294,15 @@ export const CalendarMonth = ({
285
294
  onMonthChange(ev, newDate);
286
295
  }, 0);
287
296
  }}
288
- variant="single"
289
- selections={monthFormatted}
297
+ selected={monthFormatted}
290
298
  >
291
- {longMonths.map((longMonth, index) => (
292
- <SelectOption key={index} value={index} isSelected={longMonth === monthFormatted}>
293
- {longMonth}
294
- </SelectOption>
295
- ))}
299
+ <SelectList>
300
+ {longMonths.map((longMonth, index) => (
301
+ <SelectOption key={index} itemId={index} isSelected={longMonth === monthFormatted}>
302
+ {longMonth}
303
+ </SelectOption>
304
+ ))}
305
+ </SelectList>
296
306
  </Select>
297
307
  </div>
298
308
  <div className={styles.calendarMonthHeaderYear}>
@@ -103,45 +103,36 @@ exports[`With popover opened 1`] = `
103
103
  >
104
104
  Month
105
105
  </span>
106
- <div
107
- class="pf-c-select"
108
- data-ouia-component-id="OUIA-Generated-Select-single-1"
109
- data-ouia-component-type="PF4/Select"
110
- data-ouia-safe="true"
111
- style="width: 140px;"
112
- >
106
+ <div>
113
107
  <button
114
108
  aria-expanded="false"
115
- aria-haspopup="listbox"
116
- aria-label="Options menu"
117
- aria-labelledby="unique_id_mock pf-select-toggle-id-0"
118
- class="pf-c-select__toggle"
119
- id="pf-select-toggle-id-0"
109
+ class="pf-c-menu-toggle"
110
+ style="width: 140px;"
120
111
  type="button"
121
112
  >
122
- <div
123
- class="pf-c-select__toggle-wrapper"
113
+ <span
114
+ class="pf-c-menu-toggle__text"
124
115
  >
125
- <span
126
- class="pf-c-select__toggle-text"
127
- >
128
- December
129
- </span>
130
- </div>
116
+ December
117
+ </span>
131
118
  <span
132
- class="pf-c-select__toggle-arrow"
119
+ class="pf-c-menu-toggle__controls"
133
120
  >
134
- <svg
135
- aria-hidden="true"
136
- class="pf-svg"
137
- fill="currentColor"
138
- role="img"
139
- viewBox="0 0 320 512"
121
+ <span
122
+ class="pf-c-menu-toggle__toggle-icon"
140
123
  >
141
- <path
142
- d="M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z"
143
- />
144
- </svg>
124
+ <svg
125
+ aria-hidden="true"
126
+ class="pf-svg"
127
+ fill="currentColor"
128
+ role="img"
129
+ viewBox="0 0 320 512"
130
+ >
131
+ <path
132
+ d="M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z"
133
+ />
134
+ </svg>
135
+ </span>
145
136
  </span>
146
137
  </button>
147
138
  </div>
@@ -8,9 +8,11 @@ import {
8
8
  LoginPage,
9
9
  ListItem,
10
10
  ListVariant,
11
+ MenuToggle,
12
+ MenuToggleElement,
11
13
  Select,
12
- SelectOption,
13
- SelectOptionObject
14
+ SelectList,
15
+ SelectOption
14
16
  } from '@patternfly/react-core';
15
17
  import ExclamationCircleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-circle-icon';
16
18
 
@@ -22,7 +24,7 @@ export const LoginPageLanguageSelect: React.FunctionComponent = () => {
22
24
  const [isValidPassword, setIsValidPassword] = React.useState(true);
23
25
  const [isRememberMeChecked, setIsRememberMeChecked] = React.useState(false);
24
26
  const [isHeaderUtilsOpen, setIsHeaderUtilsOpen] = React.useState(false);
25
- const [selectedHeaderUtils, setSelectedHeaderUtils] = React.useState<string | SelectOptionObject>('English');
27
+ const [selectedHeaderUtils, setSelectedHeaderUtils] = React.useState('English');
26
28
 
27
29
  /** i18n object is used to simulate i18n integration of native language translation */
28
30
  const i18n = {
@@ -35,23 +37,21 @@ export const LoginPageLanguageSelect: React.FunctionComponent = () => {
35
37
  Bengali: 'বাংলা'
36
38
  };
37
39
 
38
- const headerUtilsOptions = [
39
- <SelectOption key={0} value={i18n.English} />,
40
- <SelectOption key={1} value={i18n.Mandarin} />,
41
- <SelectOption key={2} value={i18n.Hindi} />,
42
- <SelectOption key={3} value={i18n.Spanish} />,
43
- <SelectOption key={4} value={i18n.Portuguese} />,
44
- <SelectOption key={5} value={i18n.Arabic} />,
45
- <SelectOption key={6} value={i18n.Bengali} />
46
- ];
47
-
48
- const onHeaderUtilsToggle = (_event: any, isExpanded: boolean) => {
49
- setIsHeaderUtilsOpen(isExpanded);
50
- };
40
+ const headerUtilsOptions = (
41
+ <SelectList>
42
+ <SelectOption key={0} itemId={i18n.English}>{i18n.English}</SelectOption>
43
+ <SelectOption key={1} itemId={i18n.Mandarin}>{i18n.Mandarin}</SelectOption>
44
+ <SelectOption key={2} itemId={i18n.Hindi}>{i18n.Hindi}</SelectOption>
45
+ <SelectOption key={3} itemId={i18n.Spanish}>{i18n.Spanish}</SelectOption>
46
+ <SelectOption key={4} itemId={i18n.Portuguese}>{i18n.Portuguese}</SelectOption>
47
+ <SelectOption key={5} itemId={i18n.Arabic}>{i18n.Arabic}</SelectOption>
48
+ <SelectOption key={6} itemId={i18n.Bengali}>{i18n.Bengali}</SelectOption>
49
+ </SelectList>
50
+ );
51
51
 
52
52
  const onHeaderUtilsSelect = (
53
53
  _event: React.MouseEvent<Element, MouseEvent> | React.ChangeEvent<Element>,
54
- value: string | SelectOptionObject
54
+ value: string
55
55
  ) => {
56
56
  setSelectedHeaderUtils(value);
57
57
  setIsHeaderUtilsOpen(false);
@@ -60,9 +60,18 @@ export const LoginPageLanguageSelect: React.FunctionComponent = () => {
60
60
  const headerUtils = (
61
61
  <Select
62
62
  aria-label="Select Language"
63
- onToggle={onHeaderUtilsToggle}
63
+ toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
64
+ <MenuToggle
65
+ ref={toggleRef}
66
+ onClick={() => setIsHeaderUtilsOpen(!isHeaderUtilsOpen)}
67
+ isExpanded={isHeaderUtilsOpen}
68
+ >
69
+ {selectedHeaderUtils}
70
+ </MenuToggle>
71
+ )}
64
72
  onSelect={onHeaderUtilsSelect}
65
- selections={selectedHeaderUtils}
73
+ onOpenChange={isOpen => setIsHeaderUtilsOpen(isOpen)}
74
+ selected={selectedHeaderUtils}
66
75
  isOpen={isHeaderUtilsOpen}
67
76
  >
68
77
  {headerUtilsOptions}
@@ -3,6 +3,7 @@ import styles from '@patternfly/react-styles/css/components/MenuToggle/menu-togg
3
3
  import { css } from '@patternfly/react-styles';
4
4
  import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
5
5
  import { BadgeProps } from '../Badge';
6
+ import { Icon } from '../Icon';
6
7
 
7
8
  export type MenuToggleElement = HTMLDivElement | HTMLButtonElement;
8
9
 
@@ -85,7 +86,7 @@ export class MenuToggleBase extends React.Component<MenuToggleProps> {
85
86
 
86
87
  const content = (
87
88
  <>
88
- {icon && <span className={css(styles.menuToggleIcon)}>{icon}</span>}
89
+ {icon && <span className={css(styles.menuToggleIcon)}><Icon>{icon}</Icon></span>}
89
90
  {isTypeahead ? children : <span className={css(styles.menuToggleText)}>{children}</span>}
90
91
  {React.isValidElement(badge) && <span className={css(styles.menuToggleCount)}>{badge}</span>}
91
92
  {isTypeahead ? (
@@ -124,17 +124,25 @@ exports[`menu toggle shows icon 1`] = `
124
124
  <span
125
125
  class="pf-c-menu-toggle__icon"
126
126
  >
127
- <svg
128
- aria-hidden="true"
129
- class="pf-svg"
130
- fill="currentColor"
131
- role="img"
132
- viewBox="0 0 512 512"
127
+ <span
128
+ class="pf-c-icon"
133
129
  >
134
- <path
135
- d="M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"
136
- />
137
- </svg>
130
+ <span
131
+ class="pf-c-icon__content"
132
+ >
133
+ <svg
134
+ aria-hidden="true"
135
+ class="pf-svg"
136
+ fill="currentColor"
137
+ role="img"
138
+ viewBox="0 0 512 512"
139
+ >
140
+ <path
141
+ d="M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"
142
+ />
143
+ </svg>
144
+ </span>
145
+ </span>
138
146
  </span>
139
147
  <span
140
148
  class="pf-c-menu-toggle__text"
@@ -11,10 +11,13 @@ import './MenuToggle.css'
11
11
  import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
12
12
  import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
13
13
  import imgAvatar from '@patternfly/react-core/src/components/Avatar/examples/avatarImg.svg';
14
+ import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
14
15
 
15
16
  ## Examples
16
17
 
17
- ### Collapsed
18
+ ### Collapsed toggle
19
+
20
+ A toggle is collapsed until it is selected by a user.
18
21
 
19
22
  ```ts
20
23
  import React from 'react';
@@ -24,7 +27,9 @@ import { MenuToggle } from '@patternfly/react-core';
24
27
 
25
28
  ```
26
29
 
27
- ### Expanded
30
+ ### Expanded toggle
31
+
32
+ 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
33
 
29
34
  ```ts
30
35
  import React from 'react';
@@ -34,7 +39,9 @@ import { MenuToggle } from '@patternfly/react-core';
34
39
 
35
40
  ```
36
41
 
37
- ### Disabled
42
+ ### Disabled toggle
43
+
44
+ To disable the selection and expansion of a toggle, use the `isDisabled` property.
38
45
 
39
46
  ```ts
40
47
  import React from 'react';
@@ -44,7 +51,9 @@ import { MenuToggle } from '@patternfly/react-core';
44
51
 
45
52
  ```
46
53
 
47
- ### Count
54
+ ### With a badge
55
+
56
+ To display a count of selected items in a toggle, use the `badge` property.
48
57
 
49
58
  ```ts
50
59
  import React from 'react';
@@ -54,7 +63,9 @@ import { MenuToggle, Badge } from '@patternfly/react-core';
54
63
 
55
64
  ```
56
65
 
57
- ### Primary
66
+ ### With icons
67
+
68
+ To add a recognizable icon to a menu toggle, use the `icon` property. The following example adds a `CogIcon` to the toggle.
58
69
 
59
70
  ```ts
60
71
  import React from 'react';
@@ -62,21 +73,33 @@ import { MenuToggle } from '@patternfly/react-core';
62
73
  import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
63
74
 
64
75
  <React.Fragment>
65
- <MenuToggle variant="primary">Collapsed</MenuToggle>{' '}
66
- <MenuToggle variant="primary" icon={<CogIcon />}>
67
- Icon
68
- </MenuToggle>{' '}
69
- <MenuToggle variant="primary" isExpanded>
70
- Expanded
71
- </MenuToggle>{' '}
72
- <MenuToggle variant="primary" isDisabled>
73
- Disabled
74
- </MenuToggle>
76
+ <MenuToggle icon={<CogIcon />} variant="primary">Icon</MenuToggle>{' '}
77
+ <MenuToggle icon={<CogIcon />} variant="secondary">Icon</MenuToggle>{' '}
78
+ <MenuToggle icon={<CogIcon />} variant="secondary" isDisabled>Icon</MenuToggle>
75
79
  </React.Fragment>
80
+ ```
81
+
82
+ ### With avatar and text
76
83
 
84
+ You can also pass images into the `icon` property. The following example passes in an `<Avatar>` component with an `imgAvatar`.
85
+
86
+ This can be used alongside a text label that provides more context for the image.
87
+
88
+ ```ts
89
+ import React from 'react';
90
+ import { MenuToggle, Avatar } from '@patternfly/react-core';
91
+ import imgAvatar from '@patternfly/react-core/src/components/Avatar/examples/avatarImg.svg';
92
+
93
+ <React.Fragment>
94
+ <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />}>Ned Username</MenuToggle>{' '}
95
+ <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />} isExpanded>Ned Username</MenuToggle>{' '}
96
+ <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />} isDisabled>Ned Username</MenuToggle>
97
+ </React.Fragment>
77
98
  ```
78
99
 
79
- ### Secondary
100
+ ### Variant styles
101
+
102
+ 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”.
80
103
 
81
104
  ```ts
82
105
  import React from 'react';
@@ -84,21 +107,22 @@ import { MenuToggle } from '@patternfly/react-core';
84
107
  import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
85
108
 
86
109
  <React.Fragment>
87
- <MenuToggle variant="secondary">Collapsed</MenuToggle>{' '}
88
- <MenuToggle variant="secondary" icon={<CogIcon />}>
89
- Icon
90
- </MenuToggle>{' '}
91
- <MenuToggle variant="secondary" isExpanded>
110
+ <MenuToggle variant="primary">Collapsed</MenuToggle>{' '}
111
+ <MenuToggle variant="primary" isExpanded>
92
112
  Expanded
93
113
  </MenuToggle>{' '}
94
- <MenuToggle variant="secondary" isDisabled>
114
+ <MenuToggle variant="primary" isDisabled>
95
115
  Disabled
96
116
  </MenuToggle>
97
117
  </React.Fragment>
98
118
 
99
119
  ```
100
120
 
101
- ### Plain
121
+ ### Plain toggle with icon
122
+
123
+ To apply plain styling to a menu toggle with an icon, pass in `variant="plain"`. This will remove the default bottom border and caret. You may pass in an `icon` to serve as the menu toggle. The following example passes in an `EllipsisVIcon`.
124
+
125
+ If the toggle does not have any visible text content, use the `aria-label` property to provide an accessible name.
102
126
 
103
127
  ```ts
104
128
  import React from 'react';
@@ -108,16 +132,18 @@ import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-ico
108
132
  <React.Fragment>
109
133
  <MenuToggle variant="plain" aria-label="plain kebab">
110
134
  <EllipsisVIcon />
111
- </MenuToggle>
135
+ </MenuToggle>{' '}
112
136
  <MenuToggle variant="plain" isExpanded aria-label="plain expanded kebab">
113
137
  <EllipsisVIcon />
114
- </MenuToggle>
138
+ </MenuToggle>{' '}
115
139
  <MenuToggle variant="plain" isDisabled aria-label="disabled kebab">
116
140
  <EllipsisVIcon />
117
141
  </MenuToggle>
118
142
  </React.Fragment>
119
143
  ```
120
- ### Plain with text
144
+ ### Plain toggle with text label
145
+
146
+ 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.
121
147
 
122
148
  ```ts
123
149
  import React from 'react';
@@ -126,80 +152,48 @@ import { MenuToggle } from '@patternfly/react-core';
126
152
  <React.Fragment>
127
153
  <MenuToggle variant="plainText" isDisabled aria-label="Disabled plain menu toggle">
128
154
  Disabled
129
- </MenuToggle>
130
- &nbsp;
155
+ </MenuToggle>{' '}
131
156
  <MenuToggle variant="plainText" aria-label="Plain menu toggle">
132
157
  Custom text
133
- </MenuToggle>
158
+ </MenuToggle>{' '}
134
159
  <MenuToggle variant="plainText" isExpanded aria-label="Expanded plain menu toggle">
135
160
  Custom text (expanded)
136
161
  </MenuToggle>
137
162
  </React.Fragment>
138
163
  ```
139
164
 
140
- ### Split button (checkbox)
141
-
142
- ```ts file='MenuToggleSplitButtonCheckbox.tsx'
143
- ```
165
+ ### Split button toggle with checkbox
144
166
 
145
- ### Split button (checkbox with toggle text)
146
-
147
- ```ts file='MenuToggleSplitButtonCheckboxWithText.tsx'
148
- ```
167
+ To add an action button or other control to a menu toggle, use a split button. A `<MenuToggle>` can be rendered as a split button by adding a `splitButtonOptions` object. Elements to be displayed before the toggle button must be included in the `items` property of `splitButtonOptions`.
149
168
 
150
- ### Split button (checkbox, primary)
151
-
152
- ```ts file='MenuToggleSplitButtonCheckboxPrimary.tsx'
153
- ```
169
+ The following example shows a split button with a `<MenuToggleCheckbox>`.
154
170
 
155
- ### Split button (checkbox, secondary)
156
-
157
- ```ts file='MenuToggleSplitButtonCheckboxSecondary.tsx'
158
- ```
171
+ Variant styling can be applied to split button toggles to adjust their appearance for different scenarios. Both "primary" and "secondary" variants can be used with split button toggles.
159
172
 
160
- ### Split button (action)
161
-
162
- ```ts file='MenuToggleSplitButtonAction.tsx'
173
+ ```ts file='MenuToggleSplitButtonCheckbox.tsx'
163
174
  ```
164
175
 
165
- ### Split button (action, primary)
166
-
167
- ```ts file='MenuToggleSplitButtonActionPrimary.tsx'
168
- ```
176
+ ### Split button toggle with text label
169
177
 
170
- ### Split button (action, secondary)
171
-
172
- ```ts file='MenuToggleSplitButtonActionSecondary.tsx'
178
+ To display text in a split button menu toggle, add a label to the `items` property of `splitButtonOptions`.
179
+
180
+ ```ts file='MenuToggleSplitButtonCheckboxWithText.tsx'
173
181
  ```
174
182
 
175
- ### With icon/image and text
183
+ ### Split button toggle with action
176
184
 
177
- ```ts
178
- import React from 'react';
179
- import { MenuToggle, Avatar } from '@patternfly/react-core';
180
- import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
185
+ To add an action to a split button, pass `variant='action'` into `splitButtonOptions` and add a `<MenuToggleAction>` to the `items` property of `splitButtonOptions`.
181
186
 
182
- <React.Fragment>
183
- <MenuToggle icon={<CogIcon />} variant="secondary">Icon</MenuToggle>{' '}
184
- <MenuToggle icon={<CogIcon />} variant="secondary" isDisabled>Icon</MenuToggle>
185
- </React.Fragment>
187
+ Actions may be used with primary and secondary toggle variants.
188
+
189
+ ```ts file='MenuToggleSplitButtonAction.tsx'
186
190
  ```
187
191
 
188
- ### With avatar and text
192
+ ### Full height toggle
189
193
 
190
- ```ts
191
- import React from 'react';
192
- import { MenuToggle, Avatar } from '@patternfly/react-core';
193
- import imgAvatar from '@patternfly/react-core/src/components/Avatar/examples/avatarImg.svg';
194
+ A full height toggle fills the height of its parent. To flag a full height toggle, use the `isFullHeight` property.
194
195
 
195
- <React.Fragment>
196
- <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />}>Ned Username</MenuToggle>{' '}
197
- <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />} isExpanded>Ned Username</MenuToggle>{' '}
198
- <MenuToggle icon={<Avatar src={imgAvatar} alt="avatar" />} isDisabled>Ned Username</MenuToggle>
199
- </React.Fragment>
200
- ```
201
-
202
- ### Full height
196
+ In the following example, the toggle fills the size of the "80px" `<div>` element that it is within.
203
197
 
204
198
  ```ts
205
199
  import React from 'react';
@@ -212,7 +206,11 @@ import { MenuToggle } from '@patternfly/react-core';
212
206
  </div>
213
207
  ```
214
208
 
215
- ### Full width
209
+ ### Full width toggle
210
+
211
+ A full width toggle fills the width of its parent. To flag a full width toggle, use the `isFullWidth` property.
212
+
213
+ In the following example, the toggle fills the width of its parent as the window size changes.
216
214
 
217
215
  ```ts
218
216
  import React from 'react';
@@ -226,3 +224,12 @@ const fullWidth: React.FunctionComponent = () => {
226
224
  );
227
225
  }
228
226
  ```
227
+
228
+ ### Typeahead toggle
229
+
230
+ To create a typeahead toggle, pass in `variant="typeahead"` to the `<MenuToggle>`. Then, pass a `<TextInputGroup>` component as a child of the `<MenuToggle>`.
231
+
232
+ To create a multiple typeahead toggle, pass a `<TextInputGroup>` component implemented like the [text input group's filter example](/components/text-input-group#filters) as a child of `<MenuToggle>`.
233
+
234
+ ```ts file='MenuToggleTypeahead.tsx'
235
+ ```
@@ -4,16 +4,10 @@ import { MenuToggleAction, MenuToggle } from '@patternfly/react-core';
4
4
  export const MenuToggleSplitButtonAction: React.FunctionComponent = () => (
5
5
  <React.Fragment>
6
6
  <MenuToggle
7
- isDisabled
8
7
  splitButtonOptions={{
9
8
  variant: 'action',
10
9
  items: [
11
- <MenuToggleAction
12
- id="split-button-action-disabled-example-with-toggle-button"
13
- key="split-action-disabled"
14
- aria-label="Action"
15
- isDisabled
16
- >
10
+ <MenuToggleAction id="split-button-action-example-with-toggle-button" key="split-action" aria-label="Action">
17
11
  Action
18
12
  </MenuToggleAction>
19
13
  ]
@@ -21,10 +15,15 @@ export const MenuToggleSplitButtonAction: React.FunctionComponent = () => (
21
15
  aria-label="Menu toggle with action split button"
22
16
  />{' '}
23
17
  <MenuToggle
18
+ variant="primary"
24
19
  splitButtonOptions={{
25
20
  variant: 'action',
26
21
  items: [
27
- <MenuToggleAction id="split-button-action-example-with-toggle-button" key="split-action" aria-label="Action">
22
+ <MenuToggleAction
23
+ id="split-button-action-primary-example-with-toggle-button"
24
+ key="split-action-primary"
25
+ aria-label="Action"
26
+ >
28
27
  Action
29
28
  </MenuToggleAction>
30
29
  ]
@@ -32,13 +31,13 @@ export const MenuToggleSplitButtonAction: React.FunctionComponent = () => (
32
31
  aria-label="Menu toggle with action split button"
33
32
  />{' '}
34
33
  <MenuToggle
35
- isExpanded
34
+ variant="secondary"
36
35
  splitButtonOptions={{
37
36
  variant: 'action',
38
37
  items: [
39
38
  <MenuToggleAction
40
- id="split-button-action-expanded-example-with-toggle-button"
41
- key="split-action-expanded"
39
+ id="split-button-action-secondary-example-with-toggle-button"
40
+ key="split-action-secondary"
42
41
  aria-label="Action"
43
42
  >
44
43
  Action
@@ -4,35 +4,22 @@ import { MenuToggleCheckbox, MenuToggle } from '@patternfly/react-core';
4
4
  export const MenuToggleSplitButtonCheckbox: React.FunctionComponent = () => (
5
5
  <React.Fragment>
6
6
  <MenuToggle
7
- isDisabled
8
7
  splitButtonOptions={{
9
- items: [
10
- <MenuToggleCheckbox
11
- id="split-button-checkbox-disabled-example"
12
- key="split-checkbox-disabled"
13
- aria-label="Select all"
14
- isDisabled
15
- />
16
- ]
8
+ items: [<MenuToggleCheckbox id="split-button-checkbox-example" key="split-checkbox" aria-label="Select all" />]
17
9
  }}
18
10
  aria-label="Menu toggle with checkbox split button"
19
11
  />{' '}
20
12
  <MenuToggle
13
+ variant="primary"
21
14
  splitButtonOptions={{
22
15
  items: [<MenuToggleCheckbox id="split-button-checkbox-example" key="split-checkbox" aria-label="Select all" />]
23
16
  }}
24
17
  aria-label="Menu toggle with checkbox split button"
25
18
  />{' '}
26
19
  <MenuToggle
27
- isExpanded
20
+ variant="secondary"
28
21
  splitButtonOptions={{
29
- items: [
30
- <MenuToggleCheckbox
31
- id="split-button-checkbox-expanded-example"
32
- key="split-checkbox-expanded"
33
- aria-label="Select all"
34
- />
35
- ]
22
+ items: [<MenuToggleCheckbox id="split-button-checkbox-example" key="split-checkbox" aria-label="Select all" />]
36
23
  }}
37
24
  aria-label="Menu toggle with checkbox split button"
38
25
  />