@elliemae/ds-tooltip 2.2.0-alpha.3 → 3.0.0-next.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/cjs/index.js +23 -41
- package/cjs/v1/DSTooltip.js +105 -108
- package/cjs/v1/TooltipType.js +8 -36
- package/cjs/v2/DSTooltip.js +121 -117
- package/cjs/v2/DSTooltipArrow.js +38 -50
- package/cjs/v2/TooltipType.js +8 -36
- package/cjs/v2/index.d.js +2 -27
- package/cjs/v2/propTypes.js +25 -54
- package/cjs/v2/styles.js +59 -128
- package/cjs/v2/utils/setMultipleRefs.js +21 -41
- package/cjs/v2/utils/tooltipPositions.js +18 -46
- package/cjs/v3/TooltipV3DatatestId.js +8 -36
- package/cjs/v3/config/useWithDefaultProps.js +14 -40
- package/cjs/v3/index.d.js +2 -27
- package/cjs/v3/index.js +103 -90
- package/cjs/v3/propsTypes.js +94 -78
- package/cjs/v3/styleds.js +46 -69
- package/esm/index.js +5 -12
- package/esm/v1/DSTooltip.js +87 -88
- package/esm/v1/TooltipType.js +4 -7
- package/esm/v2/DSTooltip.js +97 -80
- package/esm/v2/DSTooltipArrow.js +30 -21
- package/esm/v2/TooltipType.js +4 -7
- package/esm/v2/index.d.js +1 -2
- package/esm/v2/propTypes.js +21 -25
- package/esm/v2/styles.js +47 -100
- package/esm/v2/utils/setMultipleRefs.js +18 -13
- package/esm/v2/utils/tooltipPositions.js +14 -17
- package/esm/v3/TooltipV3DatatestId.js +4 -7
- package/esm/v3/config/useWithDefaultProps.js +10 -11
- package/esm/v3/index.d.js +1 -2
- package/esm/v3/index.js +79 -54
- package/esm/v3/propsTypes.js +90 -49
- package/esm/v3/styleds.js +36 -41
- package/package.json +10 -10
- package/types/index.d.ts +1 -1
- package/cjs/index.js.map +0 -7
- package/cjs/v1/DSTooltip.js.map +0 -7
- package/cjs/v1/TooltipType.js.map +0 -7
- package/cjs/v2/DSTooltip.js.map +0 -7
- package/cjs/v2/DSTooltipArrow.js.map +0 -7
- package/cjs/v2/TooltipType.js.map +0 -7
- package/cjs/v2/index.d.js.map +0 -7
- package/cjs/v2/propTypes.js.map +0 -7
- package/cjs/v2/styles.js.map +0 -7
- package/cjs/v2/utils/setMultipleRefs.js.map +0 -7
- package/cjs/v2/utils/tooltipPositions.js.map +0 -7
- package/cjs/v3/TooltipV3DatatestId.js.map +0 -7
- package/cjs/v3/config/useWithDefaultProps.js.map +0 -7
- package/cjs/v3/index.d.js.map +0 -7
- package/cjs/v3/index.js.map +0 -7
- package/cjs/v3/propsTypes.js.map +0 -7
- package/cjs/v3/styleds.js.map +0 -7
- package/esm/index.js.map +0 -7
- package/esm/v1/DSTooltip.js.map +0 -7
- package/esm/v1/TooltipType.js.map +0 -7
- package/esm/v2/DSTooltip.js.map +0 -7
- package/esm/v2/DSTooltipArrow.js.map +0 -7
- package/esm/v2/TooltipType.js.map +0 -7
- package/esm/v2/index.d.js.map +0 -7
- package/esm/v2/propTypes.js.map +0 -7
- package/esm/v2/styles.js.map +0 -7
- package/esm/v2/utils/setMultipleRefs.js.map +0 -7
- package/esm/v2/utils/tooltipPositions.js.map +0 -7
- package/esm/v3/TooltipV3DatatestId.js.map +0 -7
- package/esm/v3/config/useWithDefaultProps.js.map +0 -7
- package/esm/v3/index.d.js.map +0 -7
- package/esm/v3/index.js.map +0 -7
- package/esm/v3/propsTypes.js.map +0 -7
- package/esm/v3/styleds.js.map +0 -7
package/cjs/index.js
CHANGED
|
@@ -1,41 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return (module2, temp) => {
|
|
25
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
-
};
|
|
27
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
28
|
-
var src_exports = {};
|
|
29
|
-
__export(src_exports, {
|
|
30
|
-
default: () => import_DSTooltip.default,
|
|
31
|
-
tooltipPositions: () => import_tooltipPositions.tooltipPositions
|
|
32
|
-
});
|
|
33
|
-
var React = __toESM(require("react"));
|
|
34
|
-
__reExport(src_exports, __toESM(require("./v1/DSTooltip")));
|
|
35
|
-
__reExport(src_exports, __toESM(require("./v2/DSTooltip")));
|
|
36
|
-
var import_tooltipPositions = __toESM(require("./v2/utils/tooltipPositions"));
|
|
37
|
-
__reExport(src_exports, __toESM(require("./v2/TooltipType")));
|
|
38
|
-
__reExport(src_exports, __toESM(require("./v3")));
|
|
39
|
-
var import_DSTooltip = __toESM(require("./v1/DSTooltip"));
|
|
40
|
-
module.exports = __toCommonJS(src_exports);
|
|
41
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var DSTooltip = require('./v1/DSTooltip.js');
|
|
6
|
+
var DSTooltip$1 = require('./v2/DSTooltip.js');
|
|
7
|
+
var tooltipPositions = require('./v2/utils/tooltipPositions.js');
|
|
8
|
+
var TooltipType = require('./v2/TooltipType.js');
|
|
9
|
+
var index = require('./v3/index.js');
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
exports.DSTooltip = DSTooltip.DSTooltip;
|
|
14
|
+
exports.TooltipContainer = DSTooltip.TooltipContainer;
|
|
15
|
+
exports.TooltipText = DSTooltip.TooltipText;
|
|
16
|
+
exports.TooltipWithSchema = DSTooltip.TooltipWithSchema;
|
|
17
|
+
exports["default"] = DSTooltip.DSTooltip;
|
|
18
|
+
exports.DSTooltipV2 = DSTooltip$1.DSTooltipV2;
|
|
19
|
+
exports.TooltipV2WithSchema = DSTooltip$1.TooltipV2WithSchema;
|
|
20
|
+
exports.tooltipPositions = tooltipPositions.tooltipPositions;
|
|
21
|
+
exports.TooltipType = TooltipType.TooltipType;
|
|
22
|
+
exports.DSTooltipV3 = index.DSTooltipV3;
|
|
23
|
+
exports.DSTooltipV3WithSchema = index.DSTooltipV3WithSchema;
|
package/cjs/v1/DSTooltip.js
CHANGED
|
@@ -1,118 +1,115 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
6
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
10
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
11
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
12
|
+
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
13
|
+
require('react');
|
|
14
|
+
var reactDesc = require('react-desc');
|
|
15
|
+
var dsClassnames = require('@elliemae/ds-classnames');
|
|
16
|
+
var dsUtilities = require('@elliemae/ds-utilities');
|
|
17
|
+
var constants = require('@elliemae/ds-shared/constants');
|
|
18
|
+
var DSPopper = require('@elliemae/ds-popper');
|
|
19
|
+
var TooltipType = require('./TooltipType.js');
|
|
20
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
21
|
+
|
|
22
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
23
|
+
|
|
24
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
25
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
26
|
+
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
27
|
+
var DSPopper__default = /*#__PURE__*/_interopDefaultLegacy(DSPopper);
|
|
28
|
+
|
|
29
|
+
const _excluded = ["containerProps", "innerRef", "placement", "title", "delayClose", "delayOpen", "interactionType", "triggerComponent", "className", "isOpen", "onOpen", "springAnimationComponent", "tooltipType", "showArrow", "zIndex"];
|
|
30
|
+
|
|
31
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
32
|
+
|
|
33
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
34
|
+
const blockName = 'tooltip';
|
|
35
|
+
const TooltipContainer = dsClassnames.aggregatedClasses('div')(blockName, false, false, {
|
|
36
|
+
propsToRemoveFromFinalElement: ['isHovered', 'isDragged']
|
|
35
37
|
});
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
var import_react_desc = __toESM(require("react-desc"));
|
|
39
|
-
var import_ds_classnames = __toESM(require("@elliemae/ds-classnames"));
|
|
40
|
-
var import_ds_utilities = __toESM(require("@elliemae/ds-utilities"));
|
|
41
|
-
var import_constants = __toESM(require("@elliemae/ds-shared/constants"));
|
|
42
|
-
var import_ds_popper = __toESM(require("@elliemae/ds-popper"));
|
|
43
|
-
var import_TooltipType = __toESM(require("./TooltipType"));
|
|
44
|
-
const blockName = "tooltip";
|
|
45
|
-
const TooltipContainer = (0, import_ds_classnames.aggregatedClasses)("div")(blockName, false, false, {
|
|
46
|
-
propsToRemoveFromFinalElement: ["isHovered", "isDragged"]
|
|
38
|
+
const TooltipText = dsClassnames.aggregatedClasses('span')(blockName, 'text', false, {
|
|
39
|
+
propsToRemoveFromFinalElement: ['isHovered', 'isDragged']
|
|
47
40
|
});
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
const {
|
|
41
|
+
|
|
42
|
+
const DSTooltip = _ref => {
|
|
43
|
+
let {
|
|
44
|
+
containerProps = {},
|
|
45
|
+
innerRef,
|
|
46
|
+
placement = DSPopper.PopperPositions.TOP,
|
|
47
|
+
title = '',
|
|
48
|
+
delayClose = constants.DEFAULT_DELAY_CLOSE,
|
|
49
|
+
delayOpen = constants.DEFAULT_DELAY_OPEN,
|
|
50
|
+
interactionType = DSPopper.PopperInteractions.HOVER,
|
|
51
|
+
triggerComponent = null,
|
|
52
|
+
className = '',
|
|
53
|
+
isOpen = undefined,
|
|
54
|
+
onOpen = () => null,
|
|
55
|
+
springAnimationComponent = undefined,
|
|
56
|
+
tooltipType = TooltipType.TooltipType.TOOLTIP,
|
|
57
|
+
showArrow = true,
|
|
58
|
+
zIndex
|
|
59
|
+
} = _ref,
|
|
60
|
+
otherTooltipProps = _objectWithoutProperties__default["default"](_ref, _excluded);
|
|
61
|
+
|
|
62
|
+
const {
|
|
63
|
+
cssClassName: tooltipBlockName
|
|
64
|
+
} = dsClassnames.convertPropToCssClassName(blockName);
|
|
70
65
|
let Content = title;
|
|
71
|
-
|
|
72
|
-
|
|
66
|
+
|
|
67
|
+
if (typeof title === 'string') {
|
|
68
|
+
Content = /*#__PURE__*/_jsx__default["default"](TooltipText, {}, void 0, title);
|
|
73
69
|
}
|
|
74
|
-
|
|
70
|
+
|
|
71
|
+
return /*#__PURE__*/_jsx__default["default"](DSPopper__default["default"], {
|
|
75
72
|
blockName: tooltipBlockName,
|
|
76
|
-
contentComponent:
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
zIndex
|
|
73
|
+
contentComponent: /*#__PURE__*/jsxRuntime.jsx(TooltipContainer, _objectSpread(_objectSpread(_objectSpread({}, containerProps), otherTooltipProps), {}, {
|
|
74
|
+
className: "tooltip-container--".concat(tooltipType, " ").concat(className),
|
|
75
|
+
innerRef: innerRef,
|
|
76
|
+
children: Content
|
|
77
|
+
})),
|
|
78
|
+
delayClose: delayClose,
|
|
79
|
+
delayOpen: delayOpen,
|
|
80
|
+
interactionType: interactionType,
|
|
81
|
+
isOpen: isOpen,
|
|
82
|
+
onOpen: onOpen,
|
|
83
|
+
placement: placement,
|
|
84
|
+
showArrow: tooltipType === TooltipType.TooltipType.TOOLTIP ? showArrow : false,
|
|
85
|
+
springAnimationComponent: springAnimationComponent,
|
|
86
|
+
triggerComponent: dsUtilities.getComponentFromProps(triggerComponent),
|
|
87
|
+
zIndex: zIndex
|
|
92
88
|
});
|
|
93
89
|
};
|
|
90
|
+
|
|
94
91
|
const tooltipProps = {
|
|
95
|
-
containerProps:
|
|
96
|
-
placement:
|
|
97
|
-
title:
|
|
98
|
-
delayClose:
|
|
99
|
-
delayOpen:
|
|
100
|
-
interactionType:
|
|
101
|
-
triggerComponent:
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
zIndex: import_react_desc.PropTypes.number.description("z-index value assigned to the tooltip").defaultValue(void 0),
|
|
111
|
-
innerRef: import_react_desc.PropTypes.oneOfType([import_react_desc.PropTypes.func, import_react_desc.PropTypes.object]).description("Ref to the tooltip container element")
|
|
92
|
+
containerProps: reactDesc.PropTypes.object.description('Set of Properties attached to the main container'),
|
|
93
|
+
placement: reactDesc.PropTypes.oneOf(DSPopper.positions).description('Tooltip position').defaultValue(DSPopper.PopperPositions.TOP),
|
|
94
|
+
title: reactDesc.PropTypes.oneOfType([reactDesc.PropTypes.string, reactDesc.PropTypes.element]).description('Tooltip content').isRequired,
|
|
95
|
+
delayClose: reactDesc.PropTypes.string.description('Delay to close the tooltip').defaultValue(constants.DEFAULT_DELAY_CLOSE),
|
|
96
|
+
delayOpen: reactDesc.PropTypes.string.description('Delay to open the tooltip ').defaultValue(constants.DEFAULT_DELAY_OPEN),
|
|
97
|
+
interactionType: reactDesc.PropTypes.oneOf(DSPopper.interactions).description('A type indicating how to open/close the tooltip').defaultValue(DSPopper.PopperInteractions.HOVER),
|
|
98
|
+
triggerComponent: reactDesc.PropTypes.element.description("The component that will open/close the tooltip. \n Cannot be used with disabled elements. \n https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/disabled").isRequired,
|
|
99
|
+
isOpen: reactDesc.PropTypes.bool.description('Whether the tooltip is visible or not').defaultValue(undefined),
|
|
100
|
+
onOpen: reactDesc.PropTypes.func.description('Handler when the tooltip opens'),
|
|
101
|
+
springAnimationComponent: reactDesc.PropTypes.element.description('Spring animation component'),
|
|
102
|
+
showArrow: reactDesc.PropTypes.bool.description('Whether to show an arrow or not').defaultValue(true),
|
|
103
|
+
className: reactDesc.PropTypes.string.description('css class'),
|
|
104
|
+
tooltipType: reactDesc.PropTypes.oneOf(['tooltip', 'toolbar']).description('Type of tooltip').defaultValue(TooltipType.TooltipType.TOOLTIP),
|
|
105
|
+
zIndex: reactDesc.PropTypes.number.description('z-index value assigned to the tooltip').defaultValue(undefined),
|
|
106
|
+
innerRef: reactDesc.PropTypes.oneOfType([reactDesc.PropTypes.func, reactDesc.PropTypes.object]).description('Ref to the tooltip container element')
|
|
112
107
|
};
|
|
113
|
-
|
|
114
|
-
const TooltipWithSchema = (0, import_react_desc.describe)(DSTooltip);
|
|
108
|
+
const TooltipWithSchema = reactDesc.describe(DSTooltip);
|
|
115
109
|
TooltipWithSchema.propTypes = tooltipProps;
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
110
|
+
|
|
111
|
+
exports.DSTooltip = DSTooltip;
|
|
112
|
+
exports.TooltipContainer = TooltipContainer;
|
|
113
|
+
exports.TooltipText = TooltipText;
|
|
114
|
+
exports.TooltipWithSchema = TooltipWithSchema;
|
|
115
|
+
exports["default"] = DSTooltip;
|
package/cjs/v1/TooltipType.js
CHANGED
|
@@ -1,38 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __reExport = (target, module2, copyDefault, desc) => {
|
|
13
|
-
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(module2))
|
|
15
|
-
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
16
|
-
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return target;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (module2, isNodeMode) => {
|
|
21
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
22
|
-
};
|
|
23
|
-
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
24
|
-
return (module2, temp) => {
|
|
25
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
26
|
-
};
|
|
27
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
28
|
-
var TooltipType_exports = {};
|
|
29
|
-
__export(TooltipType_exports, {
|
|
30
|
-
TooltipType: () => TooltipType
|
|
31
|
-
});
|
|
32
|
-
var React = __toESM(require("react"));
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
33
5
|
const TooltipType = {
|
|
34
|
-
TOOLTIP:
|
|
35
|
-
TOOLBAR:
|
|
6
|
+
TOOLTIP: 'tooltip',
|
|
7
|
+
TOOLBAR: 'toolbar'
|
|
36
8
|
};
|
|
37
|
-
|
|
38
|
-
|
|
9
|
+
|
|
10
|
+
exports.TooltipType = TooltipType;
|
package/cjs/v2/DSTooltip.js
CHANGED
|
@@ -1,87 +1,85 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
const [popperElement, setPopperElement] = (0, import_react.useState)(null);
|
|
66
|
-
const [arrowElement, setArrowElement] = (0, import_react.useState)(null);
|
|
67
|
-
const timerOpen = (0, import_react.useRef)(null);
|
|
68
|
-
const timerClosed = (0, import_react.useRef)(null);
|
|
69
|
-
const { styles, attributes } = (0, import_react_popper.usePopper)(referenceElement, popperElement, {
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
7
|
+
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
|
+
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
9
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
10
|
+
require('core-js/modules/esnext.iterator.filter.js');
|
|
11
|
+
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
12
|
+
require('core-js/modules/esnext.iterator.for-each.js');
|
|
13
|
+
var react = require('react');
|
|
14
|
+
var reactDesc = require('react-desc');
|
|
15
|
+
var DSPortal = require('@elliemae/ds-portal');
|
|
16
|
+
var constants = require('@elliemae/ds-shared/constants');
|
|
17
|
+
var reactPopper = require('react-popper');
|
|
18
|
+
var tooltipPositions = require('./utils/tooltipPositions.js');
|
|
19
|
+
var TooltipType = require('./TooltipType.js');
|
|
20
|
+
var styles = require('./styles.js');
|
|
21
|
+
var DSTooltipArrow = require('./DSTooltipArrow.js');
|
|
22
|
+
var propTypes = require('./propTypes.js');
|
|
23
|
+
var setMultipleRefs = require('./utils/setMultipleRefs.js');
|
|
24
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
25
|
+
|
|
26
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
27
|
+
|
|
28
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
29
|
+
var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
|
|
30
|
+
var DSPortal__default = /*#__PURE__*/_interopDefaultLegacy(DSPortal);
|
|
31
|
+
|
|
32
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
33
|
+
|
|
34
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
35
|
+
|
|
36
|
+
const DSTooltipV2 = _ref => {
|
|
37
|
+
let {
|
|
38
|
+
containerProps = {},
|
|
39
|
+
innerRef,
|
|
40
|
+
placement = tooltipPositions.tooltipPositions.BOTTOM,
|
|
41
|
+
title = '',
|
|
42
|
+
delayClose = constants.DEFAULT_DELAY_CLOSE,
|
|
43
|
+
delayOpen = constants.DEFAULT_DELAY_OPEN,
|
|
44
|
+
triggerComponent = null,
|
|
45
|
+
className = '',
|
|
46
|
+
getIsOpen = () => null,
|
|
47
|
+
onOpen = () => null,
|
|
48
|
+
tooltipType = TooltipType.TooltipType.TOOLTIP,
|
|
49
|
+
showArrow = true,
|
|
50
|
+
offset = [0, 14],
|
|
51
|
+
zIndex = 10,
|
|
52
|
+
extraModifiers = {}
|
|
53
|
+
} = _ref;
|
|
54
|
+
const [showTooltip, setShowTooltip] = react.useState(false);
|
|
55
|
+
const [isAnimating, setIsAnimating] = react.useState(false);
|
|
56
|
+
const [referenceElement, setReferenceElement] = react.useState(triggerComponent);
|
|
57
|
+
const [popperElement, setPopperElement] = react.useState(null);
|
|
58
|
+
const [arrowElement, setArrowElement] = react.useState(null);
|
|
59
|
+
const timerOpen = react.useRef(null);
|
|
60
|
+
const timerClosed = react.useRef(null);
|
|
61
|
+
const {
|
|
62
|
+
styles: styles$1,
|
|
63
|
+
attributes
|
|
64
|
+
} = reactPopper.usePopper(referenceElement, popperElement, {
|
|
70
65
|
placement,
|
|
71
|
-
modifiers: [
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
66
|
+
modifiers: [{
|
|
67
|
+
name: 'hide',
|
|
68
|
+
enabled: true
|
|
69
|
+
}, {
|
|
70
|
+
name: 'offset',
|
|
71
|
+
enabled: true,
|
|
72
|
+
options: {
|
|
73
|
+
offset: tooltipType === TooltipType.TooltipType.TOOLBAR ? [0, 0] : offset
|
|
74
|
+
}
|
|
75
|
+
}, {
|
|
76
|
+
name: 'arrow',
|
|
77
|
+
options: {
|
|
78
|
+
element: arrowElement
|
|
79
|
+
}
|
|
80
|
+
}, _objectSpread({}, extraModifiers)]
|
|
83
81
|
});
|
|
84
|
-
const handleShowTooltipOn =
|
|
82
|
+
const handleShowTooltipOn = react.useCallback(() => {
|
|
85
83
|
timerOpen.current = setTimeout(() => {
|
|
86
84
|
setShowTooltip(true);
|
|
87
85
|
setIsAnimating(true);
|
|
@@ -89,55 +87,61 @@ const DSTooltipV2 = ({
|
|
|
89
87
|
onOpen();
|
|
90
88
|
}, delayOpen);
|
|
91
89
|
}, [delayOpen, getIsOpen, onOpen]);
|
|
92
|
-
const handleShowTooltipOff =
|
|
90
|
+
const handleShowTooltipOff = react.useCallback(() => {
|
|
93
91
|
timerClosed.current = setTimeout(() => {
|
|
94
92
|
setShowTooltip(false);
|
|
95
93
|
setIsAnimating(true);
|
|
96
94
|
getIsOpen(false);
|
|
97
95
|
}, delayClose);
|
|
98
96
|
}, [delayClose, getIsOpen]);
|
|
99
|
-
const handleKeyDown =
|
|
100
|
-
if (e.key ===
|
|
97
|
+
const handleKeyDown = react.useCallback(e => {
|
|
98
|
+
if (e.key === 'Escape') {
|
|
101
99
|
e.target.blur();
|
|
102
100
|
}
|
|
103
101
|
}, []);
|
|
104
|
-
const checkAnimationStatus =
|
|
102
|
+
const checkAnimationStatus = react.useCallback(() => {
|
|
105
103
|
if (!showTooltip) {
|
|
106
104
|
setIsAnimating(false);
|
|
107
105
|
}
|
|
108
106
|
}, [showTooltip]);
|
|
109
|
-
|
|
107
|
+
react.useEffect(() => () => {
|
|
110
108
|
clearTimeout(timerClosed.current);
|
|
111
109
|
clearTimeout(timerOpen.current);
|
|
112
110
|
}, []);
|
|
113
|
-
return
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
showTooltip,
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
111
|
+
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
112
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(styles.StyledTriggerComponentContainer, {
|
|
113
|
+
ref: setReferenceElement,
|
|
114
|
+
onMouseEnter: handleShowTooltipOn,
|
|
115
|
+
onMouseLeave: handleShowTooltipOff,
|
|
116
|
+
onFocus: handleShowTooltipOn,
|
|
117
|
+
onBlur: handleShowTooltipOff,
|
|
118
|
+
onKeyDown: handleKeyDown,
|
|
119
|
+
children: triggerComponent
|
|
120
|
+
}), isAnimating || showTooltip ? /*#__PURE__*/_jsx__default["default"](DSPortal__default["default"], {}, void 0, /*#__PURE__*/jsxRuntime.jsx(styles.StyledTooltipContainer, _objectSpread(_objectSpread(_objectSpread({
|
|
121
|
+
className: className,
|
|
122
|
+
showTooltip: showTooltip,
|
|
123
|
+
tooltipType: tooltipType,
|
|
124
|
+
"data-testid": "ds-tooltip-container",
|
|
125
|
+
ref: ref => setMultipleRefs.setMultipleRefs(setPopperElement, innerRef)(ref),
|
|
126
|
+
style: _objectSpread(_objectSpread({}, styles$1.popper), {}, {
|
|
127
|
+
zIndex
|
|
128
|
+
})
|
|
129
|
+
}, containerProps), attributes.popper), {}, {
|
|
130
|
+
children: /*#__PURE__*/_jsx__default["default"](styles.StyledAnimatedTooltip, {
|
|
131
|
+
showTooltip: showTooltip,
|
|
132
|
+
"data-testid": "ds-tooltip",
|
|
133
|
+
onAnimationEnd: checkAnimationStatus
|
|
134
|
+
}, void 0, /*#__PURE__*/_jsx__default["default"](styles.StyledTooltipText, {}, void 0, title), tooltipType === TooltipType.TooltipType.TOOLTIP && showArrow ? /*#__PURE__*/_jsx__default["default"](DSTooltipArrow.DSTooltipArrow, {
|
|
135
|
+
arrowElementRef: setArrowElement,
|
|
136
|
+
style: styles$1.arrow,
|
|
137
|
+
placement: attributes.popper ? attributes.popper['data-popper-placement'] : 'bottom'
|
|
138
|
+
}) : null)
|
|
139
|
+
}))) : null]
|
|
140
|
+
});
|
|
138
141
|
};
|
|
139
|
-
|
|
140
|
-
const TooltipV2WithSchema =
|
|
141
|
-
TooltipV2WithSchema.propTypes =
|
|
142
|
-
|
|
143
|
-
|
|
142
|
+
|
|
143
|
+
const TooltipV2WithSchema = reactDesc.describe(DSTooltipV2);
|
|
144
|
+
TooltipV2WithSchema.propTypes = propTypes.tooltipV2Props;
|
|
145
|
+
|
|
146
|
+
exports.DSTooltipV2 = DSTooltipV2;
|
|
147
|
+
exports.TooltipV2WithSchema = TooltipV2WithSchema;
|