@sproutsocial/racine 20.3.1 → 20.4.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/CHANGELOG.md +17 -0
- package/commonjs/Menu/utils/hooks.js +6 -1
- package/commonjs/Tooltip/Tooltip.js +88 -107
- package/commonjs/Tooltip/styles.js +4 -4
- package/dist/types/Menu/utils/hooks.d.ts.map +1 -1
- package/dist/types/Tooltip/Tooltip.d.ts +2 -1
- package/dist/types/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/types/Tooltip/TooltipTypes.d.ts +3 -3
- package/dist/types/Tooltip/TooltipTypes.d.ts.map +1 -1
- package/dist/types/Tooltip/styles.d.ts +1 -1
- package/dist/types/Tooltip/styles.d.ts.map +1 -1
- package/lib/Menu/utils/hooks.js +6 -1
- package/lib/Tooltip/Tooltip.js +89 -108
- package/lib/Tooltip/styles.js +2 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 20.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 35df3316c: `Tooltip` types now allow for the use of `onFocus` in cases where the implementation requires an event during hover
|
|
8
|
+
- 35df3316c: Upgrade @babel/traverse
|
|
9
|
+
|
|
10
|
+
## 20.4.0
|
|
11
|
+
|
|
12
|
+
### Minor Changes
|
|
13
|
+
|
|
14
|
+
- 98dcd1d61: Upgrades scroll-into-view-if-needed from v1 to v2
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- 98dcd1d61: Refactor tooltip to better address event bubbling and accessibility issues
|
|
19
|
+
|
|
3
20
|
## 20.3.1
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
|
@@ -164,7 +164,12 @@ function useMenuKeyDown() {
|
|
|
164
164
|
return !option.disabled && (!filteredItems || filteredItems.includes(option.index));
|
|
165
165
|
},
|
|
166
166
|
callback: function callback(item) {
|
|
167
|
-
|
|
167
|
+
if (item.element) {
|
|
168
|
+
(0, _scrollIntoViewIfNeeded.default)(item.element, {
|
|
169
|
+
block: 'nearest',
|
|
170
|
+
scrollMode: 'if-needed'
|
|
171
|
+
});
|
|
172
|
+
}
|
|
168
173
|
setState({
|
|
169
174
|
selectionIndex: item.index
|
|
170
175
|
});
|
|
@@ -8,12 +8,11 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _seedsMotionUnitless = _interopRequireDefault(require("@sproutsocial/seeds-motion/dist/seeds-motion-unitless"));
|
|
9
9
|
var _Popout = _interopRequireDefault(require("../Popout"));
|
|
10
10
|
var _styles = require("./styles");
|
|
11
|
-
var _excluded = ["
|
|
12
|
-
_excluded2 = ["
|
|
11
|
+
var _excluded = ["appearance", "children", "onFocus", "onBlur"],
|
|
12
|
+
_excluded2 = ["content", "children", "enterDelay", "placement", "appearance", "zIndex", "qa", "popoutProps", "truncated", "onFocus", "onBlur"];
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
-
function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure " + obj); }
|
|
17
16
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
18
17
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
19
18
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -26,32 +25,49 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
26
25
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
27
26
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
28
27
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
28
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
29
29
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
30
30
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
31
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
32
31
|
var idCounter = 0;
|
|
33
|
-
var
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
appearance = _ref
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
32
|
+
var hasAttribute = function hasAttribute(child, attribute) {
|
|
33
|
+
return /*#__PURE__*/React.isValidElement(child) && child.props[attribute] !== undefined;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
/** Tooltip Styled Popout wrapper for handling events */
|
|
37
|
+
var TooltipBubble = function TooltipBubble(_ref) {
|
|
38
|
+
var _ref$appearance = _ref.appearance,
|
|
39
|
+
appearance = _ref$appearance === void 0 ? 'pill' : _ref$appearance,
|
|
40
|
+
children = _ref.children,
|
|
41
|
+
onFocus = _ref.onFocus,
|
|
42
|
+
onBlur = _ref.onBlur,
|
|
43
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
44
|
+
var handleFocus = function handleFocus(e) {
|
|
45
|
+
onFocus(e);
|
|
46
|
+
};
|
|
47
|
+
var handleBlur = function handleBlur(e) {
|
|
48
|
+
onBlur(e);
|
|
49
|
+
};
|
|
50
|
+
return /*#__PURE__*/React.createElement(_styles.StyledTooltipContent, _extends({
|
|
51
|
+
role: "tooltip",
|
|
44
52
|
appearance: appearance,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
53
|
+
borderRadius: appearance === 'box' ? 500 : '5000em',
|
|
54
|
+
px: 400,
|
|
55
|
+
py: appearance === 'box' ? 400 : 200,
|
|
56
|
+
m: 200,
|
|
57
|
+
color: "text.body",
|
|
58
|
+
bg: "container.background.base",
|
|
59
|
+
boxShadow: "medium",
|
|
60
|
+
border: 500,
|
|
61
|
+
borderColor: "container.border.base",
|
|
62
|
+
onFocus: handleFocus,
|
|
63
|
+
onBlur: handleBlur,
|
|
64
|
+
onMouseEnter: handleFocus,
|
|
65
|
+
onMouseLeave: handleBlur,
|
|
66
|
+
tabIndex: 0
|
|
67
|
+
}, rest), children);
|
|
54
68
|
};
|
|
69
|
+
|
|
70
|
+
/** Core component */
|
|
55
71
|
var Tooltip = function Tooltip(_ref2) {
|
|
56
72
|
var content = _ref2.content,
|
|
57
73
|
children = _ref2.children,
|
|
@@ -66,7 +82,9 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
66
82
|
popoutProps = _ref2.popoutProps,
|
|
67
83
|
_ref2$truncated = _ref2.truncated,
|
|
68
84
|
truncated = _ref2$truncated === void 0 ? false : _ref2$truncated,
|
|
69
|
-
|
|
85
|
+
onFocus = _ref2.onFocus,
|
|
86
|
+
onBlur = _ref2.onBlur,
|
|
87
|
+
rest = _objectWithoutProperties(_ref2, _excluded2);
|
|
70
88
|
var _useState = (0, React.useState)(false),
|
|
71
89
|
_useState2 = _slicedToArray(_useState, 2),
|
|
72
90
|
shouldShow = _useState2[0],
|
|
@@ -75,25 +93,22 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
75
93
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
76
94
|
isOpen = _useState4[0],
|
|
77
95
|
setIsOpen = _useState4[1];
|
|
78
|
-
var _useState5 = (0, React.useState)(
|
|
79
|
-
_useState6 = _slicedToArray(_useState5,
|
|
80
|
-
|
|
81
|
-
setIsTooltipHovered = _useState6[1];
|
|
82
|
-
var _useState7 = (0, React.useState)("Racine-tooltip-".concat(idCounter++)),
|
|
83
|
-
_useState8 = _slicedToArray(_useState7, 1),
|
|
84
|
-
id = _useState8[0];
|
|
96
|
+
var _useState5 = (0, React.useState)("Racine-tooltip-".concat(idCounter++)),
|
|
97
|
+
_useState6 = _slicedToArray(_useState5, 1),
|
|
98
|
+
id = _useState6[0];
|
|
85
99
|
var isInvalidContent = content === null || content === undefined;
|
|
86
|
-
var show = function show() {
|
|
87
|
-
|
|
100
|
+
var show = function show(e) {
|
|
101
|
+
onFocus === null || onFocus === void 0 || onFocus(e);
|
|
102
|
+
setShouldShow(true);
|
|
88
103
|
};
|
|
89
|
-
var hide = function hide() {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
104
|
+
var hide = function hide(e) {
|
|
105
|
+
onBlur === null || onBlur === void 0 || onBlur(e);
|
|
106
|
+
setShouldShow(false);
|
|
93
107
|
};
|
|
94
108
|
var exitDelay = _seedsMotionUnitless.default.MOTION_DURATION_FAST * 1000;
|
|
95
109
|
var defaultAppearance = appearance || (_typeof(content) === 'object' ? 'box' : 'pill');
|
|
96
|
-
|
|
110
|
+
|
|
111
|
+
/** Handles all the logic around whether to display/not display */
|
|
97
112
|
(0, React.useEffect)(function () {
|
|
98
113
|
var documentBody = document.body;
|
|
99
114
|
var timeout;
|
|
@@ -110,57 +125,32 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
110
125
|
}, enterDelay);
|
|
111
126
|
} else {
|
|
112
127
|
timeout = setTimeout(function () {
|
|
113
|
-
|
|
114
|
-
setIsOpen(false);
|
|
115
|
-
}
|
|
128
|
+
setIsOpen(false);
|
|
116
129
|
}, exitDelay);
|
|
117
130
|
}
|
|
118
|
-
|
|
131
|
+
|
|
132
|
+
// We only want listeners from the tooltip if its open in the first place
|
|
133
|
+
if (isOpen) {
|
|
134
|
+
documentBody.addEventListener('keydown', onEsc, false);
|
|
135
|
+
}
|
|
119
136
|
return function () {
|
|
120
137
|
documentBody.removeEventListener('keydown', onEsc, false);
|
|
121
138
|
clearTimeout(timeout);
|
|
122
139
|
};
|
|
123
|
-
}, [isOpen, setShouldShow, shouldShow, enterDelay, exitDelay
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}),
|
|
136
|
-
wrapperStyles: {},
|
|
137
|
-
onMouseEnter: function onMouseEnter() {
|
|
138
|
-
return setIsTooltipHovered(true);
|
|
139
|
-
},
|
|
140
|
-
onMouseLeave: function onMouseLeave() {
|
|
141
|
-
return setIsTooltipHovered(false);
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
_objectDestructuringEmpty(isOpen ? {} : {});
|
|
145
|
-
var wrapperStylesForWrappedChildren = truncated ? {
|
|
146
|
-
overflow: 'hidden',
|
|
147
|
-
textOverflow: 'ellipsis',
|
|
148
|
-
whiteSpace: 'nowrap'
|
|
149
|
-
} : {};
|
|
150
|
-
// Wraps the triggering element and passes props down
|
|
151
|
-
var wrappedChildren = wrapContent({
|
|
152
|
-
isOpen: isOpen,
|
|
153
|
-
content: children,
|
|
154
|
-
contentId: id,
|
|
155
|
-
show: show,
|
|
156
|
-
hide: hide,
|
|
157
|
-
Wrapper: 'span',
|
|
158
|
-
appearance: defaultAppearance,
|
|
159
|
-
ariaProps: {},
|
|
160
|
-
wrapperStyles: wrapperStylesForWrappedChildren
|
|
161
|
-
});
|
|
140
|
+
}, [isOpen, setShouldShow, shouldShow, enterDelay, exitDelay]);
|
|
141
|
+
|
|
142
|
+
/** The wrapped content of whats inside the Tooltip */
|
|
143
|
+
var TooltipContent = function TooltipContent() {
|
|
144
|
+
return /*#__PURE__*/React.createElement(TooltipBubble, _extends({
|
|
145
|
+
appearance: defaultAppearance,
|
|
146
|
+
onFocus: show,
|
|
147
|
+
onBlur: hide,
|
|
148
|
+
"aria-expanded": isOpen,
|
|
149
|
+
"aria-describedby": id
|
|
150
|
+
}, rest), content);
|
|
151
|
+
};
|
|
162
152
|
return /*#__PURE__*/React.createElement(_Popout.default, _extends({
|
|
163
|
-
content: !isInvalidContent ?
|
|
153
|
+
content: !isInvalidContent ? TooltipContent : undefined,
|
|
164
154
|
isOpen: isOpen,
|
|
165
155
|
placement: placement,
|
|
166
156
|
qa: _objectSpread({
|
|
@@ -172,30 +162,21 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
172
162
|
"aria-haspopup": "false",
|
|
173
163
|
display: truncated ? 'flex' : undefined,
|
|
174
164
|
disableWrapperAria: true // required so that the child span doesnt take in redundant aria props
|
|
175
|
-
}, popoutProps),
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
m: 200,
|
|
191
|
-
color: "text.body",
|
|
192
|
-
bg: "container.background.base",
|
|
193
|
-
boxShadow: "medium",
|
|
194
|
-
border: 500,
|
|
195
|
-
borderColor: "container.border.base",
|
|
196
|
-
onMouseEnter: onMouseEnter,
|
|
197
|
-
onMouseLeave: onMouseLeave
|
|
198
|
-
}, rest), children);
|
|
165
|
+
}, popoutProps), /*#__PURE__*/React.createElement("span", {
|
|
166
|
+
onBlur: hide,
|
|
167
|
+
onFocus: show,
|
|
168
|
+
onMouseEnter: show,
|
|
169
|
+
onMouseLeave: hide,
|
|
170
|
+
style: truncated ? {
|
|
171
|
+
overflow: 'hidden',
|
|
172
|
+
textOverflow: 'ellipsis',
|
|
173
|
+
whiteSpace: 'nowrap'
|
|
174
|
+
} : {}
|
|
175
|
+
}, /*#__PURE__*/React.isValidElement(children) ? /*#__PURE__*/React.cloneElement(children, {
|
|
176
|
+
//** There may be cases where the Tooltip's child needs to properly describe its role as expanding a drawer, in which case that propery takes priority */
|
|
177
|
+
'aria-expanded': hasAttribute(children, 'aria-expanded') ? children.props['aria-expanded'] : isOpen,
|
|
178
|
+
'aria-describedby': id
|
|
179
|
+
}) : children));
|
|
199
180
|
};
|
|
200
181
|
var _default = Tooltip;
|
|
201
182
|
exports.default = _default;
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.StyledTooltipContent = void 0;
|
|
7
7
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
8
8
|
var _Box = _interopRequireDefault(require("../Box"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
var
|
|
11
|
-
displayName: "
|
|
10
|
+
var StyledTooltipContent = (0, _styledComponents.default)(_Box.default).withConfig({
|
|
11
|
+
displayName: "styles__StyledTooltipContent",
|
|
12
12
|
componentId: "sc-19u9ha6-0"
|
|
13
13
|
})(["font-family:", ";", " text-align:", ";"], function (props) {
|
|
14
14
|
return props.theme.fontFamily;
|
|
@@ -17,4 +17,4 @@ var TooltipContent = (0, _styledComponents.default)(_Box.default).withConfig({
|
|
|
17
17
|
}, function (props) {
|
|
18
18
|
return props.appearance === 'box' ? 'left' : 'center';
|
|
19
19
|
});
|
|
20
|
-
exports.
|
|
20
|
+
exports.StyledTooltipContent = StyledTooltipContent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../src/Menu/utils/hooks.ts"],"names":[],"mappings":";;AAGA,OAAO,KAAK,EAAC,qBAAqB,EAAE,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAShF,eAAO,MAAM,WAAW,0CAoBtB,CAAC;AACH,eAAO,MAAM,iBAAiB,gDAG5B,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AACF,eAAO,MAAM,qBAAqB;;;;EAEjC,CAAC;AAwBF,wBAAgB,cAAc;;;
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../src/Menu/utils/hooks.ts"],"names":[],"mappings":";;AAGA,OAAO,KAAK,EAAC,qBAAqB,EAAE,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAShF,eAAO,MAAM,WAAW,0CAoBtB,CAAC;AACH,eAAO,MAAM,iBAAiB,gDAG5B,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AACF,eAAO,MAAM,qBAAqB;;;;EAEjC,CAAC;AAwBF,wBAAgB,cAAc;;;EA4I7B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { TypeTooltipProps } from './TooltipTypes';
|
|
3
|
-
|
|
3
|
+
/** Core component */
|
|
4
|
+
declare const Tooltip: ({ content, children, enterDelay, placement, appearance, zIndex, qa, popoutProps, truncated, onFocus, onBlur, ...rest }: TypeTooltipProps) => JSX.Element;
|
|
4
5
|
export default Tooltip;
|
|
5
6
|
//# sourceMappingURL=Tooltip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/Tooltip.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAC,gBAAgB,EAAqB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/Tooltip.tsx"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAC,gBAAgB,EAAqB,MAAM,gBAAgB,CAAC;AA+CzE,qBAAqB;AACrB,QAAA,MAAM,OAAO,2HAaV,gBAAgB,gBA2GlB,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import type { EnumPlacements, TypePopoutProps } from '../Popout/index';
|
|
3
3
|
import { TypeQaProps } from '../types/shared';
|
|
4
4
|
import { TypeBoxProps } from '../Box';
|
|
5
|
-
export interface TypeTooltipProps extends Omit<TypeBoxProps, 'children' | 'content'> {
|
|
5
|
+
export interface TypeTooltipProps extends Omit<TypeBoxProps, 'children' | 'content' | 'onMouseEnter' | 'onMouseLeave'> {
|
|
6
6
|
/** The content that the tooltip should be attached to. Hovering or focusing this element will cause the tooltip to appear */
|
|
7
7
|
children: React.ReactNode;
|
|
8
8
|
/** The content to be displayed within the tooltip. If there is no content, just the children are rendered */
|
|
@@ -22,7 +22,7 @@ export interface TypeTooltipProps extends Omit<TypeBoxProps, 'children' | 'conte
|
|
|
22
22
|
ariaProps?: Record<string, string>;
|
|
23
23
|
}
|
|
24
24
|
export interface TypeTooltipContent extends Pick<TypeTooltipProps, 'appearance' | 'children'> {
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
onFocus: (e: React.FocusEvent<HTMLDivElement, FocusEvent>) => void;
|
|
26
|
+
onBlur: (e: React.FocusEvent<HTMLDivElement, FocusEvent>) => void;
|
|
27
27
|
}
|
|
28
28
|
//# sourceMappingURL=TooltipTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TooltipTypes.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/TooltipTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAC,cAAc,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AAEtC,MAAM,WAAW,gBACf,SAAQ,IAAI,
|
|
1
|
+
{"version":3,"file":"TooltipTypes.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/TooltipTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAC,cAAc,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,YAAY,EAAC,MAAM,UAAU,CAAC;AAEtC,MAAM,WAAW,gBACf,SAAQ,IAAI,CACV,YAAY,EACZ,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,cAAc,CACzD;IACD,6HAA6H;IAC7H,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B,6GAA6G;IAC7G,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IAEzB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B,6FAA6F;IAC7F,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,gOAAgO;IAChO,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAEvC,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,kBACf,SAAQ,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,UAAU,CAAC;IACzD,OAAO,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IACnE,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CACnE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { TypeTooltipContent } from './TooltipTypes';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const StyledTooltipContent: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<import("../Box").TypeBoxProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, Pick<TypeTooltipContent, "appearance">, never>;
|
|
4
4
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/styles.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/Tooltip/styles.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAElD,eAAO,MAAM,oBAAoB,+QAMhC,CAAC"}
|
package/lib/Menu/utils/hooks.js
CHANGED
|
@@ -152,7 +152,12 @@ export function useMenuKeyDown() {
|
|
|
152
152
|
return !option.disabled && (!filteredItems || filteredItems.includes(option.index));
|
|
153
153
|
},
|
|
154
154
|
callback: function callback(item) {
|
|
155
|
-
|
|
155
|
+
if (item.element) {
|
|
156
|
+
scrollIntoViewIfNeeded(item.element, {
|
|
157
|
+
block: 'nearest',
|
|
158
|
+
scrollMode: 'if-needed'
|
|
159
|
+
});
|
|
160
|
+
}
|
|
156
161
|
setState({
|
|
157
162
|
selectionIndex: item.index
|
|
158
163
|
});
|
package/lib/Tooltip/Tooltip.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
var _excluded = ["
|
|
2
|
-
_excluded2 = ["
|
|
3
|
-
function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure " + obj); }
|
|
1
|
+
var _excluded = ["appearance", "children", "onFocus", "onBlur"],
|
|
2
|
+
_excluded2 = ["content", "children", "enterDelay", "placement", "appearance", "zIndex", "qa", "popoutProps", "truncated", "onFocus", "onBlur"];
|
|
4
3
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
4
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
5
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -13,37 +12,54 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
13
12
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
14
13
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
15
14
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
15
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
16
16
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
17
17
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
18
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
19
18
|
import * as React from 'react';
|
|
20
19
|
import { useState, useEffect } from 'react';
|
|
21
20
|
import MOTION from '@sproutsocial/seeds-motion/dist/seeds-motion-unitless';
|
|
22
21
|
import Popout from "../Popout";
|
|
23
|
-
import {
|
|
22
|
+
import { StyledTooltipContent } from "./styles";
|
|
24
23
|
var idCounter = 0;
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
appearance = _ref
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
24
|
+
var hasAttribute = function hasAttribute(child, attribute) {
|
|
25
|
+
return /*#__PURE__*/React.isValidElement(child) && child.props[attribute] !== undefined;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/** Tooltip Styled Popout wrapper for handling events */
|
|
29
|
+
var TooltipBubble = function TooltipBubble(_ref) {
|
|
30
|
+
var _ref$appearance = _ref.appearance,
|
|
31
|
+
appearance = _ref$appearance === void 0 ? 'pill' : _ref$appearance,
|
|
32
|
+
children = _ref.children,
|
|
33
|
+
onFocus = _ref.onFocus,
|
|
34
|
+
onBlur = _ref.onBlur,
|
|
35
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
36
|
+
var handleFocus = function handleFocus(e) {
|
|
37
|
+
onFocus(e);
|
|
38
|
+
};
|
|
39
|
+
var handleBlur = function handleBlur(e) {
|
|
40
|
+
onBlur(e);
|
|
41
|
+
};
|
|
42
|
+
return /*#__PURE__*/React.createElement(StyledTooltipContent, _extends({
|
|
43
|
+
role: "tooltip",
|
|
36
44
|
appearance: appearance,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
borderRadius: appearance === 'box' ? 500 : '5000em',
|
|
46
|
+
px: 400,
|
|
47
|
+
py: appearance === 'box' ? 400 : 200,
|
|
48
|
+
m: 200,
|
|
49
|
+
color: "text.body",
|
|
50
|
+
bg: "container.background.base",
|
|
51
|
+
boxShadow: "medium",
|
|
52
|
+
border: 500,
|
|
53
|
+
borderColor: "container.border.base",
|
|
54
|
+
onFocus: handleFocus,
|
|
55
|
+
onBlur: handleBlur,
|
|
56
|
+
onMouseEnter: handleFocus,
|
|
57
|
+
onMouseLeave: handleBlur,
|
|
58
|
+
tabIndex: 0
|
|
59
|
+
}, rest), children);
|
|
46
60
|
};
|
|
61
|
+
|
|
62
|
+
/** Core component */
|
|
47
63
|
var Tooltip = function Tooltip(_ref2) {
|
|
48
64
|
var content = _ref2.content,
|
|
49
65
|
children = _ref2.children,
|
|
@@ -58,7 +74,9 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
58
74
|
popoutProps = _ref2.popoutProps,
|
|
59
75
|
_ref2$truncated = _ref2.truncated,
|
|
60
76
|
truncated = _ref2$truncated === void 0 ? false : _ref2$truncated,
|
|
61
|
-
|
|
77
|
+
onFocus = _ref2.onFocus,
|
|
78
|
+
onBlur = _ref2.onBlur,
|
|
79
|
+
rest = _objectWithoutProperties(_ref2, _excluded2);
|
|
62
80
|
var _useState = useState(false),
|
|
63
81
|
_useState2 = _slicedToArray(_useState, 2),
|
|
64
82
|
shouldShow = _useState2[0],
|
|
@@ -67,25 +85,22 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
67
85
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
68
86
|
isOpen = _useState4[0],
|
|
69
87
|
setIsOpen = _useState4[1];
|
|
70
|
-
var _useState5 = useState(
|
|
71
|
-
_useState6 = _slicedToArray(_useState5,
|
|
72
|
-
|
|
73
|
-
setIsTooltipHovered = _useState6[1];
|
|
74
|
-
var _useState7 = useState("Racine-tooltip-".concat(idCounter++)),
|
|
75
|
-
_useState8 = _slicedToArray(_useState7, 1),
|
|
76
|
-
id = _useState8[0];
|
|
88
|
+
var _useState5 = useState("Racine-tooltip-".concat(idCounter++)),
|
|
89
|
+
_useState6 = _slicedToArray(_useState5, 1),
|
|
90
|
+
id = _useState6[0];
|
|
77
91
|
var isInvalidContent = content === null || content === undefined;
|
|
78
|
-
var show = function show() {
|
|
79
|
-
|
|
92
|
+
var show = function show(e) {
|
|
93
|
+
onFocus === null || onFocus === void 0 || onFocus(e);
|
|
94
|
+
setShouldShow(true);
|
|
80
95
|
};
|
|
81
|
-
var hide = function hide() {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
96
|
+
var hide = function hide(e) {
|
|
97
|
+
onBlur === null || onBlur === void 0 || onBlur(e);
|
|
98
|
+
setShouldShow(false);
|
|
85
99
|
};
|
|
86
100
|
var exitDelay = MOTION.MOTION_DURATION_FAST * 1000;
|
|
87
101
|
var defaultAppearance = appearance || (_typeof(content) === 'object' ? 'box' : 'pill');
|
|
88
|
-
|
|
102
|
+
|
|
103
|
+
/** Handles all the logic around whether to display/not display */
|
|
89
104
|
useEffect(function () {
|
|
90
105
|
var documentBody = document.body;
|
|
91
106
|
var timeout;
|
|
@@ -102,57 +117,32 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
102
117
|
}, enterDelay);
|
|
103
118
|
} else {
|
|
104
119
|
timeout = setTimeout(function () {
|
|
105
|
-
|
|
106
|
-
setIsOpen(false);
|
|
107
|
-
}
|
|
120
|
+
setIsOpen(false);
|
|
108
121
|
}, exitDelay);
|
|
109
122
|
}
|
|
110
|
-
|
|
123
|
+
|
|
124
|
+
// We only want listeners from the tooltip if its open in the first place
|
|
125
|
+
if (isOpen) {
|
|
126
|
+
documentBody.addEventListener('keydown', onEsc, false);
|
|
127
|
+
}
|
|
111
128
|
return function () {
|
|
112
129
|
documentBody.removeEventListener('keydown', onEsc, false);
|
|
113
130
|
clearTimeout(timeout);
|
|
114
131
|
};
|
|
115
|
-
}, [isOpen, setShouldShow, shouldShow, enterDelay, exitDelay
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}),
|
|
128
|
-
wrapperStyles: {},
|
|
129
|
-
onMouseEnter: function onMouseEnter() {
|
|
130
|
-
return setIsTooltipHovered(true);
|
|
131
|
-
},
|
|
132
|
-
onMouseLeave: function onMouseLeave() {
|
|
133
|
-
return setIsTooltipHovered(false);
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
_objectDestructuringEmpty(isOpen ? {} : {});
|
|
137
|
-
var wrapperStylesForWrappedChildren = truncated ? {
|
|
138
|
-
overflow: 'hidden',
|
|
139
|
-
textOverflow: 'ellipsis',
|
|
140
|
-
whiteSpace: 'nowrap'
|
|
141
|
-
} : {};
|
|
142
|
-
// Wraps the triggering element and passes props down
|
|
143
|
-
var wrappedChildren = wrapContent({
|
|
144
|
-
isOpen: isOpen,
|
|
145
|
-
content: children,
|
|
146
|
-
contentId: id,
|
|
147
|
-
show: show,
|
|
148
|
-
hide: hide,
|
|
149
|
-
Wrapper: 'span',
|
|
150
|
-
appearance: defaultAppearance,
|
|
151
|
-
ariaProps: {},
|
|
152
|
-
wrapperStyles: wrapperStylesForWrappedChildren
|
|
153
|
-
});
|
|
132
|
+
}, [isOpen, setShouldShow, shouldShow, enterDelay, exitDelay]);
|
|
133
|
+
|
|
134
|
+
/** The wrapped content of whats inside the Tooltip */
|
|
135
|
+
var TooltipContent = function TooltipContent() {
|
|
136
|
+
return /*#__PURE__*/React.createElement(TooltipBubble, _extends({
|
|
137
|
+
appearance: defaultAppearance,
|
|
138
|
+
onFocus: show,
|
|
139
|
+
onBlur: hide,
|
|
140
|
+
"aria-expanded": isOpen,
|
|
141
|
+
"aria-describedby": id
|
|
142
|
+
}, rest), content);
|
|
143
|
+
};
|
|
154
144
|
return /*#__PURE__*/React.createElement(Popout, _extends({
|
|
155
|
-
content: !isInvalidContent ?
|
|
145
|
+
content: !isInvalidContent ? TooltipContent : undefined,
|
|
156
146
|
isOpen: isOpen,
|
|
157
147
|
placement: placement,
|
|
158
148
|
qa: _objectSpread({
|
|
@@ -164,29 +154,20 @@ var Tooltip = function Tooltip(_ref2) {
|
|
|
164
154
|
"aria-haspopup": "false",
|
|
165
155
|
display: truncated ? 'flex' : undefined,
|
|
166
156
|
disableWrapperAria: true // required so that the child span doesnt take in redundant aria props
|
|
167
|
-
}, popoutProps),
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
m: 200,
|
|
183
|
-
color: "text.body",
|
|
184
|
-
bg: "container.background.base",
|
|
185
|
-
boxShadow: "medium",
|
|
186
|
-
border: 500,
|
|
187
|
-
borderColor: "container.border.base",
|
|
188
|
-
onMouseEnter: onMouseEnter,
|
|
189
|
-
onMouseLeave: onMouseLeave
|
|
190
|
-
}, rest), children);
|
|
157
|
+
}, popoutProps), /*#__PURE__*/React.createElement("span", {
|
|
158
|
+
onBlur: hide,
|
|
159
|
+
onFocus: show,
|
|
160
|
+
onMouseEnter: show,
|
|
161
|
+
onMouseLeave: hide,
|
|
162
|
+
style: truncated ? {
|
|
163
|
+
overflow: 'hidden',
|
|
164
|
+
textOverflow: 'ellipsis',
|
|
165
|
+
whiteSpace: 'nowrap'
|
|
166
|
+
} : {}
|
|
167
|
+
}, /*#__PURE__*/React.isValidElement(children) ? /*#__PURE__*/React.cloneElement(children, {
|
|
168
|
+
//** There may be cases where the Tooltip's child needs to properly describe its role as expanding a drawer, in which case that propery takes priority */
|
|
169
|
+
'aria-expanded': hasAttribute(children, 'aria-expanded') ? children.props['aria-expanded'] : isOpen,
|
|
170
|
+
'aria-describedby': id
|
|
171
|
+
}) : children));
|
|
191
172
|
};
|
|
192
173
|
export default Tooltip;
|
package/lib/Tooltip/styles.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import styled from 'styled-components';
|
|
2
2
|
import Box from "../Box";
|
|
3
|
-
export var
|
|
4
|
-
displayName: "
|
|
3
|
+
export var StyledTooltipContent = styled(Box).withConfig({
|
|
4
|
+
displayName: "styles__StyledTooltipContent",
|
|
5
5
|
componentId: "sc-19u9ha6-0"
|
|
6
6
|
})(["font-family:", ";", " text-align:", ";"], function (props) {
|
|
7
7
|
return props.theme.fontFamily;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sproutsocial/racine",
|
|
3
|
-
"version": "20.
|
|
3
|
+
"version": "20.4.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"__flow__",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"react-spring": "^8.0.25",
|
|
82
82
|
"react-toastify": "^6.0.5",
|
|
83
83
|
"regenerator-runtime": "^0.14.0",
|
|
84
|
-
"scroll-into-view-if-needed": "
|
|
84
|
+
"scroll-into-view-if-needed": "^2.2.20",
|
|
85
85
|
"styled-system": "^5.1.5",
|
|
86
86
|
"use-measure": "^0.2.2"
|
|
87
87
|
},
|