@patternfly/react-core 5.0.0-alpha.15 → 5.0.0-alpha.17

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 (275) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/components/ClipboardCopy/ClipboardCopyButton.d.ts.map +1 -1
  3. package/components/ClipboardCopy/ClipboardCopyButton.js +3 -2
  4. package/components/ClipboardCopy/ClipboardCopyButton.js.map +1 -1
  5. package/components/ContextSelector/ContextSelector.d.ts.map +1 -1
  6. package/components/ContextSelector/ContextSelector.js +1 -1
  7. package/components/ContextSelector/ContextSelector.js.map +1 -1
  8. package/components/DatePicker/DatePicker.d.ts.map +1 -1
  9. package/components/DatePicker/DatePicker.js +6 -5
  10. package/components/DatePicker/DatePicker.js.map +1 -1
  11. package/components/Drawer/DrawerPanelContent.d.ts +1 -1
  12. package/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  13. package/components/Drawer/DrawerPanelContent.js +5 -5
  14. package/components/Drawer/DrawerPanelContent.js.map +1 -1
  15. package/components/Dropdown/DropdownWithContext.d.ts.map +1 -1
  16. package/components/Dropdown/DropdownWithContext.js +4 -3
  17. package/components/Dropdown/DropdownWithContext.js.map +1 -1
  18. package/components/DualListSelector/DualListSelectorControl.js +1 -1
  19. package/components/DualListSelector/DualListSelectorControl.js.map +1 -1
  20. package/components/InputGroup/InputGroup.d.ts +3 -2
  21. package/components/InputGroup/InputGroup.d.ts.map +1 -1
  22. package/components/InputGroup/InputGroup.js +3 -2
  23. package/components/InputGroup/InputGroup.js.map +1 -1
  24. package/components/Label/Label.js +1 -1
  25. package/components/Label/Label.js.map +1 -1
  26. package/components/Menu/MenuContent.d.ts +1 -1
  27. package/components/Menu/MenuContent.d.ts.map +1 -1
  28. package/components/Nav/NavItem.d.ts.map +1 -1
  29. package/components/Nav/NavItem.js +3 -3
  30. package/components/Nav/NavItem.js.map +1 -1
  31. package/components/Pagination/PaginationOptionsMenu.d.ts.map +1 -1
  32. package/components/Pagination/PaginationOptionsMenu.js +4 -4
  33. package/components/Pagination/PaginationOptionsMenu.js.map +1 -1
  34. package/components/Popover/Popover.d.ts +9 -8
  35. package/components/Popover/Popover.d.ts.map +1 -1
  36. package/components/Popover/Popover.js +4 -3
  37. package/components/Popover/Popover.js.map +1 -1
  38. package/components/SearchInput/SearchInput.d.ts.map +1 -1
  39. package/components/SearchInput/SearchInput.js +5 -3
  40. package/components/SearchInput/SearchInput.js.map +1 -1
  41. package/components/Select/Select.d.ts.map +1 -1
  42. package/components/Select/Select.js +3 -2
  43. package/components/Select/Select.js.map +1 -1
  44. package/components/SkipToContent/SkipToContent.d.ts +2 -11
  45. package/components/SkipToContent/SkipToContent.d.ts.map +1 -1
  46. package/components/SkipToContent/SkipToContent.js +6 -20
  47. package/components/SkipToContent/SkipToContent.js.map +1 -1
  48. package/components/Slider/Slider.js +5 -5
  49. package/components/Slider/Slider.js.map +1 -1
  50. package/components/Tabs/OverflowTab.js +5 -5
  51. package/components/Tabs/OverflowTab.js.map +1 -1
  52. package/components/TimePicker/TimePicker.d.ts.map +1 -1
  53. package/components/TimePicker/TimePicker.js +1 -1
  54. package/components/TimePicker/TimePicker.js.map +1 -1
  55. package/components/Tooltip/Tooltip.d.ts +8 -7
  56. package/components/Tooltip/Tooltip.d.ts.map +1 -1
  57. package/components/Tooltip/Tooltip.js +5 -4
  58. package/components/Tooltip/Tooltip.js.map +1 -1
  59. package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.d.ts.map +1 -1
  60. package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.js +3 -2
  61. package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.js.map +1 -1
  62. package/dist/esm/components/ContextSelector/ContextSelector.d.ts.map +1 -1
  63. package/dist/esm/components/ContextSelector/ContextSelector.js +1 -1
  64. package/dist/esm/components/ContextSelector/ContextSelector.js.map +1 -1
  65. package/dist/esm/components/DatePicker/DatePicker.d.ts.map +1 -1
  66. package/dist/esm/components/DatePicker/DatePicker.js +6 -5
  67. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  68. package/dist/esm/components/Drawer/DrawerPanelContent.d.ts +1 -1
  69. package/dist/esm/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  70. package/dist/esm/components/Drawer/DrawerPanelContent.js +5 -5
  71. package/dist/esm/components/Drawer/DrawerPanelContent.js.map +1 -1
  72. package/dist/esm/components/Dropdown/DropdownWithContext.d.ts.map +1 -1
  73. package/dist/esm/components/Dropdown/DropdownWithContext.js +4 -3
  74. package/dist/esm/components/Dropdown/DropdownWithContext.js.map +1 -1
  75. package/dist/esm/components/DualListSelector/DualListSelectorControl.js +1 -1
  76. package/dist/esm/components/DualListSelector/DualListSelectorControl.js.map +1 -1
  77. package/dist/esm/components/InputGroup/InputGroup.d.ts +3 -2
  78. package/dist/esm/components/InputGroup/InputGroup.d.ts.map +1 -1
  79. package/dist/esm/components/InputGroup/InputGroup.js +3 -2
  80. package/dist/esm/components/InputGroup/InputGroup.js.map +1 -1
  81. package/dist/esm/components/Label/Label.js +1 -1
  82. package/dist/esm/components/Label/Label.js.map +1 -1
  83. package/dist/esm/components/Menu/MenuContent.d.ts +1 -1
  84. package/dist/esm/components/Menu/MenuContent.d.ts.map +1 -1
  85. package/dist/esm/components/Nav/NavItem.d.ts.map +1 -1
  86. package/dist/esm/components/Nav/NavItem.js +3 -3
  87. package/dist/esm/components/Nav/NavItem.js.map +1 -1
  88. package/dist/esm/components/Pagination/PaginationOptionsMenu.d.ts.map +1 -1
  89. package/dist/esm/components/Pagination/PaginationOptionsMenu.js +4 -4
  90. package/dist/esm/components/Pagination/PaginationOptionsMenu.js.map +1 -1
  91. package/dist/esm/components/Popover/Popover.d.ts +9 -8
  92. package/dist/esm/components/Popover/Popover.d.ts.map +1 -1
  93. package/dist/esm/components/Popover/Popover.js +4 -3
  94. package/dist/esm/components/Popover/Popover.js.map +1 -1
  95. package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
  96. package/dist/esm/components/SearchInput/SearchInput.js +5 -3
  97. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  98. package/dist/esm/components/Select/Select.d.ts.map +1 -1
  99. package/dist/esm/components/Select/Select.js +3 -2
  100. package/dist/esm/components/Select/Select.js.map +1 -1
  101. package/dist/esm/components/SkipToContent/SkipToContent.d.ts +2 -11
  102. package/dist/esm/components/SkipToContent/SkipToContent.d.ts.map +1 -1
  103. package/dist/esm/components/SkipToContent/SkipToContent.js +6 -20
  104. package/dist/esm/components/SkipToContent/SkipToContent.js.map +1 -1
  105. package/dist/esm/components/Slider/Slider.js +5 -5
  106. package/dist/esm/components/Slider/Slider.js.map +1 -1
  107. package/dist/esm/components/Tabs/OverflowTab.js +5 -5
  108. package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
  109. package/dist/esm/components/TimePicker/TimePicker.d.ts.map +1 -1
  110. package/dist/esm/components/TimePicker/TimePicker.js +1 -1
  111. package/dist/esm/components/TimePicker/TimePicker.js.map +1 -1
  112. package/dist/esm/components/Tooltip/Tooltip.d.ts +8 -7
  113. package/dist/esm/components/Tooltip/Tooltip.d.ts.map +1 -1
  114. package/dist/esm/components/Tooltip/Tooltip.js +5 -4
  115. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  116. package/dist/esm/helpers/Popper/Popper.d.ts +10 -7
  117. package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
  118. package/dist/esm/helpers/Popper/Popper.js +11 -14
  119. package/dist/esm/helpers/Popper/Popper.js.map +1 -1
  120. package/dist/esm/next/components/Dropdown/Dropdown.d.ts.map +1 -1
  121. package/dist/esm/next/components/Dropdown/Dropdown.js +1 -1
  122. package/dist/esm/next/components/Dropdown/Dropdown.js.map +1 -1
  123. package/dist/esm/next/components/Select/Select.d.ts.map +1 -1
  124. package/dist/esm/next/components/Select/Select.js +1 -1
  125. package/dist/esm/next/components/Select/Select.js.map +1 -1
  126. package/dist/js/components/ClipboardCopy/ClipboardCopyButton.d.ts.map +1 -1
  127. package/dist/js/components/ClipboardCopy/ClipboardCopyButton.js +3 -2
  128. package/dist/js/components/ClipboardCopy/ClipboardCopyButton.js.map +1 -1
  129. package/dist/js/components/ContextSelector/ContextSelector.d.ts.map +1 -1
  130. package/dist/js/components/ContextSelector/ContextSelector.js +1 -1
  131. package/dist/js/components/ContextSelector/ContextSelector.js.map +1 -1
  132. package/dist/js/components/DatePicker/DatePicker.d.ts.map +1 -1
  133. package/dist/js/components/DatePicker/DatePicker.js +6 -5
  134. package/dist/js/components/DatePicker/DatePicker.js.map +1 -1
  135. package/dist/js/components/Drawer/DrawerPanelContent.d.ts +1 -1
  136. package/dist/js/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
  137. package/dist/js/components/Drawer/DrawerPanelContent.js +5 -5
  138. package/dist/js/components/Drawer/DrawerPanelContent.js.map +1 -1
  139. package/dist/js/components/Dropdown/DropdownWithContext.d.ts.map +1 -1
  140. package/dist/js/components/Dropdown/DropdownWithContext.js +4 -3
  141. package/dist/js/components/Dropdown/DropdownWithContext.js.map +1 -1
  142. package/dist/js/components/DualListSelector/DualListSelectorControl.js +1 -1
  143. package/dist/js/components/DualListSelector/DualListSelectorControl.js.map +1 -1
  144. package/dist/js/components/InputGroup/InputGroup.d.ts +3 -2
  145. package/dist/js/components/InputGroup/InputGroup.d.ts.map +1 -1
  146. package/dist/js/components/InputGroup/InputGroup.js +5 -4
  147. package/dist/js/components/InputGroup/InputGroup.js.map +1 -1
  148. package/dist/js/components/Label/Label.js +1 -1
  149. package/dist/js/components/Label/Label.js.map +1 -1
  150. package/dist/js/components/Menu/MenuContent.d.ts +1 -1
  151. package/dist/js/components/Menu/MenuContent.d.ts.map +1 -1
  152. package/dist/js/components/Nav/NavItem.d.ts.map +1 -1
  153. package/dist/js/components/Nav/NavItem.js +3 -3
  154. package/dist/js/components/Nav/NavItem.js.map +1 -1
  155. package/dist/js/components/Pagination/PaginationOptionsMenu.d.ts.map +1 -1
  156. package/dist/js/components/Pagination/PaginationOptionsMenu.js +4 -4
  157. package/dist/js/components/Pagination/PaginationOptionsMenu.js.map +1 -1
  158. package/dist/js/components/Popover/Popover.d.ts +9 -8
  159. package/dist/js/components/Popover/Popover.d.ts.map +1 -1
  160. package/dist/js/components/Popover/Popover.js +4 -3
  161. package/dist/js/components/Popover/Popover.js.map +1 -1
  162. package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
  163. package/dist/js/components/SearchInput/SearchInput.js +5 -3
  164. package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
  165. package/dist/js/components/Select/Select.d.ts.map +1 -1
  166. package/dist/js/components/Select/Select.js +3 -2
  167. package/dist/js/components/Select/Select.js.map +1 -1
  168. package/dist/js/components/SkipToContent/SkipToContent.d.ts +2 -11
  169. package/dist/js/components/SkipToContent/SkipToContent.d.ts.map +1 -1
  170. package/dist/js/components/SkipToContent/SkipToContent.js +7 -21
  171. package/dist/js/components/SkipToContent/SkipToContent.js.map +1 -1
  172. package/dist/js/components/Slider/Slider.js +5 -5
  173. package/dist/js/components/Slider/Slider.js.map +1 -1
  174. package/dist/js/components/Tabs/OverflowTab.js +5 -5
  175. package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
  176. package/dist/js/components/TimePicker/TimePicker.d.ts.map +1 -1
  177. package/dist/js/components/TimePicker/TimePicker.js +1 -1
  178. package/dist/js/components/TimePicker/TimePicker.js.map +1 -1
  179. package/dist/js/components/Tooltip/Tooltip.d.ts +8 -7
  180. package/dist/js/components/Tooltip/Tooltip.d.ts.map +1 -1
  181. package/dist/js/components/Tooltip/Tooltip.js +5 -4
  182. package/dist/js/components/Tooltip/Tooltip.js.map +1 -1
  183. package/dist/js/helpers/Popper/Popper.d.ts +10 -7
  184. package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
  185. package/dist/js/helpers/Popper/Popper.js +11 -14
  186. package/dist/js/helpers/Popper/Popper.js.map +1 -1
  187. package/dist/js/next/components/Dropdown/Dropdown.d.ts.map +1 -1
  188. package/dist/js/next/components/Dropdown/Dropdown.js +1 -1
  189. package/dist/js/next/components/Dropdown/Dropdown.js.map +1 -1
  190. package/dist/js/next/components/Select/Select.d.ts.map +1 -1
  191. package/dist/js/next/components/Select/Select.js +1 -1
  192. package/dist/js/next/components/Select/Select.js.map +1 -1
  193. package/dist/umd/react-core.min.js +2 -2
  194. package/helpers/Popper/Popper.d.ts +10 -7
  195. package/helpers/Popper/Popper.d.ts.map +1 -1
  196. package/helpers/Popper/Popper.js +11 -14
  197. package/helpers/Popper/Popper.js.map +1 -1
  198. package/next/components/Dropdown/Dropdown.d.ts.map +1 -1
  199. package/next/components/Dropdown/Dropdown.js +1 -1
  200. package/next/components/Dropdown/Dropdown.js.map +1 -1
  201. package/next/components/Select/Select.d.ts.map +1 -1
  202. package/next/components/Select/Select.js +1 -1
  203. package/next/components/Select/Select.js.map +1 -1
  204. package/package.json +2 -2
  205. package/src/components/ClipboardCopy/ClipboardCopyButton.tsx +30 -24
  206. package/src/components/ClipboardCopy/__tests__/Generated/__snapshots__/ClipboardCopy.test.tsx.snap +23 -27
  207. package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyButton.test.tsx.snap +23 -27
  208. package/src/components/ContextSelector/ContextSelector.tsx +2 -0
  209. package/src/components/DatePicker/DatePicker.tsx +7 -5
  210. package/src/components/DatePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +732 -744
  211. package/src/components/Drawer/DrawerPanelContent.tsx +9 -10
  212. package/src/components/Drawer/examples/DrawerResizableOnRight.tsx +1 -1
  213. package/src/components/Dropdown/DropdownWithContext.tsx +6 -1
  214. package/src/components/DualListSelector/DualListSelectorControl.tsx +1 -1
  215. package/src/components/InputGroup/InputGroup.tsx +7 -3
  216. package/src/components/Label/Label.tsx +1 -1
  217. package/src/components/LabelGroup/examples/LabelGroupEditableAddDropdown.tsx +10 -1
  218. package/src/components/LabelGroup/examples/LabelGroupEditableAddModal.tsx +4 -0
  219. package/src/components/Menu/MenuContent.tsx +1 -1
  220. package/src/components/Nav/NavItem.tsx +4 -3
  221. package/src/components/Nav/__tests__/__snapshots__/Nav.test.tsx.snap +7 -11
  222. package/src/components/Page/__tests__/__snapshots__/Page.test.tsx.snap +13 -5
  223. package/src/components/Pagination/PaginationOptionsMenu.tsx +5 -3
  224. package/src/components/Pagination/__tests__/Generated/__snapshots__/PaginationOptionsMenu.test.tsx.snap +35 -39
  225. package/src/components/Pagination/__tests__/__snapshots__/Pagination.test.tsx.snap +694 -774
  226. package/src/components/Popover/Popover.tsx +14 -10
  227. package/src/components/Popover/examples/PopoverReactRef.tsx +1 -1
  228. package/src/components/Popover/examples/PopoverSelectorRef.tsx +1 -1
  229. package/src/components/ProgressStepper/examples/ProgressStepperHelpPopover.tsx +6 -6
  230. package/src/components/SearchInput/SearchInput.tsx +6 -2
  231. package/src/components/SearchInput/__tests__/__snapshots__/SearchInput.test.tsx.snap +411 -427
  232. package/src/components/Select/Select.tsx +4 -0
  233. package/src/components/SkipToContent/SkipToContent.tsx +15 -32
  234. package/src/components/SkipToContent/__tests__/SkipToContent.test.tsx +0 -5
  235. package/src/components/SkipToContent/__tests__/__snapshots__/SkipToContent.test.tsx.snap +12 -13
  236. package/src/components/Slider/Slider.tsx +5 -5
  237. package/src/components/Slider/_tests_/__snapshots__/Slider.test.tsx.snap +10 -14
  238. package/src/components/Tabs/OverflowTab.tsx +5 -5
  239. package/src/components/Tabs/examples/TabsHelp.tsx +1 -1
  240. package/src/components/Tabs/examples/TabsHelpAndClose.tsx +6 -2
  241. package/src/components/Tabs/examples/TabsTooltipReactRef.tsx +1 -1
  242. package/src/components/TimePicker/TimePicker.tsx +2 -0
  243. package/src/components/Tooltip/Tooltip.tsx +15 -11
  244. package/src/components/Tooltip/__tests__/Tooltip.test.tsx +6 -2
  245. package/src/components/Tooltip/__tests__/__snapshots__/Tooltip.test.tsx.snap +4 -12
  246. package/src/components/Tooltip/examples/TooltipReactRef.tsx +1 -1
  247. package/src/components/Tooltip/examples/TooltipSelectorRef.tsx +1 -1
  248. package/src/demos/ComposableMenu/examples/ComposableActionsMenu.tsx +11 -2
  249. package/src/demos/ComposableMenu/examples/ComposableApplicationLauncher.tsx +23 -14
  250. package/src/demos/ComposableMenu/examples/ComposableContextSelector.tsx +11 -2
  251. package/src/demos/ComposableMenu/examples/ComposableDateSelect.tsx +10 -1
  252. package/src/demos/ComposableMenu/examples/ComposableDrilldownMenu.tsx +10 -1
  253. package/src/demos/ComposableMenu/examples/ComposableDropdwnVariants.tsx +7 -5
  254. package/src/demos/ComposableMenu/examples/ComposableFlyout.tsx +11 -2
  255. package/src/demos/ComposableMenu/examples/ComposableMultipleTypeaheadSelect.tsx +12 -10
  256. package/src/demos/ComposableMenu/examples/ComposableOptionsMenuVariants.tsx +1 -1
  257. package/src/demos/ComposableMenu/examples/ComposableSimpleCheckboxSelect.tsx +4 -4
  258. package/src/demos/ComposableMenu/examples/ComposableSimpleDropdown.tsx +2 -2
  259. package/src/demos/ComposableMenu/examples/ComposableSimpleSelect.tsx +1 -1
  260. package/src/demos/ComposableMenu/examples/ComposableTreeViewMenu.tsx +22 -11
  261. package/src/demos/ComposableMenu/examples/ComposableTypeaheadSelect.tsx +11 -9
  262. package/src/demos/Filters/examples/FilterAttributeSearch.tsx +13 -5
  263. package/src/demos/Filters/examples/FilterCheckboxSelect.tsx +16 -7
  264. package/src/demos/Filters/examples/FilterFaceted.tsx +18 -9
  265. package/src/demos/Filters/examples/FilterMixedSelectGroup.tsx +11 -5
  266. package/src/demos/Filters/examples/FilterSameSelectGroup.tsx +10 -4
  267. package/src/demos/Filters/examples/FilterSearchInput.tsx +6 -4
  268. package/src/demos/Filters/examples/FilterSingleSelect.tsx +14 -5
  269. package/src/demos/PasswordGenerator.md +6 -2
  270. package/src/demos/SearchInput/SearchInput.md +5 -1
  271. package/src/demos/examples/TextInputGroup/AttributeValueFiltering.tsx +13 -4
  272. package/src/demos/examples/TextInputGroup/AutoCompleteSearch.tsx +5 -3
  273. package/src/helpers/Popper/Popper.tsx +31 -23
  274. package/src/next/components/Dropdown/Dropdown.tsx +2 -0
  275. package/src/next/components/Select/Select.tsx +2 -0
@@ -60,11 +60,18 @@ export interface PopoverProps {
60
60
  */
61
61
  bodyContent: React.ReactNode | ((hide: () => void) => React.ReactNode);
62
62
  /**
63
- * The reference element to which the popover is relatively placed to. If you cannot wrap
64
- * the reference with the Popover, you can use the reference prop instead.
63
+ * The trigger reference element to which the popover is relatively placed to. If you cannot wrap
64
+ * the element with the Popover, you can use the triggerRef prop instead.
65
65
  * Usage: <Popover><Button>Reference</Button></Popover>
66
66
  */
67
67
  children?: ReactElement<any>;
68
+ /**
69
+ * The trigger reference element to which the popover is relatively placed to. If you can wrap the
70
+ * element with the popover, you can use the children prop instead, or both props together.
71
+ * When passed along with the trigger prop, the div element that wraps the trigger will be removed.
72
+ * Usage: <Popover triggerRef={() => document.getElementById('reference-element')} />
73
+ */
74
+ triggerRef?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
68
75
  /** Additional classes added to the popover. */
69
76
  className?: string;
70
77
  /** Accessible label for the close button. */
@@ -184,12 +191,6 @@ export interface PopoverProps {
184
191
  | 'left-end'
185
192
  | 'right-start'
186
193
  | 'right-end';
187
- /**
188
- * The reference element to which the popover is relatively placed to. If you can wrap the
189
- * reference with the popover, you can use the children prop instead.
190
- * Usage: <Popover reference={() => document.getElementById('reference-element')} />
191
- */
192
- reference?: HTMLElement | (() => HTMLElement) | React.RefObject<any>;
193
194
  /**
194
195
  * Callback function that is only invoked when isVisible is also controlled. Called when the
195
196
  * popover close button is clicked, the enter key was used on it, or the escape key is used.
@@ -262,7 +263,7 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
262
263
  animationDuration = 300,
263
264
  id,
264
265
  withFocusTrap: propWithFocusTrap,
265
- reference,
266
+ triggerRef,
266
267
  hasNoPadding = false,
267
268
  hasAutoWidth = false,
268
269
  ...rest
@@ -277,6 +278,7 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
277
278
  const transitionTimerRef = React.useRef(null);
278
279
  const showTimerRef = React.useRef(null);
279
280
  const hideTimerRef = React.useRef(null);
281
+ const popoverRef = React.useRef(null);
280
282
 
281
283
  React.useEffect(() => {
282
284
  onMount();
@@ -389,6 +391,7 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
389
391
  };
390
392
  const content = (
391
393
  <FocusTrap
394
+ ref={popoverRef}
392
395
  active={focusTrapActive}
393
396
  focusTrapOptions={{
394
397
  returnFocusOnDeactivate: true,
@@ -458,8 +461,9 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
458
461
  <PopoverContext.Provider value={{ headerComponent }}>
459
462
  <Popper
460
463
  trigger={children}
461
- reference={reference}
464
+ triggerRef={triggerRef}
462
465
  popper={content}
466
+ popperRef={popoverRef}
463
467
  popperMatchesTriggerWidth={false}
464
468
  appendTo={appendTo}
465
469
  isVisible={visible}
@@ -16,7 +16,7 @@ export const PopoverReactRef: React.FunctionComponent = () => {
16
16
  </div>
17
17
  }
18
18
  footerContent="Popover footer"
19
- reference={popoverRef}
19
+ triggerRef={popoverRef}
20
20
  />
21
21
  </div>
22
22
  );
@@ -13,7 +13,7 @@ export const PopoverSelectorRef: React.FunctionComponent = () => (
13
13
  </div>
14
14
  }
15
15
  footerContent="Popover footer"
16
- reference={() => document.getElementById('popover-selector') as HTMLButtonElement}
16
+ triggerRef={() => document.getElementById('popover-selector') as HTMLButtonElement}
17
17
  />
18
18
  </div>
19
19
  );
@@ -8,12 +8,12 @@ export const PopoverProgressStep = () => (
8
8
  id="popover-step1"
9
9
  titleId="popover-step1-title"
10
10
  aria-label="completed step with popover, step with success"
11
- popoverRender={stepRef => (
11
+ popoverRender={(stepRef) => (
12
12
  <Popover
13
13
  aria-label="First step help"
14
14
  headerContent={<div>First step popover</div>}
15
15
  bodyContent={<div>Additional info or help text content.</div>}
16
- reference={stepRef}
16
+ triggerRef={stepRef}
17
17
  position="right"
18
18
  />
19
19
  )}
@@ -25,12 +25,12 @@ export const PopoverProgressStep = () => (
25
25
  id="popover-step2"
26
26
  titleId="popover-step2-title"
27
27
  aria-label="completed step with popover, step with danger"
28
- popoverRender={stepRef => (
28
+ popoverRender={(stepRef) => (
29
29
  <Popover
30
30
  aria-label="Second step help"
31
31
  headerContent={<div>Second step popover</div>}
32
32
  bodyContent={<div>Additional info or help text content.</div>}
33
- reference={stepRef}
33
+ triggerRef={stepRef}
34
34
  position="right"
35
35
  />
36
36
  )}
@@ -42,12 +42,12 @@ export const PopoverProgressStep = () => (
42
42
  id="popover-step3"
43
43
  titleId="popover-step3-title"
44
44
  aria-label="step with popover"
45
- popoverRender={stepRef => (
45
+ popoverRender={(stepRef) => (
46
46
  <Popover
47
47
  aria-label="Third step help"
48
48
  headerContent={<div>Third step popover</div>}
49
49
  bodyContent={<div>Additional info or help text content.</div>}
50
- reference={stepRef}
50
+ triggerRef={stepRef}
51
51
  position="right"
52
52
  />
53
53
  )}
@@ -172,6 +172,8 @@ const SearchInputBase: React.FunctionComponent<SearchInputProps> = ({
172
172
  const ref = React.useRef(null);
173
173
  const searchInputInputRef = innerRef || ref;
174
174
  const searchInputExpandableToggleRef = React.useRef(null);
175
+ const triggerRef = React.useRef(null);
176
+ const popperRef = React.useRef(null);
175
177
  const [focusAfterExpandChange, setFocusAfterExpandChange] = React.useState(false);
176
178
 
177
179
  const { isExpanded, onToggleExpand, toggleAriaLabel } = expandableInput || {};
@@ -371,7 +373,7 @@ const SearchInputBase: React.FunctionComponent<SearchInputProps> = ({
371
373
  };
372
374
 
373
375
  const buildSearchTextInputGroupWithExtraButtons = ({ ...searchInputProps } = {}) => (
374
- <InputGroup {...searchInputProps}>
376
+ <InputGroup ref={triggerRef} {...searchInputProps}>
375
377
  {buildTextInputGroup()}
376
378
  {(attributes.length > 0 || onToggleAdvancedSearch) && (
377
379
  <Button
@@ -413,7 +415,7 @@ const SearchInputBase: React.FunctionComponent<SearchInputProps> = ({
413
415
  if (!!onSearch || attributes.length > 0 || !!onToggleAdvancedSearch) {
414
416
  if (attributes.length > 0) {
415
417
  const AdvancedSearch = (
416
- <div>
418
+ <div ref={popperRef}>
417
419
  <AdvancedSearchMenu
418
420
  value={value}
419
421
  parentRef={searchInputRef}
@@ -438,7 +440,9 @@ const SearchInputBase: React.FunctionComponent<SearchInputProps> = ({
438
440
  <div className={css(className)} ref={searchInputRef} {...props}>
439
441
  <Popper
440
442
  trigger={buildSearchTextInputGroupWithExtraButtons()}
443
+ triggerRef={triggerRef}
441
444
  popper={AdvancedSearch}
445
+ popperRef={popperRef}
442
446
  isVisible={isSearchMenuOpen}
443
447
  enableFlip={true}
444
448
  appendTo={() => appendTo || searchInputRef.current}