@commercetools-uikit/tooltip 16.4.1 → 16.6.0

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.
package/README.md CHANGED
@@ -183,7 +183,8 @@ export {
183
183
  | Props | Type | Required | Default | Description |
184
184
  | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------: | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
185
185
  | `children` | `ReactElement` | ✅ | | |
186
- | `closeAfter` | `number` | | `0` | Delay (in milliseconds) between the end of the user interaction, and the closing of the tooltip. |
186
+ | `showAfter` | `number` | | `300` | Delay (in milliseconds) between the start of the user interaction, and showing the tooltip. |
187
+ | `closeAfter` | `number` | | `200` | Delay (in milliseconds) between the end of the user interaction, and the closing of the tooltip. |
187
188
  | `styles` | `Record` | | | Custom css-in-js object styles for the tooltip body. |
188
189
  | `off` | `boolean` | | `false` | Determines if the tooltip should not appear. |
189
190
  | `id` | `string` | | | An identifier for the tooltip, used for `aria-describedby`. |
@@ -14,13 +14,14 @@ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/in
14
14
  var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
15
15
  var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
16
16
  var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
17
- var react = require('react');
17
+ var react$1 = require('react');
18
18
  var reactIs = require('react-is');
19
19
  var isNil = require('lodash/isNil');
20
20
  var usePopper = require('use-popper');
21
- var react$1 = require('@emotion/react');
21
+ var react = require('@emotion/react');
22
22
  var hooks = require('@commercetools-uikit/hooks');
23
23
  var utils = require('@commercetools-uikit/utils');
24
+ var _taggedTemplateLiteral = require('@babel/runtime-corejs3/helpers/taggedTemplateLiteral');
24
25
  var _styled = require('@emotion/styled/base');
25
26
  var designSystem = require('@commercetools-uikit/design-system');
26
27
  var jsxRuntime = require('@emotion/react/jsx-runtime');
@@ -41,9 +42,26 @@ var isNil__default = /*#__PURE__*/_interopDefault(isNil);
41
42
  var usePopper__default = /*#__PURE__*/_interopDefault(usePopper);
42
43
  var _styled__default = /*#__PURE__*/_interopDefault(_styled);
43
44
 
45
+ var _templateObject, _templateObject2;
44
46
  function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
45
47
  function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$1(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$1(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
46
48
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
49
+ const growIn = react.keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from {\n transform: scale(0);\n }\n to {\n transform: scale(1);\n }\n"])));
50
+ const growOut = react.keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from {\n transform: scale(1);\n }\n to {\n transform: scale(0);\n }\n"])));
51
+ const getAnimation = state => {
52
+ switch (state) {
53
+ case 'opened':
54
+ return {
55
+ animation: "".concat(growIn, " 80ms")
56
+ };
57
+ case 'exiting':
58
+ return {
59
+ animation: "".concat(growOut, " 80ms")
60
+ };
61
+ default:
62
+ return {};
63
+ }
64
+ };
47
65
  const getOffsetMargin = _ref => {
48
66
  let placement = _ref.placement;
49
67
  const position = placement && placement.split('-')[0] || '';
@@ -63,7 +81,7 @@ const Body = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_EN
63
81
  } : {
64
82
  target: "e14le4p1",
65
83
  label: "Body"
66
- })("font-family:inherit;border-radius:", designSystem.designTokens.borderRadius6, ";padding:", designSystem.designTokens.paddingForTooltip, ";border:none;box-shadow:", designSystem.designTokens.shadowForTooltip, ";font-size:", designSystem.designTokens.fontSize20, ";opacity:0.95;color:", designSystem.designTokens.colorSurface, ";background-color:", designSystem.designTokens.backgroundColorForTooltip, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCOEIiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */"));
84
+ })("font-family:inherit;border-radius:", designSystem.designTokens.borderRadius6, ";padding:", designSystem.designTokens.paddingForTooltip, ";border:none;box-shadow:", designSystem.designTokens.shadowForTooltip, ";font-size:", designSystem.designTokens.fontSize20, ";opacity:0.95;color:", designSystem.designTokens.colorSurface, ";background-color:", designSystem.designTokens.backgroundColorForTooltip, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVEOEIiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMsIFRUb29sdGlwU3RhdGUgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBncm93SW4gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmA7XG5cbmNvbnN0IGdyb3dPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbmA7XG5cbmNvbnN0IGdldEFuaW1hdGlvbiA9IChzdGF0ZTogVFRvb2x0aXBTdGF0ZSkgPT4ge1xuICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgY2FzZSAnb3BlbmVkJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFuaW1hdGlvbjogYCR7Z3Jvd0lufSA4MG1zYCxcbiAgICAgIH07XG4gICAgY2FzZSAnZXhpdGluZyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhbmltYXRpb246IGAke2dyb3dPdXR9IDgwbXNgLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHt9O1xuICB9XG59O1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9vbHRpcFN0eWxlcyA9ICh0b29sdGlwU3RhdGU6IFRUb29sdGlwU3RhdGUpID0+XG4gIGdldEFuaW1hdGlvbih0b29sdGlwU3RhdGUpO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */"));
67
85
 
68
86
  // here we use object styles so we can spread these
69
87
  // with the styles we get from react-popper :D
@@ -85,6 +103,7 @@ const getBodyStyles = _ref2 => {
85
103
  zIndex: 1000
86
104
  }, customStyles);
87
105
  };
106
+ const getTooltipStyles = tooltipState => getAnimation(tooltipState);
88
107
  const Wrapper = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV === "production" ? {
89
108
  target: "e14le4p0"
90
109
  } : {
@@ -96,7 +115,7 @@ const Wrapper = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE
96
115
  } : {
97
116
  name: "18fwu9s",
98
117
  styles: "display:inline-block;cursor:not-allowed;>:disabled{pointer-events:none;}",
99
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZEaUMiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */",
118
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtHaUMiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMsIFRUb29sdGlwU3RhdGUgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBncm93SW4gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmA7XG5cbmNvbnN0IGdyb3dPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbmA7XG5cbmNvbnN0IGdldEFuaW1hdGlvbiA9IChzdGF0ZTogVFRvb2x0aXBTdGF0ZSkgPT4ge1xuICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgY2FzZSAnb3BlbmVkJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFuaW1hdGlvbjogYCR7Z3Jvd0lufSA4MG1zYCxcbiAgICAgIH07XG4gICAgY2FzZSAnZXhpdGluZyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhbmltYXRpb246IGAke2dyb3dPdXR9IDgwbXNgLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHt9O1xuICB9XG59O1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9vbHRpcFN0eWxlcyA9ICh0b29sdGlwU3RhdGU6IFRUb29sdGlwU3RhdGUpID0+XG4gIGdldEFuaW1hdGlvbih0b29sdGlwU3RhdGUpO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */",
100
119
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
101
120
  });
102
121
 
@@ -108,15 +127,16 @@ const TooltipWrapper = props => jsxRuntime.jsx(jsxRuntime.Fragment, {
108
127
  });
109
128
  TooltipWrapper.displayName = 'TooltipWrapperComponent';
110
129
  const tooltipDefaultProps = {
111
- closeAfter: 0,
130
+ showAfter: 300,
131
+ closeAfter: 200,
112
132
  horizontalConstraint: 'scale',
113
133
  off: false,
114
134
  placement: 'top'
115
135
  };
116
136
  const Tooltip = props => {
117
137
  var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
118
- const leaveTimer = react.useRef();
119
- const childrenRef = react.useRef();
138
+ const enterTimer = react$1.useRef();
139
+ const leaveTimer = react$1.useRef();
120
140
  if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) {
121
141
  process.env.NODE_ENV !== "production" ? utils.warning(reactIs.isValidElementType(props.components.BodyComponent), "ui-kit/Tooltip: the prop 'components.BodyComponent' is not a valid React element.") : void 0;
122
142
  }
@@ -126,8 +146,11 @@ const Tooltip = props => {
126
146
  if ((_props$components3 = props.components) !== null && _props$components3 !== void 0 && _props$components3.WrapperComponent) {
127
147
  process.env.NODE_ENV !== "production" ? utils.warning(reactIs.isValidElementType(props.components.WrapperComponent), "ui-kit/Tooltip: the prop 'components.WrapperComponent' is not a valid React element.") : void 0;
128
148
  }
129
- react.useEffect(() => {
149
+ react$1.useEffect(() => {
130
150
  return () => {
151
+ if (enterTimer.current) {
152
+ clearTimeout(enterTimer.current);
153
+ }
131
154
  if (leaveTimer.current) {
132
155
  clearTimeout(leaveTimer.current);
133
156
  }
@@ -138,41 +161,30 @@ const Tooltip = props => {
138
161
  modifiers: props.modifiers
139
162
  }),
140
163
  reference = _usePopper.reference,
141
- popper = _usePopper.popper;
142
- const _useToggleState = hooks.useToggleState(false),
143
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
144
- isOpen = _useToggleState2[0],
145
- toggle = _useToggleState2[1];
146
- const closeTooltip = react.useCallback(() => {
147
- toggle(false);
148
- }, [toggle]);
149
- const openTooltip = react.useCallback(() => {
150
- toggle(true);
151
- }, [toggle]);
164
+ popper = _usePopper.popper,
165
+ popperInstance = _usePopper.popperInstance;
166
+ const _useState = react$1.useState('closed'),
167
+ _useState2 = _slicedToArray(_useState, 2),
168
+ state = _useState2[0],
169
+ setState = _useState2[1];
152
170
  const isControlled = !isNil__default["default"](props.isOpen);
153
- const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
171
+ const tooltipIsOpen = isControlled ? props.isOpen : state === 'opened' || state === 'exiting';
154
172
  const id = hooks.useFieldId(props.id, sequentialId);
155
173
  const onClose = props.onClose;
156
- const handleClose = react.useCallback(event => {
174
+ const handleClose = react$1.useCallback(event => {
157
175
  if (!isControlled) {
158
- closeTooltip();
176
+ setState('closed');
159
177
  }
160
178
  if (onClose) {
161
179
  onClose(event);
162
180
  }
163
- }, [isControlled, closeTooltip, onClose]);
181
+ }, [isControlled, onClose]);
164
182
  const _props$children$props = props.children.props,
165
183
  onFocus = _props$children$props.onFocus,
166
184
  onMouseOver = _props$children$props.onMouseOver;
167
- const onOpen = props.onOpen;
168
- const handleEnter = react.useCallback(event => {
169
- // Remove the title ahead of time.
170
- // We don't want to wait for the next render commit.
171
- // We would risk displaying two tooltips at the same time (native + this one).
172
- if (childrenRef && typeof childrenRef === 'function') {
173
- // @ts-ignore
174
- childrenRef.setAttribute('title', '');
175
- }
185
+ const showAfter = props.showAfter,
186
+ onOpen = props.onOpen;
187
+ const handleEnter = react$1.useCallback(event => {
176
188
  if (event) {
177
189
  if (event.type === 'mouseover' && onMouseOver) {
178
190
  onMouseOver(event);
@@ -180,42 +192,46 @@ const Tooltip = props => {
180
192
  if (event.type === 'focus' && onFocus) {
181
193
  onFocus(event);
182
194
  }
183
- if (!isOpen && !isControlled) {
184
- openTooltip();
185
- }
186
- if (onOpen) {
187
- onOpen(event);
195
+ if (state !== 'opened' && !isControlled) {
196
+ setState('entering');
197
+ enterTimer.current = _setTimeout__default["default"](() => {
198
+ setState('opened');
199
+ if (onOpen) {
200
+ onOpen(event);
201
+ }
202
+ }, showAfter);
188
203
  }
189
204
  event.preventDefault();
190
205
  event.stopPropagation();
191
206
  }
192
- }, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
207
+ }, [onFocus, onOpen, onMouseOver, isControlled, state, showAfter]);
193
208
  const _props$children$props2 = props.children.props,
194
209
  onBlur = _props$children$props2.onBlur,
195
210
  onMouseLeave = _props$children$props2.onMouseLeave;
196
211
  const closeAfter = props.closeAfter;
197
- const handleLeave = react.useCallback(event => {
198
- if (leaveTimer.current) {
199
- clearTimeout(leaveTimer.current);
200
- }
212
+ const handleLeave = react$1.useCallback(event => {
213
+ clearTimeout(enterTimer.current);
214
+ clearTimeout(leaveTimer.current);
201
215
  if (event.type === 'mouseleave' && onMouseLeave) {
202
216
  onMouseLeave(event);
203
217
  }
204
218
  if (event.type === 'blur' && onBlur) {
205
219
  onBlur(event);
206
220
  }
207
- if (closeAfter) {
221
+ if (closeAfter && state === 'opened') {
208
222
  leaveTimer.current = _setTimeout__default["default"](() => {
209
- handleClose(event);
223
+ const tooltipElement = popperInstance === null || popperInstance === void 0 ? void 0 : popperInstance.popper.querySelector('[data-testid="tooltip-message-wrapper"]');
224
+ tooltipElement.addEventListener('animationend', () => handleClose());
225
+ setState('exiting');
210
226
  }, closeAfter);
211
227
  } else {
212
228
  handleClose(event);
213
229
  }
214
- }, [closeAfter, onBlur, onMouseLeave, handleClose]);
215
- react.useEffect(() => {
230
+ }, [closeAfter, onBlur, onMouseLeave, handleClose, state, popperInstance]);
231
+ react$1.useEffect(() => {
216
232
  // if tooltip was open, and then component
217
233
  // updated to be off, we should close the tooltip
218
- if (isOpen && props.off) {
234
+ if (state === 'opened' && props.off) {
219
235
  if (closeAfter) {
220
236
  leaveTimer.current = _setTimeout__default["default"](() => {
221
237
  handleClose();
@@ -224,7 +240,7 @@ const Tooltip = props => {
224
240
  handleClose();
225
241
  }
226
242
  }
227
- }, [props.off, closeAfter, handleClose, toggle, isOpen]);
243
+ }, [props.off, closeAfter, handleClose, state]);
228
244
  const childrenProps = {
229
245
  // don't pass event listeners to children
230
246
  onFocus: null,
@@ -236,10 +252,10 @@ const Tooltip = props => {
236
252
  'aria-describedby': tooltipIsOpen ? id : null,
237
253
  // for seo and accessibility, we add the tooltip's title
238
254
  // as a native title when the title is hidden
239
- title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
255
+ title: !tooltipIsOpen && state !== 'entering' && typeof props.title === 'string' ? props.title : null
240
256
  } : {};
241
257
  const eventListeners = !props.off ? {
242
- onMouseOver: handleEnter,
258
+ onMouseEnter: handleEnter,
243
259
  onMouseLeave: handleLeave,
244
260
  onFocus: handleEnter,
245
261
  onBlur: handleLeave
@@ -251,20 +267,24 @@ const Tooltip = props => {
251
267
  children: [jsxRuntime.jsx(WrapperComponent, _objectSpread(_objectSpread({}, eventListeners), {}, {
252
268
  // @ts-expect-error: yes, ref can be undefined
253
269
  ref: reference.ref,
254
- children: /*#__PURE__*/react.cloneElement(props.children, _objectSpread(_objectSpread({}, childrenProps), tooltipProps))
270
+ children: /*#__PURE__*/react$1.cloneElement(props.children, _objectSpread(_objectSpread({}, childrenProps), tooltipProps))
255
271
  })), tooltipIsOpen && jsxRuntime.jsx(TooltipWrapperComponent, {
256
272
  children: jsxRuntime.jsx("div", {
257
273
  // ref accepts `LegacyRef`, which is a union of `RefObject` and `string`
258
274
  // propper.ref returns `RefObject`
259
275
  ref: popper.ref,
260
- css: /*#__PURE__*/react$1.css(_objectSpread(_objectSpread({}, popper.styles), getBodyStyles({
276
+ css: /*#__PURE__*/react.css(_objectSpread(_objectSpread({}, popper.styles), getBodyStyles({
261
277
  constraint: props.horizontalConstraint,
262
278
  placement: popper.placement,
263
279
  customStyles: (_props$styles = props.styles) === null || _props$styles === void 0 ? void 0 : _props$styles.body
264
- })), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1VaUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgaXNWYWxpZEVsZW1lbnRUeXBlIH0gZnJvbSAncmVhY3QtaXMnO1xuaW1wb3J0IGlzTmlsIGZyb20gJ2xvZGFzaC9pc05pbCc7XG5pbXBvcnQgdXNlUG9wcGVyIGZyb20gJ3VzZS1wb3BwZXInO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyBXcmFwcGVyLCBCb2R5LCBnZXRCb2R5U3R5bGVzIH0gZnJvbSAnLi90b29sdGlwLnN0eWxlcyc7XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgndG9vbHRpcC0nKTtcblxuZXhwb3J0IHR5cGUgVENvbXBvbmVudHMgPSB7XG4gIC8qKlxuICAgKiBUaGUgY29tcG9uZW50IHJlbmRlcmVkIGFzIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBCb2R5Q29tcG9uZW50PzogQ29tcG9uZW50VHlwZTtcbiAgLyoqXG4gICAqIFdoZXJlIHRoZSB0b29sdGlwIHNob3VsZCBiZSByZW5kZXJlZC4gVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHJlbmRlciB0aGUgdG9vbHRpcCBpbnRvIGFub3RoZXIgcGFydCBvZiB0aGUgZG9jdW1lbnQsIHVzaW5nIFJlYWN0IHBvcnRhbC5cbiAgICovXG4gIFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTtcbiAgLyoqXG4gICAqIEEgY3VzdG9tIGNvbXBvbmVudCB3cmFwcGVyIGZvciB0aGUgdG9vbHRpcC5cbiAgICovXG4gIFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xufTtcblxuZXhwb3J0IHR5cGUgVFRvb2x0aXBQcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0RWxlbWVudDtcblxuICAvKipcbiAgICogRGVsYXkgKGluIG1pbGxpc2Vjb25kcykgYmV0d2VlbiB0aGUgZW5kIG9mIHRoZSB1c2VyIGludGVyYWN0aW9uLCBhbmQgdGhlIGNsb3Npbmcgb2YgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBjbG9zZUFmdGVyOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5jb25zdCBUb29sdGlwV3JhcHBlciA9IChwcm9wczogUGljazxUVG9vbHRpcFByb3BzLCAnY2hpbGRyZW4nPikgPT4gKFxuICA8Pntwcm9wcy5jaGlsZHJlbn08Lz5cbik7XG5Ub29sdGlwV3JhcHBlci5kaXNwbGF5TmFtZSA9ICdUb29sdGlwV3JhcHBlckNvbXBvbmVudCc7XG5cbmNvbnN0IHRvb2x0aXBEZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRUb29sdGlwUHJvcHMsXG4gICdjbG9zZUFmdGVyJyB8ICdob3Jpem9udGFsQ29uc3RyYWludCcgfCAnb2ZmJyB8ICdwbGFjZW1lbnQnXG4+ID0ge1xuICBjbG9zZUFmdGVyOiAwLFxuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgb2ZmOiBmYWxzZSxcbiAgcGxhY2VtZW50OiAndG9wJyxcbn07XG5cbmNvbnN0IFRvb2x0aXAgPSAocHJvcHM6IFRUb29sdGlwUHJvcHMpID0+IHtcbiAgY29uc3QgbGVhdmVUaW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKTtcbiAgY29uc3QgY2hpbGRyZW5SZWYgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5Cb2R5Q29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLkJvZHlDb21wb25lbnQpLFxuICAgICAgYHVpLWtpdC9Ub29sdGlwOiB0aGUgcHJvcCAnY29tcG9uZW50cy5Cb2R5Q29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5Ub29sdGlwV3JhcHBlckNvbXBvbmVudCkge1xuICAgIHdhcm5pbmcoXG4gICAgICBpc1ZhbGlkRWxlbWVudFR5cGUocHJvcHMuY29tcG9uZW50cy5Ub29sdGlwV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5XcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQpLFxuICAgICAgYHVpLWtpdC9Ub29sdGlwOiB0aGUgcHJvcCAnY29tcG9uZW50cy5XcmFwcGVyQ29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciB9ID0gdXNlUG9wcGVyKHtcbiAgICBwbGFjZW1lbnQ6IHByb3BzLnBsYWNlbWVudCxcbiAgICBtb2RpZmllcnM6IHByb3BzLm1vZGlmaWVycyxcbiAgfSk7XG4gIGNvbnN0IFtpc09wZW4sIHRvZ2dsZV0gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNsb3NlVG9vbHRpcCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICB0b2dnbGUoZmFsc2UpO1xuICB9LCBbdG9nZ2xlXSk7XG4gIGNvbnN0IG9wZW5Ub29sdGlwID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHRvZ2dsZSh0cnVlKTtcbiAgfSwgW3RvZ2dsZV0pO1xuXG4gIGNvbnN0IGlzQ29udHJvbGxlZCA9ICFpc05pbChwcm9wcy5pc09wZW4pO1xuICBjb25zdCB0b29sdGlwSXNPcGVuID0gaXNDb250cm9sbGVkID8gcHJvcHMuaXNPcGVuIDogaXNPcGVuO1xuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgeyBvbkNsb3NlIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmICghaXNDb250cm9sbGVkKSB7XG4gICAgICAgIGNsb3NlVG9vbHRpcCgpO1xuICAgICAgfVxuICAgICAgaWYgKG9uQ2xvc2UpIHtcbiAgICAgICAgb25DbG9zZShldmVudCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbaXNDb250cm9sbGVkLCBjbG9zZVRvb2x0aXAsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgb25PcGVuIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlRW50ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgIC8vIFJlbW92ZSB0aGUgdGl0bGUgYWhlYWQgb2YgdGltZS5cbiAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gd2FpdCBmb3IgdGhlIG5leHQgcmVuZGVyIGNvbW1pdC5cbiAgICAgIC8vIFdlIHdvdWxkIHJpc2sgZGlzcGxheWluZyB0d28gdG9vbHRpcHMgYXQgdGhlIHNhbWUgdGltZSAobmF0aXZlICsgdGhpcyBvbmUpLlxuICAgICAgaWYgKGNoaWxkcmVuUmVmICYmIHR5cGVvZiBjaGlsZHJlblJlZiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGNoaWxkcmVuUmVmLnNldEF0dHJpYnV0ZSgndGl0bGUnLCAnJyk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ21vdXNlb3ZlcicgJiYgb25Nb3VzZU92ZXIpIHtcbiAgICAgICAgICBvbk1vdXNlT3ZlcihldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2ZvY3VzJyAmJiBvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzT3BlbiAmJiAhaXNDb250cm9sbGVkKSB7XG4gICAgICAgICAgb3BlblRvb2x0aXAoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbk9wZW4pIHtcbiAgICAgICAgICBvbk9wZW4oZXZlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25Gb2N1cywgb25PcGVuLCBvbk1vdXNlT3ZlciwgaXNDb250cm9sbGVkLCBpc09wZW4sIG9wZW5Ub29sdGlwXVxuICApO1xuXG4gIGNvbnN0IHsgb25CbHVyLCBvbk1vdXNlTGVhdmUgfSA9IHByb3BzLmNoaWxkcmVuLnByb3BzO1xuICBjb25zdCB7IGNsb3NlQWZ0ZXIgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGhhbmRsZUxlYXZlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICBpZiAobGVhdmVUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChsZWF2ZVRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ21vdXNlbGVhdmUnICYmIG9uTW91c2VMZWF2ZSkge1xuICAgICAgICBvbk1vdXNlTGVhdmUoZXZlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2JsdXInICYmIG9uQmx1cikge1xuICAgICAgICBvbkJsdXIoZXZlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2xvc2VBZnRlcikge1xuICAgICAgICBsZWF2ZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbG9zZShldmVudCk7XG4gICAgICAgIH0sIGNsb3NlQWZ0ZXIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaGFuZGxlQ2xvc2UoZXZlbnQpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2Nsb3NlQWZ0ZXIsIG9uQmx1ciwgb25Nb3VzZUxlYXZlLCBoYW5kbGVDbG9zZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoaXNPcGVuICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHRvZ2dsZSwgaXNPcGVuXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmIHR5cGVvZiBwcm9wcy50aXRsZSA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgID8gcHJvcHMudGl0bGVcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IGV2ZW50TGlzdGVuZXJzID0gIXByb3BzLm9mZlxuICAgID8ge1xuICAgICAgICBvbk1vdXNlT3ZlcjogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uTW91c2VMZWF2ZTogaGFuZGxlTGVhdmUsXG4gICAgICAgIG9uRm9jdXM6IGhhbmRsZUVudGVyLFxuICAgICAgICBvbkJsdXI6IGhhbmRsZUxlYXZlLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3QgV3JhcHBlckNvbXBvbmVudCA9IHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQgfHwgV3JhcHBlcjtcbiAgY29uc3QgQm9keUNvbXBvbmVudCA9IHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQgfHwgQm9keTtcbiAgY29uc3QgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgPVxuICAgIHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50IHx8IFRvb2x0aXBXcmFwcGVyO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxXcmFwcGVyQ29tcG9uZW50XG4gICAgICAgIHsuLi5ldmVudExpc3RlbmVyc31cbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogeWVzLCByZWYgY2FuIGJlIHVuZGVmaW5lZFxuICAgICAgICByZWY9e3JlZmVyZW5jZS5yZWZ9XG4gICAgICA+XG4gICAgICAgIHtjbG9uZUVsZW1lbnQocHJvcHMuY2hpbGRyZW4sIHtcbiAgICAgICAgICAuLi5jaGlsZHJlblByb3BzLFxuICAgICAgICAgIC4uLnRvb2x0aXBQcm9wcyxcbiAgICAgICAgfSl9XG4gICAgICA8L1dyYXBwZXJDb21wb25lbnQ+XG4gICAgICB7dG9vbHRpcElzT3BlbiAmJiAoXG4gICAgICAgIDxUb29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAvLyByZWYgYWNjZXB0cyBgTGVnYWN5UmVmYCwgd2hpY2ggaXMgYSB1bmlvbiBvZiBgUmVmT2JqZWN0YCBhbmQgYHN0cmluZ2BcbiAgICAgICAgICAgIC8vIHByb3BwZXIucmVmIHJldHVybnMgYFJlZk9iamVjdGBcbiAgICAgICAgICAgIHJlZj17cG9wcGVyLnJlZiBhcyBMZWdhY3lSZWY8SFRNTERpdkVsZW1lbnQ+fVxuICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAuLi5wb3BwZXIuc3R5bGVzLFxuICAgICAgICAgICAgICAuLi5nZXRCb2R5U3R5bGVzKHtcbiAgICAgICAgICAgICAgICBjb25zdHJhaW50OiBwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludCxcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6IHBvcHBlci5wbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgY3VzdG9tU3R5bGVzOiBwcm9wcy5zdHlsZXM/LmJvZHksXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBkYXRhLXBsYWNlbWVudD17cG9wcGVyLnBsYWNlbWVudH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Qm9keUNvbXBvbmVudD57cHJvcHMudGl0bGV9PC9Cb2R5Q29tcG9uZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn07XG5cblRvb2x0aXAuZGlzcGxheU5hbWUgPSAnVG9vbFRpcCc7XG5Ub29sdGlwLmRlZmF1bHRQcm9wcyA9IHRvb2x0aXBEZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IFRvb2x0aXA7XG4iXX0= */"),
280
+ })), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlWaUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGlzVmFsaWRFbGVtZW50VHlwZSB9IGZyb20gJ3JlYWN0LWlzJztcbmltcG9ydCBpc05pbCBmcm9tICdsb2Rhc2gvaXNOaWwnO1xuaW1wb3J0IHVzZVBvcHBlciBmcm9tICd1c2UtcG9wcGVyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQge1xuICBXcmFwcGVyLFxuICBCb2R5LFxuICBnZXRCb2R5U3R5bGVzLFxuICBnZXRUb29sdGlwU3R5bGVzLFxufSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBzdGFydCBvZiB0aGUgdXNlciBpbnRlcmFjdGlvbiwgYW5kIHNob3dpbmcgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBzaG93QWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFN0YXRlID0gJ2Nsb3NlZCcgfCAnZW50ZXJpbmcnIHwgJ29wZW5lZCcgfCAnZXhpdGluZyc7XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ3Nob3dBZnRlcicgfCAnY2xvc2VBZnRlcicgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnIHwgJ29mZicgfCAncGxhY2VtZW50J1xuPiA9IHtcbiAgc2hvd0FmdGVyOiAzMDAsXG4gIGNsb3NlQWZ0ZXI6IDIwMCxcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIG9mZjogZmFsc2UsXG4gIHBsYWNlbWVudDogJ3RvcCcsXG59O1xuXG5jb25zdCBUb29sdGlwID0gKHByb3BzOiBUVG9vbHRpcFByb3BzKSA9PiB7XG4gIGNvbnN0IGVudGVyVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGNvbnN0IGxlYXZlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG5cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoZW50ZXJUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChlbnRlclRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciwgcG9wcGVySW5zdGFuY2UgfSA9IHVzZVBvcHBlcih7XG4gICAgcGxhY2VtZW50OiBwcm9wcy5wbGFjZW1lbnQsXG4gICAgbW9kaWZpZXJzOiBwcm9wcy5tb2RpZmllcnMsXG4gIH0pO1xuICBjb25zdCBbc3RhdGUsIHNldFN0YXRlXSA9IHVzZVN0YXRlPFRUb29sdGlwU3RhdGU+KCdjbG9zZWQnKTtcblxuICBjb25zdCBpc0NvbnRyb2xsZWQgPSAhaXNOaWwocHJvcHMuaXNPcGVuKTtcbiAgY29uc3QgdG9vbHRpcElzT3BlbiA9IGlzQ29udHJvbGxlZFxuICAgID8gcHJvcHMuaXNPcGVuXG4gICAgOiBzdGF0ZSA9PT0gJ29wZW5lZCcgfHwgc3RhdGUgPT09ICdleGl0aW5nJztcbiAgY29uc3QgaWQgPSB1c2VGaWVsZElkKHByb3BzLmlkLCBzZXF1ZW50aWFsSWQpO1xuXG4gIGNvbnN0IHsgb25DbG9zZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50PzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB7XG4gICAgICBpZiAoIWlzQ29udHJvbGxlZCkge1xuICAgICAgICBzZXRTdGF0ZSgnY2xvc2VkJyk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgc2hvd0FmdGVyLCBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSAhPT0gJ29wZW5lZCcgJiYgIWlzQ29udHJvbGxlZCkge1xuICAgICAgICAgIHNldFN0YXRlKCdlbnRlcmluZycpO1xuICAgICAgICAgIGVudGVyVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0U3RhdGUoJ29wZW5lZCcpO1xuXG4gICAgICAgICAgICBpZiAob25PcGVuKSB7XG4gICAgICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgc2hvd0FmdGVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uRm9jdXMsIG9uT3Blbiwgb25Nb3VzZU92ZXIsIGlzQ29udHJvbGxlZCwgc3RhdGUsIHNob3dBZnRlcl1cbiAgKTtcblxuICBjb25zdCB7IG9uQmx1ciwgb25Nb3VzZUxlYXZlIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBjbG9zZUFmdGVyIH0gPSBwcm9wcztcblxuICBjb25zdCBoYW5kbGVMZWF2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KGVudGVyVGltZXIuY3VycmVudCk7XG4gICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWxlYXZlJyAmJiBvbk1vdXNlTGVhdmUpIHtcbiAgICAgICAgb25Nb3VzZUxlYXZlKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdibHVyJyAmJiBvbkJsdXIpIHtcbiAgICAgICAgb25CbHVyKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNsb3NlQWZ0ZXIgJiYgc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gcG9wcGVySW5zdGFuY2U/LnBvcHBlci5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJ1tkYXRhLXRlc3RpZD1cInRvb2x0aXAtbWVzc2FnZS13cmFwcGVyXCJdJ1xuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgdG9vbHRpcEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgKCkgPT4gaGFuZGxlQ2xvc2UoKSk7XG5cbiAgICAgICAgICBzZXRTdGF0ZSgnZXhpdGluZycpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtjbG9zZUFmdGVyLCBvbkJsdXIsIG9uTW91c2VMZWF2ZSwgaGFuZGxlQ2xvc2UsIHN0YXRlLCBwb3BwZXJJbnN0YW5jZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoc3RhdGUgPT09ICdvcGVuZWQnICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHN0YXRlXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmXG4gICAgICAgICAgc3RhdGUgIT09ICdlbnRlcmluZycgJiZcbiAgICAgICAgICB0eXBlb2YgcHJvcHMudGl0bGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICA/IHByb3BzLnRpdGxlXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBldmVudExpc3RlbmVycyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgb25Nb3VzZUVudGVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e2Nzcyh7XG4gICAgICAgICAgICAgIC4uLnBvcHBlci5zdHlsZXMsXG4gICAgICAgICAgICAgIC4uLmdldEJvZHlTdHlsZXMoe1xuICAgICAgICAgICAgICAgIGNvbnN0cmFpbnQ6IHByb3BzLmhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogcG9wcGVyLnBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBjdXN0b21TdHlsZXM6IHByb3BzLnN0eWxlcz8uYm9keSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGRhdGEtcGxhY2VtZW50PXtwb3BwZXIucGxhY2VtZW50fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAgIC4uLmdldFRvb2x0aXBTdHlsZXMoc3RhdGUpLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJ0b29sdGlwLW1lc3NhZ2Utd3JhcHBlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxCb2R5Q29tcG9uZW50Pntwcm9wcy50aXRsZX08L0JvZHlDb21wb25lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9Ub29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICl9XG4gICAgPC8+XG4gICk7XG59O1xuXG5Ub29sdGlwLmRpc3BsYXlOYW1lID0gJ1Rvb2xUaXAnO1xuVG9vbHRpcC5kZWZhdWx0UHJvcHMgPSB0b29sdGlwRGVmYXVsdFByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBUb29sdGlwO1xuIl19 */"),
265
281
  "data-placement": popper.placement,
266
- children: jsxRuntime.jsx(BodyComponent, {
267
- children: props.title
282
+ children: jsxRuntime.jsx("div", {
283
+ css: /*#__PURE__*/react.css(_objectSpread({}, getTooltipStyles(state)), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRWbUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGlzVmFsaWRFbGVtZW50VHlwZSB9IGZyb20gJ3JlYWN0LWlzJztcbmltcG9ydCBpc05pbCBmcm9tICdsb2Rhc2gvaXNOaWwnO1xuaW1wb3J0IHVzZVBvcHBlciBmcm9tICd1c2UtcG9wcGVyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQge1xuICBXcmFwcGVyLFxuICBCb2R5LFxuICBnZXRCb2R5U3R5bGVzLFxuICBnZXRUb29sdGlwU3R5bGVzLFxufSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBzdGFydCBvZiB0aGUgdXNlciBpbnRlcmFjdGlvbiwgYW5kIHNob3dpbmcgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBzaG93QWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFN0YXRlID0gJ2Nsb3NlZCcgfCAnZW50ZXJpbmcnIHwgJ29wZW5lZCcgfCAnZXhpdGluZyc7XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ3Nob3dBZnRlcicgfCAnY2xvc2VBZnRlcicgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnIHwgJ29mZicgfCAncGxhY2VtZW50J1xuPiA9IHtcbiAgc2hvd0FmdGVyOiAzMDAsXG4gIGNsb3NlQWZ0ZXI6IDIwMCxcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIG9mZjogZmFsc2UsXG4gIHBsYWNlbWVudDogJ3RvcCcsXG59O1xuXG5jb25zdCBUb29sdGlwID0gKHByb3BzOiBUVG9vbHRpcFByb3BzKSA9PiB7XG4gIGNvbnN0IGVudGVyVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGNvbnN0IGxlYXZlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG5cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoZW50ZXJUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChlbnRlclRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciwgcG9wcGVySW5zdGFuY2UgfSA9IHVzZVBvcHBlcih7XG4gICAgcGxhY2VtZW50OiBwcm9wcy5wbGFjZW1lbnQsXG4gICAgbW9kaWZpZXJzOiBwcm9wcy5tb2RpZmllcnMsXG4gIH0pO1xuICBjb25zdCBbc3RhdGUsIHNldFN0YXRlXSA9IHVzZVN0YXRlPFRUb29sdGlwU3RhdGU+KCdjbG9zZWQnKTtcblxuICBjb25zdCBpc0NvbnRyb2xsZWQgPSAhaXNOaWwocHJvcHMuaXNPcGVuKTtcbiAgY29uc3QgdG9vbHRpcElzT3BlbiA9IGlzQ29udHJvbGxlZFxuICAgID8gcHJvcHMuaXNPcGVuXG4gICAgOiBzdGF0ZSA9PT0gJ29wZW5lZCcgfHwgc3RhdGUgPT09ICdleGl0aW5nJztcbiAgY29uc3QgaWQgPSB1c2VGaWVsZElkKHByb3BzLmlkLCBzZXF1ZW50aWFsSWQpO1xuXG4gIGNvbnN0IHsgb25DbG9zZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50PzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB7XG4gICAgICBpZiAoIWlzQ29udHJvbGxlZCkge1xuICAgICAgICBzZXRTdGF0ZSgnY2xvc2VkJyk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgc2hvd0FmdGVyLCBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSAhPT0gJ29wZW5lZCcgJiYgIWlzQ29udHJvbGxlZCkge1xuICAgICAgICAgIHNldFN0YXRlKCdlbnRlcmluZycpO1xuICAgICAgICAgIGVudGVyVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0U3RhdGUoJ29wZW5lZCcpO1xuXG4gICAgICAgICAgICBpZiAob25PcGVuKSB7XG4gICAgICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgc2hvd0FmdGVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uRm9jdXMsIG9uT3Blbiwgb25Nb3VzZU92ZXIsIGlzQ29udHJvbGxlZCwgc3RhdGUsIHNob3dBZnRlcl1cbiAgKTtcblxuICBjb25zdCB7IG9uQmx1ciwgb25Nb3VzZUxlYXZlIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBjbG9zZUFmdGVyIH0gPSBwcm9wcztcblxuICBjb25zdCBoYW5kbGVMZWF2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KGVudGVyVGltZXIuY3VycmVudCk7XG4gICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWxlYXZlJyAmJiBvbk1vdXNlTGVhdmUpIHtcbiAgICAgICAgb25Nb3VzZUxlYXZlKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdibHVyJyAmJiBvbkJsdXIpIHtcbiAgICAgICAgb25CbHVyKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNsb3NlQWZ0ZXIgJiYgc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gcG9wcGVySW5zdGFuY2U/LnBvcHBlci5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJ1tkYXRhLXRlc3RpZD1cInRvb2x0aXAtbWVzc2FnZS13cmFwcGVyXCJdJ1xuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgdG9vbHRpcEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgKCkgPT4gaGFuZGxlQ2xvc2UoKSk7XG5cbiAgICAgICAgICBzZXRTdGF0ZSgnZXhpdGluZycpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtjbG9zZUFmdGVyLCBvbkJsdXIsIG9uTW91c2VMZWF2ZSwgaGFuZGxlQ2xvc2UsIHN0YXRlLCBwb3BwZXJJbnN0YW5jZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoc3RhdGUgPT09ICdvcGVuZWQnICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHN0YXRlXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmXG4gICAgICAgICAgc3RhdGUgIT09ICdlbnRlcmluZycgJiZcbiAgICAgICAgICB0eXBlb2YgcHJvcHMudGl0bGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICA/IHByb3BzLnRpdGxlXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBldmVudExpc3RlbmVycyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgb25Nb3VzZUVudGVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e2Nzcyh7XG4gICAgICAgICAgICAgIC4uLnBvcHBlci5zdHlsZXMsXG4gICAgICAgICAgICAgIC4uLmdldEJvZHlTdHlsZXMoe1xuICAgICAgICAgICAgICAgIGNvbnN0cmFpbnQ6IHByb3BzLmhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogcG9wcGVyLnBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBjdXN0b21TdHlsZXM6IHByb3BzLnN0eWxlcz8uYm9keSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGRhdGEtcGxhY2VtZW50PXtwb3BwZXIucGxhY2VtZW50fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAgIC4uLmdldFRvb2x0aXBTdHlsZXMoc3RhdGUpLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJ0b29sdGlwLW1lc3NhZ2Utd3JhcHBlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxCb2R5Q29tcG9uZW50Pntwcm9wcy50aXRsZX08L0JvZHlDb21wb25lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9Ub29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICl9XG4gICAgPC8+XG4gICk7XG59O1xuXG5Ub29sdGlwLmRpc3BsYXlOYW1lID0gJ1Rvb2xUaXAnO1xuVG9vbHRpcC5kZWZhdWx0UHJvcHMgPSB0b29sdGlwRGVmYXVsdFByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBUb29sdGlwO1xuIl19 */"),
284
+ "data-testid": "tooltip-message-wrapper",
285
+ children: jsxRuntime.jsx(BodyComponent, {
286
+ children: props.title
287
+ })
268
288
  })
269
289
  })
270
290
  })]
@@ -272,7 +292,8 @@ const Tooltip = props => {
272
292
  };
273
293
  Tooltip.propTypes = process.env.NODE_ENV !== "production" ? {
274
294
  children: _pt__default["default"].element.isRequired,
275
- closeAfter: _pt__default["default"].number.isRequired,
295
+ showAfter: _pt__default["default"].number,
296
+ closeAfter: _pt__default["default"].number,
276
297
  styles: _pt__default["default"].objectOf(_pt__default["default"].any),
277
298
  off: _pt__default["default"].bool.isRequired,
278
299
  id: _pt__default["default"].string,
@@ -294,7 +315,7 @@ Tooltip.defaultProps = tooltipDefaultProps;
294
315
  var Tooltip$1 = Tooltip;
295
316
 
296
317
  // NOTE: This string will be replaced on build time with the package version.
297
- var version = "16.4.1";
318
+ var version = "16.6.0";
298
319
 
299
320
  exports["default"] = Tooltip$1;
300
321
  exports.version = version;
@@ -14,13 +14,14 @@ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/in
14
14
  var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
15
15
  var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
16
16
  var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
17
- var react = require('react');
17
+ var react$1 = require('react');
18
18
  require('react-is');
19
19
  var isNil = require('lodash/isNil');
20
20
  var usePopper = require('use-popper');
21
- var react$1 = require('@emotion/react');
21
+ var react = require('@emotion/react');
22
22
  var hooks = require('@commercetools-uikit/hooks');
23
23
  var utils = require('@commercetools-uikit/utils');
24
+ var _taggedTemplateLiteral = require('@babel/runtime-corejs3/helpers/taggedTemplateLiteral');
24
25
  var _styled = require('@emotion/styled/base');
25
26
  var designSystem = require('@commercetools-uikit/design-system');
26
27
  var jsxRuntime = require('@emotion/react/jsx-runtime');
@@ -40,8 +41,25 @@ var isNil__default = /*#__PURE__*/_interopDefault(isNil);
40
41
  var usePopper__default = /*#__PURE__*/_interopDefault(usePopper);
41
42
  var _styled__default = /*#__PURE__*/_interopDefault(_styled);
42
43
 
44
+ var _templateObject, _templateObject2;
43
45
  function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
44
46
  function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$1(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$1(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
47
+ const growIn = react.keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from {\n transform: scale(0);\n }\n to {\n transform: scale(1);\n }\n"])));
48
+ const growOut = react.keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from {\n transform: scale(1);\n }\n to {\n transform: scale(0);\n }\n"])));
49
+ const getAnimation = state => {
50
+ switch (state) {
51
+ case 'opened':
52
+ return {
53
+ animation: "".concat(growIn, " 80ms")
54
+ };
55
+ case 'exiting':
56
+ return {
57
+ animation: "".concat(growOut, " 80ms")
58
+ };
59
+ default:
60
+ return {};
61
+ }
62
+ };
45
63
  const getOffsetMargin = _ref => {
46
64
  let placement = _ref.placement;
47
65
  const position = placement && placement.split('-')[0] || '';
@@ -80,6 +98,7 @@ const getBodyStyles = _ref2 => {
80
98
  zIndex: 1000
81
99
  }, customStyles);
82
100
  };
101
+ const getTooltipStyles = tooltipState => getAnimation(tooltipState);
83
102
  const Wrapper = /*#__PURE__*/_styled__default["default"]("div", {
84
103
  target: "e14le4p0"
85
104
  } )({
@@ -95,20 +114,24 @@ const TooltipWrapper = props => jsxRuntime.jsx(jsxRuntime.Fragment, {
95
114
  });
96
115
  TooltipWrapper.displayName = 'TooltipWrapperComponent';
97
116
  const tooltipDefaultProps = {
98
- closeAfter: 0,
117
+ showAfter: 300,
118
+ closeAfter: 200,
99
119
  horizontalConstraint: 'scale',
100
120
  off: false,
101
121
  placement: 'top'
102
122
  };
103
123
  const Tooltip = props => {
104
124
  var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
105
- const leaveTimer = react.useRef();
106
- const childrenRef = react.useRef();
125
+ const enterTimer = react$1.useRef();
126
+ const leaveTimer = react$1.useRef();
107
127
  if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) ;
108
128
  if ((_props$components2 = props.components) !== null && _props$components2 !== void 0 && _props$components2.TooltipWrapperComponent) ;
109
129
  if ((_props$components3 = props.components) !== null && _props$components3 !== void 0 && _props$components3.WrapperComponent) ;
110
- react.useEffect(() => {
130
+ react$1.useEffect(() => {
111
131
  return () => {
132
+ if (enterTimer.current) {
133
+ clearTimeout(enterTimer.current);
134
+ }
112
135
  if (leaveTimer.current) {
113
136
  clearTimeout(leaveTimer.current);
114
137
  }
@@ -119,41 +142,30 @@ const Tooltip = props => {
119
142
  modifiers: props.modifiers
120
143
  }),
121
144
  reference = _usePopper.reference,
122
- popper = _usePopper.popper;
123
- const _useToggleState = hooks.useToggleState(false),
124
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
125
- isOpen = _useToggleState2[0],
126
- toggle = _useToggleState2[1];
127
- const closeTooltip = react.useCallback(() => {
128
- toggle(false);
129
- }, [toggle]);
130
- const openTooltip = react.useCallback(() => {
131
- toggle(true);
132
- }, [toggle]);
145
+ popper = _usePopper.popper,
146
+ popperInstance = _usePopper.popperInstance;
147
+ const _useState = react$1.useState('closed'),
148
+ _useState2 = _slicedToArray(_useState, 2),
149
+ state = _useState2[0],
150
+ setState = _useState2[1];
133
151
  const isControlled = !isNil__default["default"](props.isOpen);
134
- const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
152
+ const tooltipIsOpen = isControlled ? props.isOpen : state === 'opened' || state === 'exiting';
135
153
  const id = hooks.useFieldId(props.id, sequentialId);
136
154
  const onClose = props.onClose;
137
- const handleClose = react.useCallback(event => {
155
+ const handleClose = react$1.useCallback(event => {
138
156
  if (!isControlled) {
139
- closeTooltip();
157
+ setState('closed');
140
158
  }
141
159
  if (onClose) {
142
160
  onClose(event);
143
161
  }
144
- }, [isControlled, closeTooltip, onClose]);
162
+ }, [isControlled, onClose]);
145
163
  const _props$children$props = props.children.props,
146
164
  onFocus = _props$children$props.onFocus,
147
165
  onMouseOver = _props$children$props.onMouseOver;
148
- const onOpen = props.onOpen;
149
- const handleEnter = react.useCallback(event => {
150
- // Remove the title ahead of time.
151
- // We don't want to wait for the next render commit.
152
- // We would risk displaying two tooltips at the same time (native + this one).
153
- if (childrenRef && typeof childrenRef === 'function') {
154
- // @ts-ignore
155
- childrenRef.setAttribute('title', '');
156
- }
166
+ const showAfter = props.showAfter,
167
+ onOpen = props.onOpen;
168
+ const handleEnter = react$1.useCallback(event => {
157
169
  if (event) {
158
170
  if (event.type === 'mouseover' && onMouseOver) {
159
171
  onMouseOver(event);
@@ -161,42 +173,46 @@ const Tooltip = props => {
161
173
  if (event.type === 'focus' && onFocus) {
162
174
  onFocus(event);
163
175
  }
164
- if (!isOpen && !isControlled) {
165
- openTooltip();
166
- }
167
- if (onOpen) {
168
- onOpen(event);
176
+ if (state !== 'opened' && !isControlled) {
177
+ setState('entering');
178
+ enterTimer.current = _setTimeout__default["default"](() => {
179
+ setState('opened');
180
+ if (onOpen) {
181
+ onOpen(event);
182
+ }
183
+ }, showAfter);
169
184
  }
170
185
  event.preventDefault();
171
186
  event.stopPropagation();
172
187
  }
173
- }, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
188
+ }, [onFocus, onOpen, onMouseOver, isControlled, state, showAfter]);
174
189
  const _props$children$props2 = props.children.props,
175
190
  onBlur = _props$children$props2.onBlur,
176
191
  onMouseLeave = _props$children$props2.onMouseLeave;
177
192
  const closeAfter = props.closeAfter;
178
- const handleLeave = react.useCallback(event => {
179
- if (leaveTimer.current) {
180
- clearTimeout(leaveTimer.current);
181
- }
193
+ const handleLeave = react$1.useCallback(event => {
194
+ clearTimeout(enterTimer.current);
195
+ clearTimeout(leaveTimer.current);
182
196
  if (event.type === 'mouseleave' && onMouseLeave) {
183
197
  onMouseLeave(event);
184
198
  }
185
199
  if (event.type === 'blur' && onBlur) {
186
200
  onBlur(event);
187
201
  }
188
- if (closeAfter) {
202
+ if (closeAfter && state === 'opened') {
189
203
  leaveTimer.current = _setTimeout__default["default"](() => {
190
- handleClose(event);
204
+ const tooltipElement = popperInstance === null || popperInstance === void 0 ? void 0 : popperInstance.popper.querySelector('[data-testid="tooltip-message-wrapper"]');
205
+ tooltipElement.addEventListener('animationend', () => handleClose());
206
+ setState('exiting');
191
207
  }, closeAfter);
192
208
  } else {
193
209
  handleClose(event);
194
210
  }
195
- }, [closeAfter, onBlur, onMouseLeave, handleClose]);
196
- react.useEffect(() => {
211
+ }, [closeAfter, onBlur, onMouseLeave, handleClose, state, popperInstance]);
212
+ react$1.useEffect(() => {
197
213
  // if tooltip was open, and then component
198
214
  // updated to be off, we should close the tooltip
199
- if (isOpen && props.off) {
215
+ if (state === 'opened' && props.off) {
200
216
  if (closeAfter) {
201
217
  leaveTimer.current = _setTimeout__default["default"](() => {
202
218
  handleClose();
@@ -205,7 +221,7 @@ const Tooltip = props => {
205
221
  handleClose();
206
222
  }
207
223
  }
208
- }, [props.off, closeAfter, handleClose, toggle, isOpen]);
224
+ }, [props.off, closeAfter, handleClose, state]);
209
225
  const childrenProps = {
210
226
  // don't pass event listeners to children
211
227
  onFocus: null,
@@ -217,10 +233,10 @@ const Tooltip = props => {
217
233
  'aria-describedby': tooltipIsOpen ? id : null,
218
234
  // for seo and accessibility, we add the tooltip's title
219
235
  // as a native title when the title is hidden
220
- title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
236
+ title: !tooltipIsOpen && state !== 'entering' && typeof props.title === 'string' ? props.title : null
221
237
  } : {};
222
238
  const eventListeners = !props.off ? {
223
- onMouseOver: handleEnter,
239
+ onMouseEnter: handleEnter,
224
240
  onMouseLeave: handleLeave,
225
241
  onFocus: handleEnter,
226
242
  onBlur: handleLeave
@@ -232,20 +248,24 @@ const Tooltip = props => {
232
248
  children: [jsxRuntime.jsx(WrapperComponent, _objectSpread(_objectSpread({}, eventListeners), {}, {
233
249
  // @ts-expect-error: yes, ref can be undefined
234
250
  ref: reference.ref,
235
- children: /*#__PURE__*/react.cloneElement(props.children, _objectSpread(_objectSpread({}, childrenProps), tooltipProps))
251
+ children: /*#__PURE__*/react$1.cloneElement(props.children, _objectSpread(_objectSpread({}, childrenProps), tooltipProps))
236
252
  })), tooltipIsOpen && jsxRuntime.jsx(TooltipWrapperComponent, {
237
253
  children: jsxRuntime.jsx("div", {
238
254
  // ref accepts `LegacyRef`, which is a union of `RefObject` and `string`
239
255
  // propper.ref returns `RefObject`
240
256
  ref: popper.ref,
241
- css: /*#__PURE__*/react$1.css(_objectSpread(_objectSpread({}, popper.styles), getBodyStyles({
257
+ css: /*#__PURE__*/react.css(_objectSpread(_objectSpread({}, popper.styles), getBodyStyles({
242
258
  constraint: props.horizontalConstraint,
243
259
  placement: popper.placement,
244
260
  customStyles: (_props$styles = props.styles) === null || _props$styles === void 0 ? void 0 : _props$styles.body
245
261
  })), "" , "" ),
246
262
  "data-placement": popper.placement,
247
- children: jsxRuntime.jsx(BodyComponent, {
248
- children: props.title
263
+ children: jsxRuntime.jsx("div", {
264
+ css: /*#__PURE__*/react.css(_objectSpread({}, getTooltipStyles(state)), "" , "" ),
265
+ "data-testid": "tooltip-message-wrapper",
266
+ children: jsxRuntime.jsx(BodyComponent, {
267
+ children: props.title
268
+ })
249
269
  })
250
270
  })
251
271
  })]
@@ -257,7 +277,7 @@ Tooltip.defaultProps = tooltipDefaultProps;
257
277
  var Tooltip$1 = Tooltip;
258
278
 
259
279
  // NOTE: This string will be replaced on build time with the package version.
260
- var version = "16.4.1";
280
+ var version = "16.6.0";
261
281
 
262
282
  exports["default"] = Tooltip$1;
263
283
  exports.version = version;
@@ -10,20 +10,38 @@ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/inst
10
10
  import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
11
11
  import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
12
12
  import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
13
- import { useRef, useEffect, useCallback, cloneElement } from 'react';
13
+ import { useRef, useEffect, useState, useCallback, cloneElement } from 'react';
14
14
  import { isValidElementType } from 'react-is';
15
15
  import isNil from 'lodash/isNil';
16
16
  import usePopper from 'use-popper';
17
- import { css } from '@emotion/react';
18
- import { useToggleState, useFieldId } from '@commercetools-uikit/hooks';
17
+ import { keyframes, css } from '@emotion/react';
18
+ import { useFieldId } from '@commercetools-uikit/hooks';
19
19
  import { createSequentialId, warning } from '@commercetools-uikit/utils';
20
+ import _taggedTemplateLiteral from '@babel/runtime-corejs3/helpers/esm/taggedTemplateLiteral';
20
21
  import _styled from '@emotion/styled/base';
21
22
  import { designTokens } from '@commercetools-uikit/design-system';
22
23
  import { jsxs, Fragment, jsx } from '@emotion/react/jsx-runtime';
23
24
 
25
+ var _templateObject, _templateObject2;
24
26
  function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
27
  function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys$1(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys$1(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
26
28
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
29
+ const growIn = keyframes(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from {\n transform: scale(0);\n }\n to {\n transform: scale(1);\n }\n"])));
30
+ const growOut = keyframes(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from {\n transform: scale(1);\n }\n to {\n transform: scale(0);\n }\n"])));
31
+ const getAnimation = state => {
32
+ switch (state) {
33
+ case 'opened':
34
+ return {
35
+ animation: "".concat(growIn, " 80ms")
36
+ };
37
+ case 'exiting':
38
+ return {
39
+ animation: "".concat(growOut, " 80ms")
40
+ };
41
+ default:
42
+ return {};
43
+ }
44
+ };
27
45
  const getOffsetMargin = _ref => {
28
46
  let placement = _ref.placement;
29
47
  const position = placement && placement.split('-')[0] || '';
@@ -43,7 +61,7 @@ const Body = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ?
43
61
  } : {
44
62
  target: "e14le4p1",
45
63
  label: "Body"
46
- })("font-family:inherit;border-radius:", designTokens.borderRadius6, ";padding:", designTokens.paddingForTooltip, ";border:none;box-shadow:", designTokens.shadowForTooltip, ";font-size:", designTokens.fontSize20, ";opacity:0.95;color:", designTokens.colorSurface, ";background-color:", designTokens.backgroundColorForTooltip, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFCOEIiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */"));
64
+ })("font-family:inherit;border-radius:", designTokens.borderRadius6, ";padding:", designTokens.paddingForTooltip, ";border:none;box-shadow:", designTokens.shadowForTooltip, ";font-size:", designTokens.fontSize20, ";opacity:0.95;color:", designTokens.colorSurface, ";background-color:", designTokens.backgroundColorForTooltip, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVEOEIiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMsIFRUb29sdGlwU3RhdGUgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBncm93SW4gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmA7XG5cbmNvbnN0IGdyb3dPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbmA7XG5cbmNvbnN0IGdldEFuaW1hdGlvbiA9IChzdGF0ZTogVFRvb2x0aXBTdGF0ZSkgPT4ge1xuICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgY2FzZSAnb3BlbmVkJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFuaW1hdGlvbjogYCR7Z3Jvd0lufSA4MG1zYCxcbiAgICAgIH07XG4gICAgY2FzZSAnZXhpdGluZyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhbmltYXRpb246IGAke2dyb3dPdXR9IDgwbXNgLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHt9O1xuICB9XG59O1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9vbHRpcFN0eWxlcyA9ICh0b29sdGlwU3RhdGU6IFRUb29sdGlwU3RhdGUpID0+XG4gIGdldEFuaW1hdGlvbih0b29sdGlwU3RhdGUpO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */"));
47
65
 
48
66
  // here we use object styles so we can spread these
49
67
  // with the styles we get from react-popper :D
@@ -65,6 +83,7 @@ const getBodyStyles = _ref2 => {
65
83
  zIndex: 1000
66
84
  }, customStyles);
67
85
  };
86
+ const getTooltipStyles = tooltipState => getAnimation(tooltipState);
68
87
  const Wrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
69
88
  target: "e14le4p0"
70
89
  } : {
@@ -76,7 +95,7 @@ const Wrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production
76
95
  } : {
77
96
  name: "18fwu9s",
78
97
  styles: "display:inline-block;cursor:not-allowed;>:disabled{pointer-events:none;}",
79
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZEaUMiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */",
98
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtHaUMiLCJmaWxlIjoidG9vbHRpcC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRUb29sdGlwUHJvcHMsIFRUb29sdGlwU3RhdGUgfSBmcm9tICcuL3Rvb2x0aXAnO1xuXG50eXBlIFREZXNpZ25Ub2tlbk5hbWUgPSBrZXlvZiB0eXBlb2YgZGVzaWduVG9rZW5zO1xuXG5jb25zdCBncm93SW4gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbmA7XG5cbmNvbnN0IGdyb3dPdXQgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbmA7XG5cbmNvbnN0IGdldEFuaW1hdGlvbiA9IChzdGF0ZTogVFRvb2x0aXBTdGF0ZSkgPT4ge1xuICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgY2FzZSAnb3BlbmVkJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFuaW1hdGlvbjogYCR7Z3Jvd0lufSA4MG1zYCxcbiAgICAgIH07XG4gICAgY2FzZSAnZXhpdGluZyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhbmltYXRpb246IGAke2dyb3dPdXR9IDgwbXNgLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHt9O1xuICB9XG59O1xuXG5jb25zdCBnZXRPZmZzZXRNYXJnaW4gPSAoeyBwbGFjZW1lbnQgfTogeyBwbGFjZW1lbnQ6IHN0cmluZyB9KSA9PiB7XG4gIGNvbnN0IHBvc2l0aW9uID0gKHBsYWNlbWVudCAmJiBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXSkgfHwgJyc7XG4gIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gYDAgJHtkZXNpZ25Ub2tlbnMuc3BhY2luZzEwfWA7XG4gICAgY2FzZSAndG9wJzpcbiAgICBjYXNlICdib3R0b20nOlxuICAgICAgcmV0dXJuIGAke2Rlc2lnblRva2Vucy5zcGFjaW5nMTB9IDBgO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gJyc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBCb2R5ID0gc3R5bGVkLmRpdmBcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1czZ9O1xuICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yVG9vbHRpcH07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogJHtkZXNpZ25Ub2tlbnMuc2hhZG93Rm9yVG9vbHRpcH07XG4gIGZvbnQtc2l6ZTogJHtkZXNpZ25Ub2tlbnMuZm9udFNpemUyMH07XG4gIG9wYWNpdHk6IDAuOTU7XG4gIGNvbG9yOiAke2Rlc2lnblRva2Vucy5jb2xvclN1cmZhY2V9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke2Rlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JUb29sdGlwfTtcbmA7XG5cbi8vIGhlcmUgd2UgdXNlIG9iamVjdCBzdHlsZXMgc28gd2UgY2FuIHNwcmVhZCB0aGVzZVxuLy8gd2l0aCB0aGUgc3R5bGVzIHdlIGdldCBmcm9tIHJlYWN0LXBvcHBlciA6RFxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9wcmVmZXItZGVmYXVsdC1leHBvcnRcbmV4cG9ydCBjb25zdCBnZXRCb2R5U3R5bGVzID0gKHtcbiAgY29uc3RyYWludCxcbiAgcGxhY2VtZW50LFxuICBjdXN0b21TdHlsZXMsXG59OiB7XG4gIGNvbnN0cmFpbnQ6IFRUb29sdGlwUHJvcHNbJ2hvcml6b250YWxDb25zdHJhaW50J107XG4gIHBsYWNlbWVudDogc3RyaW5nO1xuICBjdXN0b21TdHlsZXM/OiBDU1NQcm9wZXJ0aWVzO1xufSk6IENTU1Byb3BlcnRpZXMgPT4ge1xuICBjb25zdCBjb25zdHJhaW50VG9rZW5OYW1lID0gYGNvbnN0cmFpbnQke2NvbnN0cmFpbnR9YDtcbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5OiAnaW5oZXJpdCcsXG4gICAgbWFyZ2luOiBgJHtnZXRPZmZzZXRNYXJnaW4oeyBwbGFjZW1lbnQgfSl9ICFpbXBvcnRhbnRgLFxuICAgIG1heFdpZHRoOlxuICAgICAgY29uc3RyYWludFRva2VuTmFtZSBpbiBkZXNpZ25Ub2tlbnNcbiAgICAgICAgPyBkZXNpZ25Ub2tlbnNbY29uc3RyYWludFRva2VuTmFtZSBhcyBURGVzaWduVG9rZW5OYW1lXVxuICAgICAgICA6ICdhdXRvJyxcbiAgICAvLyBzbyBob3ZlcmluZyBvdmVyIHRoZSB0b29sdGlwIHdoZW4gdGhlIHRvb2x0aXAgb3ZlcmxhcHMgdGhlIGNvbXBvbmVudFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB3aWR0aDogY29uc3RyYWludCA9PT0gJ2F1dG8nID8gJ2F1dG8nIDogdW5kZWZpbmVkLFxuICAgIHpJbmRleDogMTAwMCxcbiAgICAuLi5jdXN0b21TdHlsZXMsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9vbHRpcFN0eWxlcyA9ICh0b29sdGlwU3RhdGU6IFRUb29sdGlwU3RhdGUpID0+XG4gIGdldEFuaW1hdGlvbih0b29sdGlwU3RhdGUpO1xuXG5leHBvcnQgY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgPiA6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5gO1xuIl19 */",
80
99
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
81
100
  });
82
101
 
@@ -88,15 +107,16 @@ const TooltipWrapper = props => jsx(Fragment, {
88
107
  });
89
108
  TooltipWrapper.displayName = 'TooltipWrapperComponent';
90
109
  const tooltipDefaultProps = {
91
- closeAfter: 0,
110
+ showAfter: 300,
111
+ closeAfter: 200,
92
112
  horizontalConstraint: 'scale',
93
113
  off: false,
94
114
  placement: 'top'
95
115
  };
96
116
  const Tooltip = props => {
97
117
  var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
118
+ const enterTimer = useRef();
98
119
  const leaveTimer = useRef();
99
- const childrenRef = useRef();
100
120
  if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) {
101
121
  process.env.NODE_ENV !== "production" ? warning(isValidElementType(props.components.BodyComponent), "ui-kit/Tooltip: the prop 'components.BodyComponent' is not a valid React element.") : void 0;
102
122
  }
@@ -108,6 +128,9 @@ const Tooltip = props => {
108
128
  }
109
129
  useEffect(() => {
110
130
  return () => {
131
+ if (enterTimer.current) {
132
+ clearTimeout(enterTimer.current);
133
+ }
111
134
  if (leaveTimer.current) {
112
135
  clearTimeout(leaveTimer.current);
113
136
  }
@@ -118,41 +141,30 @@ const Tooltip = props => {
118
141
  modifiers: props.modifiers
119
142
  }),
120
143
  reference = _usePopper.reference,
121
- popper = _usePopper.popper;
122
- const _useToggleState = useToggleState(false),
123
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
124
- isOpen = _useToggleState2[0],
125
- toggle = _useToggleState2[1];
126
- const closeTooltip = useCallback(() => {
127
- toggle(false);
128
- }, [toggle]);
129
- const openTooltip = useCallback(() => {
130
- toggle(true);
131
- }, [toggle]);
144
+ popper = _usePopper.popper,
145
+ popperInstance = _usePopper.popperInstance;
146
+ const _useState = useState('closed'),
147
+ _useState2 = _slicedToArray(_useState, 2),
148
+ state = _useState2[0],
149
+ setState = _useState2[1];
132
150
  const isControlled = !isNil(props.isOpen);
133
- const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
151
+ const tooltipIsOpen = isControlled ? props.isOpen : state === 'opened' || state === 'exiting';
134
152
  const id = useFieldId(props.id, sequentialId);
135
153
  const onClose = props.onClose;
136
154
  const handleClose = useCallback(event => {
137
155
  if (!isControlled) {
138
- closeTooltip();
156
+ setState('closed');
139
157
  }
140
158
  if (onClose) {
141
159
  onClose(event);
142
160
  }
143
- }, [isControlled, closeTooltip, onClose]);
161
+ }, [isControlled, onClose]);
144
162
  const _props$children$props = props.children.props,
145
163
  onFocus = _props$children$props.onFocus,
146
164
  onMouseOver = _props$children$props.onMouseOver;
147
- const onOpen = props.onOpen;
165
+ const showAfter = props.showAfter,
166
+ onOpen = props.onOpen;
148
167
  const handleEnter = useCallback(event => {
149
- // Remove the title ahead of time.
150
- // We don't want to wait for the next render commit.
151
- // We would risk displaying two tooltips at the same time (native + this one).
152
- if (childrenRef && typeof childrenRef === 'function') {
153
- // @ts-ignore
154
- childrenRef.setAttribute('title', '');
155
- }
156
168
  if (event) {
157
169
  if (event.type === 'mouseover' && onMouseOver) {
158
170
  onMouseOver(event);
@@ -160,42 +172,46 @@ const Tooltip = props => {
160
172
  if (event.type === 'focus' && onFocus) {
161
173
  onFocus(event);
162
174
  }
163
- if (!isOpen && !isControlled) {
164
- openTooltip();
165
- }
166
- if (onOpen) {
167
- onOpen(event);
175
+ if (state !== 'opened' && !isControlled) {
176
+ setState('entering');
177
+ enterTimer.current = _setTimeout(() => {
178
+ setState('opened');
179
+ if (onOpen) {
180
+ onOpen(event);
181
+ }
182
+ }, showAfter);
168
183
  }
169
184
  event.preventDefault();
170
185
  event.stopPropagation();
171
186
  }
172
- }, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
187
+ }, [onFocus, onOpen, onMouseOver, isControlled, state, showAfter]);
173
188
  const _props$children$props2 = props.children.props,
174
189
  onBlur = _props$children$props2.onBlur,
175
190
  onMouseLeave = _props$children$props2.onMouseLeave;
176
191
  const closeAfter = props.closeAfter;
177
192
  const handleLeave = useCallback(event => {
178
- if (leaveTimer.current) {
179
- clearTimeout(leaveTimer.current);
180
- }
193
+ clearTimeout(enterTimer.current);
194
+ clearTimeout(leaveTimer.current);
181
195
  if (event.type === 'mouseleave' && onMouseLeave) {
182
196
  onMouseLeave(event);
183
197
  }
184
198
  if (event.type === 'blur' && onBlur) {
185
199
  onBlur(event);
186
200
  }
187
- if (closeAfter) {
201
+ if (closeAfter && state === 'opened') {
188
202
  leaveTimer.current = _setTimeout(() => {
189
- handleClose(event);
203
+ const tooltipElement = popperInstance === null || popperInstance === void 0 ? void 0 : popperInstance.popper.querySelector('[data-testid="tooltip-message-wrapper"]');
204
+ tooltipElement.addEventListener('animationend', () => handleClose());
205
+ setState('exiting');
190
206
  }, closeAfter);
191
207
  } else {
192
208
  handleClose(event);
193
209
  }
194
- }, [closeAfter, onBlur, onMouseLeave, handleClose]);
210
+ }, [closeAfter, onBlur, onMouseLeave, handleClose, state, popperInstance]);
195
211
  useEffect(() => {
196
212
  // if tooltip was open, and then component
197
213
  // updated to be off, we should close the tooltip
198
- if (isOpen && props.off) {
214
+ if (state === 'opened' && props.off) {
199
215
  if (closeAfter) {
200
216
  leaveTimer.current = _setTimeout(() => {
201
217
  handleClose();
@@ -204,7 +220,7 @@ const Tooltip = props => {
204
220
  handleClose();
205
221
  }
206
222
  }
207
- }, [props.off, closeAfter, handleClose, toggle, isOpen]);
223
+ }, [props.off, closeAfter, handleClose, state]);
208
224
  const childrenProps = {
209
225
  // don't pass event listeners to children
210
226
  onFocus: null,
@@ -216,10 +232,10 @@ const Tooltip = props => {
216
232
  'aria-describedby': tooltipIsOpen ? id : null,
217
233
  // for seo and accessibility, we add the tooltip's title
218
234
  // as a native title when the title is hidden
219
- title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
235
+ title: !tooltipIsOpen && state !== 'entering' && typeof props.title === 'string' ? props.title : null
220
236
  } : {};
221
237
  const eventListeners = !props.off ? {
222
- onMouseOver: handleEnter,
238
+ onMouseEnter: handleEnter,
223
239
  onMouseLeave: handleLeave,
224
240
  onFocus: handleEnter,
225
241
  onBlur: handleLeave
@@ -241,10 +257,14 @@ const Tooltip = props => {
241
257
  constraint: props.horizontalConstraint,
242
258
  placement: popper.placement,
243
259
  customStyles: (_props$styles = props.styles) === null || _props$styles === void 0 ? void 0 : _props$styles.body
244
- })), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1VaUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgaXNWYWxpZEVsZW1lbnRUeXBlIH0gZnJvbSAncmVhY3QtaXMnO1xuaW1wb3J0IGlzTmlsIGZyb20gJ2xvZGFzaC9pc05pbCc7XG5pbXBvcnQgdXNlUG9wcGVyIGZyb20gJ3VzZS1wb3BwZXInO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyBXcmFwcGVyLCBCb2R5LCBnZXRCb2R5U3R5bGVzIH0gZnJvbSAnLi90b29sdGlwLnN0eWxlcyc7XG5cbmNvbnN0IHNlcXVlbnRpYWxJZCA9IGNyZWF0ZVNlcXVlbnRpYWxJZCgndG9vbHRpcC0nKTtcblxuZXhwb3J0IHR5cGUgVENvbXBvbmVudHMgPSB7XG4gIC8qKlxuICAgKiBUaGUgY29tcG9uZW50IHJlbmRlcmVkIGFzIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBCb2R5Q29tcG9uZW50PzogQ29tcG9uZW50VHlwZTtcbiAgLyoqXG4gICAqIFdoZXJlIHRoZSB0b29sdGlwIHNob3VsZCBiZSByZW5kZXJlZC4gVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHJlbmRlciB0aGUgdG9vbHRpcCBpbnRvIGFub3RoZXIgcGFydCBvZiB0aGUgZG9jdW1lbnQsIHVzaW5nIFJlYWN0IHBvcnRhbC5cbiAgICovXG4gIFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PzogQ29tcG9uZW50VHlwZTtcbiAgLyoqXG4gICAqIEEgY3VzdG9tIGNvbXBvbmVudCB3cmFwcGVyIGZvciB0aGUgdG9vbHRpcC5cbiAgICovXG4gIFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xufTtcblxuZXhwb3J0IHR5cGUgVFRvb2x0aXBQcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0RWxlbWVudDtcblxuICAvKipcbiAgICogRGVsYXkgKGluIG1pbGxpc2Vjb25kcykgYmV0d2VlbiB0aGUgZW5kIG9mIHRoZSB1c2VyIGludGVyYWN0aW9uLCBhbmQgdGhlIGNsb3Npbmcgb2YgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBjbG9zZUFmdGVyOiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5jb25zdCBUb29sdGlwV3JhcHBlciA9IChwcm9wczogUGljazxUVG9vbHRpcFByb3BzLCAnY2hpbGRyZW4nPikgPT4gKFxuICA8Pntwcm9wcy5jaGlsZHJlbn08Lz5cbik7XG5Ub29sdGlwV3JhcHBlci5kaXNwbGF5TmFtZSA9ICdUb29sdGlwV3JhcHBlckNvbXBvbmVudCc7XG5cbmNvbnN0IHRvb2x0aXBEZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRUb29sdGlwUHJvcHMsXG4gICdjbG9zZUFmdGVyJyB8ICdob3Jpem9udGFsQ29uc3RyYWludCcgfCAnb2ZmJyB8ICdwbGFjZW1lbnQnXG4+ID0ge1xuICBjbG9zZUFmdGVyOiAwLFxuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgb2ZmOiBmYWxzZSxcbiAgcGxhY2VtZW50OiAndG9wJyxcbn07XG5cbmNvbnN0IFRvb2x0aXAgPSAocHJvcHM6IFRUb29sdGlwUHJvcHMpID0+IHtcbiAgY29uc3QgbGVhdmVUaW1lciA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKTtcbiAgY29uc3QgY2hpbGRyZW5SZWYgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5Cb2R5Q29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLkJvZHlDb21wb25lbnQpLFxuICAgICAgYHVpLWtpdC9Ub29sdGlwOiB0aGUgcHJvcCAnY29tcG9uZW50cy5Cb2R5Q29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5Ub29sdGlwV3JhcHBlckNvbXBvbmVudCkge1xuICAgIHdhcm5pbmcoXG4gICAgICBpc1ZhbGlkRWxlbWVudFR5cGUocHJvcHMuY29tcG9uZW50cy5Ub29sdGlwV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb21wb25lbnRzPy5XcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQpLFxuICAgICAgYHVpLWtpdC9Ub29sdGlwOiB0aGUgcHJvcCAnY29tcG9uZW50cy5XcmFwcGVyQ29tcG9uZW50JyBpcyBub3QgYSB2YWxpZCBSZWFjdCBlbGVtZW50LmBcbiAgICApO1xuICB9XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciB9ID0gdXNlUG9wcGVyKHtcbiAgICBwbGFjZW1lbnQ6IHByb3BzLnBsYWNlbWVudCxcbiAgICBtb2RpZmllcnM6IHByb3BzLm1vZGlmaWVycyxcbiAgfSk7XG4gIGNvbnN0IFtpc09wZW4sIHRvZ2dsZV0gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGNsb3NlVG9vbHRpcCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICB0b2dnbGUoZmFsc2UpO1xuICB9LCBbdG9nZ2xlXSk7XG4gIGNvbnN0IG9wZW5Ub29sdGlwID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHRvZ2dsZSh0cnVlKTtcbiAgfSwgW3RvZ2dsZV0pO1xuXG4gIGNvbnN0IGlzQ29udHJvbGxlZCA9ICFpc05pbChwcm9wcy5pc09wZW4pO1xuICBjb25zdCB0b29sdGlwSXNPcGVuID0gaXNDb250cm9sbGVkID8gcHJvcHMuaXNPcGVuIDogaXNPcGVuO1xuICBjb25zdCBpZCA9IHVzZUZpZWxkSWQocHJvcHMuaWQsIHNlcXVlbnRpYWxJZCk7XG5cbiAgY29uc3QgeyBvbkNsb3NlIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmICghaXNDb250cm9sbGVkKSB7XG4gICAgICAgIGNsb3NlVG9vbHRpcCgpO1xuICAgICAgfVxuICAgICAgaWYgKG9uQ2xvc2UpIHtcbiAgICAgICAgb25DbG9zZShldmVudCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbaXNDb250cm9sbGVkLCBjbG9zZVRvb2x0aXAsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgb25PcGVuIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlRW50ZXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHtcbiAgICAgIC8vIFJlbW92ZSB0aGUgdGl0bGUgYWhlYWQgb2YgdGltZS5cbiAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gd2FpdCBmb3IgdGhlIG5leHQgcmVuZGVyIGNvbW1pdC5cbiAgICAgIC8vIFdlIHdvdWxkIHJpc2sgZGlzcGxheWluZyB0d28gdG9vbHRpcHMgYXQgdGhlIHNhbWUgdGltZSAobmF0aXZlICsgdGhpcyBvbmUpLlxuICAgICAgaWYgKGNoaWxkcmVuUmVmICYmIHR5cGVvZiBjaGlsZHJlblJlZiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGNoaWxkcmVuUmVmLnNldEF0dHJpYnV0ZSgndGl0bGUnLCAnJyk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudCkge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ21vdXNlb3ZlcicgJiYgb25Nb3VzZU92ZXIpIHtcbiAgICAgICAgICBvbk1vdXNlT3ZlcihldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2ZvY3VzJyAmJiBvbkZvY3VzKSB7XG4gICAgICAgICAgb25Gb2N1cyhldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWlzT3BlbiAmJiAhaXNDb250cm9sbGVkKSB7XG4gICAgICAgICAgb3BlblRvb2x0aXAoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbk9wZW4pIHtcbiAgICAgICAgICBvbk9wZW4oZXZlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25Gb2N1cywgb25PcGVuLCBvbk1vdXNlT3ZlciwgaXNDb250cm9sbGVkLCBpc09wZW4sIG9wZW5Ub29sdGlwXVxuICApO1xuXG4gIGNvbnN0IHsgb25CbHVyLCBvbk1vdXNlTGVhdmUgfSA9IHByb3BzLmNoaWxkcmVuLnByb3BzO1xuICBjb25zdCB7IGNsb3NlQWZ0ZXIgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGhhbmRsZUxlYXZlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICBpZiAobGVhdmVUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChsZWF2ZVRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ21vdXNlbGVhdmUnICYmIG9uTW91c2VMZWF2ZSkge1xuICAgICAgICBvbk1vdXNlTGVhdmUoZXZlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2JsdXInICYmIG9uQmx1cikge1xuICAgICAgICBvbkJsdXIoZXZlbnQpO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2xvc2VBZnRlcikge1xuICAgICAgICBsZWF2ZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbG9zZShldmVudCk7XG4gICAgICAgIH0sIGNsb3NlQWZ0ZXIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaGFuZGxlQ2xvc2UoZXZlbnQpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2Nsb3NlQWZ0ZXIsIG9uQmx1ciwgb25Nb3VzZUxlYXZlLCBoYW5kbGVDbG9zZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoaXNPcGVuICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHRvZ2dsZSwgaXNPcGVuXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmIHR5cGVvZiBwcm9wcy50aXRsZSA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgID8gcHJvcHMudGl0bGVcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IGV2ZW50TGlzdGVuZXJzID0gIXByb3BzLm9mZlxuICAgID8ge1xuICAgICAgICBvbk1vdXNlT3ZlcjogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uTW91c2VMZWF2ZTogaGFuZGxlTGVhdmUsXG4gICAgICAgIG9uRm9jdXM6IGhhbmRsZUVudGVyLFxuICAgICAgICBvbkJsdXI6IGhhbmRsZUxlYXZlLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3QgV3JhcHBlckNvbXBvbmVudCA9IHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQgfHwgV3JhcHBlcjtcbiAgY29uc3QgQm9keUNvbXBvbmVudCA9IHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQgfHwgQm9keTtcbiAgY29uc3QgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgPVxuICAgIHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50IHx8IFRvb2x0aXBXcmFwcGVyO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxXcmFwcGVyQ29tcG9uZW50XG4gICAgICAgIHsuLi5ldmVudExpc3RlbmVyc31cbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogeWVzLCByZWYgY2FuIGJlIHVuZGVmaW5lZFxuICAgICAgICByZWY9e3JlZmVyZW5jZS5yZWZ9XG4gICAgICA+XG4gICAgICAgIHtjbG9uZUVsZW1lbnQocHJvcHMuY2hpbGRyZW4sIHtcbiAgICAgICAgICAuLi5jaGlsZHJlblByb3BzLFxuICAgICAgICAgIC4uLnRvb2x0aXBQcm9wcyxcbiAgICAgICAgfSl9XG4gICAgICA8L1dyYXBwZXJDb21wb25lbnQ+XG4gICAgICB7dG9vbHRpcElzT3BlbiAmJiAoXG4gICAgICAgIDxUb29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAvLyByZWYgYWNjZXB0cyBgTGVnYWN5UmVmYCwgd2hpY2ggaXMgYSB1bmlvbiBvZiBgUmVmT2JqZWN0YCBhbmQgYHN0cmluZ2BcbiAgICAgICAgICAgIC8vIHByb3BwZXIucmVmIHJldHVybnMgYFJlZk9iamVjdGBcbiAgICAgICAgICAgIHJlZj17cG9wcGVyLnJlZiBhcyBMZWdhY3lSZWY8SFRNTERpdkVsZW1lbnQ+fVxuICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAuLi5wb3BwZXIuc3R5bGVzLFxuICAgICAgICAgICAgICAuLi5nZXRCb2R5U3R5bGVzKHtcbiAgICAgICAgICAgICAgICBjb25zdHJhaW50OiBwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludCxcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ6IHBvcHBlci5wbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgY3VzdG9tU3R5bGVzOiBwcm9wcy5zdHlsZXM/LmJvZHksXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBkYXRhLXBsYWNlbWVudD17cG9wcGVyLnBsYWNlbWVudH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Qm9keUNvbXBvbmVudD57cHJvcHMudGl0bGV9PC9Cb2R5Q29tcG9uZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn07XG5cblRvb2x0aXAuZGlzcGxheU5hbWUgPSAnVG9vbFRpcCc7XG5Ub29sdGlwLmRlZmF1bHRQcm9wcyA9IHRvb2x0aXBEZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IFRvb2x0aXA7XG4iXX0= */"),
260
+ })), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlWaUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGlzVmFsaWRFbGVtZW50VHlwZSB9IGZyb20gJ3JlYWN0LWlzJztcbmltcG9ydCBpc05pbCBmcm9tICdsb2Rhc2gvaXNOaWwnO1xuaW1wb3J0IHVzZVBvcHBlciBmcm9tICd1c2UtcG9wcGVyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQge1xuICBXcmFwcGVyLFxuICBCb2R5LFxuICBnZXRCb2R5U3R5bGVzLFxuICBnZXRUb29sdGlwU3R5bGVzLFxufSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBzdGFydCBvZiB0aGUgdXNlciBpbnRlcmFjdGlvbiwgYW5kIHNob3dpbmcgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBzaG93QWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFN0YXRlID0gJ2Nsb3NlZCcgfCAnZW50ZXJpbmcnIHwgJ29wZW5lZCcgfCAnZXhpdGluZyc7XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ3Nob3dBZnRlcicgfCAnY2xvc2VBZnRlcicgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnIHwgJ29mZicgfCAncGxhY2VtZW50J1xuPiA9IHtcbiAgc2hvd0FmdGVyOiAzMDAsXG4gIGNsb3NlQWZ0ZXI6IDIwMCxcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIG9mZjogZmFsc2UsXG4gIHBsYWNlbWVudDogJ3RvcCcsXG59O1xuXG5jb25zdCBUb29sdGlwID0gKHByb3BzOiBUVG9vbHRpcFByb3BzKSA9PiB7XG4gIGNvbnN0IGVudGVyVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGNvbnN0IGxlYXZlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG5cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoZW50ZXJUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChlbnRlclRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciwgcG9wcGVySW5zdGFuY2UgfSA9IHVzZVBvcHBlcih7XG4gICAgcGxhY2VtZW50OiBwcm9wcy5wbGFjZW1lbnQsXG4gICAgbW9kaWZpZXJzOiBwcm9wcy5tb2RpZmllcnMsXG4gIH0pO1xuICBjb25zdCBbc3RhdGUsIHNldFN0YXRlXSA9IHVzZVN0YXRlPFRUb29sdGlwU3RhdGU+KCdjbG9zZWQnKTtcblxuICBjb25zdCBpc0NvbnRyb2xsZWQgPSAhaXNOaWwocHJvcHMuaXNPcGVuKTtcbiAgY29uc3QgdG9vbHRpcElzT3BlbiA9IGlzQ29udHJvbGxlZFxuICAgID8gcHJvcHMuaXNPcGVuXG4gICAgOiBzdGF0ZSA9PT0gJ29wZW5lZCcgfHwgc3RhdGUgPT09ICdleGl0aW5nJztcbiAgY29uc3QgaWQgPSB1c2VGaWVsZElkKHByb3BzLmlkLCBzZXF1ZW50aWFsSWQpO1xuXG4gIGNvbnN0IHsgb25DbG9zZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50PzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB7XG4gICAgICBpZiAoIWlzQ29udHJvbGxlZCkge1xuICAgICAgICBzZXRTdGF0ZSgnY2xvc2VkJyk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgc2hvd0FmdGVyLCBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSAhPT0gJ29wZW5lZCcgJiYgIWlzQ29udHJvbGxlZCkge1xuICAgICAgICAgIHNldFN0YXRlKCdlbnRlcmluZycpO1xuICAgICAgICAgIGVudGVyVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0U3RhdGUoJ29wZW5lZCcpO1xuXG4gICAgICAgICAgICBpZiAob25PcGVuKSB7XG4gICAgICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgc2hvd0FmdGVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uRm9jdXMsIG9uT3Blbiwgb25Nb3VzZU92ZXIsIGlzQ29udHJvbGxlZCwgc3RhdGUsIHNob3dBZnRlcl1cbiAgKTtcblxuICBjb25zdCB7IG9uQmx1ciwgb25Nb3VzZUxlYXZlIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBjbG9zZUFmdGVyIH0gPSBwcm9wcztcblxuICBjb25zdCBoYW5kbGVMZWF2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KGVudGVyVGltZXIuY3VycmVudCk7XG4gICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWxlYXZlJyAmJiBvbk1vdXNlTGVhdmUpIHtcbiAgICAgICAgb25Nb3VzZUxlYXZlKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdibHVyJyAmJiBvbkJsdXIpIHtcbiAgICAgICAgb25CbHVyKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNsb3NlQWZ0ZXIgJiYgc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gcG9wcGVySW5zdGFuY2U/LnBvcHBlci5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJ1tkYXRhLXRlc3RpZD1cInRvb2x0aXAtbWVzc2FnZS13cmFwcGVyXCJdJ1xuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgdG9vbHRpcEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgKCkgPT4gaGFuZGxlQ2xvc2UoKSk7XG5cbiAgICAgICAgICBzZXRTdGF0ZSgnZXhpdGluZycpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtjbG9zZUFmdGVyLCBvbkJsdXIsIG9uTW91c2VMZWF2ZSwgaGFuZGxlQ2xvc2UsIHN0YXRlLCBwb3BwZXJJbnN0YW5jZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoc3RhdGUgPT09ICdvcGVuZWQnICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHN0YXRlXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmXG4gICAgICAgICAgc3RhdGUgIT09ICdlbnRlcmluZycgJiZcbiAgICAgICAgICB0eXBlb2YgcHJvcHMudGl0bGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICA/IHByb3BzLnRpdGxlXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBldmVudExpc3RlbmVycyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgb25Nb3VzZUVudGVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e2Nzcyh7XG4gICAgICAgICAgICAgIC4uLnBvcHBlci5zdHlsZXMsXG4gICAgICAgICAgICAgIC4uLmdldEJvZHlTdHlsZXMoe1xuICAgICAgICAgICAgICAgIGNvbnN0cmFpbnQ6IHByb3BzLmhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogcG9wcGVyLnBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBjdXN0b21TdHlsZXM6IHByb3BzLnN0eWxlcz8uYm9keSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGRhdGEtcGxhY2VtZW50PXtwb3BwZXIucGxhY2VtZW50fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAgIC4uLmdldFRvb2x0aXBTdHlsZXMoc3RhdGUpLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJ0b29sdGlwLW1lc3NhZ2Utd3JhcHBlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxCb2R5Q29tcG9uZW50Pntwcm9wcy50aXRsZX08L0JvZHlDb21wb25lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9Ub29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICl9XG4gICAgPC8+XG4gICk7XG59O1xuXG5Ub29sdGlwLmRpc3BsYXlOYW1lID0gJ1Rvb2xUaXAnO1xuVG9vbHRpcC5kZWZhdWx0UHJvcHMgPSB0b29sdGlwRGVmYXVsdFByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBUb29sdGlwO1xuIl19 */"),
245
261
  "data-placement": popper.placement,
246
- children: jsx(BodyComponent, {
247
- children: props.title
262
+ children: jsx("div", {
263
+ css: /*#__PURE__*/css(_objectSpread({}, getTooltipStyles(state)), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRWbUIiLCJmaWxlIjoidG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbnNwaXJlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWktb3JnL21hdGVyaWFsLXVpL2Jsb2IvOWVjYzhkYjhhYmJmYjgyOTExMWQzYjVjMDY3ODI2NzgyNzk4NDAyNC9wYWNrYWdlcy9tYXRlcmlhbC11aS9zcmMvVG9vbHRpcC9Ub29sdGlwLmpzXG5pbXBvcnQgeyBNb2RpZmllcnMgfSBmcm9tICdwb3BwZXIuanMnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50VHlwZSxcbiAgRm9jdXNFdmVudCxcbiAgQ2hhbmdlRXZlbnQsXG4gIExlZ2FjeVJlZixcbiAgQ1NTUHJvcGVydGllcyxcbiAgUmVhY3RFbGVtZW50LFxuICB1c2VSZWYsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG4gIGNsb25lRWxlbWVudCxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGlzVmFsaWRFbGVtZW50VHlwZSB9IGZyb20gJ3JlYWN0LWlzJztcbmltcG9ydCBpc05pbCBmcm9tICdsb2Rhc2gvaXNOaWwnO1xuaW1wb3J0IHVzZVBvcHBlciBmcm9tICd1c2UtcG9wcGVyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQge1xuICBXcmFwcGVyLFxuICBCb2R5LFxuICBnZXRCb2R5U3R5bGVzLFxuICBnZXRUb29sdGlwU3R5bGVzLFxufSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBzdGFydCBvZiB0aGUgdXNlciBpbnRlcmFjdGlvbiwgYW5kIHNob3dpbmcgdGhlIHRvb2x0aXAuXG4gICAqL1xuICBzaG93QWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBDdXN0b20gY3NzLWluLWpzIG9iamVjdCBzdHlsZXMgZm9yIHRoZSB0b29sdGlwIGJvZHkuXG4gICAqL1xuICBzdHlsZXM/OiBSZWNvcmQ8c3RyaW5nLCBDU1NQcm9wZXJ0aWVzPjtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRvb2x0aXAgc2hvdWxkIG5vdCBhcHBlYXIuXG4gICAqL1xuICBvZmY6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBbiBpZGVudGlmaWVyIGZvciB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYGFyaWEtZGVzY3JpYmVkYnlgLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBjbG9zaW5nLlxuICAgKi9cbiAgb25DbG9zZT86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gdGhlIHRvb2x0aXAgaXMgb3BlbmluZy5cbiAgICovXG4gIG9uT3Blbj86IChlPzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB2b2lkO1xuICBpc09wZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogSG93IHRoZSB0b29sdGlwIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGNoaWxkIGVsZW1lbnQuXG4gICAqL1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgJ3RvcCdcbiAgICB8ICd0b3Atc3RhcnQnXG4gICAgfCAndG9wLWVuZCdcbiAgICB8ICdyaWdodCdcbiAgICB8ICdyaWdodC1zdGFydCdcbiAgICB8ICdyaWdodC1lbmQnXG4gICAgfCAnYm90dG9tJ1xuICAgIHwgJ2JvdHRvbS1zdGFydCdcbiAgICB8ICdib3R0b20tZW5kJ1xuICAgIHwgJ2xlZnQnXG4gICAgfCAnbGVmdC1zdGFydCdcbiAgICB8ICdsZWZ0LWVuZCc7XG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0byBzaG93IGluIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgd2F5IHRvIGZpbmUtdHVuZSBhbiBhcHBlYXJhbmNlIG9mIHVuZGVybHlpbmcgUG9wcGVyIHRvb2x0aXAgZWxlbWVudC4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSBjaGVjayBbUG9wcGVyLmpzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vcG9wcGVyLmpzLm9yZy9wb3BwZXItZG9jdW1lbnRhdGlvbi5odG1sI21vZGlmaWVycykuXG4gICAqL1xuICBtb2RpZmllcnM/OiBNb2RpZmllcnM7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGFwcGVhcmFuY2Ugb2YgY2VydGFpbiBlbGVtZW50cyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNvbXBvbmVudHM/OiBUQ29tcG9uZW50cztcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFN0YXRlID0gJ2Nsb3NlZCcgfCAnZW50ZXJpbmcnIHwgJ29wZW5lZCcgfCAnZXhpdGluZyc7XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ3Nob3dBZnRlcicgfCAnY2xvc2VBZnRlcicgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnIHwgJ29mZicgfCAncGxhY2VtZW50J1xuPiA9IHtcbiAgc2hvd0FmdGVyOiAzMDAsXG4gIGNsb3NlQWZ0ZXI6IDIwMCxcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIG9mZjogZmFsc2UsXG4gIHBsYWNlbWVudDogJ3RvcCcsXG59O1xuXG5jb25zdCBUb29sdGlwID0gKHByb3BzOiBUVG9vbHRpcFByb3BzKSA9PiB7XG4gIGNvbnN0IGVudGVyVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG4gIGNvbnN0IGxlYXZlVGltZXIgPSB1c2VSZWY8UmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4+KCk7XG5cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoZW50ZXJUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChlbnRlclRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKGxlYXZlVGltZXIuY3VycmVudCkge1xuICAgICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbXSk7XG5cbiAgY29uc3QgeyByZWZlcmVuY2UsIHBvcHBlciwgcG9wcGVySW5zdGFuY2UgfSA9IHVzZVBvcHBlcih7XG4gICAgcGxhY2VtZW50OiBwcm9wcy5wbGFjZW1lbnQsXG4gICAgbW9kaWZpZXJzOiBwcm9wcy5tb2RpZmllcnMsXG4gIH0pO1xuICBjb25zdCBbc3RhdGUsIHNldFN0YXRlXSA9IHVzZVN0YXRlPFRUb29sdGlwU3RhdGU+KCdjbG9zZWQnKTtcblxuICBjb25zdCBpc0NvbnRyb2xsZWQgPSAhaXNOaWwocHJvcHMuaXNPcGVuKTtcbiAgY29uc3QgdG9vbHRpcElzT3BlbiA9IGlzQ29udHJvbGxlZFxuICAgID8gcHJvcHMuaXNPcGVuXG4gICAgOiBzdGF0ZSA9PT0gJ29wZW5lZCcgfHwgc3RhdGUgPT09ICdleGl0aW5nJztcbiAgY29uc3QgaWQgPSB1c2VGaWVsZElkKHByb3BzLmlkLCBzZXF1ZW50aWFsSWQpO1xuXG4gIGNvbnN0IHsgb25DbG9zZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50PzogQ2hhbmdlRXZlbnQgfCBGb2N1c0V2ZW50KSA9PiB7XG4gICAgICBpZiAoIWlzQ29udHJvbGxlZCkge1xuICAgICAgICBzZXRTdGF0ZSgnY2xvc2VkJyk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIG9uQ2xvc2VdXG4gICk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbk1vdXNlT3ZlciB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgc2hvd0FmdGVyLCBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSAhPT0gJ29wZW5lZCcgJiYgIWlzQ29udHJvbGxlZCkge1xuICAgICAgICAgIHNldFN0YXRlKCdlbnRlcmluZycpO1xuICAgICAgICAgIGVudGVyVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0U3RhdGUoJ29wZW5lZCcpO1xuXG4gICAgICAgICAgICBpZiAob25PcGVuKSB7XG4gICAgICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgc2hvd0FmdGVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uRm9jdXMsIG9uT3Blbiwgb25Nb3VzZU92ZXIsIGlzQ29udHJvbGxlZCwgc3RhdGUsIHNob3dBZnRlcl1cbiAgKTtcblxuICBjb25zdCB7IG9uQmx1ciwgb25Nb3VzZUxlYXZlIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBjbG9zZUFmdGVyIH0gPSBwcm9wcztcblxuICBjb25zdCBoYW5kbGVMZWF2ZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KGVudGVyVGltZXIuY3VycmVudCk7XG4gICAgICBjbGVhclRpbWVvdXQobGVhdmVUaW1lci5jdXJyZW50KTtcblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWxlYXZlJyAmJiBvbk1vdXNlTGVhdmUpIHtcbiAgICAgICAgb25Nb3VzZUxlYXZlKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdibHVyJyAmJiBvbkJsdXIpIHtcbiAgICAgICAgb25CbHVyKGV2ZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNsb3NlQWZ0ZXIgJiYgc3RhdGUgPT09ICdvcGVuZWQnKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gcG9wcGVySW5zdGFuY2U/LnBvcHBlci5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgJ1tkYXRhLXRlc3RpZD1cInRvb2x0aXAtbWVzc2FnZS13cmFwcGVyXCJdJ1xuICAgICAgICAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgdG9vbHRpcEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignYW5pbWF0aW9uZW5kJywgKCkgPT4gaGFuZGxlQ2xvc2UoKSk7XG5cbiAgICAgICAgICBzZXRTdGF0ZSgnZXhpdGluZycpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtjbG9zZUFmdGVyLCBvbkJsdXIsIG9uTW91c2VMZWF2ZSwgaGFuZGxlQ2xvc2UsIHN0YXRlLCBwb3BwZXJJbnN0YW5jZV1cbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIGlmIHRvb2x0aXAgd2FzIG9wZW4sIGFuZCB0aGVuIGNvbXBvbmVudFxuICAgIC8vIHVwZGF0ZWQgdG8gYmUgb2ZmLCB3ZSBzaG91bGQgY2xvc2UgdGhlIHRvb2x0aXBcbiAgICBpZiAoc3RhdGUgPT09ICdvcGVuZWQnICYmIHByb3BzLm9mZikge1xuICAgICAgaWYgKGNsb3NlQWZ0ZXIpIHtcbiAgICAgICAgbGVhdmVUaW1lci5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3Byb3BzLm9mZiwgY2xvc2VBZnRlciwgaGFuZGxlQ2xvc2UsIHN0YXRlXSk7XG5cbiAgY29uc3QgY2hpbGRyZW5Qcm9wcyA9IHtcbiAgICAvLyBkb24ndCBwYXNzIGV2ZW50IGxpc3RlbmVycyB0byBjaGlsZHJlblxuICAgIG9uRm9jdXM6IG51bGwsXG4gICAgb25Nb3VzZU92ZXI6IG51bGwsXG4gICAgb25Nb3VzZUxlYXZlOiBudWxsLFxuICAgIG9uQmx1cjogbnVsbCxcbiAgfTtcblxuICBjb25zdCB0b29sdGlwUHJvcHMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogdG9vbHRpcElzT3BlbiA/IGlkIDogbnVsbCxcbiAgICAgICAgLy8gZm9yIHNlbyBhbmQgYWNjZXNzaWJpbGl0eSwgd2UgYWRkIHRoZSB0b29sdGlwJ3MgdGl0bGVcbiAgICAgICAgLy8gYXMgYSBuYXRpdmUgdGl0bGUgd2hlbiB0aGUgdGl0bGUgaXMgaGlkZGVuXG4gICAgICAgIHRpdGxlOlxuICAgICAgICAgICF0b29sdGlwSXNPcGVuICYmXG4gICAgICAgICAgc3RhdGUgIT09ICdlbnRlcmluZycgJiZcbiAgICAgICAgICB0eXBlb2YgcHJvcHMudGl0bGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICA/IHByb3BzLnRpdGxlXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBldmVudExpc3RlbmVycyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgb25Nb3VzZUVudGVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e2Nzcyh7XG4gICAgICAgICAgICAgIC4uLnBvcHBlci5zdHlsZXMsXG4gICAgICAgICAgICAgIC4uLmdldEJvZHlTdHlsZXMoe1xuICAgICAgICAgICAgICAgIGNvbnN0cmFpbnQ6IHByb3BzLmhvcml6b250YWxDb25zdHJhaW50LFxuICAgICAgICAgICAgICAgIHBsYWNlbWVudDogcG9wcGVyLnBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBjdXN0b21TdHlsZXM6IHByb3BzLnN0eWxlcz8uYm9keSxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIGRhdGEtcGxhY2VtZW50PXtwb3BwZXIucGxhY2VtZW50fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY3NzPXtjc3Moe1xuICAgICAgICAgICAgICAgIC4uLmdldFRvb2x0aXBTdHlsZXMoc3RhdGUpLFxuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJ0b29sdGlwLW1lc3NhZ2Utd3JhcHBlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxCb2R5Q29tcG9uZW50Pntwcm9wcy50aXRsZX08L0JvZHlDb21wb25lbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9Ub29sdGlwV3JhcHBlckNvbXBvbmVudD5cbiAgICAgICl9XG4gICAgPC8+XG4gICk7XG59O1xuXG5Ub29sdGlwLmRpc3BsYXlOYW1lID0gJ1Rvb2xUaXAnO1xuVG9vbHRpcC5kZWZhdWx0UHJvcHMgPSB0b29sdGlwRGVmYXVsdFByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBUb29sdGlwO1xuIl19 */"),
264
+ "data-testid": "tooltip-message-wrapper",
265
+ children: jsx(BodyComponent, {
266
+ children: props.title
267
+ })
248
268
  })
249
269
  })
250
270
  })]
@@ -252,7 +272,8 @@ const Tooltip = props => {
252
272
  };
253
273
  Tooltip.propTypes = process.env.NODE_ENV !== "production" ? {
254
274
  children: _pt.element.isRequired,
255
- closeAfter: _pt.number.isRequired,
275
+ showAfter: _pt.number,
276
+ closeAfter: _pt.number,
256
277
  styles: _pt.objectOf(_pt.any),
257
278
  off: _pt.bool.isRequired,
258
279
  id: _pt.string,
@@ -274,6 +295,6 @@ Tooltip.defaultProps = tooltipDefaultProps;
274
295
  var Tooltip$1 = Tooltip;
275
296
 
276
297
  // NOTE: This string will be replaced on build time with the package version.
277
- var version = "16.4.1";
298
+ var version = "16.6.0";
278
299
 
279
300
  export { Tooltip$1 as default, version };
@@ -7,7 +7,8 @@ export type TComponents = {
7
7
  };
8
8
  export type TTooltipProps = {
9
9
  children: ReactElement;
10
- closeAfter: number;
10
+ showAfter?: number;
11
+ closeAfter?: number;
11
12
  styles?: Record<string, CSSProperties>;
12
13
  off: boolean;
13
14
  id?: string;
@@ -20,9 +21,10 @@ export type TTooltipProps = {
20
21
  components?: TComponents;
21
22
  horizontalConstraint?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 'scale' | 'auto';
22
23
  };
24
+ export type TTooltipState = 'closed' | 'entering' | 'opened' | 'exiting';
23
25
  declare const Tooltip: {
24
26
  (props: TTooltipProps): import("@emotion/react/jsx-runtime").JSX.Element;
25
27
  displayName: string;
26
- defaultProps: Pick<TTooltipProps, "off" | "horizontalConstraint" | "closeAfter" | "placement">;
28
+ defaultProps: Pick<TTooltipProps, "off" | "horizontalConstraint" | "showAfter" | "closeAfter" | "placement">;
27
29
  };
28
30
  export default Tooltip;
@@ -1,5 +1,5 @@
1
1
  import { CSSProperties } from 'react';
2
- import type { TTooltipProps } from './tooltip';
2
+ import type { TTooltipProps, TTooltipState } from './tooltip';
3
3
  export declare const Body: import("@emotion/styled").StyledComponent<{
4
4
  theme?: import("@emotion/react").Theme | undefined;
5
5
  as?: import("react").ElementType<any> | undefined;
@@ -9,6 +9,11 @@ export declare const getBodyStyles: ({ constraint, placement, customStyles, }: {
9
9
  placement: string;
10
10
  customStyles?: CSSProperties | undefined;
11
11
  }) => CSSProperties;
12
+ export declare const getTooltipStyles: (tooltipState: TTooltipState) => {
13
+ animation: string;
14
+ } | {
15
+ animation?: undefined;
16
+ };
12
17
  export declare const Wrapper: import("@emotion/styled").StyledComponent<{
13
18
  theme?: import("@emotion/react").Theme | undefined;
14
19
  as?: import("react").ElementType<any> | undefined;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@commercetools-uikit/tooltip",
3
3
  "description": "Tooltips display informative text when users hover over or focus on an element.",
4
- "version": "16.4.1",
4
+ "version": "16.6.0",
5
5
  "bugs": "https://github.com/commercetools/ui-kit/issues",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,10 +21,10 @@
21
21
  "dependencies": {
22
22
  "@babel/runtime": "^7.20.13",
23
23
  "@babel/runtime-corejs3": "^7.20.13",
24
- "@commercetools-uikit/constraints": "16.4.1",
25
- "@commercetools-uikit/design-system": "16.4.1",
26
- "@commercetools-uikit/hooks": "16.4.1",
27
- "@commercetools-uikit/utils": "16.4.1",
24
+ "@commercetools-uikit/constraints": "16.6.0",
25
+ "@commercetools-uikit/design-system": "16.6.0",
26
+ "@commercetools-uikit/hooks": "16.6.0",
27
+ "@commercetools-uikit/utils": "16.6.0",
28
28
  "@emotion/react": "^11.10.5",
29
29
  "@emotion/styled": "^11.10.5",
30
30
  "lodash": "4.17.21",