@patternfly/react-core 5.0.0-alpha.61 → 5.0.0-alpha.63

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 (239) 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/Alert/examples/Alert.md +5 -5
  125. package/src/components/Breadcrumb/examples/BreadcrumbBasic.tsx +1 -1
  126. package/src/components/Button/examples/ButtonVariations.tsx +4 -4
  127. package/src/components/CalendarMonth/CalendarMonth.tsx +25 -15
  128. package/src/components/Card/examples/CardBasic.tsx +1 -1
  129. package/src/components/DatePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +22 -31
  130. package/src/components/Dropdown/examples/DropdownBasic.tsx +1 -0
  131. package/src/components/FormSelect/examples/FormSelectBasic.tsx +1 -1
  132. package/src/components/LoginPage/examples/LoginPageLanguageSelect.tsx +28 -19
  133. package/src/components/MenuToggle/MenuToggle.tsx +2 -1
  134. package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +18 -10
  135. package/src/components/Modal/examples/ModalBasic.tsx +2 -1
  136. package/src/components/Nav/examples/NavDefault.tsx +1 -1
  137. package/src/components/Pagination/examples/PaginationTop.tsx +1 -0
  138. package/src/components/Select/Select.tsx +113 -1475
  139. package/src/components/Select/SelectGroup.tsx +13 -25
  140. package/src/{next/components → components}/Select/SelectList.tsx +1 -1
  141. package/src/components/Select/SelectOption.tsx +22 -452
  142. package/src/components/Select/examples/Select.md +11 -2896
  143. package/src/{next/components → components}/Select/examples/SelectBasic.tsx +1 -2
  144. package/src/{next/components → components}/Select/examples/SelectCheckbox.tsx +1 -2
  145. package/src/{next/components → components}/Select/examples/SelectGrouped.tsx +1 -2
  146. package/src/{next/components → components}/Select/examples/SelectMultiTypeahead.tsx +4 -1
  147. package/src/{next/components → components}/Select/examples/SelectTypeahead.tsx +4 -1
  148. package/src/components/Select/index.ts +1 -1
  149. package/src/components/Switch/examples/SwitchBasic.tsx +1 -0
  150. package/src/components/Toolbar/__tests__/Toolbar.test.tsx +3 -21
  151. package/src/components/Toolbar/__tests__/__snapshots__/Toolbar.test.tsx.snap +12 -124
  152. package/src/components/Toolbar/examples/Toolbar.md +0 -1
  153. package/src/components/Toolbar/examples/ToolbarComponentManagedToggleGroups.tsx +59 -63
  154. package/src/components/Toolbar/examples/ToolbarConsumerManagedToggleGroups.tsx +58 -62
  155. package/src/components/Toolbar/examples/ToolbarCustomChipGroupContent.tsx +107 -23
  156. package/src/components/Toolbar/examples/ToolbarGroups.tsx +96 -59
  157. package/src/components/Toolbar/examples/ToolbarStacked.tsx +56 -39
  158. package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +115 -28
  159. package/src/components/Tooltip/examples/TooltipOptions.tsx +53 -23
  160. package/src/demos/Card/Card.md +39 -23
  161. package/src/demos/CardDemos.md +99 -46
  162. package/src/demos/Toolbar.md +51 -21
  163. package/src/demos/examples/Tabs/TabsAndTable.tsx +5 -22
  164. package/src/deprecated/components/ContextSelector/examples/ContextSelectorBasic.tsx +1 -0
  165. package/src/deprecated/components/OptionsMenu/examples/OptionsMenu.md +2 -1
  166. package/src/deprecated/components/Select/Select.tsx +1495 -0
  167. package/src/deprecated/components/Select/SelectGroup.tsx +36 -0
  168. package/src/{components → deprecated/components}/Select/SelectMenu.tsx +2 -2
  169. package/src/deprecated/components/Select/SelectOption.tsx +461 -0
  170. package/src/{components → deprecated/components}/Select/SelectToggle.tsx +3 -3
  171. package/src/{components → deprecated/components}/Select/__tests__/Select.test.tsx +1 -1
  172. package/src/deprecated/components/Select/examples/Select.md +2937 -0
  173. package/src/{next → deprecated}/components/Select/index.ts +1 -1
  174. package/src/deprecated/components/index.ts +1 -0
  175. package/src/next/components/index.ts +0 -1
  176. package/dist/esm/components/Select/SelectMenu.d.ts.map +0 -1
  177. package/dist/esm/components/Select/SelectMenu.js.map +0 -1
  178. package/dist/esm/components/Select/SelectToggle.d.ts.map +0 -1
  179. package/dist/esm/components/Select/SelectToggle.js.map +0 -1
  180. package/dist/esm/components/Select/selectConstants.d.ts.map +0 -1
  181. package/dist/esm/components/Select/selectConstants.js.map +0 -1
  182. package/dist/esm/next/components/Select/Select.d.ts +0 -33
  183. package/dist/esm/next/components/Select/Select.d.ts.map +0 -1
  184. package/dist/esm/next/components/Select/Select.js +0 -56
  185. package/dist/esm/next/components/Select/Select.js.map +0 -1
  186. package/dist/esm/next/components/Select/SelectGroup.d.ts +0 -12
  187. package/dist/esm/next/components/Select/SelectGroup.d.ts.map +0 -1
  188. package/dist/esm/next/components/Select/SelectGroup.js +0 -10
  189. package/dist/esm/next/components/Select/SelectGroup.js.map +0 -1
  190. package/dist/esm/next/components/Select/SelectList.d.ts.map +0 -1
  191. package/dist/esm/next/components/Select/SelectList.js.map +0 -1
  192. package/dist/esm/next/components/Select/SelectOption.d.ts +0 -20
  193. package/dist/esm/next/components/Select/SelectOption.d.ts.map +0 -1
  194. package/dist/esm/next/components/Select/SelectOption.js +0 -10
  195. package/dist/esm/next/components/Select/SelectOption.js.map +0 -1
  196. package/dist/esm/next/components/Select/index.d.ts.map +0 -1
  197. package/dist/esm/next/components/Select/index.js.map +0 -1
  198. package/dist/js/components/Select/SelectMenu.d.ts.map +0 -1
  199. package/dist/js/components/Select/SelectMenu.js.map +0 -1
  200. package/dist/js/components/Select/SelectToggle.d.ts.map +0 -1
  201. package/dist/js/components/Select/SelectToggle.js.map +0 -1
  202. package/dist/js/components/Select/selectConstants.d.ts.map +0 -1
  203. package/dist/js/components/Select/selectConstants.js.map +0 -1
  204. package/dist/js/next/components/Select/Select.d.ts +0 -33
  205. package/dist/js/next/components/Select/Select.d.ts.map +0 -1
  206. package/dist/js/next/components/Select/Select.js +0 -59
  207. package/dist/js/next/components/Select/Select.js.map +0 -1
  208. package/dist/js/next/components/Select/SelectGroup.d.ts +0 -12
  209. package/dist/js/next/components/Select/SelectGroup.d.ts.map +0 -1
  210. package/dist/js/next/components/Select/SelectGroup.js +0 -14
  211. package/dist/js/next/components/Select/SelectGroup.js.map +0 -1
  212. package/dist/js/next/components/Select/SelectList.d.ts.map +0 -1
  213. package/dist/js/next/components/Select/SelectList.js.map +0 -1
  214. package/dist/js/next/components/Select/SelectOption.d.ts +0 -20
  215. package/dist/js/next/components/Select/SelectOption.d.ts.map +0 -1
  216. package/dist/js/next/components/Select/SelectOption.js +0 -14
  217. package/dist/js/next/components/Select/SelectOption.js.map +0 -1
  218. package/dist/js/next/components/Select/index.d.ts.map +0 -1
  219. package/dist/js/next/components/Select/index.js.map +0 -1
  220. package/src/next/components/Select/Select.tsx +0 -133
  221. package/src/next/components/Select/SelectGroup.tsx +0 -24
  222. package/src/next/components/Select/SelectOption.tsx +0 -31
  223. package/src/next/components/Select/examples/Select.md +0 -38
  224. /package/dist/esm/{components → deprecated/components}/Select/SelectMenu.d.ts +0 -0
  225. /package/dist/esm/{components → deprecated/components}/Select/SelectToggle.d.ts +0 -0
  226. /package/dist/esm/{components → deprecated/components}/Select/selectConstants.d.ts +0 -0
  227. /package/dist/esm/{components → deprecated/components}/Select/selectConstants.js +0 -0
  228. /package/dist/js/{components → deprecated/components}/Select/SelectMenu.d.ts +0 -0
  229. /package/dist/js/{components → deprecated/components}/Select/SelectToggle.d.ts +0 -0
  230. /package/dist/js/{components → deprecated/components}/Select/selectConstants.d.ts +0 -0
  231. /package/dist/js/{components → deprecated/components}/Select/selectConstants.js +0 -0
  232. /package/src/{components → deprecated/components}/Select/__tests__/SelectGroup.test.tsx +0 -0
  233. /package/src/{components → deprecated/components}/Select/__tests__/SelectOption.test.tsx +0 -0
  234. /package/src/{components → deprecated/components}/Select/__tests__/SelectToggle.test.tsx +0 -0
  235. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/Select.test.tsx.snap +0 -0
  236. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectGroup.test.tsx.snap +0 -0
  237. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectOption.test.tsx.snap +0 -0
  238. /package/src/{components → deprecated/components}/Select/__tests__/__snapshots__/SelectToggle.test.tsx.snap +0 -0
  239. /package/src/{components → deprecated/components}/Select/selectConstants.tsx +0 -0
@@ -1,133 +0,0 @@
1
- import React from 'react';
2
- import { css } from '@patternfly/react-styles';
3
- import { Menu, MenuContent, MenuProps } from '../../../components/Menu';
4
- import { Popper, PopperProps } from '../../../helpers/Popper/Popper';
5
- import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '../../../helpers';
6
-
7
- export interface SelectProps extends MenuProps, OUIAProps {
8
- /** Anything which can be rendered in a select */
9
- children?: React.ReactNode;
10
- /** Classes applied to root element of select */
11
- className?: string;
12
- /** Flag to indicate if select is open */
13
- isOpen?: boolean;
14
- /** Single itemId for single select menus, or array of itemIds for multi select. You can also specify isSelected on the SelectOption. */
15
- selected?: any | any[];
16
- /** Renderer for a custom select toggle. Forwards a ref to the toggle. */
17
- toggle: (toggleRef: React.RefObject<any>) => React.ReactNode;
18
- /** Function callback when user selects an option. */
19
- onSelect?: (event?: React.MouseEvent<Element, MouseEvent>, itemId?: string | number) => void;
20
- /** Callback to allow the select component to change the open state of the menu.
21
- * Triggered by clicking outside of the menu, or by pressing either tab or escape. */
22
- onOpenChange?: (isOpen: boolean) => void;
23
- /** Indicates if the select should be without the outer box-shadow */
24
- isPlain?: boolean;
25
- /** @hide Forwarded ref */
26
- innerRef?: React.Ref<HTMLDivElement>;
27
- /** z-index of the select menu */
28
- zIndex?: number;
29
- /** @beta Determines the accessible role of the select. For a checkbox select pass in "menu". */
30
- role?: string;
31
- /** Additional properties to pass to the popper */
32
- popperProps?: Partial<PopperProps>;
33
- }
34
-
35
- const SelectBase: React.FunctionComponent<SelectProps & OUIAProps> = ({
36
- children,
37
- className,
38
- onSelect,
39
- isOpen,
40
- selected,
41
- toggle,
42
- onOpenChange,
43
- isPlain,
44
- innerRef,
45
- zIndex = 9999,
46
- role = 'listbox',
47
- popperProps,
48
- ...props
49
- }: SelectProps & OUIAProps) => {
50
- const localMenuRef = React.useRef<HTMLDivElement>();
51
- const toggleRef = React.useRef<HTMLButtonElement>();
52
- const containerRef = React.useRef<HTMLDivElement>();
53
-
54
- const menuRef = (innerRef as React.RefObject<HTMLDivElement>) || localMenuRef;
55
- React.useEffect(() => {
56
- const handleMenuKeys = (event: KeyboardEvent) => {
57
- // Close the menu on tab or escape if onOpenChange is provided
58
- if (
59
- (isOpen && onOpenChange && menuRef.current?.contains(event.target as Node)) ||
60
- toggleRef.current?.contains(event.target as Node)
61
- ) {
62
- if (event.key === 'Escape' || event.key === 'Tab') {
63
- onOpenChange(false);
64
- toggleRef.current?.focus();
65
- }
66
- }
67
- };
68
-
69
- const handleClick = (event: MouseEvent) => {
70
- // toggle was clicked open via keyboard, focus on first menu item
71
- if (isOpen && toggleRef.current?.contains(event.target as Node) && event.detail === 0) {
72
- setTimeout(() => {
73
- const firstElement = menuRef?.current?.querySelector('li button:not(:disabled),li input:not(:disabled)');
74
- firstElement && (firstElement as HTMLElement).focus();
75
- }, 0);
76
- }
77
-
78
- // If the event is not on the toggle and onOpenChange callback is provided, close the menu
79
- if (isOpen && onOpenChange && !toggleRef?.current?.contains(event.target as Node)) {
80
- if (isOpen && !menuRef.current?.contains(event.target as Node)) {
81
- onOpenChange(false);
82
- }
83
- }
84
- };
85
-
86
- window.addEventListener('keydown', handleMenuKeys);
87
- window.addEventListener('click', handleClick);
88
-
89
- return () => {
90
- window.removeEventListener('keydown', handleMenuKeys);
91
- window.removeEventListener('click', handleClick);
92
- };
93
- }, [isOpen, menuRef, onOpenChange]);
94
-
95
- const menu = (
96
- <Menu
97
- role={role}
98
- className={css(className)}
99
- ref={menuRef}
100
- onSelect={(event, itemId) => onSelect && onSelect(event, itemId)}
101
- isPlain={isPlain}
102
- selected={selected}
103
- {...getOUIAProps(
104
- Select.displayName,
105
- props.ouiaId !== undefined ? props.ouiaId : getDefaultOUIAId(Select.displayName),
106
- props.ouiaSafe !== undefined ? props.ouiaSafe : true
107
- )}
108
- {...props}
109
- >
110
- <MenuContent>{children}</MenuContent>
111
- </Menu>
112
- );
113
- return (
114
- <div ref={containerRef}>
115
- <Popper
116
- trigger={toggle(toggleRef)}
117
- triggerRef={toggleRef}
118
- popper={menu}
119
- popperRef={menuRef}
120
- appendTo={containerRef.current || undefined}
121
- isVisible={isOpen}
122
- zIndex={zIndex}
123
- {...popperProps}
124
- />
125
- </div>
126
- );
127
- };
128
-
129
- export const Select = React.forwardRef((props: SelectProps, ref: React.Ref<any>) => (
130
- <SelectBase innerRef={ref} {...props} />
131
- ));
132
-
133
- Select.displayName = 'Select';
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { css } from '@patternfly/react-styles';
3
- import { MenuGroupProps, MenuGroup } from '../../../components/Menu';
4
-
5
- export interface SelectGroupProps extends Omit<MenuGroupProps, 'ref'> {
6
- /** Anything which can be rendered in a select group */
7
- children: React.ReactNode;
8
- /** Classes applied to root element of select group */
9
- className?: string;
10
- /** Label of the select group */
11
- label?: string;
12
- }
13
-
14
- export const SelectGroup: React.FunctionComponent<SelectGroupProps> = ({
15
- children,
16
- className,
17
- label,
18
- ...props
19
- }: SelectGroupProps) => (
20
- <MenuGroup className={css(className)} label={label} {...props}>
21
- {children}
22
- </MenuGroup>
23
- );
24
- SelectGroup.displayName = 'SelectGroup';
@@ -1,31 +0,0 @@
1
- import React from 'react';
2
- import { css } from '@patternfly/react-styles';
3
- import { MenuItemProps, MenuItem } from '../../../components/Menu';
4
-
5
- export interface SelectOptionProps extends Omit<MenuItemProps, 'ref'> {
6
- /** Anything which can be rendered in a select option */
7
- children?: React.ReactNode;
8
- /** Classes applied to root element of select option */
9
- className?: string;
10
- /** Identifies the component in the Select onSelect callback */
11
- itemId?: any;
12
- /** Indicates the option has a checkbox */
13
- hasCheckbox?: boolean;
14
- /** Indicates the option is disabled */
15
- isDisabled?: boolean;
16
- /** Indicates the option is selected */
17
- isSelected?: boolean;
18
- /** Indicates the option is focused */
19
- isFocused?: boolean;
20
- }
21
-
22
- export const SelectOption: React.FunctionComponent<MenuItemProps> = ({
23
- children,
24
- className,
25
- ...props
26
- }: SelectOptionProps) => (
27
- <MenuItem className={css(className)} {...props}>
28
- {children}
29
- </MenuItem>
30
- );
31
- SelectOption.displayName = 'SelectOption';
@@ -1,38 +0,0 @@
1
- ---
2
- id: Select
3
- section: components
4
- subsection: menus
5
- cssPrefix: pf-c-menu
6
- propComponents: ['Select', SelectGroup, 'SelectOption', 'SelectList']
7
- beta: true
8
- ouia: true
9
- ---
10
-
11
- import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
12
-
13
- ## Examples
14
-
15
- ### Single
16
-
17
- ```ts file="./SelectBasic.tsx"
18
- ```
19
-
20
- ### Grouped single
21
-
22
- ```ts file="./SelectGrouped.tsx"
23
- ```
24
-
25
- ### Checkbox
26
-
27
- ```ts file="./SelectCheckbox.tsx"
28
- ```
29
-
30
- ### Typeahead
31
-
32
- ```ts file="./SelectTypeahead.tsx"
33
- ```
34
-
35
- ### Multiple Typeahead
36
-
37
- ```ts file="./SelectMultiTypeahead.tsx"
38
- ```