@alicloud/console-base-rc-side-panel 1.1.15 → 1.1.17
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/build/cjs/ui/rc-container/collapse-toggle/index.js +6 -7
- package/build/cjs/ui/rc-container/collapse-toggle/styles.js +6 -10
- package/build/cjs/ui/rc-container/items/index.js +7 -0
- package/build/esm/ui/rc-container/collapse-toggle/index.js +7 -8
- package/build/esm/ui/rc-container/collapse-toggle/styles.js +6 -10
- package/build/esm/ui/rc-container/items/index.js +7 -0
- package/build/types/model/types/common.d.ts +4 -0
- package/build/types/ui/rc-container/collapse-toggle/styles.d.ts +1 -1
- package/package.json +2 -2
|
@@ -10,8 +10,6 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _consoleBaseRcIcon = _interopRequireDefault(require("@alicloud/console-base-rc-icon"));
|
|
12
12
|
var _consoleBaseRcTooltip = require("@alicloud/console-base-rc-tooltip");
|
|
13
|
-
var _consoleBaseConfEnv = _interopRequireDefault(require("@alicloud/console-base-conf-env"));
|
|
14
|
-
var _consoleBaseConfLocale = _interopRequireWildcard(require("@alicloud/console-base-conf-locale"));
|
|
15
13
|
var _model = require("../../../model");
|
|
16
14
|
var _styles = require("./styles");
|
|
17
15
|
var _rc = require("../../rc");
|
|
@@ -23,26 +21,27 @@ function PanelToggle() {
|
|
|
23
21
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
24
22
|
isHovered = _useState2[0],
|
|
25
23
|
setIsHovered = _useState2[1];
|
|
24
|
+
var _useProps = (0, _model.useProps)(),
|
|
25
|
+
collapsedAside = _useProps.collapsedAside;
|
|
26
26
|
var collapsed = (0, _model.useCollapsed)();
|
|
27
27
|
var unread = (0, _model.useItemsTop)().some(function (v) {
|
|
28
28
|
return v.unread;
|
|
29
29
|
});
|
|
30
30
|
var handleToggleCollapsed = (0, _model.useHandleCollapsedChange)();
|
|
31
31
|
var title = (0, _intl.default)(collapsed ? 'op:toggle_visible' : 'op:toggle_hidden');
|
|
32
|
-
// 站点是否处于简体中文环境下,即国内站
|
|
33
|
-
var isSimpleCN = _consoleBaseConfEnv.default.SITE === 'CN' && _consoleBaseConfLocale.default.LANGUAGE === _consoleBaseConfLocale.ELanguage.ZH;
|
|
34
32
|
return /*#__PURE__*/_react.default.createElement(_styles.ScCollapseToggleWrap, null, /*#__PURE__*/_react.default.createElement(_consoleBaseRcTooltip.TooltipV1, {
|
|
35
33
|
title: title,
|
|
36
34
|
placement: "left",
|
|
37
35
|
destroyTooltipOnHide: true,
|
|
38
36
|
fixed: true,
|
|
37
|
+
mouseEnterDelay: !collapsedAside && collapsed ? 250 : 0,
|
|
39
38
|
overlayStyle: {
|
|
40
39
|
marginLeft: '8px'
|
|
41
40
|
}
|
|
42
41
|
}, /*#__PURE__*/_react.default.createElement(_styles.ScCollapseToggle, {
|
|
43
42
|
$hovered: isHovered,
|
|
44
43
|
$collapsed: collapsed,
|
|
45
|
-
$
|
|
44
|
+
$collapsedAside: !!collapsedAside,
|
|
46
45
|
onMouseEnter: function onMouseEnter() {
|
|
47
46
|
return setIsHovered(true);
|
|
48
47
|
},
|
|
@@ -57,10 +56,10 @@ function PanelToggle() {
|
|
|
57
56
|
}),
|
|
58
57
|
onClick: handleToggleCollapsed,
|
|
59
58
|
$collapsed: collapsed,
|
|
60
|
-
$
|
|
59
|
+
$collapsedAside: !!collapsedAside,
|
|
61
60
|
$hovered: isHovered
|
|
62
61
|
}), collapsed && unread ? /*#__PURE__*/_react.default.createElement(_rc.SidePanelItemBadge, {
|
|
63
62
|
unread: true,
|
|
64
|
-
alignLeft:
|
|
63
|
+
alignLeft: true
|
|
65
64
|
}) : null)));
|
|
66
65
|
}
|
|
@@ -14,19 +14,15 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
14
14
|
var ScCollapseToggleWrap = exports.ScCollapseToggleWrap = _styledComponents.default.div.withConfig({
|
|
15
15
|
componentId: "sc-xm41v7-0"
|
|
16
16
|
})(["position:absolute;right:0;bottom:", "px;"], _const.SPACING_Y);
|
|
17
|
-
var cssToggleNone = (0, _styledComponents.css)(["transform:translateX(0);"]);
|
|
18
17
|
var cssToggleIn = (0, _styledComponents.css)(["transform:translateX(-101%);"]);
|
|
19
|
-
var cssToggleOut = (0, _styledComponents.css)(["transform:translateX(-50%);"]);
|
|
18
|
+
var cssToggleOut = (0, _styledComponents.css)(["transform:translateX(-50.5%);"]);
|
|
20
19
|
var ScCollapseToggle = exports.ScCollapseToggle = (0, _styledComponents.default)(_rc.SidePanelItemWrap).withConfig({
|
|
21
20
|
componentId: "sc-xm41v7-1"
|
|
22
|
-
})(["transition:transform 250ms ease-in-out 0ms;", ""], function (_ref) {
|
|
21
|
+
})(["transform:translateX(0);transition:transform 250ms ease-in-out 0ms;", ""], function (_ref) {
|
|
23
22
|
var $collapsed = _ref.$collapsed,
|
|
24
|
-
$
|
|
23
|
+
$collapsedAside = _ref.$collapsedAside,
|
|
25
24
|
$hovered = _ref.$hovered;
|
|
26
|
-
|
|
27
|
-
return cssToggleNone;
|
|
28
|
-
}
|
|
29
|
-
return $isSimpleCN || $hovered ? cssToggleIn : cssToggleOut;
|
|
25
|
+
return $collapsed && ($collapsedAside || $hovered ? cssToggleIn : cssToggleOut);
|
|
30
26
|
});
|
|
31
27
|
var collapsedStyles = (0, _styledComponents.css)(["&,&:hover{", " ", "}"], _consoleBaseTheme.mixinBgAccent, _consoleBaseTheme.mixinTextWhite);
|
|
32
28
|
var nonSimpleCnPadding = (0, _styledComponents.css)(["padding-left:4px;text-align:left;"]);
|
|
@@ -37,7 +33,7 @@ var ScCollapseToggleButton = exports.ScCollapseToggleButton = (0, _styledCompone
|
|
|
37
33
|
return $collapsed && collapsedStyles;
|
|
38
34
|
}, function (_ref3) {
|
|
39
35
|
var $collapsed = _ref3.$collapsed,
|
|
40
|
-
$
|
|
36
|
+
$collapsedAside = _ref3.$collapsedAside,
|
|
41
37
|
$hovered = _ref3.$hovered;
|
|
42
|
-
return $collapsed && !$
|
|
38
|
+
return $collapsed && !$collapsedAside && !$hovered && nonSimpleCnPadding;
|
|
43
39
|
});
|
|
@@ -19,6 +19,13 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
19
19
|
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; }
|
|
20
20
|
function Items(_ref) {
|
|
21
21
|
var items = _ref.items;
|
|
22
|
+
// index 为业务传入的期望展示的顺序
|
|
23
|
+
items.sort(function (a, b) {
|
|
24
|
+
var _a$index, _b$index;
|
|
25
|
+
var indexA = (_a$index = a.index) !== null && _a$index !== void 0 ? _a$index : Number.MAX_SAFE_INTEGER;
|
|
26
|
+
var indexB = (_b$index = b.index) !== null && _b$index !== void 0 ? _b$index : Number.MAX_SAFE_INTEGER;
|
|
27
|
+
return indexA - indexB;
|
|
28
|
+
});
|
|
22
29
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, items.map(function (v) {
|
|
23
30
|
return /*#__PURE__*/_react.default.createElement(_item.default, _objectSpread(_objectSpread({}, v), {}, (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _const.DATA_KEY_SIDE_PANEL_ITEM, v.key), "spm", v.key)));
|
|
24
31
|
}));
|
|
@@ -2,9 +2,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
|
2
2
|
import React, { useState } from 'react';
|
|
3
3
|
import Icon from '@alicloud/console-base-rc-icon';
|
|
4
4
|
import { TooltipV1 } from '@alicloud/console-base-rc-tooltip';
|
|
5
|
-
import
|
|
6
|
-
import CONF_LOCALE, { ELanguage } from '@alicloud/console-base-conf-locale';
|
|
7
|
-
import { useCollapsed, useItemsTop, useHandleCollapsedChange } from '../../../model';
|
|
5
|
+
import { useCollapsed, useItemsTop, useHandleCollapsedChange, useProps } from '../../../model';
|
|
8
6
|
import { ScCollapseToggleWrap, ScCollapseToggle, ScCollapseToggleButton } from './styles';
|
|
9
7
|
import { SidePanelItemBadge } from '../../rc';
|
|
10
8
|
import intl from '../../intl';
|
|
@@ -13,26 +11,27 @@ export default function PanelToggle() {
|
|
|
13
11
|
_useState2 = _slicedToArray(_useState, 2),
|
|
14
12
|
isHovered = _useState2[0],
|
|
15
13
|
setIsHovered = _useState2[1];
|
|
14
|
+
var _useProps = useProps(),
|
|
15
|
+
collapsedAside = _useProps.collapsedAside;
|
|
16
16
|
var collapsed = useCollapsed();
|
|
17
17
|
var unread = useItemsTop().some(function (v) {
|
|
18
18
|
return v.unread;
|
|
19
19
|
});
|
|
20
20
|
var handleToggleCollapsed = useHandleCollapsedChange();
|
|
21
21
|
var title = intl(collapsed ? 'op:toggle_visible' : 'op:toggle_hidden');
|
|
22
|
-
// 站点是否处于简体中文环境下,即国内站
|
|
23
|
-
var isSimpleCN = CONF_ENV.SITE === 'CN' && CONF_LOCALE.LANGUAGE === ELanguage.ZH;
|
|
24
22
|
return /*#__PURE__*/React.createElement(ScCollapseToggleWrap, null, /*#__PURE__*/React.createElement(TooltipV1, {
|
|
25
23
|
title: title,
|
|
26
24
|
placement: "left",
|
|
27
25
|
destroyTooltipOnHide: true,
|
|
28
26
|
fixed: true,
|
|
27
|
+
mouseEnterDelay: !collapsedAside && collapsed ? 250 : 0,
|
|
29
28
|
overlayStyle: {
|
|
30
29
|
marginLeft: '8px'
|
|
31
30
|
}
|
|
32
31
|
}, /*#__PURE__*/React.createElement(ScCollapseToggle, {
|
|
33
32
|
$hovered: isHovered,
|
|
34
33
|
$collapsed: collapsed,
|
|
35
|
-
$
|
|
34
|
+
$collapsedAside: !!collapsedAside,
|
|
36
35
|
onMouseEnter: function onMouseEnter() {
|
|
37
36
|
return setIsHovered(true);
|
|
38
37
|
},
|
|
@@ -47,10 +46,10 @@ export default function PanelToggle() {
|
|
|
47
46
|
}),
|
|
48
47
|
onClick: handleToggleCollapsed,
|
|
49
48
|
$collapsed: collapsed,
|
|
50
|
-
$
|
|
49
|
+
$collapsedAside: !!collapsedAside,
|
|
51
50
|
$hovered: isHovered
|
|
52
51
|
}), collapsed && unread ? /*#__PURE__*/React.createElement(SidePanelItemBadge, {
|
|
53
52
|
unread: true,
|
|
54
|
-
alignLeft:
|
|
53
|
+
alignLeft: true
|
|
55
54
|
}) : null)));
|
|
56
55
|
}
|
|
@@ -5,19 +5,15 @@ import { SPACING_Y } from '../../const';
|
|
|
5
5
|
export var ScCollapseToggleWrap = styled.div.withConfig({
|
|
6
6
|
componentId: "sc-xm41v7-0"
|
|
7
7
|
})(["position:absolute;right:0;bottom:", "px;"], SPACING_Y);
|
|
8
|
-
var cssToggleNone = css(["transform:translateX(0);"]);
|
|
9
8
|
var cssToggleIn = css(["transform:translateX(-101%);"]);
|
|
10
|
-
var cssToggleOut = css(["transform:translateX(-50%);"]);
|
|
9
|
+
var cssToggleOut = css(["transform:translateX(-50.5%);"]);
|
|
11
10
|
export var ScCollapseToggle = styled(SidePanelItemWrap).withConfig({
|
|
12
11
|
componentId: "sc-xm41v7-1"
|
|
13
|
-
})(["transition:transform 250ms ease-in-out 0ms;", ""], function (_ref) {
|
|
12
|
+
})(["transform:translateX(0);transition:transform 250ms ease-in-out 0ms;", ""], function (_ref) {
|
|
14
13
|
var $collapsed = _ref.$collapsed,
|
|
15
|
-
$
|
|
14
|
+
$collapsedAside = _ref.$collapsedAside,
|
|
16
15
|
$hovered = _ref.$hovered;
|
|
17
|
-
|
|
18
|
-
return cssToggleNone;
|
|
19
|
-
}
|
|
20
|
-
return $isSimpleCN || $hovered ? cssToggleIn : cssToggleOut;
|
|
16
|
+
return $collapsed && ($collapsedAside || $hovered ? cssToggleIn : cssToggleOut);
|
|
21
17
|
});
|
|
22
18
|
var collapsedStyles = css(["&,&:hover{", " ", "}"], mixinBgAccent, mixinTextWhite);
|
|
23
19
|
var nonSimpleCnPadding = css(["padding-left:4px;text-align:left;"]);
|
|
@@ -28,7 +24,7 @@ export var ScCollapseToggleButton = styled(SidePanelItemButton).withConfig({
|
|
|
28
24
|
return $collapsed && collapsedStyles;
|
|
29
25
|
}, function (_ref3) {
|
|
30
26
|
var $collapsed = _ref3.$collapsed,
|
|
31
|
-
$
|
|
27
|
+
$collapsedAside = _ref3.$collapsedAside,
|
|
32
28
|
$hovered = _ref3.$hovered;
|
|
33
|
-
return $collapsed && !$
|
|
29
|
+
return $collapsed && !$collapsedAside && !$hovered && nonSimpleCnPadding;
|
|
34
30
|
});
|
|
@@ -11,6 +11,13 @@ import PanelItem from '../item';
|
|
|
11
11
|
import QuickTop from '../quick-top';
|
|
12
12
|
function Items(_ref) {
|
|
13
13
|
var items = _ref.items;
|
|
14
|
+
// index 为业务传入的期望展示的顺序
|
|
15
|
+
items.sort(function (a, b) {
|
|
16
|
+
var _a$index, _b$index;
|
|
17
|
+
var indexA = (_a$index = a.index) !== null && _a$index !== void 0 ? _a$index : Number.MAX_SAFE_INTEGER;
|
|
18
|
+
var indexB = (_b$index = b.index) !== null && _b$index !== void 0 ? _b$index : Number.MAX_SAFE_INTEGER;
|
|
19
|
+
return indexA - indexB;
|
|
20
|
+
});
|
|
14
21
|
return /*#__PURE__*/React.createElement(React.Fragment, null, items.map(function (v) {
|
|
15
22
|
return /*#__PURE__*/React.createElement(PanelItem, _objectSpread(_objectSpread({}, v), {}, _defineProperty(_defineProperty({}, DATA_KEY_SIDE_PANEL_ITEM, v.key), "spm", v.key)));
|
|
16
23
|
}));
|
|
@@ -47,6 +47,10 @@ export interface SidePanelItemButtonProps {
|
|
|
47
47
|
onActiveChange?(active: boolean): void;
|
|
48
48
|
}
|
|
49
49
|
export interface ISidePanelItemProps extends SidePanelItemButtonProps {
|
|
50
|
+
/**
|
|
51
|
+
* 自定义展示顺序,越小越靠前,不传则按照消息传入的顺序展示
|
|
52
|
+
*/
|
|
53
|
+
index?: number;
|
|
50
54
|
/**
|
|
51
55
|
* 右上角徽标,数字展示数字,true 展示小红点
|
|
52
56
|
*/
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SidePanelItemButton } from '../../rc';
|
|
2
2
|
interface IScProps {
|
|
3
3
|
$collapsed: boolean;
|
|
4
|
-
$
|
|
4
|
+
$collapsedAside: boolean;
|
|
5
5
|
$hovered: boolean;
|
|
6
6
|
}
|
|
7
7
|
export declare const ScCollapseToggleWrap: import("styled-components").StyledComponent<"div", any, {}, never>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alicloud/console-base-rc-side-panel",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.17",
|
|
4
4
|
"description": "ConsoleBase 组件 - 右侧边栏",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"@alicloud/console-base-rc-html-trusted": "^1.0.5",
|
|
44
44
|
"@alicloud/console-base-rc-icon": "^1.10.6",
|
|
45
45
|
"@alicloud/console-base-rc-marks": "^1.8.3",
|
|
46
|
-
"@alicloud/console-base-rc-tooltip": "^1.1.
|
|
46
|
+
"@alicloud/console-base-rc-tooltip": "^1.1.21",
|
|
47
47
|
"@alicloud/console-base-theme": "^1.9.7",
|
|
48
48
|
"@alicloud/console-base-theme-sc-base": "^1.6.4",
|
|
49
49
|
"@alicloud/mere-dom": "^1.8.0",
|