@alicloud/console-base-rc-side-panel 1.1.1 → 1.1.3-beta.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.
@@ -14,7 +14,7 @@ var _reducer = _interopRequireDefault(require("../reducer"));
14
14
  var _context = _interopRequireDefault(require("../context"));
15
15
  var _lifecycle = _interopRequireDefault(require("../lifecycle"));
16
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
18
  function Provider(_ref) {
19
19
  var props = _ref.props,
20
20
  children = _ref.children;
@@ -15,7 +15,7 @@ var _const = require("./const");
15
15
  var _rc = require("./rc");
16
16
  var _rcContainer = require("./rc-container");
17
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
19
  var ScAside = _styledComponents.default.aside.withConfig({
20
20
  componentId: "sc-1ok6knf-0"
21
21
  })(["display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:", ";padding:", "px 0 ", "px 0;width:", "px;transition:transform ease-in-out 250ms;", " ", " .theme-dark &{box-shadow:inset 1px 0 0 0 rgba(255,255,255,0.1),-4px 0 8px 0 rgba(0,0,0,0.3);}", " .hasTopbar &{top:", "px;}"], _consoleBaseTheme.Z_INDEX.SIDE_PANEL, _const.SPACING_Y * 1.5, _const.SIZE_BUTTON_WRAP_HEIGHT + _const.SPACING_Y, _consoleBaseTheme.SIZE.WIDTH_SIDE_PANEL, _consoleBaseTheme.mixinBgPrimary, _consoleBaseTheme.mixinShadowLLeft, function (props) {
@@ -22,12 +22,6 @@ Object.defineProperty(exports, "SidePanelItemButton", {
22
22
  return _sidePanelItemButton.default;
23
23
  }
24
24
  });
25
- Object.defineProperty(exports, "SidePanelItemTooltip", {
26
- enumerable: true,
27
- get: function get() {
28
- return _sidePanelItemTooltip.default;
29
- }
30
- });
31
25
  Object.defineProperty(exports, "SidePanelItemWrap", {
32
26
  enumerable: true,
33
27
  get: function get() {
@@ -37,5 +31,4 @@ Object.defineProperty(exports, "SidePanelItemWrap", {
37
31
  var _globalStyleOnBody = _interopRequireDefault(require("./global-style-on-body"));
38
32
  var _sidePanelItemWrap = _interopRequireDefault(require("./side-panel-item-wrap"));
39
33
  var _sidePanelItemButton = _interopRequireDefault(require("./side-panel-item-button"));
40
- var _sidePanelItemBadge = _interopRequireDefault(require("./side-panel-item-badge"));
41
- var _sidePanelItemTooltip = _interopRequireDefault(require("./side-panel-item-tooltip"));
34
+ var _sidePanelItemBadge = _interopRequireDefault(require("./side-panel-item-badge"));
@@ -11,7 +11,7 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
11
11
  var _consoleBaseThemeScBase = require("@alicloud/console-base-theme-sc-base");
12
12
  var _consoleBaseRcMarks = _interopRequireDefault(require("@alicloud/console-base-rc-marks"));
13
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
15
  var ScUnreadDot = (0, _styledComponents.default)(_consoleBaseThemeScBase.BadgeBaseDot).withConfig({
16
16
  componentId: "sc-1isvxe9-0"
17
17
  })(["top:8px;", ""], function (props) {
@@ -15,7 +15,7 @@ var _consoleBaseRcButton = _interopRequireWildcard(require("@alicloud/console-ba
15
15
  var _const = require("../../const");
16
16
  var _excluded = ["title", "onlyShowIcon"];
17
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
19
  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; }
20
20
  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) { (0, _defineProperty2.default)(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; }
21
21
  var ScButton = (0, _styledComponents.default)(_consoleBaseRcButton.default).withConfig({
@@ -10,14 +10,14 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
12
  var _consoleBaseTheme = require("@alicloud/console-base-theme");
13
- var _reactHookMouseHover = _interopRequireDefault(require("@alicloud/react-hook-mouse-hover"));
14
13
  var _consoleBaseRcIcon = _interopRequireDefault(require("@alicloud/console-base-rc-icon"));
14
+ var _consoleBaseRcTooltip = require("@alicloud/console-base-rc-tooltip");
15
+ var _rc = require("../../rc");
16
+ var _model = require("../../../model");
15
17
  var _const = require("../../const");
16
18
  var _intl = _interopRequireDefault(require("../../intl"));
17
- var _model = require("../../../model");
18
- var _rc = require("../../rc");
19
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
20
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
21
  var ScCollapseToggle = (0, _styledComponents.default)(_rc.SidePanelItemWrap).withConfig({
22
22
  componentId: "sc-15z8r94-0"
23
23
  })(["position:absolute;right:0;bottom:", "px;", ""], _const.SPACING_Y, function (props) {
@@ -31,36 +31,40 @@ var ScCollapseToggleButton = (0, _styledComponents.default)(_rc.SidePanelItemBut
31
31
  })(["", " ", ""], function (props) {
32
32
  return props.active ? (0, _styledComponents.css)(["", " ", " &:hover{", " ", "}"], _consoleBaseTheme.mixinBgAccent, _consoleBaseTheme.mixinTextWhite, _consoleBaseTheme.mixinBgAccent, _consoleBaseTheme.mixinTextWhite) : null;
33
33
  }, function (props) {
34
- return props.collapsed && !props.hovered ? (0, _styledComponents.css)(["padding-left:4px;;text-align:left;"]) : null;
34
+ return props.collapsed && !props.hovered ? (0, _styledComponents.css)(["padding-left:4px;text-align:left;"]) : null;
35
35
  });
36
36
  function PanelToggle() {
37
- var _useState = (0, _react.useState)(false),
38
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
39
- stateHovered = _useState2[0],
40
- setStateHovered = _useState2[1];
41
37
  var collapsed = (0, _model.useCollapsed)();
42
38
  var unread = (0, _model.useItemsTop)().some(function (v) {
43
39
  return v.unread;
44
40
  });
45
41
  var handleToggleCollapsed = (0, _model.useHandleCollapsedChange)();
46
- var _useMouseHover = (0, _reactHookMouseHover.default)({
47
- onEnter: (0, _react.useCallback)(function () {
48
- setStateHovered(true);
49
- }, [setStateHovered]),
50
- onLeave: (0, _react.useCallback)(function () {
51
- setStateHovered(false);
52
- }, [setStateHovered])
53
- }),
54
- _useMouseHover2 = (0, _slicedToArray2.default)(_useMouseHover, 2),
55
- handleMouseEnter = _useMouseHover2[0],
56
- handleMouseLeave = _useMouseHover2[1];
42
+ var _useState = (0, _react.useState)(false),
43
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
44
+ isHovered = _useState2[0],
45
+ setIsHovered = _useState2[1];
57
46
  var title = (0, _intl.default)(collapsed ? 'op:toggle_visible' : 'op:toggle_hidden');
58
47
  return /*#__PURE__*/_react.default.createElement(ScCollapseToggle, {
59
- hovered: stateHovered,
48
+ hovered: isHovered,
60
49
  collapsed: collapsed,
61
- onMouseLeave: handleMouseLeave
62
- }, /*#__PURE__*/_react.default.createElement(ScCollapseToggleButton, {
63
- hovered: stateHovered,
50
+ onMouseEnter: function onMouseEnter() {
51
+ return setIsHovered(true);
52
+ },
53
+ onMouseLeave: function onMouseLeave() {
54
+ return setIsHovered(false);
55
+ }
56
+ }, /*#__PURE__*/_react.default.createElement(_consoleBaseRcTooltip.TooltipV1, {
57
+ title: title,
58
+ placement: "left",
59
+ mouseEnterDelay: collapsed ? 200 : 0 // 收起状态下 hover 时,需等待动画结束后再显示提示框,避免位置错误
60
+ ,
61
+ destroyTooltipOnHide: true,
62
+ fixed: true,
63
+ overlayStyle: {
64
+ transform: 'translateX(-10px)'
65
+ }
66
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(ScCollapseToggleButton, {
67
+ hovered: isHovered,
64
68
  collapsed: collapsed,
65
69
  active: collapsed,
66
70
  title: title,
@@ -68,13 +72,9 @@ function PanelToggle() {
68
72
  type: "angle-right",
69
73
  rotate: collapsed ? 180 : undefined
70
74
  }),
71
- onMouseEnter: handleMouseEnter,
72
75
  onClick: handleToggleCollapsed
73
- }), collapsed && unread ? /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemBadge, {
76
+ }))), collapsed && unread ? /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemBadge, {
74
77
  unread: true,
75
- alignLeft: !stateHovered
76
- }) : null, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemTooltip, {
77
- visible: stateHovered,
78
- content: title
79
- }));
78
+ alignLeft: !isHovered
79
+ }) : null);
80
80
  }
@@ -6,101 +6,56 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = Item;
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
11
  var _react = _interopRequireWildcard(require("react"));
13
- var _reactHookMouseHover = _interopRequireDefault(require("@alicloud/react-hook-mouse-hover"));
14
- var _consoleBaseRcHtmlTrusted = _interopRequireDefault(require("@alicloud/console-base-rc-html-trusted"));
15
12
  var _consoleBaseRcEasyIcon = require("@alicloud/console-base-rc-easy-icon");
13
+ var _consoleBaseRcTooltip = require("@alicloud/console-base-rc-tooltip");
16
14
  var _model = require("../../../model");
17
- var _util = require("../../util");
18
15
  var _rc = require("../../rc");
19
- var _excluded = ["id", "className", "style", "active", "title", "titleActive", "icon", "iconHovered", "iconActive", "iconActiveHovered", "unread", "mark", "tooltip", "tooltipActive", "tooltipAsHtml", "tooltipAlign", "tooltipDefaultVisible", "onClick", "onActiveChange", "onMouseEnter", "onMouseLeave"];
16
+ var _excluded = ["id", "className", "style", "active", "title", "icon", "unread", "mark", "tooltip", "tooltipOptions", "onlyShowIcon", "onClick", "onActiveChange"];
20
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
22
- 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; }
23
- 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) { (0, _defineProperty2.default)(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; }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
19
  function Item(_ref) {
25
20
  var id = _ref.id,
26
21
  className = _ref.className,
27
22
  style = _ref.style,
28
23
  active = _ref.active,
29
24
  title = _ref.title,
30
- titleActive = _ref.titleActive,
31
25
  icon = _ref.icon,
32
- iconHovered = _ref.iconHovered,
33
- iconActive = _ref.iconActive,
34
- iconActiveHovered = _ref.iconActiveHovered,
35
26
  unread = _ref.unread,
36
27
  mark = _ref.mark,
37
28
  tooltip = _ref.tooltip,
38
- tooltipActive = _ref.tooltipActive,
39
- tooltipAsHtml = _ref.tooltipAsHtml,
40
- tooltipAlign = _ref.tooltipAlign,
41
- _ref$tooltipDefaultVi = _ref.tooltipDefaultVisible,
42
- tooltipDefaultVisible = _ref$tooltipDefaultVi === void 0 ? false : _ref$tooltipDefaultVi,
29
+ tooltipOptions = _ref.tooltipOptions,
30
+ onlyShowIcon = _ref.onlyShowIcon,
43
31
  onClick = _ref.onClick,
44
32
  onActiveChange = _ref.onActiveChange,
45
- onMouseEnter = _ref.onMouseEnter,
46
- onMouseLeave = _ref.onMouseLeave,
47
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
33
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
48
34
  var collapsed = (0, _model.useCollapsed)();
49
- var _useState = (0, _react.useState)(tooltipDefaultVisible),
50
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
51
- stateTooltipVisible = _useState2[0],
52
- setStateTooltipVisible = _useState2[1];
53
- var _useMouseHover = (0, _reactHookMouseHover.default)({
54
- onEnter: (0, _react.useCallback)(function () {
55
- setStateTooltipVisible(true);
56
- onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter();
57
- }, [setStateTooltipVisible, onMouseEnter]),
58
- onLeave: (0, _react.useCallback)(function () {
59
- setStateTooltipVisible(false);
60
- onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave();
61
- }, [setStateTooltipVisible, onMouseLeave])
62
- }),
63
- _useMouseHover2 = (0, _slicedToArray2.default)(_useMouseHover, 2),
64
- handleMouseEnter = _useMouseHover2[0],
65
- handleMouseLeave = _useMouseHover2[1];
66
35
  var handleClick = (0, _react.useCallback)(function (e) {
67
36
  onClick === null || onClick === void 0 ? void 0 : onClick(e);
68
37
  onActiveChange === null || onActiveChange === void 0 ? void 0 : onActiveChange(!active);
69
38
  }, [active, onClick, onActiveChange]);
70
- var finalTitle = (0, _util.getValueByStatus)({
71
- valueNormal: title,
72
- valueActive: titleActive
73
- }, stateTooltipVisible, active);
74
- var finalIcon = (0, _util.getValueByStatus)({
75
- valueNormal: icon,
76
- valueHovered: iconHovered,
77
- valueActive: iconActive,
78
- valueActiveHovered: iconActiveHovered
79
- }, stateTooltipVisible, active);
80
- var finalTooltip = (0, _util.getValueByStatus)({
81
- valueNormal: tooltip,
82
- valueActive: tooltipActive
83
- }, stateTooltipVisible, active);
84
- return /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemWrap, {
85
- id: id,
86
- className: className,
87
- style: style,
88
- onMouseLeave: handleMouseLeave
89
- }, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemButton, _objectSpread(_objectSpread({}, props), {}, {
90
- active: active,
91
- title: title,
92
- label: (0, _consoleBaseRcEasyIcon.renderEasyIcon)(finalIcon) || title,
93
- onMouseEnter: handleMouseEnter,
94
- onClick: handleClick
95
- })), /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemBadge, {
96
- unread: unread,
97
- mark: mark
98
- }), finalTooltip || finalTitle ? /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemTooltip, {
99
- visible: stateTooltipVisible && !collapsed,
100
- align: tooltipAlign,
101
- content: tooltipAsHtml && finalTooltip && typeof finalTooltip === 'string' ? /*#__PURE__*/_react.default.createElement(_consoleBaseRcHtmlTrusted.default, {
102
- text: finalTooltip
103
- }) : finalTooltip || finalTitle,
104
- onMouseEnter: handleMouseEnter
105
- }) : null);
39
+ var renderItem = function renderItem() {
40
+ return /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemWrap, {
41
+ id: id,
42
+ className: className,
43
+ style: style
44
+ }, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemButton, (0, _extends2.default)({
45
+ active: active,
46
+ title: title,
47
+ label: (0, _consoleBaseRcEasyIcon.renderEasyIcon)(icon) || title,
48
+ onlyShowIcon: onlyShowIcon,
49
+ onClick: handleClick
50
+ }, rest)), /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemBadge, {
51
+ unread: unread,
52
+ mark: mark
53
+ }));
54
+ };
55
+ return collapsed || !tooltip && !title ? renderItem() : /*#__PURE__*/_react.default.createElement(_consoleBaseRcTooltip.TooltipV1, (0, _extends2.default)({
56
+ title: tooltip || title,
57
+ placement: "left",
58
+ destroyTooltipOnHide: true,
59
+ fixed: true
60
+ }, tooltipOptions), renderItem());
106
61
  }
@@ -1,50 +1,29 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = QuickTop;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _react = _interopRequireWildcard(require("react"));
11
- var _reactHookMouseHover = _interopRequireDefault(require("@alicloud/react-hook-mouse-hover"));
8
+ var _react = _interopRequireDefault(require("react"));
12
9
  var _consoleBaseRcIcon = _interopRequireDefault(require("@alicloud/console-base-rc-icon"));
13
10
  var _model = require("../../../../model");
14
11
  var _intl = _interopRequireDefault(require("../../../intl"));
15
12
  var _rc = require("../../../rc");
16
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ var _consoleBaseRcTooltip = require("@alicloud/console-base-rc-tooltip");
18
14
  function QuickTop() {
19
15
  var handleGoTop = (0, _model.useHandleGoTop)();
20
- var _useState = (0, _react.useState)(false),
21
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
22
- stateHovered = _useState2[0],
23
- setStateHovered = _useState2[1];
24
- var _useMouseHover = (0, _reactHookMouseHover.default)({
25
- onEnter: (0, _react.useCallback)(function () {
26
- setStateHovered(true);
27
- }, [setStateHovered]),
28
- onLeave: (0, _react.useCallback)(function () {
29
- setStateHovered(false);
30
- }, [setStateHovered])
31
- }),
32
- _useMouseHover2 = (0, _slicedToArray2.default)(_useMouseHover, 2),
33
- handleMouseEnter = _useMouseHover2[0],
34
- handleMouseLeave = _useMouseHover2[1];
35
16
  var title = (0, _intl.default)('op:back_to_top');
36
- return /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemWrap, {
37
- hovered: stateHovered,
38
- onMouseLeave: handleMouseLeave
39
- }, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemButton, {
17
+ return /*#__PURE__*/_react.default.createElement(_consoleBaseRcTooltip.TooltipV1, {
18
+ title: title,
19
+ placement: "left",
20
+ destroyTooltipOnHide: true,
21
+ fixed: true
22
+ }, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemWrap, null, /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemButton, {
40
23
  title: title,
41
24
  label: /*#__PURE__*/_react.default.createElement(_consoleBaseRcIcon.default, {
42
25
  type: "go-top"
43
26
  }),
44
- onMouseEnter: handleMouseEnter,
45
27
  onClick: handleGoTop
46
- }), /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemTooltip, {
47
- visible: stateHovered,
48
- content: title
49
- }));
28
+ })));
50
29
  }
@@ -1,5 +1,4 @@
1
1
  export { default as GlobalStyleOnBody } from './global-style-on-body';
2
2
  export { default as SidePanelItemWrap } from './side-panel-item-wrap';
3
3
  export { default as SidePanelItemButton } from './side-panel-item-button';
4
- export { default as SidePanelItemBadge } from './side-panel-item-badge';
5
- export { default as SidePanelItemTooltip } from './side-panel-item-tooltip';
4
+ export { default as SidePanelItemBadge } from './side-panel-item-badge';
@@ -1,13 +1,13 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import React, { useState, useCallback } from 'react';
2
+ import React, { useState } from 'react';
3
3
  import styled, { css } from 'styled-components';
4
4
  import { mixinBgAccent, mixinTextWhite } from '@alicloud/console-base-theme';
5
- import useMouseHover from '@alicloud/react-hook-mouse-hover';
6
5
  import Icon from '@alicloud/console-base-rc-icon';
6
+ import { TooltipV1 } from '@alicloud/console-base-rc-tooltip';
7
+ import { SidePanelItemWrap, SidePanelItemButton, SidePanelItemBadge } from '../../rc';
8
+ import { useCollapsed, useItemsTop, useHandleCollapsedChange } from '../../../model';
7
9
  import { SPACING_Y } from '../../const';
8
10
  import intl from '../../intl';
9
- import { useCollapsed, useItemsTop, useHandleCollapsedChange } from '../../../model';
10
- import { SidePanelItemWrap, SidePanelItemButton, SidePanelItemBadge, SidePanelItemTooltip } from '../../rc';
11
11
  var ScCollapseToggle = styled(SidePanelItemWrap).withConfig({
12
12
  componentId: "sc-15z8r94-0"
13
13
  })(["position:absolute;right:0;bottom:", "px;", ""], SPACING_Y, function (props) {
@@ -21,36 +21,40 @@ var ScCollapseToggleButton = styled(SidePanelItemButton).withConfig({
21
21
  })(["", " ", ""], function (props) {
22
22
  return props.active ? css(["", " ", " &:hover{", " ", "}"], mixinBgAccent, mixinTextWhite, mixinBgAccent, mixinTextWhite) : null;
23
23
  }, function (props) {
24
- return props.collapsed && !props.hovered ? css(["padding-left:4px;;text-align:left;"]) : null;
24
+ return props.collapsed && !props.hovered ? css(["padding-left:4px;text-align:left;"]) : null;
25
25
  });
26
26
  export default function PanelToggle() {
27
- var _useState = useState(false),
28
- _useState2 = _slicedToArray(_useState, 2),
29
- stateHovered = _useState2[0],
30
- setStateHovered = _useState2[1];
31
27
  var collapsed = useCollapsed();
32
28
  var unread = useItemsTop().some(function (v) {
33
29
  return v.unread;
34
30
  });
35
31
  var handleToggleCollapsed = useHandleCollapsedChange();
36
- var _useMouseHover = useMouseHover({
37
- onEnter: useCallback(function () {
38
- setStateHovered(true);
39
- }, [setStateHovered]),
40
- onLeave: useCallback(function () {
41
- setStateHovered(false);
42
- }, [setStateHovered])
43
- }),
44
- _useMouseHover2 = _slicedToArray(_useMouseHover, 2),
45
- handleMouseEnter = _useMouseHover2[0],
46
- handleMouseLeave = _useMouseHover2[1];
32
+ var _useState = useState(false),
33
+ _useState2 = _slicedToArray(_useState, 2),
34
+ isHovered = _useState2[0],
35
+ setIsHovered = _useState2[1];
47
36
  var title = intl(collapsed ? 'op:toggle_visible' : 'op:toggle_hidden');
48
37
  return /*#__PURE__*/React.createElement(ScCollapseToggle, {
49
- hovered: stateHovered,
38
+ hovered: isHovered,
50
39
  collapsed: collapsed,
51
- onMouseLeave: handleMouseLeave
52
- }, /*#__PURE__*/React.createElement(ScCollapseToggleButton, {
53
- hovered: stateHovered,
40
+ onMouseEnter: function onMouseEnter() {
41
+ return setIsHovered(true);
42
+ },
43
+ onMouseLeave: function onMouseLeave() {
44
+ return setIsHovered(false);
45
+ }
46
+ }, /*#__PURE__*/React.createElement(TooltipV1, {
47
+ title: title,
48
+ placement: "left",
49
+ mouseEnterDelay: collapsed ? 200 : 0 // 收起状态下 hover 时,需等待动画结束后再显示提示框,避免位置错误
50
+ ,
51
+ destroyTooltipOnHide: true,
52
+ fixed: true,
53
+ overlayStyle: {
54
+ transform: 'translateX(-10px)'
55
+ }
56
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ScCollapseToggleButton, {
57
+ hovered: isHovered,
54
58
  collapsed: collapsed,
55
59
  active: collapsed,
56
60
  title: title,
@@ -58,13 +62,9 @@ export default function PanelToggle() {
58
62
  type: "angle-right",
59
63
  rotate: collapsed ? 180 : undefined
60
64
  }),
61
- onMouseEnter: handleMouseEnter,
62
65
  onClick: handleToggleCollapsed
63
- }), collapsed && unread ? /*#__PURE__*/React.createElement(SidePanelItemBadge, {
66
+ }))), collapsed && unread ? /*#__PURE__*/React.createElement(SidePanelItemBadge, {
64
67
  unread: true,
65
- alignLeft: !stateHovered
66
- }) : null, /*#__PURE__*/React.createElement(SidePanelItemTooltip, {
67
- visible: stateHovered,
68
- content: title
69
- }));
68
+ alignLeft: !isHovered
69
+ }) : null);
70
70
  }
@@ -1,96 +1,51 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["id", "className", "style", "active", "title", "titleActive", "icon", "iconHovered", "iconActive", "iconActiveHovered", "unread", "mark", "tooltip", "tooltipActive", "tooltipAsHtml", "tooltipAlign", "tooltipDefaultVisible", "onClick", "onActiveChange", "onMouseEnter", "onMouseLeave"];
5
- 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; }
6
- 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; }
7
- import React, { useState, useCallback } from 'react';
8
- import useMouseHover from '@alicloud/react-hook-mouse-hover';
9
- import HtmlTrusted from '@alicloud/console-base-rc-html-trusted';
3
+ var _excluded = ["id", "className", "style", "active", "title", "icon", "unread", "mark", "tooltip", "tooltipOptions", "onlyShowIcon", "onClick", "onActiveChange"];
4
+ import React, { useCallback } from 'react';
10
5
  import { renderEasyIcon } from '@alicloud/console-base-rc-easy-icon';
6
+ import { TooltipV1 } from '@alicloud/console-base-rc-tooltip';
11
7
  import { useCollapsed } from '../../../model';
12
- import { getValueByStatus } from '../../util';
13
- import { SidePanelItemWrap, SidePanelItemButton, SidePanelItemBadge, SidePanelItemTooltip } from '../../rc';
8
+ import { SidePanelItemWrap, SidePanelItemButton, SidePanelItemBadge } from '../../rc';
14
9
  export default function Item(_ref) {
15
10
  var id = _ref.id,
16
11
  className = _ref.className,
17
12
  style = _ref.style,
18
13
  active = _ref.active,
19
14
  title = _ref.title,
20
- titleActive = _ref.titleActive,
21
15
  icon = _ref.icon,
22
- iconHovered = _ref.iconHovered,
23
- iconActive = _ref.iconActive,
24
- iconActiveHovered = _ref.iconActiveHovered,
25
16
  unread = _ref.unread,
26
17
  mark = _ref.mark,
27
18
  tooltip = _ref.tooltip,
28
- tooltipActive = _ref.tooltipActive,
29
- tooltipAsHtml = _ref.tooltipAsHtml,
30
- tooltipAlign = _ref.tooltipAlign,
31
- _ref$tooltipDefaultVi = _ref.tooltipDefaultVisible,
32
- tooltipDefaultVisible = _ref$tooltipDefaultVi === void 0 ? false : _ref$tooltipDefaultVi,
19
+ tooltipOptions = _ref.tooltipOptions,
20
+ onlyShowIcon = _ref.onlyShowIcon,
33
21
  onClick = _ref.onClick,
34
22
  onActiveChange = _ref.onActiveChange,
35
- onMouseEnter = _ref.onMouseEnter,
36
- onMouseLeave = _ref.onMouseLeave,
37
- props = _objectWithoutProperties(_ref, _excluded);
23
+ rest = _objectWithoutProperties(_ref, _excluded);
38
24
  var collapsed = useCollapsed();
39
- var _useState = useState(tooltipDefaultVisible),
40
- _useState2 = _slicedToArray(_useState, 2),
41
- stateTooltipVisible = _useState2[0],
42
- setStateTooltipVisible = _useState2[1];
43
- var _useMouseHover = useMouseHover({
44
- onEnter: useCallback(function () {
45
- setStateTooltipVisible(true);
46
- onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter();
47
- }, [setStateTooltipVisible, onMouseEnter]),
48
- onLeave: useCallback(function () {
49
- setStateTooltipVisible(false);
50
- onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave();
51
- }, [setStateTooltipVisible, onMouseLeave])
52
- }),
53
- _useMouseHover2 = _slicedToArray(_useMouseHover, 2),
54
- handleMouseEnter = _useMouseHover2[0],
55
- handleMouseLeave = _useMouseHover2[1];
56
25
  var handleClick = useCallback(function (e) {
57
26
  onClick === null || onClick === void 0 ? void 0 : onClick(e);
58
27
  onActiveChange === null || onActiveChange === void 0 ? void 0 : onActiveChange(!active);
59
28
  }, [active, onClick, onActiveChange]);
60
- var finalTitle = getValueByStatus({
61
- valueNormal: title,
62
- valueActive: titleActive
63
- }, stateTooltipVisible, active);
64
- var finalIcon = getValueByStatus({
65
- valueNormal: icon,
66
- valueHovered: iconHovered,
67
- valueActive: iconActive,
68
- valueActiveHovered: iconActiveHovered
69
- }, stateTooltipVisible, active);
70
- var finalTooltip = getValueByStatus({
71
- valueNormal: tooltip,
72
- valueActive: tooltipActive
73
- }, stateTooltipVisible, active);
74
- return /*#__PURE__*/React.createElement(SidePanelItemWrap, {
75
- id: id,
76
- className: className,
77
- style: style,
78
- onMouseLeave: handleMouseLeave
79
- }, /*#__PURE__*/React.createElement(SidePanelItemButton, _objectSpread(_objectSpread({}, props), {}, {
80
- active: active,
81
- title: title,
82
- label: renderEasyIcon(finalIcon) || title,
83
- onMouseEnter: handleMouseEnter,
84
- onClick: handleClick
85
- })), /*#__PURE__*/React.createElement(SidePanelItemBadge, {
86
- unread: unread,
87
- mark: mark
88
- }), finalTooltip || finalTitle ? /*#__PURE__*/React.createElement(SidePanelItemTooltip, {
89
- visible: stateTooltipVisible && !collapsed,
90
- align: tooltipAlign,
91
- content: tooltipAsHtml && finalTooltip && typeof finalTooltip === 'string' ? /*#__PURE__*/React.createElement(HtmlTrusted, {
92
- text: finalTooltip
93
- }) : finalTooltip || finalTitle,
94
- onMouseEnter: handleMouseEnter
95
- }) : null);
29
+ var renderItem = function renderItem() {
30
+ return /*#__PURE__*/React.createElement(SidePanelItemWrap, {
31
+ id: id,
32
+ className: className,
33
+ style: style
34
+ }, /*#__PURE__*/React.createElement(SidePanelItemButton, _extends({
35
+ active: active,
36
+ title: title,
37
+ label: renderEasyIcon(icon) || title,
38
+ onlyShowIcon: onlyShowIcon,
39
+ onClick: handleClick
40
+ }, rest)), /*#__PURE__*/React.createElement(SidePanelItemBadge, {
41
+ unread: unread,
42
+ mark: mark
43
+ }));
44
+ };
45
+ return collapsed || !tooltip && !title ? renderItem() : /*#__PURE__*/React.createElement(TooltipV1, _extends({
46
+ title: tooltip || title,
47
+ placement: "left",
48
+ destroyTooltipOnHide: true,
49
+ fixed: true
50
+ }, tooltipOptions), renderItem());
96
51
  }
@@ -1,40 +1,22 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import React, { useState, useCallback } from 'react';
3
- import useMouseHover from '@alicloud/react-hook-mouse-hover';
1
+ import React from 'react';
4
2
  import Icon from '@alicloud/console-base-rc-icon';
5
3
  import { useHandleGoTop } from '../../../../model';
6
4
  import intl from '../../../intl';
7
- import { SidePanelItemWrap, SidePanelItemButton, SidePanelItemTooltip } from '../../../rc';
5
+ import { SidePanelItemWrap, SidePanelItemButton } from '../../../rc';
6
+ import { TooltipV1 } from '@alicloud/console-base-rc-tooltip';
8
7
  export default function QuickTop() {
9
8
  var handleGoTop = useHandleGoTop();
10
- var _useState = useState(false),
11
- _useState2 = _slicedToArray(_useState, 2),
12
- stateHovered = _useState2[0],
13
- setStateHovered = _useState2[1];
14
- var _useMouseHover = useMouseHover({
15
- onEnter: useCallback(function () {
16
- setStateHovered(true);
17
- }, [setStateHovered]),
18
- onLeave: useCallback(function () {
19
- setStateHovered(false);
20
- }, [setStateHovered])
21
- }),
22
- _useMouseHover2 = _slicedToArray(_useMouseHover, 2),
23
- handleMouseEnter = _useMouseHover2[0],
24
- handleMouseLeave = _useMouseHover2[1];
25
9
  var title = intl('op:back_to_top');
26
- return /*#__PURE__*/React.createElement(SidePanelItemWrap, {
27
- hovered: stateHovered,
28
- onMouseLeave: handleMouseLeave
29
- }, /*#__PURE__*/React.createElement(SidePanelItemButton, {
10
+ return /*#__PURE__*/React.createElement(TooltipV1, {
11
+ title: title,
12
+ placement: "left",
13
+ destroyTooltipOnHide: true,
14
+ fixed: true
15
+ }, /*#__PURE__*/React.createElement(SidePanelItemWrap, null, /*#__PURE__*/React.createElement(SidePanelItemButton, {
30
16
  title: title,
31
17
  label: /*#__PURE__*/React.createElement(Icon, {
32
18
  type: "go-top"
33
19
  }),
34
- onMouseEnter: handleMouseEnter,
35
20
  onClick: handleGoTop
36
- }), /*#__PURE__*/React.createElement(SidePanelItemTooltip, {
37
- visible: stateHovered,
38
- content: title
39
- }));
21
+ })));
40
22
  }
@@ -1,15 +1,12 @@
1
- import { ReactElement } from 'react';
1
+ /// <reference types="react" />
2
2
  import { ButtonProps } from '@alicloud/console-base-rc-button';
3
3
  import { EasyIconValue } from '@alicloud/console-base-rc-easy-icon';
4
+ import { TooltipPropsV1 } from '@alicloud/console-base-rc-tooltip';
4
5
  export interface ISidePanelItemProps extends Omit<ButtonProps, 'label' | 'size' | 'theme' | 'iconLeft' | 'iconRight' | 'onMouseEnter' | 'onMouseLeave'> {
5
6
  /**
6
7
  * 默认用于 tooltip,也是按钮 aria-label 属性
7
8
  */
8
9
  title: string;
9
- /**
10
- * 按下状态的 title,不填则 fallback 到 title
11
- */
12
- titleActive?: string;
13
10
  /**
14
11
  * 图标(请尽可能用正方形),如果是组件则直接用,当它是字符串的时候,会智能判断
15
12
  */
@@ -17,39 +14,15 @@ export interface ISidePanelItemProps extends Omit<ButtonProps, 'label' | 'size'
17
14
  /**
18
15
  * 只显示图标,不需要背景
19
16
  */
20
- onlyShowIcon: boolean;
21
- /**
22
- * 鼠标 hover 时的图标,不填则 fallback 到 icon
23
- */
24
- iconHovered?: EasyIconValue;
25
- /**
26
- * 按下状态的图标,不填则 fallback 到 icon
27
- */
28
- iconActive?: EasyIconValue;
29
- /**
30
- * 按下状态时 hover 的图标,不填则 fallback 到 iconActive
31
- */
32
- iconActiveHovered?: EasyIconValue;
17
+ onlyShowIcon?: boolean;
33
18
  /**
34
19
  * 当需要复杂的 tooltip 时,可以用这个 prop
35
20
  */
36
- tooltip?: string | ReactElement;
37
- /**
38
- * 按下状态的 tooltip,不填则 fallback 到 tooltip
39
- */
40
- tooltipActive?: string | ReactElement;
41
- /**
42
- * 当 Tooltip 没有条件用 JSX,必须是字符串但又需要展示成 HTML 时,可以用 `tooltipAsHtml: true`
43
- */
44
- tooltipAsHtml?: boolean;
45
- /**
46
- * Tooltip 与按钮的上下对齐方式,默认为 middle
47
- */
48
- tooltipAlign?: 'top' | 'middle' | 'bottom';
21
+ tooltip?: string | React.ReactElement;
49
22
  /**
50
- * Tooltip 默认是否展示,注意避免竞争,并注意降噪
23
+ * tooltip 的配置
51
24
  */
52
- tooltipDefaultVisible?: boolean;
25
+ tooltipOptions?: TooltipPropsV1;
53
26
  /**
54
27
  * 右上角徽标,数字展示数字,true 展示小红点
55
28
  */
@@ -2,4 +2,3 @@ export { default as GlobalStyleOnBody } from './global-style-on-body';
2
2
  export { default as SidePanelItemWrap } from './side-panel-item-wrap';
3
3
  export { default as SidePanelItemButton } from './side-panel-item-button';
4
4
  export { default as SidePanelItemBadge } from './side-panel-item-badge';
5
- export { default as SidePanelItemTooltip } from './side-panel-item-tooltip';
@@ -1,6 +1,3 @@
1
1
  /// <reference types="react" />
2
2
  import { SidePanelItemProps } from '../../../model';
3
- interface IProps extends SidePanelItemProps {
4
- }
5
- export default function Item({ id, className, style, active, title, titleActive, icon, iconHovered, iconActive, iconActiveHovered, unread, mark, tooltip, tooltipActive, tooltipAsHtml, tooltipAlign, tooltipDefaultVisible, onClick, onActiveChange, onMouseEnter, onMouseLeave, ...props }: IProps): JSX.Element;
6
- export {};
3
+ export default function Item({ id, className, style, active, title, icon, unread, mark, tooltip, tooltipOptions, onlyShowIcon, onClick, onActiveChange, ...rest }: SidePanelItemProps): JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alicloud/console-base-rc-side-panel",
3
- "version": "1.1.1",
3
+ "version": "1.1.3-beta.0",
4
4
  "description": "ConsoleBase 组件 - 右侧边栏",
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
@@ -40,7 +40,7 @@
40
40
  "@alicloud/console-base-rc-html-trusted": "^1.0.5",
41
41
  "@alicloud/console-base-rc-icon": "^1.10.6",
42
42
  "@alicloud/console-base-rc-marks": "^1.8.3",
43
- "@alicloud/console-base-rc-tooltip": "^1.1.12",
43
+ "@alicloud/console-base-rc-tooltip": "1.1.13-beta.1",
44
44
  "@alicloud/console-base-theme": "^1.9.7",
45
45
  "@alicloud/console-base-theme-sc-base": "^1.6.4",
46
46
  "@alicloud/mere-dom": "^1.8.0",
@@ -1,58 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = SidePanelItemTooltip;
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = _interopRequireDefault(require("react"));
12
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
13
- var _consoleBaseTheme = require("@alicloud/console-base-theme");
14
- var _consoleBaseRcTooltip = _interopRequireWildcard(require("@alicloud/console-base-rc-tooltip"));
15
- var _const = require("../../const");
16
- var _excluded = ["visible", "align", "content"];
17
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
- 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; }
20
- 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) { (0, _defineProperty2.default)(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; }
21
- var ScTooltip = (0, _styledComponents.default)(_consoleBaseRcTooltip.default).withConfig({
22
- componentId: "sc-11m2ouk-0"
23
- })(["right:", "px;", " img{max-width:100%;}"], _consoleBaseTheme.SIZE.WIDTH_SIDE_PANEL - 4, function (props) {
24
- switch (props.placement) {
25
- case _consoleBaseRcTooltip.TooltipPlacement.LEFT_TOP:
26
- return (0, _styledComponents.css)(["top:0;"]);
27
- case _consoleBaseRcTooltip.TooltipPlacement.LEFT_BOTTOM:
28
- return (0, _styledComponents.css)(["bottom:0;"]);
29
- default:
30
- return (0, _styledComponents.css)(["bottom:", "px;transform:translateY(50%);"], _const.SIZE_BUTTON_WRAP_HEIGHT * 0.5);
31
- }
32
- });
33
- function getPlacement(align) {
34
- switch (align) {
35
- case 'top':
36
- return _consoleBaseRcTooltip.TooltipPlacement.LEFT_TOP;
37
- case 'bottom':
38
- return _consoleBaseRcTooltip.TooltipPlacement.LEFT_BOTTOM;
39
- default:
40
- return _consoleBaseRcTooltip.TooltipPlacement.LEFT;
41
- }
42
- }
43
-
44
- /**
45
- * 工具按钮之外的部分(如果不是 tooltip 则期望它是 createPortal 出去的)
46
- */
47
- function SidePanelItemTooltip(_ref) {
48
- var visible = _ref.visible,
49
- align = _ref.align,
50
- content = _ref.content,
51
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
52
- return /*#__PURE__*/_react.default.createElement(ScTooltip, _objectSpread({
53
- visible: visible,
54
- placement: getPlacement(align),
55
- arrowOffset: _const.SIZE_BUTTON_WRAP_HEIGHT * 0.5,
56
- content: content
57
- }, props));
58
- }
@@ -1,48 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- var _excluded = ["visible", "align", "content"];
4
- 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
- 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
- import React from 'react';
7
- import styled, { css } from 'styled-components';
8
- import { SIZE } from '@alicloud/console-base-theme';
9
- import Tooltip, { TooltipPlacement } from '@alicloud/console-base-rc-tooltip';
10
- import { SIZE_BUTTON_WRAP_HEIGHT } from '../../const';
11
- var ScTooltip = styled(Tooltip).withConfig({
12
- componentId: "sc-11m2ouk-0"
13
- })(["right:", "px;", " img{max-width:100%;}"], SIZE.WIDTH_SIDE_PANEL - 4, function (props) {
14
- switch (props.placement) {
15
- case TooltipPlacement.LEFT_TOP:
16
- return css(["top:0;"]);
17
- case TooltipPlacement.LEFT_BOTTOM:
18
- return css(["bottom:0;"]);
19
- default:
20
- return css(["bottom:", "px;transform:translateY(50%);"], SIZE_BUTTON_WRAP_HEIGHT * 0.5);
21
- }
22
- });
23
- function getPlacement(align) {
24
- switch (align) {
25
- case 'top':
26
- return TooltipPlacement.LEFT_TOP;
27
- case 'bottom':
28
- return TooltipPlacement.LEFT_BOTTOM;
29
- default:
30
- return TooltipPlacement.LEFT;
31
- }
32
- }
33
-
34
- /**
35
- * 工具按钮之外的部分(如果不是 tooltip 则期望它是 createPortal 出去的)
36
- */
37
- export default function SidePanelItemTooltip(_ref) {
38
- var visible = _ref.visible,
39
- align = _ref.align,
40
- content = _ref.content,
41
- props = _objectWithoutProperties(_ref, _excluded);
42
- return /*#__PURE__*/React.createElement(ScTooltip, _objectSpread({
43
- visible: visible,
44
- placement: getPlacement(align),
45
- arrowOffset: SIZE_BUTTON_WRAP_HEIGHT * 0.5,
46
- content: content
47
- }, props));
48
- }
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import { TooltipProps } from '@alicloud/console-base-rc-tooltip';
3
- import { SidePanelItemProps } from '../../../model';
4
- interface IProps extends Omit<TooltipProps, 'placement' | 'arrowOffset'> {
5
- align?: SidePanelItemProps['tooltipAlign'];
6
- }
7
- /**
8
- * 工具按钮之外的部分(如果不是 tooltip 则期望它是 createPortal 出去的)
9
- */
10
- export default function SidePanelItemTooltip({ visible, align, content, ...props }: IProps): JSX.Element;
11
- export {};