@commercetools-uikit/tooltip 15.14.3 → 15.15.1
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/dist/commercetools-uikit-tooltip.cjs.d.ts +1 -0
- package/dist/commercetools-uikit-tooltip.cjs.d.ts.map +1 -0
- package/dist/commercetools-uikit-tooltip.cjs.dev.js +55 -57
- package/dist/commercetools-uikit-tooltip.cjs.prod.js +54 -56
- package/dist/commercetools-uikit-tooltip.esm.js +55 -57
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commercetools-uikit-tooltip.cjs.d.ts","sourceRoot":"","sources":["./declarations/src/index.d.ts"],"names":[],"mappings":"AAAA"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var react$1 = require('@emotion/react');
|
|
6
5
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
7
6
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
8
7
|
var _pt = require('prop-types');
|
|
@@ -19,6 +18,7 @@ var react = require('react');
|
|
|
19
18
|
var reactIs = require('react-is');
|
|
20
19
|
var isNil = require('lodash/isNil');
|
|
21
20
|
var usePopper = require('use-popper');
|
|
21
|
+
var react$1 = require('@emotion/react');
|
|
22
22
|
var hooks = require('@commercetools-uikit/hooks');
|
|
23
23
|
var utils = require('@commercetools-uikit/utils');
|
|
24
24
|
var _styled = require('@emotion/styled/base');
|
|
@@ -47,9 +47,9 @@ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) {
|
|
|
47
47
|
|
|
48
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
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
const getOffsetMargin = _ref => {
|
|
51
|
+
let placement = _ref.placement;
|
|
52
|
+
const position = placement && placement.split('-')[0] || '';
|
|
53
53
|
|
|
54
54
|
switch (position) {
|
|
55
55
|
case 'left':
|
|
@@ -65,7 +65,7 @@ var getOffsetMargin = function getOffsetMargin(_ref) {
|
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
const Body = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV === "production" ? {
|
|
69
69
|
target: "e14le4p1"
|
|
70
70
|
} : {
|
|
71
71
|
target: "e14le4p1",
|
|
@@ -74,15 +74,15 @@ var Body = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV
|
|
|
74
74
|
// with the styles we get from react-popper :D
|
|
75
75
|
// eslint-disable-next-line import/prefer-default-export
|
|
76
76
|
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
const getBodyStyles = _ref2 => {
|
|
78
|
+
let constraint = _ref2.constraint,
|
|
79
79
|
placement = _ref2.placement,
|
|
80
80
|
customStyles = _ref2.customStyles;
|
|
81
|
-
|
|
81
|
+
const constraintTokenName = "constraint".concat(constraint);
|
|
82
82
|
return _objectSpread$1({
|
|
83
83
|
fontFamily: 'inherit',
|
|
84
84
|
margin: "".concat(getOffsetMargin({
|
|
85
|
-
placement
|
|
85
|
+
placement
|
|
86
86
|
}), " !important"),
|
|
87
87
|
maxWidth: constraintTokenName in designSystem.designTokens ? designSystem.designTokens[constraintTokenName] : 'auto',
|
|
88
88
|
// so hovering over the tooltip when the tooltip overlaps the component
|
|
@@ -91,7 +91,7 @@ var getBodyStyles = function getBodyStyles(_ref2) {
|
|
|
91
91
|
zIndex: 1000
|
|
92
92
|
}, customStyles);
|
|
93
93
|
};
|
|
94
|
-
|
|
94
|
+
const Wrapper = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV === "production" ? {
|
|
95
95
|
target: "e14le4p0"
|
|
96
96
|
} : {
|
|
97
97
|
target: "e14le4p0",
|
|
@@ -109,27 +109,25 @@ var Wrapper = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_E
|
|
|
109
109
|
function ownKeys(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; }
|
|
110
110
|
|
|
111
111
|
function _objectSpread(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(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(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
112
|
-
|
|
112
|
+
const sequentialId = utils.createSequentialId('tooltip-');
|
|
113
113
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
});
|
|
118
|
-
};
|
|
114
|
+
const TooltipWrapper = props => jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
115
|
+
children: props.children
|
|
116
|
+
});
|
|
119
117
|
|
|
120
118
|
TooltipWrapper.displayName = 'TooltipWrapperComponent';
|
|
121
|
-
|
|
119
|
+
const tooltipDefaultProps = {
|
|
122
120
|
closeAfter: 0,
|
|
123
121
|
horizontalConstraint: 'scale',
|
|
124
122
|
off: false,
|
|
125
123
|
placement: 'top'
|
|
126
124
|
};
|
|
127
125
|
|
|
128
|
-
|
|
126
|
+
const Tooltip = props => {
|
|
129
127
|
var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
|
|
130
128
|
|
|
131
|
-
|
|
132
|
-
|
|
129
|
+
const leaveTimer = react.useRef();
|
|
130
|
+
const childrenRef = react.useRef();
|
|
133
131
|
|
|
134
132
|
if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) {
|
|
135
133
|
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;
|
|
@@ -143,37 +141,37 @@ var Tooltip = function Tooltip(props) {
|
|
|
143
141
|
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;
|
|
144
142
|
}
|
|
145
143
|
|
|
146
|
-
react.useEffect(
|
|
147
|
-
return
|
|
144
|
+
react.useEffect(() => {
|
|
145
|
+
return () => {
|
|
148
146
|
if (leaveTimer.current) {
|
|
149
147
|
clearTimeout(leaveTimer.current);
|
|
150
148
|
}
|
|
151
149
|
};
|
|
152
150
|
}, []);
|
|
153
151
|
|
|
154
|
-
|
|
152
|
+
const _usePopper = usePopper__default["default"]({
|
|
155
153
|
placement: props.placement,
|
|
156
154
|
modifiers: props.modifiers
|
|
157
155
|
}),
|
|
158
|
-
|
|
159
|
-
|
|
156
|
+
reference = _usePopper.reference,
|
|
157
|
+
popper = _usePopper.popper;
|
|
160
158
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
159
|
+
const _useToggleState = hooks.useToggleState(false),
|
|
160
|
+
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
161
|
+
isOpen = _useToggleState2[0],
|
|
162
|
+
toggle = _useToggleState2[1];
|
|
165
163
|
|
|
166
|
-
|
|
164
|
+
const closeTooltip = react.useCallback(() => {
|
|
167
165
|
toggle(false);
|
|
168
166
|
}, [toggle]);
|
|
169
|
-
|
|
167
|
+
const openTooltip = react.useCallback(() => {
|
|
170
168
|
toggle(true);
|
|
171
169
|
}, [toggle]);
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
170
|
+
const isControlled = !isNil__default["default"](props.isOpen);
|
|
171
|
+
const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
|
|
172
|
+
const id = hooks.useFieldId(props.id, sequentialId);
|
|
173
|
+
const onClose = props.onClose;
|
|
174
|
+
const handleClose = react.useCallback(event => {
|
|
177
175
|
if (!isControlled) {
|
|
178
176
|
closeTooltip();
|
|
179
177
|
}
|
|
@@ -182,11 +180,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
182
180
|
onClose(event);
|
|
183
181
|
}
|
|
184
182
|
}, [isControlled, closeTooltip, onClose]);
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
183
|
+
const _props$children$props = props.children.props,
|
|
184
|
+
onFocus = _props$children$props.onFocus,
|
|
185
|
+
onMouseOver = _props$children$props.onMouseOver;
|
|
186
|
+
const onOpen = props.onOpen;
|
|
187
|
+
const handleEnter = react.useCallback(event => {
|
|
190
188
|
// Remove the title ahead of time.
|
|
191
189
|
// We don't want to wait for the next render commit.
|
|
192
190
|
// We would risk displaying two tooltips at the same time (native + this one).
|
|
@@ -216,11 +214,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
216
214
|
event.stopPropagation();
|
|
217
215
|
}
|
|
218
216
|
}, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
217
|
+
const _props$children$props2 = props.children.props,
|
|
218
|
+
onBlur = _props$children$props2.onBlur,
|
|
219
|
+
onMouseLeave = _props$children$props2.onMouseLeave;
|
|
220
|
+
const closeAfter = props.closeAfter;
|
|
221
|
+
const handleLeave = react.useCallback(event => {
|
|
224
222
|
if (leaveTimer.current) {
|
|
225
223
|
clearTimeout(leaveTimer.current);
|
|
226
224
|
}
|
|
@@ -234,19 +232,19 @@ var Tooltip = function Tooltip(props) {
|
|
|
234
232
|
}
|
|
235
233
|
|
|
236
234
|
if (closeAfter) {
|
|
237
|
-
leaveTimer.current = _setTimeout__default["default"](
|
|
235
|
+
leaveTimer.current = _setTimeout__default["default"](() => {
|
|
238
236
|
handleClose(event);
|
|
239
237
|
}, closeAfter);
|
|
240
238
|
} else {
|
|
241
239
|
handleClose(event);
|
|
242
240
|
}
|
|
243
241
|
}, [closeAfter, onBlur, onMouseLeave, handleClose]);
|
|
244
|
-
react.useEffect(
|
|
242
|
+
react.useEffect(() => {
|
|
245
243
|
// if tooltip was open, and then component
|
|
246
244
|
// updated to be off, we should close the tooltip
|
|
247
245
|
if (isOpen && props.off) {
|
|
248
246
|
if (closeAfter) {
|
|
249
|
-
leaveTimer.current = _setTimeout__default["default"](
|
|
247
|
+
leaveTimer.current = _setTimeout__default["default"](() => {
|
|
250
248
|
handleClose();
|
|
251
249
|
}, closeAfter);
|
|
252
250
|
} else {
|
|
@@ -254,28 +252,28 @@ var Tooltip = function Tooltip(props) {
|
|
|
254
252
|
}
|
|
255
253
|
}
|
|
256
254
|
}, [props.off, closeAfter, handleClose, toggle, isOpen]);
|
|
257
|
-
|
|
255
|
+
const childrenProps = {
|
|
258
256
|
// don't pass event listeners to children
|
|
259
257
|
onFocus: null,
|
|
260
258
|
onMouseOver: null,
|
|
261
259
|
onMouseLeave: null,
|
|
262
260
|
onBlur: null
|
|
263
261
|
};
|
|
264
|
-
|
|
262
|
+
const tooltipProps = !props.off ? {
|
|
265
263
|
'aria-describedby': tooltipIsOpen ? id : null,
|
|
266
264
|
// for seo and accessibility, we add the tooltip's title
|
|
267
265
|
// as a native title when the title is hidden
|
|
268
266
|
title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
|
|
269
267
|
} : {};
|
|
270
|
-
|
|
268
|
+
const eventListeners = !props.off ? {
|
|
271
269
|
onMouseOver: handleEnter,
|
|
272
270
|
onMouseLeave: handleLeave,
|
|
273
271
|
onFocus: handleEnter,
|
|
274
272
|
onBlur: handleLeave
|
|
275
273
|
} : {};
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
274
|
+
const WrapperComponent = ((_props$components4 = props.components) === null || _props$components4 === void 0 ? void 0 : _props$components4.WrapperComponent) || Wrapper;
|
|
275
|
+
const BodyComponent = ((_props$components5 = props.components) === null || _props$components5 === void 0 ? void 0 : _props$components5.BodyComponent) || Body;
|
|
276
|
+
const TooltipWrapperComponent = ((_props$components6 = props.components) === null || _props$components6 === void 0 ? void 0 : _props$components6.TooltipWrapperComponent) || TooltipWrapper;
|
|
279
277
|
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
280
278
|
children: [jsxRuntime.jsx(WrapperComponent, _objectSpread(_objectSpread({}, eventListeners), {}, {
|
|
281
279
|
// @ts-expect-error: yes, ref can be undefined
|
|
@@ -290,7 +288,7 @@ var Tooltip = function Tooltip(props) {
|
|
|
290
288
|
constraint: props.horizontalConstraint,
|
|
291
289
|
placement: popper.placement,
|
|
292
290
|
customStyles: (_props$styles = props.styles) === null || _props$styles === void 0 ? void 0 : _props$styles.body
|
|
293
|
-
})), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtVWSIsImZpbGUiOiJ0b29sdGlwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8vIGluc3BpcmVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL211aS1vcmcvbWF0ZXJpYWwtdWkvYmxvYi85ZWNjOGRiOGFiYmZiODI5MTExZDNiNWMwNjc4MjY3ODI3OTg0MDI0L3BhY2thZ2VzL21hdGVyaWFsLXVpL3NyYy9Ub29sdGlwL1Rvb2x0aXAuanNcbmltcG9ydCB7IE1vZGlmaWVycyB9IGZyb20gJ3BvcHBlci5qcyc7XG5pbXBvcnQge1xuICBDb21wb25lbnRUeXBlLFxuICBGb2N1c0V2ZW50LFxuICBDaGFuZ2VFdmVudCxcbiAgTGVnYWN5UmVmLFxuICBDU1NQcm9wZXJ0aWVzLFxuICBSZWFjdEVsZW1lbnQsXG4gIHVzZVJlZixcbiAgdXNlRWZmZWN0LFxuICB1c2VDYWxsYmFjayxcbiAgY2xvbmVFbGVtZW50LFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBpc1ZhbGlkRWxlbWVudFR5cGUgfSBmcm9tICdyZWFjdC1pcyc7XG5pbXBvcnQgaXNOaWwgZnJvbSAnbG9kYXNoL2lzTmlsJztcbmltcG9ydCB1c2VQb3BwZXIgZnJvbSAndXNlLXBvcHBlcic7XG5pbXBvcnQgeyB1c2VGaWVsZElkLCB1c2VUb2dnbGVTdGF0ZSB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2hvb2tzJztcbmltcG9ydCB7IGNyZWF0ZVNlcXVlbnRpYWxJZCwgd2FybmluZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IFdyYXBwZXIsIEJvZHksIGdldEJvZHlTdHlsZXMgfSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI6IG51bWJlcjtcbiAgLyoqXG4gICAqIEN1c3RvbSBjc3MtaW4tanMgb2JqZWN0IHN0eWxlcyBmb3IgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIHN0eWxlcz86IFJlY29yZDxzdHJpbmcsIENTU1Byb3BlcnRpZXM+O1xuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdG9vbHRpcCBzaG91bGQgbm90IGFwcGVhci5cbiAgICovXG4gIG9mZjogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFuIGlkZW50aWZpZXIgZm9yIHRoZSB0b29sdGlwLCB1c2VkIGZvciBgYXJpYS1kZXNjcmliZWRieWAuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgY2FsbGJhY2sgZnVuY3Rpb24sIGNhbGxlZCB3aGVuIHRoZSB0b29sdGlwIGlzIGNsb3NpbmcuXG4gICAqL1xuICBvbkNsb3NlPzogKGU/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBvcGVuaW5nLlxuICAgKi9cbiAgb25PcGVuPzogKGU/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHZvaWQ7XG4gIGlzT3Blbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIb3cgdGhlIHRvb2x0aXAgaXMgcG9zaXRpb25lZCByZWxhdGl2ZSB0byB0aGUgY2hpbGQgZWxlbWVudC5cbiAgICovXG4gIHBsYWNlbWVudD86XG4gICAgfCAndG9wJ1xuICAgIHwgJ3RvcC1zdGFydCdcbiAgICB8ICd0b3AtZW5kJ1xuICAgIHwgJ3JpZ2h0J1xuICAgIHwgJ3JpZ2h0LXN0YXJ0J1xuICAgIHwgJ3JpZ2h0LWVuZCdcbiAgICB8ICdib3R0b20nXG4gICAgfCAnYm90dG9tLXN0YXJ0J1xuICAgIHwgJ2JvdHRvbS1lbmQnXG4gICAgfCAnbGVmdCdcbiAgICB8ICdsZWZ0LXN0YXJ0J1xuICAgIHwgJ2xlZnQtZW5kJztcbiAgLyoqXG4gICAqIFRoZSBtZXNzYWdlIHRvIHNob3cgaW4gdGhlIHRvb2x0aXAuXG4gICAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKipcbiAgICogUHJvdmlkZXMgYSB3YXkgdG8gZmluZS10dW5lIGFuIGFwcGVhcmFuY2Ugb2YgdW5kZXJseWluZyBQb3BwZXIgdG9vbHRpcCBlbGVtZW50LiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgcGxlYXNlIGNoZWNrIFtQb3BwZXIuanMgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9wb3BwZXIuanMub3JnL3BvcHBlci1kb2N1bWVudGF0aW9uLmh0bWwjbW9kaWZpZXJzKS5cbiAgICovXG4gIG1vZGlmaWVycz86IE1vZGlmaWVycztcbiAgLyoqXG4gICAqIEN1c3RvbWl6ZSB0aGUgYXBwZWFyYW5jZSBvZiBjZXJ0YWluIGVsZW1lbnRzIG9mIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgY29tcG9uZW50cz86IFRDb21wb25lbnRzO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgMVxuICAgIHwgMlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbn07XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ2Nsb3NlQWZ0ZXInIHwgJ2hvcml6b250YWxDb25zdHJhaW50JyB8ICdvZmYnIHwgJ3BsYWNlbWVudCdcbj4gPSB7XG4gIGNsb3NlQWZ0ZXI6IDAsXG4gIGhvcml6b250YWxDb25zdHJhaW50OiAnc2NhbGUnLFxuICBvZmY6IGZhbHNlLFxuICBwbGFjZW1lbnQ6ICd0b3AnLFxufTtcblxuY29uc3QgVG9vbHRpcCA9IChwcm9wczogVFRvb2x0aXBQcm9wcykgPT4ge1xuICBjb25zdCBsZWF2ZVRpbWVyID0gdXNlUmVmPFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+PigpO1xuICBjb25zdCBjaGlsZHJlblJlZiA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKTtcbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAobGVhdmVUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChsZWF2ZVRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtdKTtcblxuICBjb25zdCB7IHJlZmVyZW5jZSwgcG9wcGVyIH0gPSB1c2VQb3BwZXIoe1xuICAgIHBsYWNlbWVudDogcHJvcHMucGxhY2VtZW50LFxuICAgIG1vZGlmaWVyczogcHJvcHMubW9kaWZpZXJzLFxuICB9KTtcbiAgY29uc3QgW2lzT3BlbiwgdG9nZ2xlXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY2xvc2VUb29sdGlwID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHRvZ2dsZShmYWxzZSk7XG4gIH0sIFt0b2dnbGVdKTtcbiAgY29uc3Qgb3BlblRvb2x0aXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgdG9nZ2xlKHRydWUpO1xuICB9LCBbdG9nZ2xlXSk7XG5cbiAgY29uc3QgaXNDb250cm9sbGVkID0gIWlzTmlsKHByb3BzLmlzT3Blbik7XG4gIGNvbnN0IHRvb2x0aXBJc09wZW4gPSBpc0NvbnRyb2xsZWQgPyBwcm9wcy5pc09wZW4gOiBpc09wZW47XG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCB7IG9uQ2xvc2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDbG9zZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKCFpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgY2xvc2VUb29sdGlwKCk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIGNsb3NlVG9vbHRpcCwgb25DbG9zZV1cbiAgKTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uTW91c2VPdmVyIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgLy8gUmVtb3ZlIHRoZSB0aXRsZSBhaGVhZCBvZiB0aW1lLlxuICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byB3YWl0IGZvciB0aGUgbmV4dCByZW5kZXIgY29tbWl0LlxuICAgICAgLy8gV2Ugd291bGQgcmlzayBkaXNwbGF5aW5nIHR3byB0b29sdGlwcyBhdCB0aGUgc2FtZSB0aW1lIChuYXRpdmUgKyB0aGlzIG9uZSkuXG4gICAgICBpZiAoY2hpbGRyZW5SZWYgJiYgdHlwZW9mIGNoaWxkcmVuUmVmID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgY2hpbGRyZW5SZWYuc2V0QXR0cmlidXRlKCd0aXRsZScsICcnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNPcGVuICYmICFpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgICBvcGVuVG9vbHRpcCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9uT3Blbikge1xuICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbkZvY3VzLCBvbk9wZW4sIG9uTW91c2VPdmVyLCBpc0NvbnRyb2xsZWQsIGlzT3Blbiwgb3BlblRvb2x0aXBdXG4gICk7XG5cbiAgY29uc3QgeyBvbkJsdXIsIG9uTW91c2VMZWF2ZSB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgY2xvc2VBZnRlciB9ID0gcHJvcHM7XG5cbiAgY29uc3QgaGFuZGxlTGVhdmUgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIGlmIChsZWF2ZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KGxlYXZlVGltZXIuY3VycmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VsZWF2ZScgJiYgb25Nb3VzZUxlYXZlKSB7XG4gICAgICAgIG9uTW91c2VMZWF2ZShldmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudC50eXBlID09PSAnYmx1cicgJiYgb25CbHVyKSB7XG4gICAgICAgIG9uQmx1cihldmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChjbG9zZUFmdGVyKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZShldmVudCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbY2xvc2VBZnRlciwgb25CbHVyLCBvbk1vdXNlTGVhdmUsIGhhbmRsZUNsb3NlXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gaWYgdG9vbHRpcCB3YXMgb3BlbiwgYW5kIHRoZW4gY29tcG9uZW50XG4gICAgLy8gdXBkYXRlZCB0byBiZSBvZmYsIHdlIHNob3VsZCBjbG9zZSB0aGUgdG9vbHRpcFxuICAgIGlmIChpc09wZW4gJiYgcHJvcHMub2ZmKSB7XG4gICAgICBpZiAoY2xvc2VBZnRlcikge1xuICAgICAgICBsZWF2ZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbcHJvcHMub2ZmLCBjbG9zZUFmdGVyLCBoYW5kbGVDbG9zZSwgdG9nZ2xlLCBpc09wZW5dKTtcblxuICBjb25zdCBjaGlsZHJlblByb3BzID0ge1xuICAgIC8vIGRvbid0IHBhc3MgZXZlbnQgbGlzdGVuZXJzIHRvIGNoaWxkcmVuXG4gICAgb25Gb2N1czogbnVsbCxcbiAgICBvbk1vdXNlT3ZlcjogbnVsbCxcbiAgICBvbk1vdXNlTGVhdmU6IG51bGwsXG4gICAgb25CbHVyOiBudWxsLFxuICB9O1xuXG4gIGNvbnN0IHRvb2x0aXBQcm9wcyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgJ2FyaWEtZGVzY3JpYmVkYnknOiB0b29sdGlwSXNPcGVuID8gaWQgOiBudWxsLFxuICAgICAgICAvLyBmb3Igc2VvIGFuZCBhY2Nlc3NpYmlsaXR5LCB3ZSBhZGQgdGhlIHRvb2x0aXAncyB0aXRsZVxuICAgICAgICAvLyBhcyBhIG5hdGl2ZSB0aXRsZSB3aGVuIHRoZSB0aXRsZSBpcyBoaWRkZW5cbiAgICAgICAgdGl0bGU6XG4gICAgICAgICAgIXRvb2x0aXBJc09wZW4gJiYgdHlwZW9mIHByb3BzLnRpdGxlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgPyBwcm9wcy50aXRsZVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgIG9uTW91c2VPdmVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e3tcbiAgICAgICAgICAgICAgLi4ucG9wcGVyLnN0eWxlcyxcbiAgICAgICAgICAgICAgLi4uZ2V0Qm9keVN0eWxlcyh7XG4gICAgICAgICAgICAgICAgY29uc3RyYWludDogcHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnQsXG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiBwb3BwZXIucGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIGN1c3RvbVN0eWxlczogcHJvcHMuc3R5bGVzPy5ib2R5LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkYXRhLXBsYWNlbWVudD17cG9wcGVyLnBsYWNlbWVudH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Qm9keUNvbXBvbmVudD57cHJvcHMudGl0bGV9PC9Cb2R5Q29tcG9uZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn07XG5cblRvb2x0aXAuZGlzcGxheU5hbWUgPSAnVG9vbFRpcCc7XG5Ub29sdGlwLmRlZmF1bHRQcm9wcyA9IHRvb2x0aXBEZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IFRvb2x0aXA7XG4iXX0= */"),
|
|
291
|
+
})), 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= */"),
|
|
294
292
|
"data-placement": popper.placement,
|
|
295
293
|
children: jsxRuntime.jsx(BodyComponent, {
|
|
296
294
|
children: props.title
|
|
@@ -324,7 +322,7 @@ Tooltip.defaultProps = tooltipDefaultProps;
|
|
|
324
322
|
var Tooltip$1 = Tooltip;
|
|
325
323
|
|
|
326
324
|
// NOTE: This string will be replaced on build time with the package version.
|
|
327
|
-
var version = "15.
|
|
325
|
+
var version = "15.15.1";
|
|
328
326
|
|
|
329
327
|
exports["default"] = Tooltip$1;
|
|
330
328
|
exports.version = version;
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var react$1 = require('@emotion/react');
|
|
6
5
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
7
6
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
8
7
|
require('prop-types');
|
|
@@ -19,6 +18,7 @@ var react = require('react');
|
|
|
19
18
|
require('react-is');
|
|
20
19
|
var isNil = require('lodash/isNil');
|
|
21
20
|
var usePopper = require('use-popper');
|
|
21
|
+
var react$1 = require('@emotion/react');
|
|
22
22
|
var hooks = require('@commercetools-uikit/hooks');
|
|
23
23
|
var utils = require('@commercetools-uikit/utils');
|
|
24
24
|
var _styled = require('@emotion/styled/base');
|
|
@@ -44,9 +44,9 @@ function ownKeys$1(object, enumerableOnly) { var keys = _Object$keys__default["d
|
|
|
44
44
|
|
|
45
45
|
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
46
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
const getOffsetMargin = _ref => {
|
|
48
|
+
let placement = _ref.placement;
|
|
49
|
+
const position = placement && placement.split('-')[0] || '';
|
|
50
50
|
|
|
51
51
|
switch (position) {
|
|
52
52
|
case 'left':
|
|
@@ -62,21 +62,21 @@ var getOffsetMargin = function getOffsetMargin(_ref) {
|
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
const Body = /*#__PURE__*/_styled__default["default"]("div", {
|
|
66
66
|
target: "e14le4p1"
|
|
67
67
|
} )("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, ";" + ("" )); // here we use object styles so we can spread these
|
|
68
68
|
// with the styles we get from react-popper :D
|
|
69
69
|
// eslint-disable-next-line import/prefer-default-export
|
|
70
70
|
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
const getBodyStyles = _ref2 => {
|
|
72
|
+
let constraint = _ref2.constraint,
|
|
73
73
|
placement = _ref2.placement,
|
|
74
74
|
customStyles = _ref2.customStyles;
|
|
75
|
-
|
|
75
|
+
const constraintTokenName = "constraint".concat(constraint);
|
|
76
76
|
return _objectSpread$1({
|
|
77
77
|
fontFamily: 'inherit',
|
|
78
78
|
margin: "".concat(getOffsetMargin({
|
|
79
|
-
placement
|
|
79
|
+
placement
|
|
80
80
|
}), " !important"),
|
|
81
81
|
maxWidth: constraintTokenName in designSystem.designTokens ? designSystem.designTokens[constraintTokenName] : 'auto',
|
|
82
82
|
// so hovering over the tooltip when the tooltip overlaps the component
|
|
@@ -85,7 +85,7 @@ var getBodyStyles = function getBodyStyles(_ref2) {
|
|
|
85
85
|
zIndex: 1000
|
|
86
86
|
}, customStyles);
|
|
87
87
|
};
|
|
88
|
-
|
|
88
|
+
const Wrapper = /*#__PURE__*/_styled__default["default"]("div", {
|
|
89
89
|
target: "e14le4p0"
|
|
90
90
|
} )({
|
|
91
91
|
name: "18fwu9s",
|
|
@@ -95,27 +95,25 @@ var Wrapper = /*#__PURE__*/_styled__default["default"]("div", {
|
|
|
95
95
|
function ownKeys(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; }
|
|
96
96
|
|
|
97
97
|
function _objectSpread(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(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(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
98
|
-
|
|
98
|
+
const sequentialId = utils.createSequentialId('tooltip-');
|
|
99
99
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
});
|
|
104
|
-
};
|
|
100
|
+
const TooltipWrapper = props => jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
101
|
+
children: props.children
|
|
102
|
+
});
|
|
105
103
|
|
|
106
104
|
TooltipWrapper.displayName = 'TooltipWrapperComponent';
|
|
107
|
-
|
|
105
|
+
const tooltipDefaultProps = {
|
|
108
106
|
closeAfter: 0,
|
|
109
107
|
horizontalConstraint: 'scale',
|
|
110
108
|
off: false,
|
|
111
109
|
placement: 'top'
|
|
112
110
|
};
|
|
113
111
|
|
|
114
|
-
|
|
112
|
+
const Tooltip = props => {
|
|
115
113
|
var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
|
|
116
114
|
|
|
117
|
-
|
|
118
|
-
|
|
115
|
+
const leaveTimer = react.useRef();
|
|
116
|
+
const childrenRef = react.useRef();
|
|
119
117
|
|
|
120
118
|
if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) ;
|
|
121
119
|
|
|
@@ -123,37 +121,37 @@ var Tooltip = function Tooltip(props) {
|
|
|
123
121
|
|
|
124
122
|
if ((_props$components3 = props.components) !== null && _props$components3 !== void 0 && _props$components3.WrapperComponent) ;
|
|
125
123
|
|
|
126
|
-
react.useEffect(
|
|
127
|
-
return
|
|
124
|
+
react.useEffect(() => {
|
|
125
|
+
return () => {
|
|
128
126
|
if (leaveTimer.current) {
|
|
129
127
|
clearTimeout(leaveTimer.current);
|
|
130
128
|
}
|
|
131
129
|
};
|
|
132
130
|
}, []);
|
|
133
131
|
|
|
134
|
-
|
|
132
|
+
const _usePopper = usePopper__default["default"]({
|
|
135
133
|
placement: props.placement,
|
|
136
134
|
modifiers: props.modifiers
|
|
137
135
|
}),
|
|
138
|
-
|
|
139
|
-
|
|
136
|
+
reference = _usePopper.reference,
|
|
137
|
+
popper = _usePopper.popper;
|
|
140
138
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
139
|
+
const _useToggleState = hooks.useToggleState(false),
|
|
140
|
+
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
141
|
+
isOpen = _useToggleState2[0],
|
|
142
|
+
toggle = _useToggleState2[1];
|
|
145
143
|
|
|
146
|
-
|
|
144
|
+
const closeTooltip = react.useCallback(() => {
|
|
147
145
|
toggle(false);
|
|
148
146
|
}, [toggle]);
|
|
149
|
-
|
|
147
|
+
const openTooltip = react.useCallback(() => {
|
|
150
148
|
toggle(true);
|
|
151
149
|
}, [toggle]);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
150
|
+
const isControlled = !isNil__default["default"](props.isOpen);
|
|
151
|
+
const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
|
|
152
|
+
const id = hooks.useFieldId(props.id, sequentialId);
|
|
153
|
+
const onClose = props.onClose;
|
|
154
|
+
const handleClose = react.useCallback(event => {
|
|
157
155
|
if (!isControlled) {
|
|
158
156
|
closeTooltip();
|
|
159
157
|
}
|
|
@@ -162,11 +160,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
162
160
|
onClose(event);
|
|
163
161
|
}
|
|
164
162
|
}, [isControlled, closeTooltip, onClose]);
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
163
|
+
const _props$children$props = props.children.props,
|
|
164
|
+
onFocus = _props$children$props.onFocus,
|
|
165
|
+
onMouseOver = _props$children$props.onMouseOver;
|
|
166
|
+
const onOpen = props.onOpen;
|
|
167
|
+
const handleEnter = react.useCallback(event => {
|
|
170
168
|
// Remove the title ahead of time.
|
|
171
169
|
// We don't want to wait for the next render commit.
|
|
172
170
|
// We would risk displaying two tooltips at the same time (native + this one).
|
|
@@ -196,11 +194,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
196
194
|
event.stopPropagation();
|
|
197
195
|
}
|
|
198
196
|
}, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
197
|
+
const _props$children$props2 = props.children.props,
|
|
198
|
+
onBlur = _props$children$props2.onBlur,
|
|
199
|
+
onMouseLeave = _props$children$props2.onMouseLeave;
|
|
200
|
+
const closeAfter = props.closeAfter;
|
|
201
|
+
const handleLeave = react.useCallback(event => {
|
|
204
202
|
if (leaveTimer.current) {
|
|
205
203
|
clearTimeout(leaveTimer.current);
|
|
206
204
|
}
|
|
@@ -214,19 +212,19 @@ var Tooltip = function Tooltip(props) {
|
|
|
214
212
|
}
|
|
215
213
|
|
|
216
214
|
if (closeAfter) {
|
|
217
|
-
leaveTimer.current = _setTimeout__default["default"](
|
|
215
|
+
leaveTimer.current = _setTimeout__default["default"](() => {
|
|
218
216
|
handleClose(event);
|
|
219
217
|
}, closeAfter);
|
|
220
218
|
} else {
|
|
221
219
|
handleClose(event);
|
|
222
220
|
}
|
|
223
221
|
}, [closeAfter, onBlur, onMouseLeave, handleClose]);
|
|
224
|
-
react.useEffect(
|
|
222
|
+
react.useEffect(() => {
|
|
225
223
|
// if tooltip was open, and then component
|
|
226
224
|
// updated to be off, we should close the tooltip
|
|
227
225
|
if (isOpen && props.off) {
|
|
228
226
|
if (closeAfter) {
|
|
229
|
-
leaveTimer.current = _setTimeout__default["default"](
|
|
227
|
+
leaveTimer.current = _setTimeout__default["default"](() => {
|
|
230
228
|
handleClose();
|
|
231
229
|
}, closeAfter);
|
|
232
230
|
} else {
|
|
@@ -234,28 +232,28 @@ var Tooltip = function Tooltip(props) {
|
|
|
234
232
|
}
|
|
235
233
|
}
|
|
236
234
|
}, [props.off, closeAfter, handleClose, toggle, isOpen]);
|
|
237
|
-
|
|
235
|
+
const childrenProps = {
|
|
238
236
|
// don't pass event listeners to children
|
|
239
237
|
onFocus: null,
|
|
240
238
|
onMouseOver: null,
|
|
241
239
|
onMouseLeave: null,
|
|
242
240
|
onBlur: null
|
|
243
241
|
};
|
|
244
|
-
|
|
242
|
+
const tooltipProps = !props.off ? {
|
|
245
243
|
'aria-describedby': tooltipIsOpen ? id : null,
|
|
246
244
|
// for seo and accessibility, we add the tooltip's title
|
|
247
245
|
// as a native title when the title is hidden
|
|
248
246
|
title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
|
|
249
247
|
} : {};
|
|
250
|
-
|
|
248
|
+
const eventListeners = !props.off ? {
|
|
251
249
|
onMouseOver: handleEnter,
|
|
252
250
|
onMouseLeave: handleLeave,
|
|
253
251
|
onFocus: handleEnter,
|
|
254
252
|
onBlur: handleLeave
|
|
255
253
|
} : {};
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
254
|
+
const WrapperComponent = ((_props$components4 = props.components) === null || _props$components4 === void 0 ? void 0 : _props$components4.WrapperComponent) || Wrapper;
|
|
255
|
+
const BodyComponent = ((_props$components5 = props.components) === null || _props$components5 === void 0 ? void 0 : _props$components5.BodyComponent) || Body;
|
|
256
|
+
const TooltipWrapperComponent = ((_props$components6 = props.components) === null || _props$components6 === void 0 ? void 0 : _props$components6.TooltipWrapperComponent) || TooltipWrapper;
|
|
259
257
|
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
260
258
|
children: [jsxRuntime.jsx(WrapperComponent, _objectSpread(_objectSpread({}, eventListeners), {}, {
|
|
261
259
|
// @ts-expect-error: yes, ref can be undefined
|
|
@@ -286,7 +284,7 @@ Tooltip.defaultProps = tooltipDefaultProps;
|
|
|
286
284
|
var Tooltip$1 = Tooltip;
|
|
287
285
|
|
|
288
286
|
// NOTE: This string will be replaced on build time with the package version.
|
|
289
|
-
var version = "15.
|
|
287
|
+
var version = "15.15.1";
|
|
290
288
|
|
|
291
289
|
exports["default"] = Tooltip$1;
|
|
292
290
|
exports.version = version;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { css } from '@emotion/react';
|
|
2
1
|
import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
|
|
3
2
|
import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
|
|
4
3
|
import _pt from 'prop-types';
|
|
@@ -15,6 +14,7 @@ import { useRef, useEffect, useCallback, cloneElement } from 'react';
|
|
|
15
14
|
import { isValidElementType } from 'react-is';
|
|
16
15
|
import isNil from 'lodash/isNil';
|
|
17
16
|
import usePopper from 'use-popper';
|
|
17
|
+
import { css } from '@emotion/react';
|
|
18
18
|
import { useToggleState, useFieldId } from '@commercetools-uikit/hooks';
|
|
19
19
|
import { createSequentialId, warning } from '@commercetools-uikit/utils';
|
|
20
20
|
import _styled from '@emotion/styled/base';
|
|
@@ -27,9 +27,9 @@ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) {
|
|
|
27
27
|
|
|
28
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
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
const getOffsetMargin = _ref => {
|
|
31
|
+
let placement = _ref.placement;
|
|
32
|
+
const position = placement && placement.split('-')[0] || '';
|
|
33
33
|
|
|
34
34
|
switch (position) {
|
|
35
35
|
case 'left':
|
|
@@ -45,7 +45,7 @@ var getOffsetMargin = function getOffsetMargin(_ref) {
|
|
|
45
45
|
}
|
|
46
46
|
};
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
const Body = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
49
49
|
target: "e14le4p1"
|
|
50
50
|
} : {
|
|
51
51
|
target: "e14le4p1",
|
|
@@ -54,15 +54,15 @@ var Body = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
|
54
54
|
// with the styles we get from react-popper :D
|
|
55
55
|
// eslint-disable-next-line import/prefer-default-export
|
|
56
56
|
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
const getBodyStyles = _ref2 => {
|
|
58
|
+
let constraint = _ref2.constraint,
|
|
59
59
|
placement = _ref2.placement,
|
|
60
60
|
customStyles = _ref2.customStyles;
|
|
61
|
-
|
|
61
|
+
const constraintTokenName = "constraint".concat(constraint);
|
|
62
62
|
return _objectSpread$1({
|
|
63
63
|
fontFamily: 'inherit',
|
|
64
64
|
margin: "".concat(getOffsetMargin({
|
|
65
|
-
placement
|
|
65
|
+
placement
|
|
66
66
|
}), " !important"),
|
|
67
67
|
maxWidth: constraintTokenName in designTokens ? designTokens[constraintTokenName] : 'auto',
|
|
68
68
|
// so hovering over the tooltip when the tooltip overlaps the component
|
|
@@ -71,7 +71,7 @@ var getBodyStyles = function getBodyStyles(_ref2) {
|
|
|
71
71
|
zIndex: 1000
|
|
72
72
|
}, customStyles);
|
|
73
73
|
};
|
|
74
|
-
|
|
74
|
+
const Wrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
75
75
|
target: "e14le4p0"
|
|
76
76
|
} : {
|
|
77
77
|
target: "e14le4p0",
|
|
@@ -89,27 +89,25 @@ var Wrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production"
|
|
|
89
89
|
function ownKeys(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; }
|
|
90
90
|
|
|
91
91
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
92
|
-
|
|
92
|
+
const sequentialId = createSequentialId('tooltip-');
|
|
93
93
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
});
|
|
98
|
-
};
|
|
94
|
+
const TooltipWrapper = props => jsx(Fragment, {
|
|
95
|
+
children: props.children
|
|
96
|
+
});
|
|
99
97
|
|
|
100
98
|
TooltipWrapper.displayName = 'TooltipWrapperComponent';
|
|
101
|
-
|
|
99
|
+
const tooltipDefaultProps = {
|
|
102
100
|
closeAfter: 0,
|
|
103
101
|
horizontalConstraint: 'scale',
|
|
104
102
|
off: false,
|
|
105
103
|
placement: 'top'
|
|
106
104
|
};
|
|
107
105
|
|
|
108
|
-
|
|
106
|
+
const Tooltip = props => {
|
|
109
107
|
var _props$components, _props$components2, _props$components3, _props$components4, _props$components5, _props$components6, _props$styles;
|
|
110
108
|
|
|
111
|
-
|
|
112
|
-
|
|
109
|
+
const leaveTimer = useRef();
|
|
110
|
+
const childrenRef = useRef();
|
|
113
111
|
|
|
114
112
|
if ((_props$components = props.components) !== null && _props$components !== void 0 && _props$components.BodyComponent) {
|
|
115
113
|
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;
|
|
@@ -123,37 +121,37 @@ var Tooltip = function Tooltip(props) {
|
|
|
123
121
|
process.env.NODE_ENV !== "production" ? warning(isValidElementType(props.components.WrapperComponent), "ui-kit/Tooltip: the prop 'components.WrapperComponent' is not a valid React element.") : void 0;
|
|
124
122
|
}
|
|
125
123
|
|
|
126
|
-
useEffect(
|
|
127
|
-
return
|
|
124
|
+
useEffect(() => {
|
|
125
|
+
return () => {
|
|
128
126
|
if (leaveTimer.current) {
|
|
129
127
|
clearTimeout(leaveTimer.current);
|
|
130
128
|
}
|
|
131
129
|
};
|
|
132
130
|
}, []);
|
|
133
131
|
|
|
134
|
-
|
|
132
|
+
const _usePopper = usePopper({
|
|
135
133
|
placement: props.placement,
|
|
136
134
|
modifiers: props.modifiers
|
|
137
135
|
}),
|
|
138
|
-
|
|
139
|
-
|
|
136
|
+
reference = _usePopper.reference,
|
|
137
|
+
popper = _usePopper.popper;
|
|
140
138
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
139
|
+
const _useToggleState = useToggleState(false),
|
|
140
|
+
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
141
|
+
isOpen = _useToggleState2[0],
|
|
142
|
+
toggle = _useToggleState2[1];
|
|
145
143
|
|
|
146
|
-
|
|
144
|
+
const closeTooltip = useCallback(() => {
|
|
147
145
|
toggle(false);
|
|
148
146
|
}, [toggle]);
|
|
149
|
-
|
|
147
|
+
const openTooltip = useCallback(() => {
|
|
150
148
|
toggle(true);
|
|
151
149
|
}, [toggle]);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
150
|
+
const isControlled = !isNil(props.isOpen);
|
|
151
|
+
const tooltipIsOpen = isControlled ? props.isOpen : isOpen;
|
|
152
|
+
const id = useFieldId(props.id, sequentialId);
|
|
153
|
+
const onClose = props.onClose;
|
|
154
|
+
const handleClose = useCallback(event => {
|
|
157
155
|
if (!isControlled) {
|
|
158
156
|
closeTooltip();
|
|
159
157
|
}
|
|
@@ -162,11 +160,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
162
160
|
onClose(event);
|
|
163
161
|
}
|
|
164
162
|
}, [isControlled, closeTooltip, onClose]);
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
163
|
+
const _props$children$props = props.children.props,
|
|
164
|
+
onFocus = _props$children$props.onFocus,
|
|
165
|
+
onMouseOver = _props$children$props.onMouseOver;
|
|
166
|
+
const onOpen = props.onOpen;
|
|
167
|
+
const handleEnter = useCallback(event => {
|
|
170
168
|
// Remove the title ahead of time.
|
|
171
169
|
// We don't want to wait for the next render commit.
|
|
172
170
|
// We would risk displaying two tooltips at the same time (native + this one).
|
|
@@ -196,11 +194,11 @@ var Tooltip = function Tooltip(props) {
|
|
|
196
194
|
event.stopPropagation();
|
|
197
195
|
}
|
|
198
196
|
}, [onFocus, onOpen, onMouseOver, isControlled, isOpen, openTooltip]);
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
197
|
+
const _props$children$props2 = props.children.props,
|
|
198
|
+
onBlur = _props$children$props2.onBlur,
|
|
199
|
+
onMouseLeave = _props$children$props2.onMouseLeave;
|
|
200
|
+
const closeAfter = props.closeAfter;
|
|
201
|
+
const handleLeave = useCallback(event => {
|
|
204
202
|
if (leaveTimer.current) {
|
|
205
203
|
clearTimeout(leaveTimer.current);
|
|
206
204
|
}
|
|
@@ -214,19 +212,19 @@ var Tooltip = function Tooltip(props) {
|
|
|
214
212
|
}
|
|
215
213
|
|
|
216
214
|
if (closeAfter) {
|
|
217
|
-
leaveTimer.current = _setTimeout(
|
|
215
|
+
leaveTimer.current = _setTimeout(() => {
|
|
218
216
|
handleClose(event);
|
|
219
217
|
}, closeAfter);
|
|
220
218
|
} else {
|
|
221
219
|
handleClose(event);
|
|
222
220
|
}
|
|
223
221
|
}, [closeAfter, onBlur, onMouseLeave, handleClose]);
|
|
224
|
-
useEffect(
|
|
222
|
+
useEffect(() => {
|
|
225
223
|
// if tooltip was open, and then component
|
|
226
224
|
// updated to be off, we should close the tooltip
|
|
227
225
|
if (isOpen && props.off) {
|
|
228
226
|
if (closeAfter) {
|
|
229
|
-
leaveTimer.current = _setTimeout(
|
|
227
|
+
leaveTimer.current = _setTimeout(() => {
|
|
230
228
|
handleClose();
|
|
231
229
|
}, closeAfter);
|
|
232
230
|
} else {
|
|
@@ -234,28 +232,28 @@ var Tooltip = function Tooltip(props) {
|
|
|
234
232
|
}
|
|
235
233
|
}
|
|
236
234
|
}, [props.off, closeAfter, handleClose, toggle, isOpen]);
|
|
237
|
-
|
|
235
|
+
const childrenProps = {
|
|
238
236
|
// don't pass event listeners to children
|
|
239
237
|
onFocus: null,
|
|
240
238
|
onMouseOver: null,
|
|
241
239
|
onMouseLeave: null,
|
|
242
240
|
onBlur: null
|
|
243
241
|
};
|
|
244
|
-
|
|
242
|
+
const tooltipProps = !props.off ? {
|
|
245
243
|
'aria-describedby': tooltipIsOpen ? id : null,
|
|
246
244
|
// for seo and accessibility, we add the tooltip's title
|
|
247
245
|
// as a native title when the title is hidden
|
|
248
246
|
title: !tooltipIsOpen && typeof props.title === 'string' ? props.title : null
|
|
249
247
|
} : {};
|
|
250
|
-
|
|
248
|
+
const eventListeners = !props.off ? {
|
|
251
249
|
onMouseOver: handleEnter,
|
|
252
250
|
onMouseLeave: handleLeave,
|
|
253
251
|
onFocus: handleEnter,
|
|
254
252
|
onBlur: handleLeave
|
|
255
253
|
} : {};
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
254
|
+
const WrapperComponent = ((_props$components4 = props.components) === null || _props$components4 === void 0 ? void 0 : _props$components4.WrapperComponent) || Wrapper;
|
|
255
|
+
const BodyComponent = ((_props$components5 = props.components) === null || _props$components5 === void 0 ? void 0 : _props$components5.BodyComponent) || Body;
|
|
256
|
+
const TooltipWrapperComponent = ((_props$components6 = props.components) === null || _props$components6 === void 0 ? void 0 : _props$components6.TooltipWrapperComponent) || TooltipWrapper;
|
|
259
257
|
return jsxs(Fragment, {
|
|
260
258
|
children: [jsx(WrapperComponent, _objectSpread(_objectSpread({}, eventListeners), {}, {
|
|
261
259
|
// @ts-expect-error: yes, ref can be undefined
|
|
@@ -270,7 +268,7 @@ var Tooltip = function Tooltip(props) {
|
|
|
270
268
|
constraint: props.horizontalConstraint,
|
|
271
269
|
placement: popper.placement,
|
|
272
270
|
customStyles: (_props$styles = props.styles) === null || _props$styles === void 0 ? void 0 : _props$styles.body
|
|
273
|
-
})), process.env.NODE_ENV === "production" ? "" : ";label:Tooltip;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtVWSIsImZpbGUiOiJ0b29sdGlwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8vIGluc3BpcmVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL211aS1vcmcvbWF0ZXJpYWwtdWkvYmxvYi85ZWNjOGRiOGFiYmZiODI5MTExZDNiNWMwNjc4MjY3ODI3OTg0MDI0L3BhY2thZ2VzL21hdGVyaWFsLXVpL3NyYy9Ub29sdGlwL1Rvb2x0aXAuanNcbmltcG9ydCB7IE1vZGlmaWVycyB9IGZyb20gJ3BvcHBlci5qcyc7XG5pbXBvcnQge1xuICBDb21wb25lbnRUeXBlLFxuICBGb2N1c0V2ZW50LFxuICBDaGFuZ2VFdmVudCxcbiAgTGVnYWN5UmVmLFxuICBDU1NQcm9wZXJ0aWVzLFxuICBSZWFjdEVsZW1lbnQsXG4gIHVzZVJlZixcbiAgdXNlRWZmZWN0LFxuICB1c2VDYWxsYmFjayxcbiAgY2xvbmVFbGVtZW50LFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBpc1ZhbGlkRWxlbWVudFR5cGUgfSBmcm9tICdyZWFjdC1pcyc7XG5pbXBvcnQgaXNOaWwgZnJvbSAnbG9kYXNoL2lzTmlsJztcbmltcG9ydCB1c2VQb3BwZXIgZnJvbSAndXNlLXBvcHBlcic7XG5pbXBvcnQgeyB1c2VGaWVsZElkLCB1c2VUb2dnbGVTdGF0ZSB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2hvb2tzJztcbmltcG9ydCB7IGNyZWF0ZVNlcXVlbnRpYWxJZCwgd2FybmluZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3V0aWxzJztcbmltcG9ydCB7IFdyYXBwZXIsIEJvZHksIGdldEJvZHlTdHlsZXMgfSBmcm9tICcuL3Rvb2x0aXAuc3R5bGVzJztcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCd0b29sdGlwLScpO1xuXG5leHBvcnQgdHlwZSBUQ29tcG9uZW50cyA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnQgcmVuZGVyZWQgYXMgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIEJvZHlDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogV2hlcmUgdGhlIHRvb2x0aXAgc2hvdWxkIGJlIHJlbmRlcmVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gcmVuZGVyIHRoZSB0b29sdGlwIGludG8gYW5vdGhlciBwYXJ0IG9mIHRoZSBkb2N1bWVudCwgdXNpbmcgUmVhY3QgcG9ydGFsLlxuICAgKi9cbiAgVG9vbHRpcFdyYXBwZXJDb21wb25lbnQ/OiBDb21wb25lbnRUeXBlO1xuICAvKipcbiAgICogQSBjdXN0b20gY29tcG9uZW50IHdyYXBwZXIgZm9yIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgV3JhcHBlckNvbXBvbmVudD86IENvbXBvbmVudFR5cGU7XG59O1xuXG5leHBvcnQgdHlwZSBUVG9vbHRpcFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3RFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBEZWxheSAoaW4gbWlsbGlzZWNvbmRzKSBiZXR3ZWVuIHRoZSBlbmQgb2YgdGhlIHVzZXIgaW50ZXJhY3Rpb24sIGFuZCB0aGUgY2xvc2luZyBvZiB0aGUgdG9vbHRpcC5cbiAgICovXG4gIGNsb3NlQWZ0ZXI6IG51bWJlcjtcbiAgLyoqXG4gICAqIEN1c3RvbSBjc3MtaW4tanMgb2JqZWN0IHN0eWxlcyBmb3IgdGhlIHRvb2x0aXAgYm9keS5cbiAgICovXG4gIHN0eWxlcz86IFJlY29yZDxzdHJpbmcsIENTU1Byb3BlcnRpZXM+O1xuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdG9vbHRpcCBzaG91bGQgbm90IGFwcGVhci5cbiAgICovXG4gIG9mZjogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFuIGlkZW50aWZpZXIgZm9yIHRoZSB0b29sdGlwLCB1c2VkIGZvciBgYXJpYS1kZXNjcmliZWRieWAuXG4gICAqL1xuICBpZD86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgY2FsbGJhY2sgZnVuY3Rpb24sIGNhbGxlZCB3aGVuIHRoZSB0b29sdGlwIGlzIGNsb3NpbmcuXG4gICAqL1xuICBvbkNsb3NlPzogKGU/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgdG9vbHRpcCBpcyBvcGVuaW5nLlxuICAgKi9cbiAgb25PcGVuPzogKGU/OiBDaGFuZ2VFdmVudCB8IEZvY3VzRXZlbnQpID0+IHZvaWQ7XG4gIGlzT3Blbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIb3cgdGhlIHRvb2x0aXAgaXMgcG9zaXRpb25lZCByZWxhdGl2ZSB0byB0aGUgY2hpbGQgZWxlbWVudC5cbiAgICovXG4gIHBsYWNlbWVudD86XG4gICAgfCAndG9wJ1xuICAgIHwgJ3RvcC1zdGFydCdcbiAgICB8ICd0b3AtZW5kJ1xuICAgIHwgJ3JpZ2h0J1xuICAgIHwgJ3JpZ2h0LXN0YXJ0J1xuICAgIHwgJ3JpZ2h0LWVuZCdcbiAgICB8ICdib3R0b20nXG4gICAgfCAnYm90dG9tLXN0YXJ0J1xuICAgIHwgJ2JvdHRvbS1lbmQnXG4gICAgfCAnbGVmdCdcbiAgICB8ICdsZWZ0LXN0YXJ0J1xuICAgIHwgJ2xlZnQtZW5kJztcbiAgLyoqXG4gICAqIFRoZSBtZXNzYWdlIHRvIHNob3cgaW4gdGhlIHRvb2x0aXAuXG4gICAqL1xuICB0aXRsZTogc3RyaW5nO1xuICAvKipcbiAgICogUHJvdmlkZXMgYSB3YXkgdG8gZmluZS10dW5lIGFuIGFwcGVhcmFuY2Ugb2YgdW5kZXJseWluZyBQb3BwZXIgdG9vbHRpcCBlbGVtZW50LiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgcGxlYXNlIGNoZWNrIFtQb3BwZXIuanMgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9wb3BwZXIuanMub3JnL3BvcHBlci1kb2N1bWVudGF0aW9uLmh0bWwjbW9kaWZpZXJzKS5cbiAgICovXG4gIG1vZGlmaWVycz86IE1vZGlmaWVycztcbiAgLyoqXG4gICAqIEN1c3RvbWl6ZSB0aGUgYXBwZWFyYW5jZSBvZiBjZXJ0YWluIGVsZW1lbnRzIG9mIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgY29tcG9uZW50cz86IFRDb21wb25lbnRzO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSB0b29sdGlwLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OlxuICAgIHwgMVxuICAgIHwgMlxuICAgIHwgM1xuICAgIHwgNFxuICAgIHwgNVxuICAgIHwgNlxuICAgIHwgN1xuICAgIHwgOFxuICAgIHwgOVxuICAgIHwgMTBcbiAgICB8IDExXG4gICAgfCAxMlxuICAgIHwgMTNcbiAgICB8IDE0XG4gICAgfCAxNVxuICAgIHwgMTZcbiAgICB8ICdzY2FsZSdcbiAgICB8ICdhdXRvJztcbn07XG5cbmNvbnN0IFRvb2x0aXBXcmFwcGVyID0gKHByb3BzOiBQaWNrPFRUb29sdGlwUHJvcHMsICdjaGlsZHJlbic+KSA9PiAoXG4gIDw+e3Byb3BzLmNoaWxkcmVufTwvPlxuKTtcblRvb2x0aXBXcmFwcGVyLmRpc3BsYXlOYW1lID0gJ1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50JztcblxuY29uc3QgdG9vbHRpcERlZmF1bHRQcm9wczogUGljazxcbiAgVFRvb2x0aXBQcm9wcyxcbiAgJ2Nsb3NlQWZ0ZXInIHwgJ2hvcml6b250YWxDb25zdHJhaW50JyB8ICdvZmYnIHwgJ3BsYWNlbWVudCdcbj4gPSB7XG4gIGNsb3NlQWZ0ZXI6IDAsXG4gIGhvcml6b250YWxDb25zdHJhaW50OiAnc2NhbGUnLFxuICBvZmY6IGZhbHNlLFxuICBwbGFjZW1lbnQ6ICd0b3AnLFxufTtcblxuY29uc3QgVG9vbHRpcCA9IChwcm9wczogVFRvb2x0aXBQcm9wcykgPT4ge1xuICBjb25zdCBsZWF2ZVRpbWVyID0gdXNlUmVmPFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+PigpO1xuICBjb25zdCBjaGlsZHJlblJlZiA9IHVzZVJlZjxSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKTtcbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LkJvZHlDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuQm9keUNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLkJvZHlDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSB7XG4gICAgd2FybmluZyhcbiAgICAgIGlzVmFsaWRFbGVtZW50VHlwZShwcm9wcy5jb21wb25lbnRzLlRvb2x0aXBXcmFwcGVyQ29tcG9uZW50KSxcbiAgICAgIGB1aS1raXQvVG9vbHRpcDogdGhlIHByb3AgJ2NvbXBvbmVudHMuVG9vbHRpcFdyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cbiAgaWYgKHByb3BzLmNvbXBvbmVudHM/LldyYXBwZXJDb21wb25lbnQpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgaXNWYWxpZEVsZW1lbnRUeXBlKHByb3BzLmNvbXBvbmVudHMuV3JhcHBlckNvbXBvbmVudCksXG4gICAgICBgdWkta2l0L1Rvb2x0aXA6IHRoZSBwcm9wICdjb21wb25lbnRzLldyYXBwZXJDb21wb25lbnQnIGlzIG5vdCBhIHZhbGlkIFJlYWN0IGVsZW1lbnQuYFxuICAgICk7XG4gIH1cblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAobGVhdmVUaW1lci5jdXJyZW50KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChsZWF2ZVRpbWVyLmN1cnJlbnQpO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtdKTtcblxuICBjb25zdCB7IHJlZmVyZW5jZSwgcG9wcGVyIH0gPSB1c2VQb3BwZXIoe1xuICAgIHBsYWNlbWVudDogcHJvcHMucGxhY2VtZW50LFxuICAgIG1vZGlmaWVyczogcHJvcHMubW9kaWZpZXJzLFxuICB9KTtcbiAgY29uc3QgW2lzT3BlbiwgdG9nZ2xlXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY2xvc2VUb29sdGlwID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHRvZ2dsZShmYWxzZSk7XG4gIH0sIFt0b2dnbGVdKTtcbiAgY29uc3Qgb3BlblRvb2x0aXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgdG9nZ2xlKHRydWUpO1xuICB9LCBbdG9nZ2xlXSk7XG5cbiAgY29uc3QgaXNDb250cm9sbGVkID0gIWlzTmlsKHByb3BzLmlzT3Blbik7XG4gIGNvbnN0IHRvb2x0aXBJc09wZW4gPSBpc0NvbnRyb2xsZWQgPyBwcm9wcy5pc09wZW4gOiBpc09wZW47XG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCB7IG9uQ2xvc2UgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVDbG9zZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgaWYgKCFpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgY2xvc2VUb29sdGlwKCk7XG4gICAgICB9XG4gICAgICBpZiAob25DbG9zZSkge1xuICAgICAgICBvbkNsb3NlKGV2ZW50KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0NvbnRyb2xsZWQsIGNsb3NlVG9vbHRpcCwgb25DbG9zZV1cbiAgKTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uTW91c2VPdmVyIH0gPSBwcm9wcy5jaGlsZHJlbi5wcm9wcztcbiAgY29uc3QgeyBvbk9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVFbnRlciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudD86IENoYW5nZUV2ZW50IHwgRm9jdXNFdmVudCkgPT4ge1xuICAgICAgLy8gUmVtb3ZlIHRoZSB0aXRsZSBhaGVhZCBvZiB0aW1lLlxuICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byB3YWl0IGZvciB0aGUgbmV4dCByZW5kZXIgY29tbWl0LlxuICAgICAgLy8gV2Ugd291bGQgcmlzayBkaXNwbGF5aW5nIHR3byB0b29sdGlwcyBhdCB0aGUgc2FtZSB0aW1lIChuYXRpdmUgKyB0aGlzIG9uZSkuXG4gICAgICBpZiAoY2hpbGRyZW5SZWYgJiYgdHlwZW9mIGNoaWxkcmVuUmVmID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgY2hpbGRyZW5SZWYuc2V0QXR0cmlidXRlKCd0aXRsZScsICcnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50KSB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VvdmVyJyAmJiBvbk1vdXNlT3Zlcikge1xuICAgICAgICAgIG9uTW91c2VPdmVyKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZm9jdXMnICYmIG9uRm9jdXMpIHtcbiAgICAgICAgICBvbkZvY3VzKGV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghaXNPcGVuICYmICFpc0NvbnRyb2xsZWQpIHtcbiAgICAgICAgICBvcGVuVG9vbHRpcCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9uT3Blbikge1xuICAgICAgICAgIG9uT3BlbihldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbkZvY3VzLCBvbk9wZW4sIG9uTW91c2VPdmVyLCBpc0NvbnRyb2xsZWQsIGlzT3Blbiwgb3BlblRvb2x0aXBdXG4gICk7XG5cbiAgY29uc3QgeyBvbkJsdXIsIG9uTW91c2VMZWF2ZSB9ID0gcHJvcHMuY2hpbGRyZW4ucHJvcHM7XG4gIGNvbnN0IHsgY2xvc2VBZnRlciB9ID0gcHJvcHM7XG5cbiAgY29uc3QgaGFuZGxlTGVhdmUgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIGlmIChsZWF2ZVRpbWVyLmN1cnJlbnQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KGxlYXZlVGltZXIuY3VycmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudC50eXBlID09PSAnbW91c2VsZWF2ZScgJiYgb25Nb3VzZUxlYXZlKSB7XG4gICAgICAgIG9uTW91c2VMZWF2ZShldmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChldmVudC50eXBlID09PSAnYmx1cicgJiYgb25CbHVyKSB7XG4gICAgICAgIG9uQmx1cihldmVudCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChjbG9zZUFmdGVyKSB7XG4gICAgICAgIGxlYXZlVGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUNsb3NlKGV2ZW50KTtcbiAgICAgICAgfSwgY2xvc2VBZnRlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVDbG9zZShldmVudCk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbY2xvc2VBZnRlciwgb25CbHVyLCBvbk1vdXNlTGVhdmUsIGhhbmRsZUNsb3NlXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gaWYgdG9vbHRpcCB3YXMgb3BlbiwgYW5kIHRoZW4gY29tcG9uZW50XG4gICAgLy8gdXBkYXRlZCB0byBiZSBvZmYsIHdlIHNob3VsZCBjbG9zZSB0aGUgdG9vbHRpcFxuICAgIGlmIChpc09wZW4gJiYgcHJvcHMub2ZmKSB7XG4gICAgICBpZiAoY2xvc2VBZnRlcikge1xuICAgICAgICBsZWF2ZVRpbWVyLmN1cnJlbnQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBoYW5kbGVDbG9zZSgpO1xuICAgICAgICB9LCBjbG9zZUFmdGVyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgICB9XG4gICAgfVxuICB9LCBbcHJvcHMub2ZmLCBjbG9zZUFmdGVyLCBoYW5kbGVDbG9zZSwgdG9nZ2xlLCBpc09wZW5dKTtcblxuICBjb25zdCBjaGlsZHJlblByb3BzID0ge1xuICAgIC8vIGRvbid0IHBhc3MgZXZlbnQgbGlzdGVuZXJzIHRvIGNoaWxkcmVuXG4gICAgb25Gb2N1czogbnVsbCxcbiAgICBvbk1vdXNlT3ZlcjogbnVsbCxcbiAgICBvbk1vdXNlTGVhdmU6IG51bGwsXG4gICAgb25CbHVyOiBudWxsLFxuICB9O1xuXG4gIGNvbnN0IHRvb2x0aXBQcm9wcyA9ICFwcm9wcy5vZmZcbiAgICA/IHtcbiAgICAgICAgJ2FyaWEtZGVzY3JpYmVkYnknOiB0b29sdGlwSXNPcGVuID8gaWQgOiBudWxsLFxuICAgICAgICAvLyBmb3Igc2VvIGFuZCBhY2Nlc3NpYmlsaXR5LCB3ZSBhZGQgdGhlIHRvb2x0aXAncyB0aXRsZVxuICAgICAgICAvLyBhcyBhIG5hdGl2ZSB0aXRsZSB3aGVuIHRoZSB0aXRsZSBpcyBoaWRkZW5cbiAgICAgICAgdGl0bGU6XG4gICAgICAgICAgIXRvb2x0aXBJc09wZW4gJiYgdHlwZW9mIHByb3BzLnRpdGxlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgPyBwcm9wcy50aXRsZVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgfVxuICAgIDoge307XG5cbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSAhcHJvcHMub2ZmXG4gICAgPyB7XG4gICAgICAgIG9uTW91c2VPdmVyOiBoYW5kbGVFbnRlcixcbiAgICAgICAgb25Nb3VzZUxlYXZlOiBoYW5kbGVMZWF2ZSxcbiAgICAgICAgb25Gb2N1czogaGFuZGxlRW50ZXIsXG4gICAgICAgIG9uQmx1cjogaGFuZGxlTGVhdmUsXG4gICAgICB9XG4gICAgOiB7fTtcblxuICBjb25zdCBXcmFwcGVyQ29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uV3JhcHBlckNvbXBvbmVudCB8fCBXcmFwcGVyO1xuICBjb25zdCBCb2R5Q29tcG9uZW50ID0gcHJvcHMuY29tcG9uZW50cz8uQm9keUNvbXBvbmVudCB8fCBCb2R5O1xuICBjb25zdCBUb29sdGlwV3JhcHBlckNvbXBvbmVudCA9XG4gICAgcHJvcHMuY29tcG9uZW50cz8uVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgfHwgVG9vbHRpcFdyYXBwZXI7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPFdyYXBwZXJDb21wb25lbnRcbiAgICAgICAgey4uLmV2ZW50TGlzdGVuZXJzfVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiB5ZXMsIHJlZiBjYW4gYmUgdW5kZWZpbmVkXG4gICAgICAgIHJlZj17cmVmZXJlbmNlLnJlZn1cbiAgICAgID5cbiAgICAgICAge2Nsb25lRWxlbWVudChwcm9wcy5jaGlsZHJlbiwge1xuICAgICAgICAgIC4uLmNoaWxkcmVuUHJvcHMsXG4gICAgICAgICAgLi4udG9vbHRpcFByb3BzLFxuICAgICAgICB9KX1cbiAgICAgIDwvV3JhcHBlckNvbXBvbmVudD5cbiAgICAgIHt0b29sdGlwSXNPcGVuICYmIChcbiAgICAgICAgPFRvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIC8vIHJlZiBhY2NlcHRzIGBMZWdhY3lSZWZgLCB3aGljaCBpcyBhIHVuaW9uIG9mIGBSZWZPYmplY3RgIGFuZCBgc3RyaW5nYFxuICAgICAgICAgICAgLy8gcHJvcHBlci5yZWYgcmV0dXJucyBgUmVmT2JqZWN0YFxuICAgICAgICAgICAgcmVmPXtwb3BwZXIucmVmIGFzIExlZ2FjeVJlZjxIVE1MRGl2RWxlbWVudD59XG4gICAgICAgICAgICBjc3M9e3tcbiAgICAgICAgICAgICAgLi4ucG9wcGVyLnN0eWxlcyxcbiAgICAgICAgICAgICAgLi4uZ2V0Qm9keVN0eWxlcyh7XG4gICAgICAgICAgICAgICAgY29uc3RyYWludDogcHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnQsXG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiBwb3BwZXIucGxhY2VtZW50LFxuICAgICAgICAgICAgICAgIGN1c3RvbVN0eWxlczogcHJvcHMuc3R5bGVzPy5ib2R5LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBkYXRhLXBsYWNlbWVudD17cG9wcGVyLnBsYWNlbWVudH1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Qm9keUNvbXBvbmVudD57cHJvcHMudGl0bGV9PC9Cb2R5Q29tcG9uZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50PlxuICAgICAgKX1cbiAgICA8Lz5cbiAgKTtcbn07XG5cblRvb2x0aXAuZGlzcGxheU5hbWUgPSAnVG9vbFRpcCc7XG5Ub29sdGlwLmRlZmF1bHRQcm9wcyA9IHRvb2x0aXBEZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IFRvb2x0aXA7XG4iXX0= */"),
|
|
271
|
+
})), 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= */"),
|
|
274
272
|
"data-placement": popper.placement,
|
|
275
273
|
children: jsx(BodyComponent, {
|
|
276
274
|
children: props.title
|
|
@@ -304,6 +302,6 @@ Tooltip.defaultProps = tooltipDefaultProps;
|
|
|
304
302
|
var Tooltip$1 = Tooltip;
|
|
305
303
|
|
|
306
304
|
// NOTE: This string will be replaced on build time with the package version.
|
|
307
|
-
var version = "15.
|
|
305
|
+
var version = "15.15.1";
|
|
308
306
|
|
|
309
307
|
export { Tooltip$1 as default, version };
|
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": "15.
|
|
4
|
+
"version": "15.15.1",
|
|
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": "15.
|
|
25
|
-
"@commercetools-uikit/design-system": "15.
|
|
26
|
-
"@commercetools-uikit/hooks": "15.
|
|
27
|
-
"@commercetools-uikit/utils": "15.
|
|
24
|
+
"@commercetools-uikit/constraints": "15.15.1",
|
|
25
|
+
"@commercetools-uikit/design-system": "15.15.1",
|
|
26
|
+
"@commercetools-uikit/hooks": "15.15.1",
|
|
27
|
+
"@commercetools-uikit/utils": "15.15.1",
|
|
28
28
|
"@emotion/react": "^11.10.5",
|
|
29
29
|
"@emotion/styled": "^11.10.5",
|
|
30
30
|
"lodash": "4.17.21",
|