Skip to content

Commit 7081e60

Browse files
walterraelastic-renovate-prod[bot]kibanamachine
authored
[7.17] Update @elastic/ml-ui dependencies (main) (elastic#204210) (elastic#207826)
# Backport This will backport the following commits from `main` to `7.17`: - [Update @elastic/ml-ui dependencies (main) (elastic#204210)](elastic#204210) --------- Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> Co-authored-by: kibanamachine <[email protected]>
1 parent a582800 commit 7081e60

File tree

3 files changed

+66
-103
lines changed

3 files changed

+66
-103
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@
340340
"react-markdown": "^4.3.1",
341341
"react-moment-proptypes": "^1.7.0",
342342
"react-monaco-editor": "^0.41.2",
343-
"react-popper-tooltip": "^2.10.1",
343+
"react-popper-tooltip": "^4.4.2",
344344
"react-query": "^3.28.0",
345345
"react-redux": "^7.2.0",
346346
"react-resizable": "^1.7.5",
@@ -546,7 +546,7 @@
546546
"@types/hapi__hapi": "^20.0.9",
547547
"@types/hapi__inert": "^5.2.3",
548548
"@types/has-ansi": "^3.0.0",
549-
"@types/he": "^1.1.1",
549+
"@types/he": "^1.2.3",
550550
"@types/history": "^4.7.9",
551551
"@types/hjson": "^2.4.2",
552552
"@types/http-proxy": "^1.17.4",

x-pack/plugins/ml/public/application/components/chart_tooltip/chart_tooltip.tsx

Lines changed: 30 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,16 @@
55
* 2.0.
66
*/
77

8-
import React, { FC, useCallback, useEffect, useMemo, useRef, useState } from 'react';
8+
import type { FC } from 'react';
9+
import React, { useEffect, useMemo, useState } from 'react';
910
import classNames from 'classnames';
10-
import TooltipTrigger from 'react-popper-tooltip';
11+
import { usePopperTooltip } from 'react-popper-tooltip';
12+
1113
import { EuiFlexGroup, EuiFlexItem } from '@elastic/eui';
1214
import { TooltipValueFormatter } from '@elastic/charts';
1315

1416
import './_index.scss';
1517

16-
import { ChildrenArg, TooltipTriggerProps } from 'react-popper-tooltip/dist/types';
1718
import { ChartTooltipService, ChartTooltipValue, TooltipData } from './chart_tooltip_service';
1819

1920
const renderHeader = (headerData?: ChartTooltipValue, formatter?: TooltipValueFormatter) => {
@@ -77,13 +78,29 @@ export const FormattedTooltip: FC<{ tooltipData: TooltipData }> = ({ tooltipData
7778
*/
7879
const Tooltip: FC<{ service: ChartTooltipService }> = React.memo(({ service }) => {
7980
const [tooltipData, setData] = useState<TooltipData>([]);
80-
const refCallback = useRef<ChildrenArg['triggerRef']>();
81+
82+
const { getTooltipProps, setTooltipRef, setTriggerRef } = usePopperTooltip(
83+
{
84+
placement: 'right-start',
85+
trigger: null,
86+
},
87+
{
88+
modifiers: [
89+
{
90+
name: 'preventOverflow',
91+
options: {
92+
rootBoundary: 'viewport',
93+
},
94+
},
95+
],
96+
}
97+
);
8198

8299
useEffect(() => {
83100
const subscription = service.tooltipState$.subscribe((tooltipState) => {
84-
if (refCallback.current && typeof refCallback.current === 'function') {
101+
if (setTriggerRef && typeof setTriggerRef === 'function') {
85102
// update trigger
86-
refCallback.current(tooltipState.target);
103+
setTriggerRef(tooltipState.target);
87104
}
88105
setData(tooltipState.tooltipData);
89106
});
@@ -92,48 +109,16 @@ const Tooltip: FC<{ service: ChartTooltipService }> = React.memo(({ service }) =
92109
};
93110
}, []);
94111

95-
const triggerCallback = useCallback(
96-
(({ triggerRef }) => {
97-
// obtain the reference to the trigger setter callback
98-
// to update the target based on changes from the service.
99-
refCallback.current = triggerRef;
100-
// actual trigger is resolved by the service, hence don't render
101-
return null;
102-
}) as TooltipTriggerProps['children'],
103-
[]
104-
);
105-
106-
const tooltipCallback = useCallback(
107-
(({ tooltipRef, getTooltipProps }) => {
108-
return (
109-
<div
110-
{...getTooltipProps({
111-
ref: tooltipRef,
112-
})}
113-
>
114-
<FormattedTooltip tooltipData={tooltipData} />
115-
</div>
116-
);
117-
}) as TooltipTriggerProps['tooltip'],
118-
[tooltipData]
119-
);
120-
121112
const isTooltipShown = tooltipData.length > 0;
122113

123114
return (
124-
<TooltipTrigger
125-
modifiers={{
126-
preventOverflow: {
127-
boundariesElement: 'window',
128-
},
129-
}}
130-
placement="right-start"
131-
trigger="none"
132-
tooltipShown={isTooltipShown}
133-
tooltip={tooltipCallback}
134-
>
135-
{triggerCallback}
136-
</TooltipTrigger>
115+
<>
116+
{isTooltipShown && (
117+
<div ref={setTooltipRef} {...getTooltipProps({ className: 'tooltip-container' })}>
118+
<FormattedTooltip tooltipData={tooltipData} />
119+
</div>
120+
)}
121+
</>
137122
);
138123
});
139124

yarn.lock

Lines changed: 34 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -3871,10 +3871,10 @@
38713871
resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1"
38723872
integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==
38733873

3874-
"@popperjs/core@^2.4.0":
3875-
version "2.10.2"
3876-
resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.10.2.tgz#0798c03351f0dea1a5a4cabddf26a55a7cbee590"
3877-
integrity sha512-IXf3XA7+XyN7CP9gGh/XB0UxVMlvARGEgGXLubFICsUMGz6Q+DU+i4gGlpOxTjKvXjkJDJC8YdqdKkDj9qZHEQ==
3874+
"@popperjs/core@^2.11.5", "@popperjs/core@^2.4.0":
3875+
version "2.11.8"
3876+
resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f"
3877+
integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==
38783878

38793879
"@probe.gl/stats@^3.3.0":
38803880
version "3.3.0"
@@ -5324,9 +5324,9 @@
53245324
integrity sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==
53255325

53265326
"@types/aria-query@^5.0.1":
5327-
version "5.0.1"
5328-
resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.1.tgz#3286741fb8f1e1580ac28784add4c7a1d49bdfbc"
5329-
integrity sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==
5327+
version "5.0.4"
5328+
resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708"
5329+
integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==
53305330

53315331
"@types/babel__core@^7.1.14":
53325332
version "7.20.0"
@@ -5827,10 +5827,10 @@
58275827
dependencies:
58285828
"@types/unist" "*"
58295829

5830-
"@types/he@^1.1.1":
5831-
version "1.1.1"
5832-
resolved "https://registry.yarnpkg.com/@types/he/-/he-1.1.1.tgz#19e14033c4ee8f1a702c74dcc6182664839ac2b7"
5833-
integrity sha512-jpzrsR1ns0n3kyWt92QfOUQhIuJGQ9+QGa7M62rO6toe98woQjnsnzjdMtsQXCdvjjmqjS2ZBCC7xKw0cdzU+Q==
5830+
"@types/he@^1.2.3":
5831+
version "1.2.3"
5832+
resolved "https://registry.yarnpkg.com/@types/he/-/he-1.2.3.tgz#c33ca3096f30cbd5d68d78211572de3f9adff75a"
5833+
integrity sha512-q67/qwlxblDzEDvzHhVkwc1gzVWxaNxeyHUBF4xElrvjL11O+Ytze+1fGpBHlr/H9myiBUaUXNnNPmBHxxfAcA==
58345834

58355835
"@types/history@*":
58365836
version "4.7.3"
@@ -8181,9 +8181,9 @@ async@^1.4.2:
81818181
integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=
81828182

81838183
async@^3.2.0, async@^3.2.3:
8184-
version "3.2.4"
8185-
resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c"
8186-
integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==
8184+
version "3.2.6"
8185+
resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce"
8186+
integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==
81878187

81888188
asynckit@^0.4.0:
81898189
version "0.4.0"
@@ -10350,14 +10350,6 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
1035010350
safe-buffer "^5.0.1"
1035110351
sha.js "^2.4.8"
1035210352

10353-
create-react-context@^0.3.0:
10354-
version "0.3.0"
10355-
resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.3.0.tgz#546dede9dc422def0d3fc2fe03afe0bc0f4f7d8c"
10356-
integrity sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==
10357-
dependencies:
10358-
gud "^1.0.0"
10359-
warning "^4.0.3"
10360-
1036110353
create-require@^1.1.0:
1036210354
version "1.1.1"
1036310355
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
@@ -11199,7 +11191,7 @@ deep-eql@^0.1.3:
1119911191
dependencies:
1120011192
type-detect "0.1.1"
1120111193

11202-
deep-equal@^1.0.0, deep-equal@^1.0.1, deep-equal@^1.1.1:
11194+
deep-equal@^1.0.0, deep-equal@^1.0.1:
1120311195
version "1.1.1"
1120411196
resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a"
1120511197
integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==
@@ -14574,11 +14566,6 @@ grid-index@^1.1.0:
1457414566
resolved "https://registry.yarnpkg.com/grid-index/-/grid-index-1.1.0.tgz#97f8221edec1026c8377b86446a7c71e79522ea7"
1457514567
integrity sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==
1457614568

14577-
gud@^1.0.0:
14578-
version "1.0.0"
14579-
resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0"
14580-
integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==
14581-
1458214569
gulp-babel@^8.0.0:
1458314570
version "8.0.0"
1458414571
resolved "https://registry.yarnpkg.com/gulp-babel/-/gulp-babel-8.0.0.tgz#e0da96f4f2ec4a88dd3a3030f476e38ab2126d87"
@@ -20888,11 +20875,6 @@ polished@^4.2.2:
2088820875
dependencies:
2088920876
"@babel/runtime" "^7.17.8"
2089020877

20891-
popper.js@^1.14.4:
20892-
version "1.15.0"
20893-
resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2"
20894-
integrity sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA==
20895-
2089620878
posix-character-classes@^0.1.0:
2089720879
version "0.1.1"
2089820880
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
@@ -21493,7 +21475,7 @@ prop-types-exact@^1.2.0:
2149321475
object.assign "^4.1.0"
2149421476
reflect.ownkeys "^0.2.0"
2149521477

21496-
[email protected], prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
21478+
[email protected], prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
2149721479
version "15.8.1"
2149821480
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
2149921481
integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
@@ -22054,6 +22036,11 @@ react-fast-compare@^2.0.4:
2205422036
resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-2.0.4.tgz#e84b4d455b0fec113e0402c329352715196f81f9"
2205522037
integrity sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==
2205622038

22039+
react-fast-compare@^3.0.1:
22040+
version "3.2.2"
22041+
resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49"
22042+
integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==
22043+
2205722044
react-focus-lock@^2.3.1:
2205822045
version "2.4.1"
2205922046
resolved "https://registry.yarnpkg.com/react-focus-lock/-/react-focus-lock-2.4.1.tgz#e842cc93da736b5c5d331799012544295cbcee4f"
@@ -22182,25 +22169,21 @@ react-monaco-editor@^0.41.2:
2218222169
monaco-editor "*"
2218322170
prop-types "^15.7.2"
2218422171

22185-
react-popper-tooltip@^2.10.1:
22186-
version "2.11.1"
22187-
resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz#3c4bdfd8bc10d1c2b9a162e859bab8958f5b2644"
22188-
integrity sha512-04A2f24GhyyMicKvg/koIOQ5BzlrRbKiAgP6L+Pdj1MVX3yJ1NeZ8+EidndQsbejFT55oW1b++wg2Z8KlAyhfQ==
22172+
react-popper-tooltip@^4.4.2:
22173+
version "4.4.2"
22174+
resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-4.4.2.tgz#0dc4894b8e00ba731f89bd2d30584f6032ec6163"
22175+
integrity sha512-y48r0mpzysRTZAIh8m2kpZ8S1YPNqGtQPDrlXYSGvDS1c1GpG/NUXbsbIdfbhXfmSaRJuTcaT6N1q3CKuHRVbg==
2218922176
dependencies:
22190-
"@babel/runtime" "^7.9.2"
22191-
react-popper "^1.3.7"
22177+
"@babel/runtime" "^7.18.3"
22178+
"@popperjs/core" "^2.11.5"
22179+
react-popper "^2.3.0"
2219222180

22193-
react-popper@^1.3.7:
22194-
version "1.3.7"
22195-
resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.7.tgz#f6a3471362ef1f0d10a4963673789de1baca2324"
22196-
integrity sha512-nmqYTx7QVjCm3WUZLeuOomna138R1luC4EqkW3hxJUrAe+3eNz3oFCLYdnPwILfn0mX1Ew2c3wctrjlUMYYUww==
22181+
react-popper@^2.3.0:
22182+
version "2.3.0"
22183+
resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-2.3.0.tgz#17891c620e1320dce318bad9fede46a5f71c70ba"
22184+
integrity sha512-e1hj8lL3uM+sgSR4Lxzn5h1GxBlpa4CQz0XLF8kx4MDrDRWY0Ena4c97PUeSX9i5W3UAfDP0z0FXCTQkoXUl3Q==
2219722185
dependencies:
22198-
"@babel/runtime" "^7.1.2"
22199-
create-react-context "^0.3.0"
22200-
deep-equal "^1.1.1"
22201-
popper.js "^1.14.4"
22202-
prop-types "^15.6.1"
22203-
typed-styles "^0.0.7"
22186+
react-fast-compare "^3.0.1"
2220422187
warning "^4.0.2"
2220522188

2220622189
react-query@^3.28.0:
@@ -26291,11 +26274,6 @@ typed-query-selector@^2.12.0:
2629126274
resolved "https://registry.yarnpkg.com/typed-query-selector/-/typed-query-selector-2.12.0.tgz#92b65dbc0a42655fccf4aeb1a08b1dddce8af5f2"
2629226275
integrity sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg==
2629326276

26294-
typed-styles@^0.0.7:
26295-
version "0.0.7"
26296-
resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9"
26297-
integrity sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q==
26298-
2629926277
typedarray-to-buffer@^3.1.5:
2630026278
version "3.1.5"
2630126279
resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
@@ -27530,7 +27508,7 @@ walker@^1.0.7, walker@^1.0.8, walker@~1.0.5:
2753027508
dependencies:
2753127509
makeerror "1.0.12"
2753227510

27533-
warning@^4.0.2, warning@^4.0.3:
27511+
warning@^4.0.2:
2753427512
version "4.0.3"
2753527513
resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
2753627514
integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==

0 commit comments

Comments
 (0)